• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #ifndef _VULKAN_JSON_DATA_HPP
2 #define _VULKAN_JSON_DATA_HPP
3 
4 /*
5  * Copyright (c) 2021 The Khronos Group Inc.
6  *
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  *
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  *
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  *
19  *//*!
20  * \file
21  * \brief Defines JSON generators for Vulkan structures
22  */
23 
24 
25 /********************************************************************************************/
26 /** This code is generated. To make changes, please modify the scripts or the relevant xml **/
27 /********************************************************************************************/
28 
29 #include <iostream>
30 #include <map>
31 #include <bitset>
32 #include <functional>
33 #include <sstream>
34 #include <cassert>
35 #include <cmath>
36 #ifndef VULKAN_JSON_CTS
37     #include <vulkan/vulkan.h>
38 #endif
39 
40 #ifdef _WIN32
41 	#ifndef WIN32_LEAN_AND_MEAN
42 	#define WIN32_LEAN_AND_MEAN
43 	#endif
44 	#define VC_EXTRALEAN
45 	#define NOMINMAX
46 	#include <windows.h>
47 #endif
48 
49 namespace vk_json {
50 
51 static thread_local int s_num_spaces    = 0;
52 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 for (int k = 0; k < s_num_spaces; k++) _OUT << " ";
62 
63 #define INDENT(sz) s_num_spaces += (sz);
64 
65 #define PRINT_VAL(c) PRINT_SPACE \
66     if (s != "") {\
67         _OUT << "\"" << s << "\"" << " : " << o << (c ? "," : "") << std::endl; \
68     } else {\
69         _OUT << o << (c ? "," : "") << std::endl; \
70     }
71 
72 #define PRINT_STR(c) PRINT_SPACE \
73     if (s != "") {\
74         _OUT << "\"" << s << "\"" << " : " << "\"" << o << "\"" << (c ? "," : "") << std::endl; \
75     } else {\
76         _OUT << "\"" << o << "\"" << (c ? "," : "") << std::endl; \
77     }
78 
79 // To make sure the generated data is consistent across platforms,
80 // we typecast to 32-bit and dump the data.
81 // The value is not expected to exceed the range.
print_size_t(const size_t * o,const std::string & s,bool commaNeeded=true)82 static void print_size_t(const size_t* o, const std::string& s, bool commaNeeded=true)
83 {
84     PRINT_SPACE
85     _OUT << "\"" << s << "\"" << " : " << static_cast<deUint32>(*o) << (commaNeeded ? "," : "") << std::endl;\
86 }
print_size_t(size_t o,const std::string & s,bool commaNeeded=true)87 static void print_size_t(size_t o, const std::string& s, bool commaNeeded=true)
88 {
89     PRINT_SPACE
90     _OUT << "\"" << s << "\"" << " : " << static_cast<deUint32>(o) << (commaNeeded ? "," : "") << std::endl;\
91 }
92 
print_int32_t(deInt32 o,const std::string & s,bool commaNeeded=true)93 static void print_int32_t(deInt32 o, const std::string& s, bool commaNeeded=true)
94 {
95     PRINT_VAL(commaNeeded)
96 }
97 
print_int32_t(const deInt32 * o,const std::string & s,bool commaNeeded=true)98 static void print_int32_t(const deInt32 * o, const std::string& s, bool commaNeeded=true)
99 {
100     PRINT_VAL(commaNeeded)
101 }
102 
print_uint32_t(deUint32 o,const std::string & s,bool commaNeeded=true)103 static void print_uint32_t(deUint32 o, const std::string& s, bool commaNeeded=true)
104 {
105     PRINT_VAL(commaNeeded)
106 }
107 
print_uint32_t(const deUint32 * o,const std::string & s,bool commaNeeded=true)108 static void print_uint32_t(const deUint32 * o, const std::string& s, bool commaNeeded=true)
109 {
110     PRINT_VAL(commaNeeded)
111 }
112 
print_uint8_t(deUint8 o,const std::string & s,bool commaNeeded=true)113 static void print_uint8_t(deUint8 o, const std::string& s, bool commaNeeded=true)
114 {
115     PRINT_VAL(commaNeeded)
116 }
117 
print_uint8_t(const deUint8 * o,const std::string & s,bool commaNeeded=true)118 static void print_uint8_t(const deUint8 * o, const std::string& s, bool commaNeeded=true)
119 {
120     PRINT_VAL(commaNeeded)
121 }
122 
print_uint64_t(deUint64 o,const std::string & s,bool commaNeeded=true)123 static void print_uint64_t(deUint64 o, const std::string& s, bool commaNeeded=true)
124 {
125     PRINT_VAL(commaNeeded)
126 }
127 
print_uint64_t(const deUint64 * o,const std::string & s,bool commaNeeded=true)128 static void print_uint64_t(const deUint64 * o, const std::string& s, bool commaNeeded=true)
129 {
130     PRINT_VAL(commaNeeded)
131 }
132 
print_float(float o,const std::string & s,bool commaNeeded=true)133 static void print_float(float o, const std::string& s, bool commaNeeded=true)
134 {
135 	if (std::isnan(o))
136 	{
137 		PRINT_SPACE
138 		if (s != "")
139 			_OUT << "\"" << s << "\"" << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
140 		else
141 			_OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
142 	}
143 	else
144 	{
145 		PRINT_VAL(commaNeeded)
146 	}
147 }
148 
print_float(const float * o,const std::string & s,bool commaNeeded=true)149 static void print_float(const float * o, const std::string& s, bool commaNeeded=true)
150 {
151 	if (std::isnan(*o))
152 	{
153 		PRINT_SPACE
154 		if (s != "")
155 			_OUT << "\"" << s << "\"" << " : \"NaN\"" << (commaNeeded ? "," : "") << std::endl;
156 		else
157 			_OUT << "\"NaN\"" << (commaNeeded ? "," : "") << std::endl;
158 	}
159 	else
160 	{
161 		PRINT_VAL(commaNeeded)
162 	}
163 }
164 
print_int(int o,const std::string & s,bool commaNeeded=true)165 static void print_int(int o, const std::string& s, bool commaNeeded=true)
166 {
167     PRINT_VAL(commaNeeded)
168 }
169 
print_int(const int * o,const std::string & s,bool commaNeeded=true)170 static void print_int(const int * o, const std::string& s, bool commaNeeded=true)
171 {
172     PRINT_VAL(commaNeeded)
173 }
174 
print_double(double o,const std::string & s,bool commaNeeded=true)175 static void print_double(double o, const std::string& s, bool commaNeeded=true)
176 {
177     PRINT_VAL(commaNeeded)
178 }
179 
print_double(const double * o,const std::string & s,bool commaNeeded=true)180 static void print_double(const double * o, const std::string& s, bool commaNeeded=true)
181 {
182     PRINT_VAL(commaNeeded)
183 }
184 
print_int64_t(deInt64 o,const std::string & s,bool commaNeeded=true)185 static void print_int64_t(deInt64 o, const std::string& s, bool commaNeeded=true)
186 {
187     PRINT_VAL(commaNeeded)
188 }
189 
print_int64_t(const deInt64 * o,const std::string & s,bool commaNeeded=true)190 static void print_int64_t(const deInt64 * o, const std::string& s, bool commaNeeded=true)
191 {
192     PRINT_VAL(commaNeeded)
193 }
194 
print_uint16_t(deUint16 o,const std::string & s,bool commaNeeded=true)195 static void print_uint16_t(deUint16 o, const std::string& s, bool commaNeeded=true)
196 {
197     PRINT_VAL(commaNeeded)
198 }
199 
print_uint16_t(const deUint16 * o,const std::string & s,bool commaNeeded=true)200 static void print_uint16_t(const deUint16 * o, const std::string& s, bool commaNeeded=true)
201 {
202     PRINT_VAL(commaNeeded)
203 }
204 
print_char(const char * const * o,const std::string & s,bool commaNeeded=true)205 static void print_char(const char * const* o, const std::string& s, bool commaNeeded=true)
206 {
207     PRINT_STR(commaNeeded)
208 }
209 
print_char(char o,const std::string & s,bool commaNeeded=true)210 static void print_char(char o, const std::string& s, bool commaNeeded=true)
211 {
212     PRINT_VAL(commaNeeded)
213 }
214 
print_char(const char * o,const std::string & s,bool commaNeeded=true)215 static void print_char(const char * o, const std::string& s, bool commaNeeded=true)
216 {
217     PRINT_STR(commaNeeded)
218 }
219 
220 
221 // Base 64 formater class from executor/xeTestLogWriter.cpp
222 
223 class Base64Formatter
224 {
225 public:
226 	const deUint8*	data;
227 	int				numBytes;
228 
Base64Formatter(const deUint8 * data_,int numBytes_)229 	Base64Formatter(const deUint8* data_, int numBytes_) : data(data_), numBytes(numBytes_) {}
230 };
231 
operator <<(std::ostream & str,const Base64Formatter & fmt)232 std::ostream& operator<< (std::ostream& str, const Base64Formatter& fmt)
233 {
234 	static const char s_base64Table[64] =
235 	{
236 		'A','B','C','D','E','F','G','H','I','J','K','L','M',
237 		'N','O','P','Q','R','S','T','U','V','W','X','Y','Z',
238 		'a','b','c','d','e','f','g','h','i','j','k','l','m',
239 		'n','o','p','q','r','s','t','u','v','w','x','y','z',
240 		'0','1','2','3','4','5','6','7','8','9','+','/'
241 	};
242 
243 	const deUint8*	data = fmt.data;
244 	int				numBytes = fmt.numBytes;
245 	int				srcNdx = 0;
246 
247 	DE_ASSERT(data && (numBytes > 0));
248 
249 	/* Loop all input chars. */
250 	while (srcNdx < numBytes)
251 	{
252 		int		numRead = de::min(3, numBytes - srcNdx);
253 		deUint8	s0 = data[srcNdx];
254 		deUint8	s1 = (numRead >= 2) ? data[srcNdx + 1] : 0;
255 		deUint8	s2 = (numRead >= 3) ? data[srcNdx + 2] : 0;
256 		char	d[4];
257 
258 		srcNdx += numRead;
259 
260 		d[0] = s_base64Table[s0 >> 2];
261 		d[1] = s_base64Table[((s0 & 0x3) << 4) | (s1 >> 4)];
262 		d[2] = s_base64Table[((s1 & 0xF) << 2) | (s2 >> 6)];
263 		d[3] = s_base64Table[s2 & 0x3F];
264 
265 		if (numRead < 3) d[3] = '=';
266 		if (numRead < 2) d[2] = '=';
267 
268 		/* Write data. */
269 		str.write(&d[0], sizeof(d));
270 	}
271 
272 	return str;
273 }
274 
toBase64(const deUint8 * bytes,int numBytes)275 inline Base64Formatter toBase64(const deUint8* bytes, int numBytes) {return Base64Formatter(bytes, numBytes); }
276 
print_void_data(const void * o,int oSize,const std::string & s,bool commaNeeded=true)277 static void print_void_data(const void * o, int oSize, const std::string& s, bool commaNeeded=true)
278 {
279 	if (o != NULL && oSize != 0)
280 	{
281 		PRINT_SPACE _OUT << "\"" << s << "\"" << " : " << "\"" << toBase64((deUint8*)o, oSize) << "\"" << (commaNeeded ? "," : "") << std::endl;
282 	}
283 	else
284 	{
285 		PRINT_SPACE _OUT << "\"" << s << "\"" << " : " << "\"NULL\"" << (commaNeeded ? "," : "") << std::endl;
286 	}
287 }
288 
print_VkBool32(VkBool32 obj,const std::string & str,bool commaNeeded=true)289 static void print_VkBool32(VkBool32 obj, const std::string& str, bool commaNeeded=true) {
290      PRINT_SPACE
291      _OUT << "\"" << str << "\"" << " : " << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
292 }
print_VkBool32(const VkBool32 * obj,const std::string & str,bool commaNeeded=true)293 static void print_VkBool32(const VkBool32 * obj, const std::string& str, bool commaNeeded=true) {
294      PRINT_SPACE
295      _OUT << "\"" << str << "\"" << " : " << "\"" << ((obj == 0) ? ("VK_FALSE") : ("VK_TRUE")) << "\"" << (commaNeeded ? "," : "") << std::endl;
296 }
297 
print_VkDeviceAddress(VkDeviceAddress obj,const std::string & str,bool commaNeeded=true)298 static void print_VkDeviceAddress(VkDeviceAddress obj, const std::string& str, bool commaNeeded=true) {
299      PRINT_SPACE
300      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
301 }
print_VkDeviceAddress(const VkDeviceAddress * obj,const std::string & str,bool commaNeeded=true)302 static void print_VkDeviceAddress(const VkDeviceAddress * obj, const std::string& str, bool commaNeeded=true) {
303      PRINT_SPACE
304      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
305 }
306 
print_VkDeviceSize(VkDeviceSize obj,const std::string & str,bool commaNeeded=true)307 static void print_VkDeviceSize(VkDeviceSize obj, const std::string& str, bool commaNeeded=true) {
308      PRINT_SPACE
309      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
310 }
print_VkDeviceSize(const VkDeviceSize * obj,const std::string & str,bool commaNeeded=true)311 static void print_VkDeviceSize(const VkDeviceSize * obj, const std::string& str, bool commaNeeded=true) {
312      PRINT_SPACE
313      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
314 }
315 
print_VkFlags(VkFlags obj,const std::string & str,bool commaNeeded=true)316 static void print_VkFlags(VkFlags obj, const std::string& str, bool commaNeeded=true) {
317      PRINT_SPACE
318      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
319 }
print_VkFlags(const VkFlags * obj,const std::string & str,bool commaNeeded=true)320 static void print_VkFlags(const VkFlags * obj, const std::string& str, bool commaNeeded=true) {
321      PRINT_SPACE
322      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
323 }
324 
print_VkSampleMask(VkSampleMask obj,const std::string & str,bool commaNeeded=true)325 static void print_VkSampleMask(VkSampleMask obj, const std::string& str, bool commaNeeded=true) {
326      PRINT_SPACE
327      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
328 }
print_VkSampleMask(const VkSampleMask * obj,const std::string & str,bool commaNeeded=true)329 static void print_VkSampleMask(const VkSampleMask * obj, const std::string& str, bool commaNeeded=true) {
330      PRINT_SPACE
331      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
332 }
333 
print_VkBuffer(VkBuffer obj,const std::string & str,bool commaNeeded=true)334 static void print_VkBuffer(VkBuffer obj, const std::string& str, bool commaNeeded=true) {
335      PRINT_SPACE
336      if (commaNeeded)
337          _OUT << "\"" << str << "\"" << "," << std::endl;
338      else
339          _OUT << "\"" << str << "\"" << std::endl;
340 }
print_VkBuffer(const VkBuffer * obj,const std::string & str,bool commaNeeded=true)341 static void print_VkBuffer(const VkBuffer * obj, const std::string& str, bool commaNeeded=true) {
342      PRINT_SPACE
343      if (commaNeeded)
344          _OUT << "\"" << str << "\"" << "," << std::endl;
345      else
346          _OUT << "\"" << str << "\"" << std::endl;
347 }
348 
print_VkImage(VkImage obj,const std::string & str,bool commaNeeded=true)349 static void print_VkImage(VkImage obj, const std::string& str, bool commaNeeded=true) {
350      PRINT_SPACE
351      if (commaNeeded)
352          _OUT << "\"" << str << "\"" << "," << std::endl;
353      else
354          _OUT << "\"" << str << "\"" << std::endl;
355 }
print_VkImage(const VkImage * obj,const std::string & str,bool commaNeeded=true)356 static void print_VkImage(const VkImage * obj, const std::string& str, bool commaNeeded=true) {
357      PRINT_SPACE
358      if (commaNeeded)
359          _OUT << "\"" << str << "\"" << "," << std::endl;
360      else
361          _OUT << "\"" << str << "\"" << std::endl;
362 }
363 
print_VkInstance(VkInstance obj,const std::string & str,bool commaNeeded=true)364 static void print_VkInstance(VkInstance obj, const std::string& str, bool commaNeeded=true) {
365      PRINT_SPACE
366      if (commaNeeded)
367          _OUT << "\"" << str << "\"" << "," << std::endl;
368      else
369          _OUT << "\"" << str << "\"" << std::endl;
370 }
print_VkInstance(const VkInstance * obj,const std::string & str,bool commaNeeded=true)371 static void print_VkInstance(const VkInstance * obj, const std::string& str, bool commaNeeded=true) {
372      PRINT_SPACE
373      if (commaNeeded)
374          _OUT << "\"" << str << "\"" << "," << std::endl;
375      else
376          _OUT << "\"" << str << "\"" << std::endl;
377 }
378 
print_VkPhysicalDevice(VkPhysicalDevice obj,const std::string & str,bool commaNeeded=true)379 static void print_VkPhysicalDevice(VkPhysicalDevice obj, const std::string& str, bool commaNeeded=true) {
380      PRINT_SPACE
381      if (commaNeeded)
382          _OUT << "\"" << str << "\"" << "," << std::endl;
383      else
384          _OUT << "\"" << str << "\"" << std::endl;
385 }
print_VkPhysicalDevice(const VkPhysicalDevice * obj,const std::string & str,bool commaNeeded=true)386 static void print_VkPhysicalDevice(const VkPhysicalDevice * obj, const std::string& str, bool commaNeeded=true) {
387      PRINT_SPACE
388      if (commaNeeded)
389          _OUT << "\"" << str << "\"" << "," << std::endl;
390      else
391          _OUT << "\"" << str << "\"" << std::endl;
392 }
393 
print_VkDevice(VkDevice obj,const std::string & str,bool commaNeeded=true)394 static void print_VkDevice(VkDevice obj, const std::string& str, bool commaNeeded=true) {
395      PRINT_SPACE
396      if (commaNeeded)
397          _OUT << "\"" << str << "\"" << "," << std::endl;
398      else
399          _OUT << "\"" << str << "\"" << std::endl;
400 }
print_VkDevice(const VkDevice * obj,const std::string & str,bool commaNeeded=true)401 static void print_VkDevice(const VkDevice * obj, const std::string& str, bool commaNeeded=true) {
402      PRINT_SPACE
403      if (commaNeeded)
404          _OUT << "\"" << str << "\"" << "," << std::endl;
405      else
406          _OUT << "\"" << str << "\"" << std::endl;
407 }
408 
print_VkQueue(VkQueue obj,const std::string & str,bool commaNeeded=true)409 static void print_VkQueue(VkQueue obj, const std::string& str, bool commaNeeded=true) {
410      PRINT_SPACE
411      if (commaNeeded)
412          _OUT << "\"" << str << "\"" << "," << std::endl;
413      else
414          _OUT << "\"" << str << "\"" << std::endl;
415 }
print_VkQueue(const VkQueue * obj,const std::string & str,bool commaNeeded=true)416 static void print_VkQueue(const VkQueue * obj, const std::string& str, bool commaNeeded=true) {
417      PRINT_SPACE
418      if (commaNeeded)
419          _OUT << "\"" << str << "\"" << "," << std::endl;
420      else
421          _OUT << "\"" << str << "\"" << std::endl;
422 }
423 
print_VkSemaphore(VkSemaphore obj,const std::string & str,bool commaNeeded=true)424 static void print_VkSemaphore(VkSemaphore obj, const std::string& str, bool commaNeeded=true) {
425      PRINT_SPACE
426      if (commaNeeded)
427          _OUT << "\"" << str << "\"" << "," << std::endl;
428      else
429          _OUT << "\"" << str << "\"" << std::endl;
430 }
print_VkSemaphore(const VkSemaphore * obj,const std::string & str,bool commaNeeded=true)431 static void print_VkSemaphore(const VkSemaphore * obj, const std::string& str, bool commaNeeded=true) {
432      PRINT_SPACE
433      if (commaNeeded)
434          _OUT << "\"" << str << "\"" << "," << std::endl;
435      else
436          _OUT << "\"" << str << "\"" << std::endl;
437 }
438 
print_VkCommandBuffer(VkCommandBuffer obj,const std::string & str,bool commaNeeded=true)439 static void print_VkCommandBuffer(VkCommandBuffer obj, const std::string& str, bool commaNeeded=true) {
440      PRINT_SPACE
441      if (commaNeeded)
442          _OUT << "\"" << str << "\"" << "," << std::endl;
443      else
444          _OUT << "\"" << str << "\"" << std::endl;
445 }
print_VkCommandBuffer(const VkCommandBuffer * obj,const std::string & str,bool commaNeeded=true)446 static void print_VkCommandBuffer(const VkCommandBuffer * obj, const std::string& str, bool commaNeeded=true) {
447      PRINT_SPACE
448      if (commaNeeded)
449          _OUT << "\"" << str << "\"" << "," << std::endl;
450      else
451          _OUT << "\"" << str << "\"" << std::endl;
452 }
453 
print_VkFence(VkFence obj,const std::string & str,bool commaNeeded=true)454 static void print_VkFence(VkFence obj, const std::string& str, bool commaNeeded=true) {
455      PRINT_SPACE
456      if (commaNeeded)
457          _OUT << "\"" << str << "\"" << "," << std::endl;
458      else
459          _OUT << "\"" << str << "\"" << std::endl;
460 }
print_VkFence(const VkFence * obj,const std::string & str,bool commaNeeded=true)461 static void print_VkFence(const VkFence * obj, const std::string& str, bool commaNeeded=true) {
462      PRINT_SPACE
463      if (commaNeeded)
464          _OUT << "\"" << str << "\"" << "," << std::endl;
465      else
466          _OUT << "\"" << str << "\"" << std::endl;
467 }
468 
print_VkDeviceMemory(VkDeviceMemory obj,const std::string & str,bool commaNeeded=true)469 static void print_VkDeviceMemory(VkDeviceMemory obj, const std::string& str, bool commaNeeded=true) {
470      PRINT_SPACE
471      if (commaNeeded)
472          _OUT << "\"" << str << "\"" << "," << std::endl;
473      else
474          _OUT << "\"" << str << "\"" << std::endl;
475 }
print_VkDeviceMemory(const VkDeviceMemory * obj,const std::string & str,bool commaNeeded=true)476 static void print_VkDeviceMemory(const VkDeviceMemory * obj, const std::string& str, bool commaNeeded=true) {
477      PRINT_SPACE
478      if (commaNeeded)
479          _OUT << "\"" << str << "\"" << "," << std::endl;
480      else
481          _OUT << "\"" << str << "\"" << std::endl;
482 }
483 
print_VkEvent(VkEvent obj,const std::string & str,bool commaNeeded=true)484 static void print_VkEvent(VkEvent obj, const std::string& str, bool commaNeeded=true) {
485      PRINT_SPACE
486      if (commaNeeded)
487          _OUT << "\"" << str << "\"" << "," << std::endl;
488      else
489          _OUT << "\"" << str << "\"" << std::endl;
490 }
print_VkEvent(const VkEvent * obj,const std::string & str,bool commaNeeded=true)491 static void print_VkEvent(const VkEvent * obj, const std::string& str, bool commaNeeded=true) {
492      PRINT_SPACE
493      if (commaNeeded)
494          _OUT << "\"" << str << "\"" << "," << std::endl;
495      else
496          _OUT << "\"" << str << "\"" << std::endl;
497 }
498 
print_VkQueryPool(VkQueryPool obj,const std::string & str,bool commaNeeded=true)499 static void print_VkQueryPool(VkQueryPool obj, const std::string& str, bool commaNeeded=true) {
500      PRINT_SPACE
501      if (commaNeeded)
502          _OUT << "\"" << str << "\"" << "," << std::endl;
503      else
504          _OUT << "\"" << str << "\"" << std::endl;
505 }
print_VkQueryPool(const VkQueryPool * obj,const std::string & str,bool commaNeeded=true)506 static void print_VkQueryPool(const VkQueryPool * obj, const std::string& str, bool commaNeeded=true) {
507      PRINT_SPACE
508      if (commaNeeded)
509          _OUT << "\"" << str << "\"" << "," << std::endl;
510      else
511          _OUT << "\"" << str << "\"" << std::endl;
512 }
513 
print_VkBufferView(VkBufferView obj,const std::string & str,bool commaNeeded=true)514 static void print_VkBufferView(VkBufferView obj, const std::string& str, bool commaNeeded=true) {
515      PRINT_SPACE
516      if (commaNeeded)
517          _OUT << "\"" << str << "\"" << "," << std::endl;
518      else
519          _OUT << "\"" << str << "\"" << std::endl;
520 }
print_VkBufferView(const VkBufferView * obj,const std::string & str,bool commaNeeded=true)521 static void print_VkBufferView(const VkBufferView * obj, const std::string& str, bool commaNeeded=true) {
522      PRINT_SPACE
523      if (commaNeeded)
524          _OUT << "\"" << str << "\"" << "," << std::endl;
525      else
526          _OUT << "\"" << str << "\"" << std::endl;
527 }
528 
print_VkImageView(VkImageView obj,const std::string & str,bool commaNeeded=true)529 static void print_VkImageView(VkImageView obj, const std::string& str, bool commaNeeded=true) {
530      PRINT_SPACE
531      if (commaNeeded)
532          _OUT << "\"" << str << "\"" << "," << std::endl;
533      else
534          _OUT << "\"" << str << "\"" << std::endl;
535 }
print_VkImageView(const VkImageView * obj,const std::string & str,bool commaNeeded=true)536 static void print_VkImageView(const VkImageView * obj, const std::string& str, bool commaNeeded=true) {
537      PRINT_SPACE
538      if (commaNeeded)
539          _OUT << "\"" << str << "\"" << "," << std::endl;
540      else
541          _OUT << "\"" << str << "\"" << std::endl;
542 }
543 
print_VkShaderModule(VkShaderModule obj,const std::string & str,bool commaNeeded=true)544 static void print_VkShaderModule(VkShaderModule obj, const std::string& str, bool commaNeeded=true) {
545      PRINT_SPACE
546      if (commaNeeded)
547          _OUT << "\"" << str << "\"" << "," << std::endl;
548      else
549          _OUT << "\"" << str << "\"" << std::endl;
550 }
print_VkShaderModule(const VkShaderModule * obj,const std::string & str,bool commaNeeded=true)551 static void print_VkShaderModule(const VkShaderModule * obj, const std::string& str, bool commaNeeded=true) {
552      PRINT_SPACE
553      if (commaNeeded)
554          _OUT << "\"" << str << "\"" << "," << std::endl;
555      else
556          _OUT << "\"" << str << "\"" << std::endl;
557 }
558 
print_VkPipelineCache(VkPipelineCache obj,const std::string & str,bool commaNeeded=true)559 static void print_VkPipelineCache(VkPipelineCache obj, const std::string& str, bool commaNeeded=true) {
560      PRINT_SPACE
561      if (commaNeeded)
562          _OUT << "\"" << str << "\"" << "," << std::endl;
563      else
564          _OUT << "\"" << str << "\"" << std::endl;
565 }
print_VkPipelineCache(const VkPipelineCache * obj,const std::string & str,bool commaNeeded=true)566 static void print_VkPipelineCache(const VkPipelineCache * obj, const std::string& str, bool commaNeeded=true) {
567      PRINT_SPACE
568      if (commaNeeded)
569          _OUT << "\"" << str << "\"" << "," << std::endl;
570      else
571          _OUT << "\"" << str << "\"" << std::endl;
572 }
573 
print_VkPipelineLayout(VkPipelineLayout obj,const std::string & str,bool commaNeeded=true)574 static void print_VkPipelineLayout(VkPipelineLayout obj, const std::string& str, bool commaNeeded=true) {
575      PRINT_SPACE
576      if (commaNeeded)
577          _OUT << "\"" << str << "\"" << "," << std::endl;
578      else
579          _OUT << "\"" << str << "\"" << std::endl;
580 }
print_VkPipelineLayout(const VkPipelineLayout * obj,const std::string & str,bool commaNeeded=true)581 static void print_VkPipelineLayout(const VkPipelineLayout * obj, const std::string& str, bool commaNeeded=true) {
582      PRINT_SPACE
583      if (commaNeeded)
584          _OUT << "\"" << str << "\"" << "," << std::endl;
585      else
586          _OUT << "\"" << str << "\"" << std::endl;
587 }
588 
print_VkPipeline(VkPipeline obj,const std::string & str,bool commaNeeded=true)589 static void print_VkPipeline(VkPipeline obj, const std::string& str, bool commaNeeded=true) {
590      PRINT_SPACE
591      if (commaNeeded)
592          _OUT << "\"" << str << "\"" << "," << std::endl;
593      else
594          _OUT << "\"" << str << "\"" << std::endl;
595 }
print_VkPipeline(const VkPipeline * obj,const std::string & str,bool commaNeeded=true)596 static void print_VkPipeline(const VkPipeline * obj, const std::string& str, bool commaNeeded=true) {
597      PRINT_SPACE
598      if (commaNeeded)
599          _OUT << "\"" << str << "\"" << "," << std::endl;
600      else
601          _OUT << "\"" << str << "\"" << std::endl;
602 }
603 
print_VkRenderPass(VkRenderPass obj,const std::string & str,bool commaNeeded=true)604 static void print_VkRenderPass(VkRenderPass obj, const std::string& str, bool commaNeeded=true) {
605      PRINT_SPACE
606      if (commaNeeded)
607          _OUT << "\"" << str << "\"" << "," << std::endl;
608      else
609          _OUT << "\"" << str << "\"" << std::endl;
610 }
print_VkRenderPass(const VkRenderPass * obj,const std::string & str,bool commaNeeded=true)611 static void print_VkRenderPass(const VkRenderPass * obj, const std::string& str, bool commaNeeded=true) {
612      PRINT_SPACE
613      if (commaNeeded)
614          _OUT << "\"" << str << "\"" << "," << std::endl;
615      else
616          _OUT << "\"" << str << "\"" << std::endl;
617 }
618 
print_VkDescriptorSetLayout(VkDescriptorSetLayout obj,const std::string & str,bool commaNeeded=true)619 static void print_VkDescriptorSetLayout(VkDescriptorSetLayout obj, const std::string& str, bool commaNeeded=true) {
620      PRINT_SPACE
621      if (commaNeeded)
622          _OUT << "\"" << str << "\"" << "," << std::endl;
623      else
624          _OUT << "\"" << str << "\"" << std::endl;
625 }
print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj,const std::string & str,bool commaNeeded=true)626 static void print_VkDescriptorSetLayout(const VkDescriptorSetLayout * obj, const std::string& str, bool commaNeeded=true) {
627      PRINT_SPACE
628      if (commaNeeded)
629          _OUT << "\"" << str << "\"" << "," << std::endl;
630      else
631          _OUT << "\"" << str << "\"" << std::endl;
632 }
633 
print_VkSampler(VkSampler obj,const std::string & str,bool commaNeeded=true)634 static void print_VkSampler(VkSampler obj, const std::string& str, bool commaNeeded=true) {
635      PRINT_SPACE
636      if (commaNeeded)
637          _OUT << "\"" << str << "\"" << "," << std::endl;
638      else
639          _OUT << "\"" << str << "\"" << std::endl;
640 }
print_VkSampler(const VkSampler * obj,const std::string & str,bool commaNeeded=true)641 static void print_VkSampler(const VkSampler * obj, const std::string& str, bool commaNeeded=true) {
642      PRINT_SPACE
643      if (commaNeeded)
644          _OUT << "\"" << str << "\"" << "," << std::endl;
645      else
646          _OUT << "\"" << str << "\"" << std::endl;
647 }
648 
print_VkDescriptorSet(VkDescriptorSet obj,const std::string & str,bool commaNeeded=true)649 static void print_VkDescriptorSet(VkDescriptorSet obj, const std::string& str, bool commaNeeded=true) {
650      PRINT_SPACE
651      if (commaNeeded)
652          _OUT << "\"" << str << "\"" << "," << std::endl;
653      else
654          _OUT << "\"" << str << "\"" << std::endl;
655 }
print_VkDescriptorSet(const VkDescriptorSet * obj,const std::string & str,bool commaNeeded=true)656 static void print_VkDescriptorSet(const VkDescriptorSet * obj, const std::string& str, bool commaNeeded=true) {
657      PRINT_SPACE
658      if (commaNeeded)
659          _OUT << "\"" << str << "\"" << "," << std::endl;
660      else
661          _OUT << "\"" << str << "\"" << std::endl;
662 }
663 
print_VkDescriptorPool(VkDescriptorPool obj,const std::string & str,bool commaNeeded=true)664 static void print_VkDescriptorPool(VkDescriptorPool obj, const std::string& str, bool commaNeeded=true) {
665      PRINT_SPACE
666      if (commaNeeded)
667          _OUT << "\"" << str << "\"" << "," << std::endl;
668      else
669          _OUT << "\"" << str << "\"" << std::endl;
670 }
print_VkDescriptorPool(const VkDescriptorPool * obj,const std::string & str,bool commaNeeded=true)671 static void print_VkDescriptorPool(const VkDescriptorPool * obj, const std::string& str, bool commaNeeded=true) {
672      PRINT_SPACE
673      if (commaNeeded)
674          _OUT << "\"" << str << "\"" << "," << std::endl;
675      else
676          _OUT << "\"" << str << "\"" << std::endl;
677 }
678 
print_VkFramebuffer(VkFramebuffer obj,const std::string & str,bool commaNeeded=true)679 static void print_VkFramebuffer(VkFramebuffer obj, const std::string& str, bool commaNeeded=true) {
680      PRINT_SPACE
681      if (commaNeeded)
682          _OUT << "\"" << str << "\"" << "," << std::endl;
683      else
684          _OUT << "\"" << str << "\"" << std::endl;
685 }
print_VkFramebuffer(const VkFramebuffer * obj,const std::string & str,bool commaNeeded=true)686 static void print_VkFramebuffer(const VkFramebuffer * obj, const std::string& str, bool commaNeeded=true) {
687      PRINT_SPACE
688      if (commaNeeded)
689          _OUT << "\"" << str << "\"" << "," << std::endl;
690      else
691          _OUT << "\"" << str << "\"" << std::endl;
692 }
693 
print_VkCommandPool(VkCommandPool obj,const std::string & str,bool commaNeeded=true)694 static void print_VkCommandPool(VkCommandPool obj, const std::string& str, bool commaNeeded=true) {
695      PRINT_SPACE
696      if (commaNeeded)
697          _OUT << "\"" << str << "\"" << "," << std::endl;
698      else
699          _OUT << "\"" << str << "\"" << std::endl;
700 }
print_VkCommandPool(const VkCommandPool * obj,const std::string & str,bool commaNeeded=true)701 static void print_VkCommandPool(const VkCommandPool * obj, const std::string& str, bool commaNeeded=true) {
702      PRINT_SPACE
703      if (commaNeeded)
704          _OUT << "\"" << str << "\"" << "," << std::endl;
705      else
706          _OUT << "\"" << str << "\"" << std::endl;
707 }
708 
709 static std::map<deUint64, std::string> VkResult_map = {
710     std::make_pair(0, "VK_SUCCESS"),
711     std::make_pair(1, "VK_NOT_READY"),
712     std::make_pair(2, "VK_TIMEOUT"),
713     std::make_pair(3, "VK_EVENT_SET"),
714     std::make_pair(4, "VK_EVENT_RESET"),
715     std::make_pair(5, "VK_INCOMPLETE"),
716     std::make_pair(-1, "VK_ERROR_OUT_OF_HOST_MEMORY"),
717     std::make_pair(-2, "VK_ERROR_OUT_OF_DEVICE_MEMORY"),
718     std::make_pair(-3, "VK_ERROR_INITIALIZATION_FAILED"),
719     std::make_pair(-4, "VK_ERROR_DEVICE_LOST"),
720     std::make_pair(-5, "VK_ERROR_MEMORY_MAP_FAILED"),
721     std::make_pair(-6, "VK_ERROR_LAYER_NOT_PRESENT"),
722     std::make_pair(-7, "VK_ERROR_EXTENSION_NOT_PRESENT"),
723     std::make_pair(-8, "VK_ERROR_FEATURE_NOT_PRESENT"),
724     std::make_pair(-9, "VK_ERROR_INCOMPATIBLE_DRIVER"),
725     std::make_pair(-10, "VK_ERROR_TOO_MANY_OBJECTS"),
726     std::make_pair(-11, "VK_ERROR_FORMAT_NOT_SUPPORTED"),
727     std::make_pair(-12, "VK_ERROR_FRAGMENTED_POOL"),
728     std::make_pair(-13, "VK_ERROR_UNKNOWN"),
729     std::make_pair(1000069000, "VK_ERROR_OUT_OF_POOL_MEMORY"),
730     std::make_pair(1000072003, "VK_ERROR_INVALID_EXTERNAL_HANDLE"),
731     std::make_pair(1000161000, "VK_ERROR_FRAGMENTATION"),
732     std::make_pair(1000257000, "VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS"),
733     std::make_pair(1000011001, "VK_ERROR_VALIDATION_FAILED"),
734     std::make_pair(1000298000, "VK_ERROR_INVALID_PIPELINE_CACHE_DATA"),
735     std::make_pair(1000298001, "VK_ERROR_NO_PIPELINE_MATCH"),
736     std::make_pair(1000000000, "VK_ERROR_SURFACE_LOST_KHR"),
737     std::make_pair(1000000001, "VK_ERROR_NATIVE_WINDOW_IN_USE_KHR"),
738     std::make_pair(1000001003, "VK_SUBOPTIMAL_KHR"),
739     std::make_pair(1000001004, "VK_ERROR_OUT_OF_DATE_KHR"),
740     std::make_pair(1000003001, "VK_ERROR_INCOMPATIBLE_DISPLAY_KHR"),
741     std::make_pair(1000012000, "VK_ERROR_INVALID_SHADER_NV"),
742     std::make_pair(1000158000, "VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT"),
743     std::make_pair(1000174001, "VK_ERROR_NOT_PERMITTED_EXT"),
744     std::make_pair(1000255000, "VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT"),
745     std::make_pair(1000268000, "VK_THREAD_IDLE_KHR"),
746     std::make_pair(1000268001, "VK_THREAD_DONE_KHR"),
747     std::make_pair(1000268002, "VK_OPERATION_DEFERRED_KHR"),
748     std::make_pair(1000268003, "VK_OPERATION_NOT_DEFERRED_KHR"),
749     std::make_pair(1000297000, "VK_PIPELINE_COMPILE_REQUIRED_EXT"),
750 };
print_VkResult(VkResult obj,const std::string & str,bool commaNeeded=true)751 static void print_VkResult(VkResult obj, const std::string& str, bool commaNeeded=true) {
752      PRINT_SPACE
753      if (str != "") _OUT << "\"" << str << "\"" << " : ";
754      if (commaNeeded)
755          _OUT << "\"" <<  VkResult_map[obj] << "\"," << std::endl;
756      else
757          _OUT << "\"" << VkResult_map[obj] << "\"" << std::endl;
758 }
print_VkResult(const VkResult * obj,const std::string & str,bool commaNeeded=true)759 static void print_VkResult(const VkResult * obj, const std::string& str, bool commaNeeded=true) {
760      PRINT_SPACE
761      if (str != "") _OUT << "\"" << str << "\"" << " : ";
762      if (commaNeeded)
763          _OUT << "\"" <<  VkResult_map[*obj] << "\"," << std::endl;
764      else
765          _OUT << "\"" << VkResult_map[*obj] << "\"" << std::endl;
766 }
767 
768 static std::map<deUint64, std::string> VkStructureType_map = {
769     std::make_pair(0, "VK_STRUCTURE_TYPE_APPLICATION_INFO"),
770     std::make_pair(1, "VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO"),
771     std::make_pair(2, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO"),
772     std::make_pair(3, "VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO"),
773     std::make_pair(4, "VK_STRUCTURE_TYPE_SUBMIT_INFO"),
774     std::make_pair(5, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO"),
775     std::make_pair(6, "VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE"),
776     std::make_pair(8, "VK_STRUCTURE_TYPE_FENCE_CREATE_INFO"),
777     std::make_pair(9, "VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO"),
778     std::make_pair(10, "VK_STRUCTURE_TYPE_EVENT_CREATE_INFO"),
779     std::make_pair(11, "VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO"),
780     std::make_pair(12, "VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO"),
781     std::make_pair(13, "VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO"),
782     std::make_pair(14, "VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO"),
783     std::make_pair(15, "VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO"),
784     std::make_pair(17, "VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO"),
785     std::make_pair(18, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO"),
786     std::make_pair(19, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO"),
787     std::make_pair(20, "VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO"),
788     std::make_pair(21, "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO"),
789     std::make_pair(22, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO"),
790     std::make_pair(23, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO"),
791     std::make_pair(24, "VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO"),
792     std::make_pair(25, "VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO"),
793     std::make_pair(26, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO"),
794     std::make_pair(27, "VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO"),
795     std::make_pair(28, "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO"),
796     std::make_pair(29, "VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO"),
797     std::make_pair(30, "VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO"),
798     std::make_pair(31, "VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO"),
799     std::make_pair(32, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO"),
800     std::make_pair(33, "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO"),
801     std::make_pair(34, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO"),
802     std::make_pair(35, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET"),
803     std::make_pair(36, "VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET"),
804     std::make_pair(37, "VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO"),
805     std::make_pair(38, "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO"),
806     std::make_pair(39, "VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO"),
807     std::make_pair(40, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO"),
808     std::make_pair(41, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO"),
809     std::make_pair(42, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO"),
810     std::make_pair(43, "VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO"),
811     std::make_pair(44, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER"),
812     std::make_pair(45, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER"),
813     std::make_pair(46, "VK_STRUCTURE_TYPE_MEMORY_BARRIER"),
814     std::make_pair(47, "VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO"),
815     std::make_pair(48, "VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO"),
816     std::make_pair(1000094000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES"),
817     std::make_pair(1000157000, "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO"),
818     std::make_pair(1000157001, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO"),
819     std::make_pair(1000083000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES"),
820     std::make_pair(1000127000, "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS"),
821     std::make_pair(1000127001, "VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO"),
822     std::make_pair(1000060000, "VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO"),
823     std::make_pair(1000060003, "VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO"),
824     std::make_pair(1000060004, "VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO"),
825     std::make_pair(1000060005, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO"),
826     std::make_pair(1000060013, "VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO"),
827     std::make_pair(1000060014, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO"),
828     std::make_pair(1000070000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES"),
829     std::make_pair(1000070001, "VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO"),
830     std::make_pair(1000146000, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2"),
831     std::make_pair(1000146001, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2"),
832     std::make_pair(1000146003, "VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2"),
833     std::make_pair(1000059000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2"),
834     std::make_pair(1000059001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2"),
835     std::make_pair(1000059002, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2"),
836     std::make_pair(1000059003, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2"),
837     std::make_pair(1000059004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2"),
838     std::make_pair(1000059005, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2"),
839     std::make_pair(1000059006, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2"),
840     std::make_pair(1000117000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES"),
841     std::make_pair(1000117001, "VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO"),
842     std::make_pair(1000117002, "VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO"),
843     std::make_pair(1000117003, "VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO"),
844     std::make_pair(1000053000, "VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO"),
845     std::make_pair(1000053001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES"),
846     std::make_pair(1000053002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES"),
847     std::make_pair(1000120000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES"),
848     std::make_pair(1000145000, "VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO"),
849     std::make_pair(1000145001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES"),
850     std::make_pair(1000145002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES"),
851     std::make_pair(1000145003, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2"),
852     std::make_pair(1000156000, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO"),
853     std::make_pair(1000156001, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO"),
854     std::make_pair(1000156002, "VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO"),
855     std::make_pair(1000156003, "VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO"),
856     std::make_pair(1000156004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES"),
857     std::make_pair(1000156005, "VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES"),
858     std::make_pair(1000071000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO"),
859     std::make_pair(1000071001, "VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES"),
860     std::make_pair(1000071002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO"),
861     std::make_pair(1000071003, "VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES"),
862     std::make_pair(1000071004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES"),
863     std::make_pair(1000072000, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO"),
864     std::make_pair(1000072001, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO"),
865     std::make_pair(1000072002, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO"),
866     std::make_pair(1000112000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO"),
867     std::make_pair(1000112001, "VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES"),
868     std::make_pair(1000113000, "VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO"),
869     std::make_pair(1000077000, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO"),
870     std::make_pair(1000076000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO"),
871     std::make_pair(1000076001, "VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES"),
872     std::make_pair(1000168000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES"),
873     std::make_pair(1000168001, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT"),
874     std::make_pair(1000063000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES"),
875     std::make_pair(49, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES"),
876     std::make_pair(50, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES"),
877     std::make_pair(51, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES"),
878     std::make_pair(52, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES"),
879     std::make_pair(1000147000, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO"),
880     std::make_pair(1000109000, "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2"),
881     std::make_pair(1000109001, "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2"),
882     std::make_pair(1000109002, "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2"),
883     std::make_pair(1000109003, "VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2"),
884     std::make_pair(1000109004, "VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2"),
885     std::make_pair(1000109005, "VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO"),
886     std::make_pair(1000109006, "VK_STRUCTURE_TYPE_SUBPASS_END_INFO"),
887     std::make_pair(1000177000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES"),
888     std::make_pair(1000196000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES"),
889     std::make_pair(1000180000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES"),
890     std::make_pair(1000082000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES"),
891     std::make_pair(1000197000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES"),
892     std::make_pair(1000161000, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO"),
893     std::make_pair(1000161001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES"),
894     std::make_pair(1000161002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES"),
895     std::make_pair(1000161003, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO"),
896     std::make_pair(1000161004, "VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT"),
897     std::make_pair(1000199000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES"),
898     std::make_pair(1000199001, "VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE"),
899     std::make_pair(1000221000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES"),
900     std::make_pair(1000246000, "VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO"),
901     std::make_pair(1000130000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES"),
902     std::make_pair(1000130001, "VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO"),
903     std::make_pair(1000211000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES"),
904     std::make_pair(1000108000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES"),
905     std::make_pair(1000108001, "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO"),
906     std::make_pair(1000108002, "VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO"),
907     std::make_pair(1000108003, "VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO"),
908     std::make_pair(1000253000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES"),
909     std::make_pair(1000175000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES"),
910     std::make_pair(1000241000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES"),
911     std::make_pair(1000241001, "VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT"),
912     std::make_pair(1000241002, "VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT"),
913     std::make_pair(1000261000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES"),
914     std::make_pair(1000207000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES"),
915     std::make_pair(1000207001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES"),
916     std::make_pair(1000207002, "VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO"),
917     std::make_pair(1000207003, "VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO"),
918     std::make_pair(1000207004, "VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO"),
919     std::make_pair(1000207005, "VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO"),
920     std::make_pair(1000257000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES"),
921     std::make_pair(1000244001, "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO"),
922     std::make_pair(1000257002, "VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO"),
923     std::make_pair(1000257003, "VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO"),
924     std::make_pair(1000257004, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO"),
925     std::make_pair(1000298000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES"),
926     std::make_pair(1000298001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES"),
927     std::make_pair(1000298002, "VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO"),
928     std::make_pair(1000298003, "VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO"),
929     std::make_pair(1000298004, "VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_CONSUMPTION"),
930     std::make_pair(1000298005, "VK_STRUCTURE_TYPE_PIPELINE_POOL_SIZE"),
931     std::make_pair(1000298007, "VK_STRUCTURE_TYPE_FAULT_DATA"),
932     std::make_pair(1000298008, "VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO"),
933     std::make_pair(1000298010, "VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO"),
934     std::make_pair(1000001000, "VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR"),
935     std::make_pair(1000001001, "VK_STRUCTURE_TYPE_PRESENT_INFO_KHR"),
936     std::make_pair(1000060007, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"),
937     std::make_pair(1000060008, "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"),
938     std::make_pair(1000060009, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"),
939     std::make_pair(1000060010, "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"),
940     std::make_pair(1000060011, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"),
941     std::make_pair(1000060012, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"),
942     std::make_pair(1000002000, "VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR"),
943     std::make_pair(1000002001, "VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR"),
944     std::make_pair(1000003000, "VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR"),
945     std::make_pair(1000004000, "VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR"),
946     std::make_pair(1000005000, "VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR"),
947     std::make_pair(1000006000, "VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR"),
948     std::make_pair(1000008000, "VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR"),
949     std::make_pair(1000009000, "VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR"),
950     std::make_pair(1000010000, "VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID"),
951     std::make_pair(1000010001, "VK_STRUCTURE_TYPE_SWAPCHAIN_IMAGE_CREATE_INFO_ANDROID"),
952     std::make_pair(1000010002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENTATION_PROPERTIES_ANDROID"),
953     std::make_pair(1000011000, "VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT"),
954     std::make_pair(1000018000, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD"),
955     std::make_pair(1000022000, "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT"),
956     std::make_pair(1000022001, "VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT"),
957     std::make_pair(1000022002, "VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT"),
958     std::make_pair(1000023000, "VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR"),
959     std::make_pair(1000023001, "VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR"),
960     std::make_pair(1000023002, "VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR"),
961     std::make_pair(1000023003, "VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR"),
962     std::make_pair(1000023004, "VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR"),
963     std::make_pair(1000023005, "VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR"),
964     std::make_pair(1000023006, "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR"),
965     std::make_pair(1000023007, "VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR"),
966     std::make_pair(1000023008, "VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR"),
967     std::make_pair(1000023009, "VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR"),
968     std::make_pair(1000023010, "VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR"),
969     std::make_pair(1000023011, "VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR"),
970     std::make_pair(1000023012, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR"),
971     std::make_pair(1000023013, "VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR"),
972     std::make_pair(1000023014, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR"),
973     std::make_pair(1000023015, "VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR"),
974     std::make_pair(1000024000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR"),
975     std::make_pair(1000026000, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV"),
976     std::make_pair(1000026001, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV"),
977     std::make_pair(1000026002, "VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV"),
978     std::make_pair(1000028000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT"),
979     std::make_pair(1000028001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT"),
980     std::make_pair(1000028002, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT"),
981     std::make_pair(1000029000, "VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX"),
982     std::make_pair(1000029001, "VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX"),
983     std::make_pair(1000029002, "VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX"),
984     std::make_pair(1000030000, "VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX"),
985     std::make_pair(1000030001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX"),
986     std::make_pair(1000038000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT"),
987     std::make_pair(1000038001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT"),
988     std::make_pair(1000038002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"),
989     std::make_pair(1000038003, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT"),
990     std::make_pair(1000038004, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT"),
991     std::make_pair(1000038005, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT"),
992     std::make_pair(1000038006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT"),
993     std::make_pair(1000038007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT"),
994     std::make_pair(1000038008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT"),
995     std::make_pair(1000038009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT"),
996     std::make_pair(1000038010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT"),
997     std::make_pair(1000039000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT"),
998     std::make_pair(1000039001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT"),
999     std::make_pair(1000039002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1000     std::make_pair(1000039003, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"),
1001     std::make_pair(1000039004, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT"),
1002     std::make_pair(1000039005, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT"),
1003     std::make_pair(1000039006, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_EXT"),
1004     std::make_pair(1000039007, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT"),
1005     std::make_pair(1000039008, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT"),
1006     std::make_pair(1000039009, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT"),
1007     std::make_pair(1000039010, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT"),
1008     std::make_pair(1000039011, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT"),
1009     std::make_pair(1000040000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR"),
1010     std::make_pair(1000040001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT"),
1011     std::make_pair(1000040002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR"),
1012     std::make_pair(1000040003, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT"),
1013     std::make_pair(1000040004, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT"),
1014     std::make_pair(1000040005, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1015     std::make_pair(1000040006, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR"),
1016     std::make_pair(1000040007, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR"),
1017     std::make_pair(1000041000, "VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD"),
1018     std::make_pair(1000044000, "VK_STRUCTURE_TYPE_RENDERING_INFO_KHR"),
1019     std::make_pair(1000044001, "VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR"),
1020     std::make_pair(1000044002, "VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR"),
1021     std::make_pair(1000044003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR"),
1022     std::make_pair(1000044004, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR"),
1023     std::make_pair(1000044006, "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"),
1024     std::make_pair(1000044007, "VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT"),
1025     std::make_pair(1000044008, "VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD"),
1026     std::make_pair(1000044009, "VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX"),
1027     std::make_pair(1000049000, "VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP"),
1028     std::make_pair(1000050000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV"),
1029     std::make_pair(1000051000, "VK_STRUCTURE_TYPE_PRIVATE_VENDOR_INFO_RESERVED_OFFSET_0_NV"),
1030     std::make_pair(1000056000, "VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV"),
1031     std::make_pair(1000056001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV"),
1032     std::make_pair(1000057000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV"),
1033     std::make_pair(1000057001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV"),
1034     std::make_pair(1000058000, "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV"),
1035     std::make_pair(1000060007, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR"),
1036     std::make_pair(1000060008, "VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR"),
1037     std::make_pair(1000060009, "VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR"),
1038     std::make_pair(1000060010, "VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR"),
1039     std::make_pair(1000060011, "VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR"),
1040     std::make_pair(1000060012, "VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR"),
1041     std::make_pair(1000061000, "VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT"),
1042     std::make_pair(1000062000, "VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN"),
1043     std::make_pair(1000066000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT"),
1044     std::make_pair(1000067000, "VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT"),
1045     std::make_pair(1000067001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT"),
1046     std::make_pair(1000073000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR"),
1047     std::make_pair(1000073001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR"),
1048     std::make_pair(1000073002, "VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR"),
1049     std::make_pair(1000073003, "VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR"),
1050     std::make_pair(1000074000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR"),
1051     std::make_pair(1000074001, "VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR"),
1052     std::make_pair(1000074002, "VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR"),
1053     std::make_pair(1000075000, "VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR"),
1054     std::make_pair(1000078000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"),
1055     std::make_pair(1000078001, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR"),
1056     std::make_pair(1000078002, "VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR"),
1057     std::make_pair(1000078003, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR"),
1058     std::make_pair(1000079000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR"),
1059     std::make_pair(1000079001, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR"),
1060     std::make_pair(1000080000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR"),
1061     std::make_pair(1000081000, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT"),
1062     std::make_pair(1000081001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT"),
1063     std::make_pair(1000081002, "VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT"),
1064     std::make_pair(1000084000, "VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR"),
1065     std::make_pair(1000087000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV"),
1066     std::make_pair(1000090000, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT"),
1067     std::make_pair(1000091000, "VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT"),
1068     std::make_pair(1000091001, "VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT"),
1069     std::make_pair(1000091002, "VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT"),
1070     std::make_pair(1000091003, "VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT"),
1071     std::make_pair(1000092000, "VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE"),
1072     std::make_pair(1000097000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX"),
1073     std::make_pair(1000098000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV"),
1074     std::make_pair(1000099000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT"),
1075     std::make_pair(1000099001, "VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT"),
1076     std::make_pair(1000101000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT"),
1077     std::make_pair(1000101001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT"),
1078     std::make_pair(1000102000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT"),
1079     std::make_pair(1000102001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT"),
1080     std::make_pair(1000105000, "VK_STRUCTURE_TYPE_HDR_METADATA_EXT"),
1081     std::make_pair(1000111000, "VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR"),
1082     std::make_pair(1000114000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR"),
1083     std::make_pair(1000114001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR"),
1084     std::make_pair(1000114002, "VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR"),
1085     std::make_pair(1000115000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR"),
1086     std::make_pair(1000115001, "VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR"),
1087     std::make_pair(1000116000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR"),
1088     std::make_pair(1000116001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR"),
1089     std::make_pair(1000116002, "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR"),
1090     std::make_pair(1000116003, "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR"),
1091     std::make_pair(1000116004, "VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR"),
1092     std::make_pair(1000116005, "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR"),
1093     std::make_pair(1000116006, "VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR"),
1094     std::make_pair(1000116007, "VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR"),
1095     std::make_pair(1000119000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR"),
1096     std::make_pair(1000119001, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR"),
1097     std::make_pair(1000119002, "VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR"),
1098     std::make_pair(1000121000, "VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR"),
1099     std::make_pair(1000121001, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR"),
1100     std::make_pair(1000121002, "VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR"),
1101     std::make_pair(1000121003, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR"),
1102     std::make_pair(1000121004, "VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR"),
1103     std::make_pair(1000122000, "VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK"),
1104     std::make_pair(1000123000, "VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK"),
1105     std::make_pair(1000128000, "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT"),
1106     std::make_pair(1000128001, "VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT"),
1107     std::make_pair(1000128002, "VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT"),
1108     std::make_pair(1000128003, "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT"),
1109     std::make_pair(1000128004, "VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT"),
1110     std::make_pair(1000129000, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID"),
1111     std::make_pair(1000129001, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID"),
1112     std::make_pair(1000129002, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID"),
1113     std::make_pair(1000129003, "VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"),
1114     std::make_pair(1000129004, "VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID"),
1115     std::make_pair(1000129005, "VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID"),
1116     std::make_pair(1000129006, "VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID"),
1117     std::make_pair(1000138000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT"),
1118     std::make_pair(1000138001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT"),
1119     std::make_pair(1000138002, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT"),
1120     std::make_pair(1000138003, "VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT"),
1121     std::make_pair(1000143000, "VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT"),
1122     std::make_pair(1000143001, "VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT"),
1123     std::make_pair(1000143002, "VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT"),
1124     std::make_pair(1000143003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT"),
1125     std::make_pair(1000143004, "VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT"),
1126     std::make_pair(1000148000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT"),
1127     std::make_pair(1000148001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT"),
1128     std::make_pair(1000148002, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT"),
1129     std::make_pair(1000149000, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV"),
1130     std::make_pair(1000150007, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR"),
1131     std::make_pair(1000150000, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR"),
1132     std::make_pair(1000150002, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR"),
1133     std::make_pair(1000150003, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR"),
1134     std::make_pair(1000150004, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR"),
1135     std::make_pair(1000150005, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR"),
1136     std::make_pair(1000150006, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR"),
1137     std::make_pair(1000150009, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR"),
1138     std::make_pair(1000150010, "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR"),
1139     std::make_pair(1000150011, "VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR"),
1140     std::make_pair(1000150012, "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR"),
1141     std::make_pair(1000150013, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR"),
1142     std::make_pair(1000150014, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR"),
1143     std::make_pair(1000150017, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR"),
1144     std::make_pair(1000150020, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR"),
1145     std::make_pair(1000347000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR"),
1146     std::make_pair(1000347001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR"),
1147     std::make_pair(1000150015, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR"),
1148     std::make_pair(1000150016, "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR"),
1149     std::make_pair(1000150018, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR"),
1150     std::make_pair(1000348013, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR"),
1151     std::make_pair(1000152000, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV"),
1152     std::make_pair(1000154000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV"),
1153     std::make_pair(1000154001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV"),
1154     std::make_pair(1000158000, "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT"),
1155     std::make_pair(1000158002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT"),
1156     std::make_pair(1000158003, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT"),
1157     std::make_pair(1000158004, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT"),
1158     std::make_pair(1000158005, "VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT"),
1159     std::make_pair(1000158006, "VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT"),
1160     std::make_pair(1000160000, "VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT"),
1161     std::make_pair(1000160001, "VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT"),
1162     std::make_pair(1000163000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR"),
1163     std::make_pair(1000163001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR"),
1164     std::make_pair(1000164000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV"),
1165     std::make_pair(1000164001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV"),
1166     std::make_pair(1000164002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV"),
1167     std::make_pair(1000164005, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV"),
1168     std::make_pair(1000165000, "VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV"),
1169     std::make_pair(1000165001, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV"),
1170     std::make_pair(1000165003, "VK_STRUCTURE_TYPE_GEOMETRY_NV"),
1171     std::make_pair(1000165004, "VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV"),
1172     std::make_pair(1000165005, "VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV"),
1173     std::make_pair(1000165006, "VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV"),
1174     std::make_pair(1000165007, "VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV"),
1175     std::make_pair(1000165008, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV"),
1176     std::make_pair(1000165009, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV"),
1177     std::make_pair(1000165011, "VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV"),
1178     std::make_pair(1000165012, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV"),
1179     std::make_pair(1000166000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV"),
1180     std::make_pair(1000166001, "VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV"),
1181     std::make_pair(1000170000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT"),
1182     std::make_pair(1000170001, "VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT"),
1183     std::make_pair(1000174000, "VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT"),
1184     std::make_pair(1000178000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT"),
1185     std::make_pair(1000178001, "VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT"),
1186     std::make_pair(1000178002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT"),
1187     std::make_pair(1000181000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR"),
1188     std::make_pair(1000183000, "VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD"),
1189     std::make_pair(1000184000, "VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT"),
1190     std::make_pair(1000185000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD"),
1191     std::make_pair(1000187000, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT"),
1192     std::make_pair(1000187001, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT"),
1193     std::make_pair(1000187002, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT"),
1194     std::make_pair(1000187003, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT"),
1195     std::make_pair(1000187004, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT"),
1196     std::make_pair(1000187005, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT"),
1197     std::make_pair(1000187006, "VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT"),
1198     std::make_pair(1000189000, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD"),
1199     std::make_pair(1000190000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT"),
1200     std::make_pair(1000190001, "VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT"),
1201     std::make_pair(1000190002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT"),
1202     std::make_pair(1000191000, "VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP"),
1203     std::make_pair(1000192000, "VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT"),
1204     std::make_pair(1000201000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV"),
1205     std::make_pair(1000202000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV"),
1206     std::make_pair(1000202001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV"),
1207     std::make_pair(1000203000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV"),
1208     std::make_pair(1000204000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV"),
1209     std::make_pair(1000205000, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV"),
1210     std::make_pair(1000205002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV"),
1211     std::make_pair(1000206000, "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV"),
1212     std::make_pair(1000206001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV"),
1213     std::make_pair(1000209000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL"),
1214     std::make_pair(1000210000, "VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL"),
1215     std::make_pair(1000210001, "VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL"),
1216     std::make_pair(1000210002, "VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL"),
1217     std::make_pair(1000210003, "VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL"),
1218     std::make_pair(1000210004, "VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL"),
1219     std::make_pair(1000210005, "VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL"),
1220     std::make_pair(1000212000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT"),
1221     std::make_pair(1000213000, "VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD"),
1222     std::make_pair(1000213001, "VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD"),
1223     std::make_pair(1000214000, "VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA"),
1224     std::make_pair(1000215000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR"),
1225     std::make_pair(1000217000, "VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT"),
1226     std::make_pair(1000218000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT"),
1227     std::make_pair(1000218001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT"),
1228     std::make_pair(1000218002, "VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT"),
1229     std::make_pair(1000225000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT"),
1230     std::make_pair(1000225001, "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT"),
1231     std::make_pair(1000225002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT"),
1232     std::make_pair(1000226000, "VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR"),
1233     std::make_pair(1000226001, "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR"),
1234     std::make_pair(1000226002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR"),
1235     std::make_pair(1000226003, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR"),
1236     std::make_pair(1000226004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR"),
1237     std::make_pair(1000227000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD"),
1238     std::make_pair(1000229000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD"),
1239     std::make_pair(1000234000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT"),
1240     std::make_pair(1000237000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT"),
1241     std::make_pair(1000238000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT"),
1242     std::make_pair(1000238001, "VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT"),
1243     std::make_pair(1000239000, "VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR"),
1244     std::make_pair(1000240000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV"),
1245     std::make_pair(1000244000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT"),
1246     std::make_pair(1000244002, "VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT"),
1247     std::make_pair(1000245000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT"),
1248     std::make_pair(1000247000, "VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT"),
1249     std::make_pair(1000248000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR"),
1250     std::make_pair(1000249000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV"),
1251     std::make_pair(1000249001, "VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV"),
1252     std::make_pair(1000249002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV"),
1253     std::make_pair(1000250000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV"),
1254     std::make_pair(1000250001, "VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV"),
1255     std::make_pair(1000250002, "VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV"),
1256     std::make_pair(1000251000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT"),
1257     std::make_pair(1000252000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT"),
1258     std::make_pair(1000254000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT"),
1259     std::make_pair(1000254001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT"),
1260     std::make_pair(1000254002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT"),
1261     std::make_pair(1000255000, "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT"),
1262     std::make_pair(1000255002, "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT"),
1263     std::make_pair(1000255001, "VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT"),
1264     std::make_pair(1000256000, "VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT"),
1265     std::make_pair(1000259000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT"),
1266     std::make_pair(1000259001, "VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT"),
1267     std::make_pair(1000259002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT"),
1268     std::make_pair(1000260000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT"),
1269     std::make_pair(1000265000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT"),
1270     std::make_pair(1000267000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT"),
1271     std::make_pair(1000269000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR"),
1272     std::make_pair(1000269001, "VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR"),
1273     std::make_pair(1000269002, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR"),
1274     std::make_pair(1000269003, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR"),
1275     std::make_pair(1000269004, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR"),
1276     std::make_pair(1000269005, "VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR"),
1277     std::make_pair(1000273000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT"),
1278     std::make_pair(1000276000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT"),
1279     std::make_pair(1000277000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV"),
1280     std::make_pair(1000277001, "VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV"),
1281     std::make_pair(1000277002, "VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV"),
1282     std::make_pair(1000277003, "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV"),
1283     std::make_pair(1000277004, "VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV"),
1284     std::make_pair(1000277005, "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV"),
1285     std::make_pair(1000277006, "VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV"),
1286     std::make_pair(1000277007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV"),
1287     std::make_pair(1000278000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV"),
1288     std::make_pair(1000278001, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV"),
1289     std::make_pair(1000280000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR"),
1290     std::make_pair(1000280001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR"),
1291     std::make_pair(1000281000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT"),
1292     std::make_pair(1000281001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT"),
1293     std::make_pair(1000282000, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM"),
1294     std::make_pair(1000282001, "VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM"),
1295     std::make_pair(1000284000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT"),
1296     std::make_pair(1000284001, "VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT"),
1297     std::make_pair(1000284002, "VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT"),
1298     std::make_pair(1000286000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT"),
1299     std::make_pair(1000286001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT"),
1300     std::make_pair(1000287000, "VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT"),
1301     std::make_pair(1000287001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT"),
1302     std::make_pair(1000287002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT"),
1303     std::make_pair(1000290000, "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR"),
1304     std::make_pair(1000294000, "VK_STRUCTURE_TYPE_PRESENT_ID_KHR"),
1305     std::make_pair(1000294001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR"),
1306     std::make_pair(1000295000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT"),
1307     std::make_pair(1000295001, "VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT"),
1308     std::make_pair(1000295002, "VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT"),
1309     std::make_pair(1000297000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT"),
1310     std::make_pair(1000299000, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR"),
1311     std::make_pair(1000299001, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR"),
1312     std::make_pair(1000299002, "VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR"),
1313     std::make_pair(1000300000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV"),
1314     std::make_pair(1000300001, "VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV"),
1315     std::make_pair(1000308000, "VK_STRUCTURE_TYPE_REFRESH_OBJECT_LIST_KHR"),
1316     std::make_pair(1000309000, "VK_STRUCTURE_TYPE_RESERVED_QCOM"),
1317     std::make_pair(1000314000, "VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR"),
1318     std::make_pair(1000314001, "VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR"),
1319     std::make_pair(1000314002, "VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR"),
1320     std::make_pair(1000314003, "VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR"),
1321     std::make_pair(1000314004, "VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR"),
1322     std::make_pair(1000314005, "VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR"),
1323     std::make_pair(1000314006, "VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR"),
1324     std::make_pair(1000314007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR"),
1325     std::make_pair(1000314008, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV"),
1326     std::make_pair(1000314009, "VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV"),
1327     std::make_pair(1000323000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR"),
1328     std::make_pair(1000325000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR"),
1329     std::make_pair(1000326000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV"),
1330     std::make_pair(1000326001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV"),
1331     std::make_pair(1000326002, "VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV"),
1332     std::make_pair(1000327000, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV"),
1333     std::make_pair(1000327001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV"),
1334     std::make_pair(1000327002, "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV"),
1335     std::make_pair(1000330000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT"),
1336     std::make_pair(1000332000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT"),
1337     std::make_pair(1000332001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT"),
1338     std::make_pair(1000333000, "VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM"),
1339     std::make_pair(1000335000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT"),
1340     std::make_pair(1000336000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR"),
1341     std::make_pair(1000337000, "VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR"),
1342     std::make_pair(1000337001, "VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR"),
1343     std::make_pair(1000337002, "VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR"),
1344     std::make_pair(1000337003, "VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR"),
1345     std::make_pair(1000337004, "VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR"),
1346     std::make_pair(1000337005, "VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR"),
1347     std::make_pair(1000337006, "VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR"),
1348     std::make_pair(1000337007, "VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR"),
1349     std::make_pair(1000337008, "VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR"),
1350     std::make_pair(1000337009, "VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR"),
1351     std::make_pair(1000337010, "VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR"),
1352     std::make_pair(1000340000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT"),
1353     std::make_pair(1000342000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM"),
1354     std::make_pair(1000344000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT"),
1355     std::make_pair(1000346000, "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT"),
1356     std::make_pair(1000351000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE"),
1357     std::make_pair(1000351002, "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE"),
1358     std::make_pair(1000352000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT"),
1359     std::make_pair(1000352001, "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT"),
1360     std::make_pair(1000352002, "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT"),
1361     std::make_pair(1000353000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT"),
1362     std::make_pair(1000355000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT"),
1363     std::make_pair(1000355001, "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT"),
1364     std::make_pair(1000356000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT"),
1365     std::make_pair(1000360000, "VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR"),
1366     std::make_pair(1000364000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA"),
1367     std::make_pair(1000364001, "VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA"),
1368     std::make_pair(1000364002, "VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA"),
1369     std::make_pair(1000365000, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA"),
1370     std::make_pair(1000365001, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA"),
1371     std::make_pair(1000366000, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA"),
1372     std::make_pair(1000366001, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA"),
1373     std::make_pair(1000366002, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA"),
1374     std::make_pair(1000366003, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA"),
1375     std::make_pair(1000366004, "VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA"),
1376     std::make_pair(1000366005, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA"),
1377     std::make_pair(1000366006, "VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA"),
1378     std::make_pair(1000366007, "VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA"),
1379     std::make_pair(1000366008, "VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA"),
1380     std::make_pair(1000366009, "VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA"),
1381     std::make_pair(1000369000, "VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI"),
1382     std::make_pair(1000369001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI"),
1383     std::make_pair(1000369002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI"),
1384     std::make_pair(1000370000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI"),
1385     std::make_pair(1000371000, "VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV"),
1386     std::make_pair(1000371001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV"),
1387     std::make_pair(1000373000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV"),
1388     std::make_pair(1000373001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV"),
1389     std::make_pair(1000373002, "VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"),
1390     std::make_pair(1000373003, "VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV"),
1391     std::make_pair(1000373004, "VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_SCI_SYNC_INFO_NV"),
1392     std::make_pair(1000373005, "VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_SCI_SYNC_INFO_NV"),
1393     std::make_pair(1000373006, "VK_STRUCTURE_TYPE_SEMAPHORE_GET_SCI_SYNC_INFO_NV"),
1394     std::make_pair(1000373007, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_FEATURES_NV"),
1395     std::make_pair(1000374000, "VK_STRUCTURE_TYPE_IMPORT_MEMORY_SCI_BUF_INFO_NV"),
1396     std::make_pair(1000374001, "VK_STRUCTURE_TYPE_EXPORT_MEMORY_SCI_BUF_INFO_NV"),
1397     std::make_pair(1000374002, "VK_STRUCTURE_TYPE_MEMORY_GET_SCI_BUF_INFO_NV"),
1398     std::make_pair(1000374003, "VK_STRUCTURE_TYPE_MEMORY_SCI_BUF_PROPERTIES_NV"),
1399     std::make_pair(1000374004, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCI_BUF_FEATURES_NV"),
1400     std::make_pair(1000377000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT"),
1401     std::make_pair(1000378000, "VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX"),
1402     std::make_pair(1000381000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT"),
1403     std::make_pair(1000381001, "VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT"),
1404     std::make_pair(1000388000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT"),
1405     std::make_pair(1000388001, "VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT"),
1406     std::make_pair(1000391000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT"),
1407     std::make_pair(1000391001, "VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT"),
1408     std::make_pair(1000392000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT"),
1409     std::make_pair(1000392001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT"),
1410     std::make_pair(1000411000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT"),
1411     std::make_pair(1000411001, "VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT"),
1412     std::make_pair(1000412000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT"),
1413     std::make_pair(1000413000, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR"),
1414     std::make_pair(1000413001, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR"),
1415     std::make_pair(1000413002, "VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR"),
1416     std::make_pair(1000413003, "VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR"),
1417     std::make_pair(1000435000, "VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT"),
1418     std::make_pair(1000489000, "VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_POOL_CREATE_INFO_NV"),
1419     std::make_pair(1000489001, "VK_STRUCTURE_TYPE_SEMAPHORE_SCI_SYNC_CREATE_INFO_NV"),
1420     std::make_pair(1000489002, "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SCI_SYNC_2_FEATURES_NV"),
1421     std::make_pair(1000373000, "VK_STRUCTURE_TYPE_IMPORT_FENCE_SCI_SYNC_INFO_NV"),
1422     std::make_pair(1000373001, "VK_STRUCTURE_TYPE_EXPORT_FENCE_SCI_SYNC_INFO_NV"),
1423     std::make_pair(1000373002, "VK_STRUCTURE_TYPE_FENCE_GET_SCI_SYNC_INFO_NV"),
1424     std::make_pair(1000373003, "VK_STRUCTURE_TYPE_SCI_SYNC_ATTRIBUTES_INFO_NV"),
1425     std::make_pair(1000489003, "VK_STRUCTURE_TYPE_DEVICE_SEMAPHORE_SCI_SYNC_POOL_RESERVATION_CREATE_INFO_NV"),
1426 };
print_VkStructureType(VkStructureType obj,const std::string & str,bool commaNeeded=true)1427 static void print_VkStructureType(VkStructureType obj, const std::string& str, bool commaNeeded=true) {
1428      PRINT_SPACE
1429      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1430      if (commaNeeded)
1431          _OUT << "\"" <<  VkStructureType_map[obj] << "\"," << std::endl;
1432      else
1433          _OUT << "\"" << VkStructureType_map[obj] << "\"" << std::endl;
1434 }
print_VkStructureType(const VkStructureType * obj,const std::string & str,bool commaNeeded=true)1435 static void print_VkStructureType(const VkStructureType * obj, const std::string& str, bool commaNeeded=true) {
1436      PRINT_SPACE
1437      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1438      if (commaNeeded)
1439          _OUT << "\"" <<  VkStructureType_map[*obj] << "\"," << std::endl;
1440      else
1441          _OUT << "\"" << VkStructureType_map[*obj] << "\"" << std::endl;
1442 }
1443 
1444 static std::map<deUint64, std::string> VkAccessFlagBits_map = {
1445     std::make_pair(1ULL << 0, "VK_ACCESS_INDIRECT_COMMAND_READ_BIT"),
1446     std::make_pair(1ULL << 1, "VK_ACCESS_INDEX_READ_BIT"),
1447     std::make_pair(1ULL << 2, "VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT"),
1448     std::make_pair(1ULL << 3, "VK_ACCESS_UNIFORM_READ_BIT"),
1449     std::make_pair(1ULL << 4, "VK_ACCESS_INPUT_ATTACHMENT_READ_BIT"),
1450     std::make_pair(1ULL << 5, "VK_ACCESS_SHADER_READ_BIT"),
1451     std::make_pair(1ULL << 6, "VK_ACCESS_SHADER_WRITE_BIT"),
1452     std::make_pair(1ULL << 7, "VK_ACCESS_COLOR_ATTACHMENT_READ_BIT"),
1453     std::make_pair(1ULL << 8, "VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT"),
1454     std::make_pair(1ULL << 9, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT"),
1455     std::make_pair(1ULL << 10, "VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT"),
1456     std::make_pair(1ULL << 11, "VK_ACCESS_TRANSFER_READ_BIT"),
1457     std::make_pair(1ULL << 12, "VK_ACCESS_TRANSFER_WRITE_BIT"),
1458     std::make_pair(1ULL << 13, "VK_ACCESS_HOST_READ_BIT"),
1459     std::make_pair(1ULL << 14, "VK_ACCESS_HOST_WRITE_BIT"),
1460     std::make_pair(1ULL << 15, "VK_ACCESS_MEMORY_READ_BIT"),
1461     std::make_pair(1ULL << 16, "VK_ACCESS_MEMORY_WRITE_BIT"),
1462     std::make_pair(1ULL << 25, "VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT"),
1463     std::make_pair(1ULL << 26, "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT"),
1464     std::make_pair(1ULL << 27, "VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT"),
1465     std::make_pair(1ULL << 20, "VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT"),
1466     std::make_pair(1ULL << 19, "VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"),
1467     std::make_pair(1ULL << 21, "VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR"),
1468     std::make_pair(1ULL << 22, "VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"),
1469     std::make_pair(1ULL << 24, "VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
1470     std::make_pair(1ULL << 23, "VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR"),
1471     std::make_pair(1ULL << 17, "VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV"),
1472     std::make_pair(1ULL << 18, "VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV"),
1473     std::make_pair(0, "VK_ACCESS_NONE_KHR"),
1474 };
print_VkAccessFlagBits(VkAccessFlagBits obj,const std::string & str,bool commaNeeded=true)1475 static void print_VkAccessFlagBits(VkAccessFlagBits obj, const std::string& str, bool commaNeeded=true) {
1476      PRINT_SPACE
1477      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1478      if (commaNeeded)
1479          _OUT << "\"" <<  VkAccessFlagBits_map[obj] << "\"," << std::endl;
1480      else
1481          _OUT << "\"" << VkAccessFlagBits_map[obj] << "\"" << std::endl;
1482 }
print_VkAccessFlagBits(const VkAccessFlagBits * obj,const std::string & str,bool commaNeeded=true)1483 static void print_VkAccessFlagBits(const VkAccessFlagBits * obj, const std::string& str, bool commaNeeded=true) {
1484      PRINT_SPACE
1485      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1486      if (commaNeeded)
1487          _OUT << "\"" <<  VkAccessFlagBits_map[*obj] << "\"," << std::endl;
1488      else
1489          _OUT << "\"" << VkAccessFlagBits_map[*obj] << "\"" << std::endl;
1490 }
1491 
1492 static std::map<deUint64, std::string> VkImageLayout_map = {
1493     std::make_pair(0, "VK_IMAGE_LAYOUT_UNDEFINED"),
1494     std::make_pair(1, "VK_IMAGE_LAYOUT_GENERAL"),
1495     std::make_pair(2, "VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL"),
1496     std::make_pair(3, "VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL"),
1497     std::make_pair(4, "VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL"),
1498     std::make_pair(5, "VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL"),
1499     std::make_pair(6, "VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL"),
1500     std::make_pair(7, "VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL"),
1501     std::make_pair(8, "VK_IMAGE_LAYOUT_PREINITIALIZED"),
1502     std::make_pair(1000117000, "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL"),
1503     std::make_pair(1000117001, "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL"),
1504     std::make_pair(1000241000, "VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL"),
1505     std::make_pair(1000241001, "VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL"),
1506     std::make_pair(1000241002, "VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL"),
1507     std::make_pair(1000241003, "VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL"),
1508     std::make_pair(1000001002, "VK_IMAGE_LAYOUT_PRESENT_SRC_KHR"),
1509     std::make_pair(1000024000, "VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR"),
1510     std::make_pair(1000024001, "VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR"),
1511     std::make_pair(1000024002, "VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR"),
1512     std::make_pair(1000111000, "VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR"),
1513     std::make_pair(1000218000, "VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT"),
1514     std::make_pair(1000164003, "VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR"),
1515     std::make_pair(1000299000, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR"),
1516     std::make_pair(1000299001, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR"),
1517     std::make_pair(1000299002, "VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR"),
1518     std::make_pair(1000314000, "VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR"),
1519     std::make_pair(1000314001, "VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR"),
1520 };
print_VkImageLayout(VkImageLayout obj,const std::string & str,bool commaNeeded=true)1521 static void print_VkImageLayout(VkImageLayout obj, const std::string& str, bool commaNeeded=true) {
1522      PRINT_SPACE
1523      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1524      if (commaNeeded)
1525          _OUT << "\"" <<  VkImageLayout_map[obj] << "\"," << std::endl;
1526      else
1527          _OUT << "\"" << VkImageLayout_map[obj] << "\"" << std::endl;
1528 }
print_VkImageLayout(const VkImageLayout * obj,const std::string & str,bool commaNeeded=true)1529 static void print_VkImageLayout(const VkImageLayout * obj, const std::string& str, bool commaNeeded=true) {
1530      PRINT_SPACE
1531      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1532      if (commaNeeded)
1533          _OUT << "\"" <<  VkImageLayout_map[*obj] << "\"," << std::endl;
1534      else
1535          _OUT << "\"" << VkImageLayout_map[*obj] << "\"" << std::endl;
1536 }
1537 
1538 static std::map<deUint64, std::string> VkImageAspectFlagBits_map = {
1539     std::make_pair(1ULL << 0, "VK_IMAGE_ASPECT_COLOR_BIT"),
1540     std::make_pair(1ULL << 1, "VK_IMAGE_ASPECT_DEPTH_BIT"),
1541     std::make_pair(1ULL << 2, "VK_IMAGE_ASPECT_STENCIL_BIT"),
1542     std::make_pair(1ULL << 3, "VK_IMAGE_ASPECT_METADATA_BIT"),
1543     std::make_pair(1ULL << 4, "VK_IMAGE_ASPECT_PLANE_0_BIT"),
1544     std::make_pair(1ULL << 5, "VK_IMAGE_ASPECT_PLANE_1_BIT"),
1545     std::make_pair(1ULL << 6, "VK_IMAGE_ASPECT_PLANE_2_BIT"),
1546     std::make_pair(1ULL << 7, "VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT"),
1547     std::make_pair(1ULL << 8, "VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT"),
1548     std::make_pair(1ULL << 9, "VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT"),
1549     std::make_pair(1ULL << 10, "VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT"),
1550     std::make_pair(0, "VK_IMAGE_ASPECT_NONE_KHR"),
1551 };
print_VkImageAspectFlagBits(VkImageAspectFlagBits obj,const std::string & str,bool commaNeeded=true)1552 static void print_VkImageAspectFlagBits(VkImageAspectFlagBits obj, const std::string& str, bool commaNeeded=true) {
1553      PRINT_SPACE
1554      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1555      if (commaNeeded)
1556          _OUT << "\"" <<  VkImageAspectFlagBits_map[obj] << "\"," << std::endl;
1557      else
1558          _OUT << "\"" << VkImageAspectFlagBits_map[obj] << "\"" << std::endl;
1559 }
print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj,const std::string & str,bool commaNeeded=true)1560 static void print_VkImageAspectFlagBits(const VkImageAspectFlagBits * obj, const std::string& str, bool commaNeeded=true) {
1561      PRINT_SPACE
1562      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1563      if (commaNeeded)
1564          _OUT << "\"" <<  VkImageAspectFlagBits_map[*obj] << "\"," << std::endl;
1565      else
1566          _OUT << "\"" << VkImageAspectFlagBits_map[*obj] << "\"" << std::endl;
1567 }
1568 
1569 static std::map<deUint64, std::string> VkObjectType_map = {
1570     std::make_pair(0, "VK_OBJECT_TYPE_UNKNOWN"),
1571     std::make_pair(1, "VK_OBJECT_TYPE_INSTANCE"),
1572     std::make_pair(2, "VK_OBJECT_TYPE_PHYSICAL_DEVICE"),
1573     std::make_pair(3, "VK_OBJECT_TYPE_DEVICE"),
1574     std::make_pair(4, "VK_OBJECT_TYPE_QUEUE"),
1575     std::make_pair(5, "VK_OBJECT_TYPE_SEMAPHORE"),
1576     std::make_pair(6, "VK_OBJECT_TYPE_COMMAND_BUFFER"),
1577     std::make_pair(7, "VK_OBJECT_TYPE_FENCE"),
1578     std::make_pair(8, "VK_OBJECT_TYPE_DEVICE_MEMORY"),
1579     std::make_pair(9, "VK_OBJECT_TYPE_BUFFER"),
1580     std::make_pair(10, "VK_OBJECT_TYPE_IMAGE"),
1581     std::make_pair(11, "VK_OBJECT_TYPE_EVENT"),
1582     std::make_pair(12, "VK_OBJECT_TYPE_QUERY_POOL"),
1583     std::make_pair(13, "VK_OBJECT_TYPE_BUFFER_VIEW"),
1584     std::make_pair(14, "VK_OBJECT_TYPE_IMAGE_VIEW"),
1585     std::make_pair(15, "VK_OBJECT_TYPE_SHADER_MODULE"),
1586     std::make_pair(16, "VK_OBJECT_TYPE_PIPELINE_CACHE"),
1587     std::make_pair(17, "VK_OBJECT_TYPE_PIPELINE_LAYOUT"),
1588     std::make_pair(18, "VK_OBJECT_TYPE_RENDER_PASS"),
1589     std::make_pair(19, "VK_OBJECT_TYPE_PIPELINE"),
1590     std::make_pair(20, "VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT"),
1591     std::make_pair(21, "VK_OBJECT_TYPE_SAMPLER"),
1592     std::make_pair(22, "VK_OBJECT_TYPE_DESCRIPTOR_POOL"),
1593     std::make_pair(23, "VK_OBJECT_TYPE_DESCRIPTOR_SET"),
1594     std::make_pair(24, "VK_OBJECT_TYPE_FRAMEBUFFER"),
1595     std::make_pair(25, "VK_OBJECT_TYPE_COMMAND_POOL"),
1596     std::make_pair(1000156000, "VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION"),
1597     std::make_pair(1000000000, "VK_OBJECT_TYPE_SURFACE_KHR"),
1598     std::make_pair(1000001000, "VK_OBJECT_TYPE_SWAPCHAIN_KHR"),
1599     std::make_pair(1000002000, "VK_OBJECT_TYPE_DISPLAY_KHR"),
1600     std::make_pair(1000002001, "VK_OBJECT_TYPE_DISPLAY_MODE_KHR"),
1601     std::make_pair(1000011000, "VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT"),
1602     std::make_pair(1000023000, "VK_OBJECT_TYPE_VIDEO_SESSION_KHR"),
1603     std::make_pair(1000023001, "VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR"),
1604     std::make_pair(1000029000, "VK_OBJECT_TYPE_CU_MODULE_NVX"),
1605     std::make_pair(1000029001, "VK_OBJECT_TYPE_CU_FUNCTION_NVX"),
1606     std::make_pair(1000128000, "VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT"),
1607     std::make_pair(1000150000, "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR"),
1608     std::make_pair(1000160000, "VK_OBJECT_TYPE_VALIDATION_CACHE_EXT"),
1609     std::make_pair(1000165000, "VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV"),
1610     std::make_pair(1000210000, "VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL"),
1611     std::make_pair(1000268000, "VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR"),
1612     std::make_pair(1000277000, "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV"),
1613     std::make_pair(1000295000, "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT"),
1614     std::make_pair(1000366000, "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA"),
1615     std::make_pair(1000489000, "VK_OBJECT_TYPE_SEMAPHORE_SCI_SYNC_POOL_NV"),
1616 };
print_VkObjectType(VkObjectType obj,const std::string & str,bool commaNeeded=true)1617 static void print_VkObjectType(VkObjectType obj, const std::string& str, bool commaNeeded=true) {
1618      PRINT_SPACE
1619      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1620      if (commaNeeded)
1621          _OUT << "\"" <<  VkObjectType_map[obj] << "\"," << std::endl;
1622      else
1623          _OUT << "\"" << VkObjectType_map[obj] << "\"" << std::endl;
1624 }
print_VkObjectType(const VkObjectType * obj,const std::string & str,bool commaNeeded=true)1625 static void print_VkObjectType(const VkObjectType * obj, const std::string& str, bool commaNeeded=true) {
1626      PRINT_SPACE
1627      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1628      if (commaNeeded)
1629          _OUT << "\"" <<  VkObjectType_map[*obj] << "\"," << std::endl;
1630      else
1631          _OUT << "\"" << VkObjectType_map[*obj] << "\"" << std::endl;
1632 }
1633 
1634 static std::map<deUint64, std::string> VkPipelineCacheHeaderVersion_map = {
1635     std::make_pair(1, "VK_PIPELINE_CACHE_HEADER_VERSION_ONE"),
1636     std::make_pair(1000298001, "VK_PIPELINE_CACHE_HEADER_VERSION_SAFETY_CRITICAL_ONE"),
1637 };
print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj,const std::string & str,bool commaNeeded=true)1638 static void print_VkPipelineCacheHeaderVersion(VkPipelineCacheHeaderVersion obj, const std::string& str, bool commaNeeded=true) {
1639      PRINT_SPACE
1640      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1641      if (commaNeeded)
1642          _OUT << "\"" <<  VkPipelineCacheHeaderVersion_map[obj] << "\"," << std::endl;
1643      else
1644          _OUT << "\"" << VkPipelineCacheHeaderVersion_map[obj] << "\"" << std::endl;
1645 }
print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj,const std::string & str,bool commaNeeded=true)1646 static void print_VkPipelineCacheHeaderVersion(const VkPipelineCacheHeaderVersion * obj, const std::string& str, bool commaNeeded=true) {
1647      PRINT_SPACE
1648      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1649      if (commaNeeded)
1650          _OUT << "\"" <<  VkPipelineCacheHeaderVersion_map[*obj] << "\"," << std::endl;
1651      else
1652          _OUT << "\"" << VkPipelineCacheHeaderVersion_map[*obj] << "\"" << std::endl;
1653 }
1654 
1655 static std::map<deUint64, std::string> VkVendorId_map = {
1656     std::make_pair(0x10001, "VK_VENDOR_ID_VIV"),
1657     std::make_pair(0x10002, "VK_VENDOR_ID_VSI"),
1658     std::make_pair(0x10003, "VK_VENDOR_ID_KAZAN"),
1659     std::make_pair(0x10004, "VK_VENDOR_ID_CODEPLAY"),
1660     std::make_pair(0x10005, "VK_VENDOR_ID_MESA"),
1661     std::make_pair(0x10006, "VK_VENDOR_ID_POCL"),
1662 };
print_VkVendorId(VkVendorId obj,const std::string & str,bool commaNeeded=true)1663 static void print_VkVendorId(VkVendorId obj, const std::string& str, bool commaNeeded=true) {
1664      PRINT_SPACE
1665      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1666      if (commaNeeded)
1667          _OUT << "\"" <<  VkVendorId_map[obj] << "\"," << std::endl;
1668      else
1669          _OUT << "\"" << VkVendorId_map[obj] << "\"" << std::endl;
1670 }
print_VkVendorId(const VkVendorId * obj,const std::string & str,bool commaNeeded=true)1671 static void print_VkVendorId(const VkVendorId * obj, const std::string& str, bool commaNeeded=true) {
1672      PRINT_SPACE
1673      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1674      if (commaNeeded)
1675          _OUT << "\"" <<  VkVendorId_map[*obj] << "\"," << std::endl;
1676      else
1677          _OUT << "\"" << VkVendorId_map[*obj] << "\"" << std::endl;
1678 }
1679 
1680 static std::map<deUint64, std::string> VkSystemAllocationScope_map = {
1681     std::make_pair(0, "VK_SYSTEM_ALLOCATION_SCOPE_COMMAND"),
1682     std::make_pair(1, "VK_SYSTEM_ALLOCATION_SCOPE_OBJECT"),
1683     std::make_pair(2, "VK_SYSTEM_ALLOCATION_SCOPE_CACHE"),
1684     std::make_pair(3, "VK_SYSTEM_ALLOCATION_SCOPE_DEVICE"),
1685     std::make_pair(4, "VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE"),
1686 };
print_VkSystemAllocationScope(VkSystemAllocationScope obj,const std::string & str,bool commaNeeded=true)1687 static void print_VkSystemAllocationScope(VkSystemAllocationScope obj, const std::string& str, bool commaNeeded=true) {
1688      PRINT_SPACE
1689      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1690      if (commaNeeded)
1691          _OUT << "\"" <<  VkSystemAllocationScope_map[obj] << "\"," << std::endl;
1692      else
1693          _OUT << "\"" << VkSystemAllocationScope_map[obj] << "\"" << std::endl;
1694 }
print_VkSystemAllocationScope(const VkSystemAllocationScope * obj,const std::string & str,bool commaNeeded=true)1695 static void print_VkSystemAllocationScope(const VkSystemAllocationScope * obj, const std::string& str, bool commaNeeded=true) {
1696      PRINT_SPACE
1697      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1698      if (commaNeeded)
1699          _OUT << "\"" <<  VkSystemAllocationScope_map[*obj] << "\"," << std::endl;
1700      else
1701          _OUT << "\"" << VkSystemAllocationScope_map[*obj] << "\"" << std::endl;
1702 }
1703 
1704 static std::map<deUint64, std::string> VkInternalAllocationType_map = {
1705     std::make_pair(0, "VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE"),
1706 };
print_VkInternalAllocationType(VkInternalAllocationType obj,const std::string & str,bool commaNeeded=true)1707 static void print_VkInternalAllocationType(VkInternalAllocationType obj, const std::string& str, bool commaNeeded=true) {
1708      PRINT_SPACE
1709      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1710      if (commaNeeded)
1711          _OUT << "\"" <<  VkInternalAllocationType_map[obj] << "\"," << std::endl;
1712      else
1713          _OUT << "\"" << VkInternalAllocationType_map[obj] << "\"" << std::endl;
1714 }
print_VkInternalAllocationType(const VkInternalAllocationType * obj,const std::string & str,bool commaNeeded=true)1715 static void print_VkInternalAllocationType(const VkInternalAllocationType * obj, const std::string& str, bool commaNeeded=true) {
1716      PRINT_SPACE
1717      if (str != "") _OUT << "\"" << str << "\"" << " : ";
1718      if (commaNeeded)
1719          _OUT << "\"" <<  VkInternalAllocationType_map[*obj] << "\"," << std::endl;
1720      else
1721          _OUT << "\"" << VkInternalAllocationType_map[*obj] << "\"" << std::endl;
1722 }
1723 
1724 static std::map<deUint64, std::string> VkFormat_map = {
1725     std::make_pair(0, "VK_FORMAT_UNDEFINED"),
1726     std::make_pair(1, "VK_FORMAT_R4G4_UNORM_PACK8"),
1727     std::make_pair(2, "VK_FORMAT_R4G4B4A4_UNORM_PACK16"),
1728     std::make_pair(3, "VK_FORMAT_B4G4R4A4_UNORM_PACK16"),
1729     std::make_pair(4, "VK_FORMAT_R5G6B5_UNORM_PACK16"),
1730     std::make_pair(5, "VK_FORMAT_B5G6R5_UNORM_PACK16"),
1731     std::make_pair(6, "VK_FORMAT_R5G5B5A1_UNORM_PACK16"),
1732     std::make_pair(7, "VK_FORMAT_B5G5R5A1_UNORM_PACK16"),
1733     std::make_pair(8, "VK_FORMAT_A1R5G5B5_UNORM_PACK16"),
1734     std::make_pair(9, "VK_FORMAT_R8_UNORM"),
1735     std::make_pair(10, "VK_FORMAT_R8_SNORM"),
1736     std::make_pair(11, "VK_FORMAT_R8_USCALED"),
1737     std::make_pair(12, "VK_FORMAT_R8_SSCALED"),
1738     std::make_pair(13, "VK_FORMAT_R8_UINT"),
1739     std::make_pair(14, "VK_FORMAT_R8_SINT"),
1740     std::make_pair(15, "VK_FORMAT_R8_SRGB"),
1741     std::make_pair(16, "VK_FORMAT_R8G8_UNORM"),
1742     std::make_pair(17, "VK_FORMAT_R8G8_SNORM"),
1743     std::make_pair(18, "VK_FORMAT_R8G8_USCALED"),
1744     std::make_pair(19, "VK_FORMAT_R8G8_SSCALED"),
1745     std::make_pair(20, "VK_FORMAT_R8G8_UINT"),
1746     std::make_pair(21, "VK_FORMAT_R8G8_SINT"),
1747     std::make_pair(22, "VK_FORMAT_R8G8_SRGB"),
1748     std::make_pair(23, "VK_FORMAT_R8G8B8_UNORM"),
1749     std::make_pair(24, "VK_FORMAT_R8G8B8_SNORM"),
1750     std::make_pair(25, "VK_FORMAT_R8G8B8_USCALED"),
1751     std::make_pair(26, "VK_FORMAT_R8G8B8_SSCALED"),
1752     std::make_pair(27, "VK_FORMAT_R8G8B8_UINT"),
1753     std::make_pair(28, "VK_FORMAT_R8G8B8_SINT"),
1754     std::make_pair(29, "VK_FORMAT_R8G8B8_SRGB"),
1755     std::make_pair(30, "VK_FORMAT_B8G8R8_UNORM"),
1756     std::make_pair(31, "VK_FORMAT_B8G8R8_SNORM"),
1757     std::make_pair(32, "VK_FORMAT_B8G8R8_USCALED"),
1758     std::make_pair(33, "VK_FORMAT_B8G8R8_SSCALED"),
1759     std::make_pair(34, "VK_FORMAT_B8G8R8_UINT"),
1760     std::make_pair(35, "VK_FORMAT_B8G8R8_SINT"),
1761     std::make_pair(36, "VK_FORMAT_B8G8R8_SRGB"),
1762     std::make_pair(37, "VK_FORMAT_R8G8B8A8_UNORM"),
1763     std::make_pair(38, "VK_FORMAT_R8G8B8A8_SNORM"),
1764     std::make_pair(39, "VK_FORMAT_R8G8B8A8_USCALED"),
1765     std::make_pair(40, "VK_FORMAT_R8G8B8A8_SSCALED"),
1766     std::make_pair(41, "VK_FORMAT_R8G8B8A8_UINT"),
1767     std::make_pair(42, "VK_FORMAT_R8G8B8A8_SINT"),
1768     std::make_pair(43, "VK_FORMAT_R8G8B8A8_SRGB"),
1769     std::make_pair(44, "VK_FORMAT_B8G8R8A8_UNORM"),
1770     std::make_pair(45, "VK_FORMAT_B8G8R8A8_SNORM"),
1771     std::make_pair(46, "VK_FORMAT_B8G8R8A8_USCALED"),
1772     std::make_pair(47, "VK_FORMAT_B8G8R8A8_SSCALED"),
1773     std::make_pair(48, "VK_FORMAT_B8G8R8A8_UINT"),
1774     std::make_pair(49, "VK_FORMAT_B8G8R8A8_SINT"),
1775     std::make_pair(50, "VK_FORMAT_B8G8R8A8_SRGB"),
1776     std::make_pair(51, "VK_FORMAT_A8B8G8R8_UNORM_PACK32"),
1777     std::make_pair(52, "VK_FORMAT_A8B8G8R8_SNORM_PACK32"),
1778     std::make_pair(53, "VK_FORMAT_A8B8G8R8_USCALED_PACK32"),
1779     std::make_pair(54, "VK_FORMAT_A8B8G8R8_SSCALED_PACK32"),
1780     std::make_pair(55, "VK_FORMAT_A8B8G8R8_UINT_PACK32"),
1781     std::make_pair(56, "VK_FORMAT_A8B8G8R8_SINT_PACK32"),
1782     std::make_pair(57, "VK_FORMAT_A8B8G8R8_SRGB_PACK32"),
1783     std::make_pair(58, "VK_FORMAT_A2R10G10B10_UNORM_PACK32"),
1784     std::make_pair(59, "VK_FORMAT_A2R10G10B10_SNORM_PACK32"),
1785     std::make_pair(60, "VK_FORMAT_A2R10G10B10_USCALED_PACK32"),
1786     std::make_pair(61, "VK_FORMAT_A2R10G10B10_SSCALED_PACK32"),
1787     std::make_pair(62, "VK_FORMAT_A2R10G10B10_UINT_PACK32"),
1788     std::make_pair(63, "VK_FORMAT_A2R10G10B10_SINT_PACK32"),
1789     std::make_pair(64, "VK_FORMAT_A2B10G10R10_UNORM_PACK32"),
1790     std::make_pair(65, "VK_FORMAT_A2B10G10R10_SNORM_PACK32"),
1791     std::make_pair(66, "VK_FORMAT_A2B10G10R10_USCALED_PACK32"),
1792     std::make_pair(67, "VK_FORMAT_A2B10G10R10_SSCALED_PACK32"),
1793     std::make_pair(68, "VK_FORMAT_A2B10G10R10_UINT_PACK32"),
1794     std::make_pair(69, "VK_FORMAT_A2B10G10R10_SINT_PACK32"),
1795     std::make_pair(70, "VK_FORMAT_R16_UNORM"),
1796     std::make_pair(71, "VK_FORMAT_R16_SNORM"),
1797     std::make_pair(72, "VK_FORMAT_R16_USCALED"),
1798     std::make_pair(73, "VK_FORMAT_R16_SSCALED"),
1799     std::make_pair(74, "VK_FORMAT_R16_UINT"),
1800     std::make_pair(75, "VK_FORMAT_R16_SINT"),
1801     std::make_pair(76, "VK_FORMAT_R16_SFLOAT"),
1802     std::make_pair(77, "VK_FORMAT_R16G16_UNORM"),
1803     std::make_pair(78, "VK_FORMAT_R16G16_SNORM"),
1804     std::make_pair(79, "VK_FORMAT_R16G16_USCALED"),
1805     std::make_pair(80, "VK_FORMAT_R16G16_SSCALED"),
1806     std::make_pair(81, "VK_FORMAT_R16G16_UINT"),
1807     std::make_pair(82, "VK_FORMAT_R16G16_SINT"),
1808     std::make_pair(83, "VK_FORMAT_R16G16_SFLOAT"),
1809     std::make_pair(84, "VK_FORMAT_R16G16B16_UNORM"),
1810     std::make_pair(85, "VK_FORMAT_R16G16B16_SNORM"),
1811     std::make_pair(86, "VK_FORMAT_R16G16B16_USCALED"),
1812     std::make_pair(87, "VK_FORMAT_R16G16B16_SSCALED"),
1813     std::make_pair(88, "VK_FORMAT_R16G16B16_UINT"),
1814     std::make_pair(89, "VK_FORMAT_R16G16B16_SINT"),
1815     std::make_pair(90, "VK_FORMAT_R16G16B16_SFLOAT"),
1816     std::make_pair(91, "VK_FORMAT_R16G16B16A16_UNORM"),
1817     std::make_pair(92, "VK_FORMAT_R16G16B16A16_SNORM"),
1818     std::make_pair(93, "VK_FORMAT_R16G16B16A16_USCALED"),
1819     std::make_pair(94, "VK_FORMAT_R16G16B16A16_SSCALED"),
1820     std::make_pair(95, "VK_FORMAT_R16G16B16A16_UINT"),
1821     std::make_pair(96, "VK_FORMAT_R16G16B16A16_SINT"),
1822     std::make_pair(97, "VK_FORMAT_R16G16B16A16_SFLOAT"),
1823     std::make_pair(98, "VK_FORMAT_R32_UINT"),
1824     std::make_pair(99, "VK_FORMAT_R32_SINT"),
1825     std::make_pair(100, "VK_FORMAT_R32_SFLOAT"),
1826     std::make_pair(101, "VK_FORMAT_R32G32_UINT"),
1827     std::make_pair(102, "VK_FORMAT_R32G32_SINT"),
1828     std::make_pair(103, "VK_FORMAT_R32G32_SFLOAT"),
1829     std::make_pair(104, "VK_FORMAT_R32G32B32_UINT"),
1830     std::make_pair(105, "VK_FORMAT_R32G32B32_SINT"),
1831     std::make_pair(106, "VK_FORMAT_R32G32B32_SFLOAT"),
1832     std::make_pair(107, "VK_FORMAT_R32G32B32A32_UINT"),
1833     std::make_pair(108, "VK_FORMAT_R32G32B32A32_SINT"),
1834     std::make_pair(109, "VK_FORMAT_R32G32B32A32_SFLOAT"),
1835     std::make_pair(110, "VK_FORMAT_R64_UINT"),
1836     std::make_pair(111, "VK_FORMAT_R64_SINT"),
1837     std::make_pair(112, "VK_FORMAT_R64_SFLOAT"),
1838     std::make_pair(113, "VK_FORMAT_R64G64_UINT"),
1839     std::make_pair(114, "VK_FORMAT_R64G64_SINT"),
1840     std::make_pair(115, "VK_FORMAT_R64G64_SFLOAT"),
1841     std::make_pair(116, "VK_FORMAT_R64G64B64_UINT"),
1842     std::make_pair(117, "VK_FORMAT_R64G64B64_SINT"),
1843     std::make_pair(118, "VK_FORMAT_R64G64B64_SFLOAT"),
1844     std::make_pair(119, "VK_FORMAT_R64G64B64A64_UINT"),
1845     std::make_pair(120, "VK_FORMAT_R64G64B64A64_SINT"),
1846     std::make_pair(121, "VK_FORMAT_R64G64B64A64_SFLOAT"),
1847     std::make_pair(122, "VK_FORMAT_B10G11R11_UFLOAT_PACK32"),
1848     std::make_pair(123, "VK_FORMAT_E5B9G9R9_UFLOAT_PACK32"),
1849     std::make_pair(124, "VK_FORMAT_D16_UNORM"),
1850     std::make_pair(125, "VK_FORMAT_X8_D24_UNORM_PACK32"),
1851     std::make_pair(126, "VK_FORMAT_D32_SFLOAT"),
1852     std::make_pair(127, "VK_FORMAT_S8_UINT"),
1853     std::make_pair(128, "VK_FORMAT_D16_UNORM_S8_UINT"),
1854     std::make_pair(129, "VK_FORMAT_D24_UNORM_S8_UINT"),
1855     std::make_pair(130, "VK_FORMAT_D32_SFLOAT_S8_UINT"),
1856     std::make_pair(131, "VK_FORMAT_BC1_RGB_UNORM_BLOCK"),
1857     std::make_pair(132, "VK_FORMAT_BC1_RGB_SRGB_BLOCK"),
1858     std::make_pair(133, "VK_FORMAT_BC1_RGBA_UNORM_BLOCK"),
1859     std::make_pair(134, "VK_FORMAT_BC1_RGBA_SRGB_BLOCK"),
1860     std::make_pair(135, "VK_FORMAT_BC2_UNORM_BLOCK"),
1861     std::make_pair(136, "VK_FORMAT_BC2_SRGB_BLOCK"),
1862     std::make_pair(137, "VK_FORMAT_BC3_UNORM_BLOCK"),
1863     std::make_pair(138, "VK_FORMAT_BC3_SRGB_BLOCK"),
1864     std::make_pair(139, "VK_FORMAT_BC4_UNORM_BLOCK"),
1865     std::make_pair(140, "VK_FORMAT_BC4_SNORM_BLOCK"),
1866     std::make_pair(141, "VK_FORMAT_BC5_UNORM_BLOCK"),
1867     std::make_pair(142, "VK_FORMAT_BC5_SNORM_BLOCK"),
1868     std::make_pair(143, "VK_FORMAT_BC6H_UFLOAT_BLOCK"),
1869     std::make_pair(144, "VK_FORMAT_BC6H_SFLOAT_BLOCK"),
1870     std::make_pair(145, "VK_FORMAT_BC7_UNORM_BLOCK"),
1871     std::make_pair(146, "VK_FORMAT_BC7_SRGB_BLOCK"),
1872     std::make_pair(147, "VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK"),
1873     std::make_pair(148, "VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK"),
1874     std::make_pair(149, "VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK"),
1875     std::make_pair(150, "VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK"),
1876     std::make_pair(151, "VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK"),
1877     std::make_pair(152, "VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK"),
1878     std::make_pair(153, "VK_FORMAT_EAC_R11_UNORM_BLOCK"),
1879     std::make_pair(154, "VK_FORMAT_EAC_R11_SNORM_BLOCK"),
1880     std::make_pair(155, "VK_FORMAT_EAC_R11G11_UNORM_BLOCK"),
1881     std::make_pair(156, "VK_FORMAT_EAC_R11G11_SNORM_BLOCK"),
1882     std::make_pair(157, "VK_FORMAT_ASTC_4x4_UNORM_BLOCK"),
1883     std::make_pair(158, "VK_FORMAT_ASTC_4x4_SRGB_BLOCK"),
1884     std::make_pair(159, "VK_FORMAT_ASTC_5x4_UNORM_BLOCK"),
1885     std::make_pair(160, "VK_FORMAT_ASTC_5x4_SRGB_BLOCK"),
1886     std::make_pair(161, "VK_FORMAT_ASTC_5x5_UNORM_BLOCK"),
1887     std::make_pair(162, "VK_FORMAT_ASTC_5x5_SRGB_BLOCK"),
1888     std::make_pair(163, "VK_FORMAT_ASTC_6x5_UNORM_BLOCK"),
1889     std::make_pair(164, "VK_FORMAT_ASTC_6x5_SRGB_BLOCK"),
1890     std::make_pair(165, "VK_FORMAT_ASTC_6x6_UNORM_BLOCK"),
1891     std::make_pair(166, "VK_FORMAT_ASTC_6x6_SRGB_BLOCK"),
1892     std::make_pair(167, "VK_FORMAT_ASTC_8x5_UNORM_BLOCK"),
1893     std::make_pair(168, "VK_FORMAT_ASTC_8x5_SRGB_BLOCK"),
1894     std::make_pair(169, "VK_FORMAT_ASTC_8x6_UNORM_BLOCK"),
1895     std::make_pair(170, "VK_FORMAT_ASTC_8x6_SRGB_BLOCK"),
1896     std::make_pair(171, "VK_FORMAT_ASTC_8x8_UNORM_BLOCK"),
1897     std::make_pair(172, "VK_FORMAT_ASTC_8x8_SRGB_BLOCK"),
1898     std::make_pair(173, "VK_FORMAT_ASTC_10x5_UNORM_BLOCK"),
1899     std::make_pair(174, "VK_FORMAT_ASTC_10x5_SRGB_BLOCK"),
1900     std::make_pair(175, "VK_FORMAT_ASTC_10x6_UNORM_BLOCK"),
1901     std::make_pair(176, "VK_FORMAT_ASTC_10x6_SRGB_BLOCK"),
1902     std::make_pair(177, "VK_FORMAT_ASTC_10x8_UNORM_BLOCK"),
1903     std::make_pair(178, "VK_FORMAT_ASTC_10x8_SRGB_BLOCK"),
1904     std::make_pair(179, "VK_FORMAT_ASTC_10x10_UNORM_BLOCK"),
1905     std::make_pair(180, "VK_FORMAT_ASTC_10x10_SRGB_BLOCK"),
1906     std::make_pair(181, "VK_FORMAT_ASTC_12x10_UNORM_BLOCK"),
1907     std::make_pair(182, "VK_FORMAT_ASTC_12x10_SRGB_BLOCK"),
1908     std::make_pair(183, "VK_FORMAT_ASTC_12x12_UNORM_BLOCK"),
1909     std::make_pair(184, "VK_FORMAT_ASTC_12x12_SRGB_BLOCK"),
1910     std::make_pair(1000156000, "VK_FORMAT_G8B8G8R8_422_UNORM"),
1911     std::make_pair(1000156001, "VK_FORMAT_B8G8R8G8_422_UNORM"),
1912     std::make_pair(1000156002, "VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM"),
1913     std::make_pair(1000156003, "VK_FORMAT_G8_B8R8_2PLANE_420_UNORM"),
1914     std::make_pair(1000156004, "VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM"),
1915     std::make_pair(1000156005, "VK_FORMAT_G8_B8R8_2PLANE_422_UNORM"),
1916     std::make_pair(1000156006, "VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM"),
1917     std::make_pair(1000156007, "VK_FORMAT_R10X6_UNORM_PACK16"),
1918     std::make_pair(1000156008, "VK_FORMAT_R10X6G10X6_UNORM_2PACK16"),
1919     std::make_pair(1000156009, "VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16"),
1920     std::make_pair(1000156010, "VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16"),
1921     std::make_pair(1000156011, "VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16"),
1922     std::make_pair(1000156012, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16"),
1923     std::make_pair(1000156013, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16"),
1924     std::make_pair(1000156014, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16"),
1925     std::make_pair(1000156015, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16"),
1926     std::make_pair(1000156016, "VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16"),
1927     std::make_pair(1000156017, "VK_FORMAT_R12X4_UNORM_PACK16"),
1928     std::make_pair(1000156018, "VK_FORMAT_R12X4G12X4_UNORM_2PACK16"),
1929     std::make_pair(1000156019, "VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16"),
1930     std::make_pair(1000156020, "VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16"),
1931     std::make_pair(1000156021, "VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16"),
1932     std::make_pair(1000156022, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16"),
1933     std::make_pair(1000156023, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16"),
1934     std::make_pair(1000156024, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16"),
1935     std::make_pair(1000156025, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16"),
1936     std::make_pair(1000156026, "VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16"),
1937     std::make_pair(1000156027, "VK_FORMAT_G16B16G16R16_422_UNORM"),
1938     std::make_pair(1000156028, "VK_FORMAT_B16G16R16G16_422_UNORM"),
1939     std::make_pair(1000156029, "VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM"),
1940     std::make_pair(1000156030, "VK_FORMAT_G16_B16R16_2PLANE_420_UNORM"),
1941     std::make_pair(1000156031, "VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM"),
1942     std::make_pair(1000156032, "VK_FORMAT_G16_B16R16_2PLANE_422_UNORM"),
1943     std::make_pair(1000156033, "VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM"),
1944     std::make_pair(1000054000, "VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG"),
1945     std::make_pair(1000054001, "VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG"),
1946     std::make_pair(1000054002, "VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG"),
1947     std::make_pair(1000054003, "VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG"),
1948     std::make_pair(1000054004, "VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG"),
1949     std::make_pair(1000054005, "VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG"),
1950     std::make_pair(1000054006, "VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG"),
1951     std::make_pair(1000054007, "VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG"),
1952     std::make_pair(1000066000, "VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT"),
1953     std::make_pair(1000066001, "VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT"),
1954     std::make_pair(1000066002, "VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT"),
1955     std::make_pair(1000066003, "VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT"),
1956     std::make_pair(1000066004, "VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT"),
1957     std::make_pair(1000066005, "VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT"),
1958     std::make_pair(1000066006, "VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT"),
1959     std::make_pair(1000066007, "VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT"),
1960     std::make_pair(1000066008, "VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT"),
1961     std::make_pair(1000066009, "VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT"),
1962     std::make_pair(1000066010, "VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT"),
1963     std::make_pair(1000066011, "VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT"),
1964     std::make_pair(1000066012, "VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT"),
1965     std::make_pair(1000066013, "VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT"),
1966     std::make_pair(1000288000, "VK_FORMAT_ASTC_3x3x3_UNORM_BLOCK_EXT"),
1967     std::make_pair(1000288001, "VK_FORMAT_ASTC_3x3x3_SRGB_BLOCK_EXT"),
1968     std::make_pair(1000288002, "VK_FORMAT_ASTC_3x3x3_SFLOAT_BLOCK_EXT"),
1969     std::make_pair(1000288003, "VK_FORMAT_ASTC_4x3x3_UNORM_BLOCK_EXT"),
1970     std::make_pair(1000288004, "VK_FORMAT_ASTC_4x3x3_SRGB_BLOCK_EXT"),
1971     std::make_pair(1000288005, "VK_FORMAT_ASTC_4x3x3_SFLOAT_BLOCK_EXT"),
1972     std::make_pair(1000288006, "VK_FORMAT_ASTC_4x4x3_UNORM_BLOCK_EXT"),
1973     std::make_pair(1000288007, "VK_FORMAT_ASTC_4x4x3_SRGB_BLOCK_EXT"),
1974     std::make_pair(1000288008, "VK_FORMAT_ASTC_4x4x3_SFLOAT_BLOCK_EXT"),
1975     std::make_pair(1000288009, "VK_FORMAT_ASTC_4x4x4_UNORM_BLOCK_EXT"),
1976     std::make_pair(1000288010, "VK_FORMAT_ASTC_4x4x4_SRGB_BLOCK_EXT"),
1977     std::make_pair(1000288011, "VK_FORMAT_ASTC_4x4x4_SFLOAT_BLOCK_EXT"),
1978     std::make_pair(1000288012, "VK_FORMAT_ASTC_5x4x4_UNORM_BLOCK_EXT"),
1979     std::make_pair(1000288013, "VK_FORMAT_ASTC_5x4x4_SRGB_BLOCK_EXT"),
1980     std::make_pair(1000288014, "VK_FORMAT_ASTC_5x4x4_SFLOAT_BLOCK_EXT"),
1981     std::make_pair(1000288015, "VK_FORMAT_ASTC_5x5x4_UNORM_BLOCK_EXT"),
1982     std::make_pair(1000288016, "VK_FORMAT_ASTC_5x5x4_SRGB_BLOCK_EXT"),
1983     std::make_pair(1000288017, "VK_FORMAT_ASTC_5x5x4_SFLOAT_BLOCK_EXT"),
1984     std::make_pair(1000288018, "VK_FORMAT_ASTC_5x5x5_UNORM_BLOCK_EXT"),
1985     std::make_pair(1000288019, "VK_FORMAT_ASTC_5x5x5_SRGB_BLOCK_EXT"),
1986     std::make_pair(1000288020, "VK_FORMAT_ASTC_5x5x5_SFLOAT_BLOCK_EXT"),
1987     std::make_pair(1000288021, "VK_FORMAT_ASTC_6x5x5_UNORM_BLOCK_EXT"),
1988     std::make_pair(1000288022, "VK_FORMAT_ASTC_6x5x5_SRGB_BLOCK_EXT"),
1989     std::make_pair(1000288023, "VK_FORMAT_ASTC_6x5x5_SFLOAT_BLOCK_EXT"),
1990     std::make_pair(1000288024, "VK_FORMAT_ASTC_6x6x5_UNORM_BLOCK_EXT"),
1991     std::make_pair(1000288025, "VK_FORMAT_ASTC_6x6x5_SRGB_BLOCK_EXT"),
1992     std::make_pair(1000288026, "VK_FORMAT_ASTC_6x6x5_SFLOAT_BLOCK_EXT"),
1993     std::make_pair(1000288027, "VK_FORMAT_ASTC_6x6x6_UNORM_BLOCK_EXT"),
1994     std::make_pair(1000288028, "VK_FORMAT_ASTC_6x6x6_SRGB_BLOCK_EXT"),
1995     std::make_pair(1000288029, "VK_FORMAT_ASTC_6x6x6_SFLOAT_BLOCK_EXT"),
1996     std::make_pair(1000330000, "VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT"),
1997     std::make_pair(1000330001, "VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT"),
1998     std::make_pair(1000330002, "VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT"),
1999     std::make_pair(1000330003, "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT"),
2000     std::make_pair(1000340000, "VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT"),
2001     std::make_pair(1000340001, "VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT"),
2002 };
print_VkFormat(VkFormat obj,const std::string & str,bool commaNeeded=true)2003 static void print_VkFormat(VkFormat obj, const std::string& str, bool commaNeeded=true) {
2004      PRINT_SPACE
2005      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2006      if (commaNeeded)
2007          _OUT << "\"" <<  VkFormat_map[obj] << "\"," << std::endl;
2008      else
2009          _OUT << "\"" << VkFormat_map[obj] << "\"" << std::endl;
2010 }
print_VkFormat(const VkFormat * obj,const std::string & str,bool commaNeeded=true)2011 static void print_VkFormat(const VkFormat * obj, const std::string& str, bool commaNeeded=true) {
2012      PRINT_SPACE
2013      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2014      if (commaNeeded)
2015          _OUT << "\"" <<  VkFormat_map[*obj] << "\"," << std::endl;
2016      else
2017          _OUT << "\"" << VkFormat_map[*obj] << "\"" << std::endl;
2018 }
2019 
2020 static std::map<deUint64, std::string> VkFormatFeatureFlagBits_map = {
2021     std::make_pair(1ULL << 0, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT"),
2022     std::make_pair(1ULL << 1, "VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT"),
2023     std::make_pair(1ULL << 2, "VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT"),
2024     std::make_pair(1ULL << 3, "VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT"),
2025     std::make_pair(1ULL << 4, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT"),
2026     std::make_pair(1ULL << 5, "VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT"),
2027     std::make_pair(1ULL << 6, "VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT"),
2028     std::make_pair(1ULL << 7, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT"),
2029     std::make_pair(1ULL << 8, "VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT"),
2030     std::make_pair(1ULL << 9, "VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT"),
2031     std::make_pair(1ULL << 10, "VK_FORMAT_FEATURE_BLIT_SRC_BIT"),
2032     std::make_pair(1ULL << 11, "VK_FORMAT_FEATURE_BLIT_DST_BIT"),
2033     std::make_pair(1ULL << 12, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT"),
2034     std::make_pair(1ULL << 14, "VK_FORMAT_FEATURE_TRANSFER_SRC_BIT"),
2035     std::make_pair(1ULL << 15, "VK_FORMAT_FEATURE_TRANSFER_DST_BIT"),
2036     std::make_pair(1ULL << 17, "VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT"),
2037     std::make_pair(1ULL << 18, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT"),
2038     std::make_pair(1ULL << 19, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT"),
2039     std::make_pair(1ULL << 20, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT"),
2040     std::make_pair(1ULL << 21, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT"),
2041     std::make_pair(1ULL << 22, "VK_FORMAT_FEATURE_DISJOINT_BIT"),
2042     std::make_pair(1ULL << 23, "VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT"),
2043     std::make_pair(1ULL << 16, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT"),
2044     std::make_pair(1ULL << 13, "VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG"),
2045     std::make_pair(1ULL << 25, "VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR"),
2046     std::make_pair(1ULL << 26, "VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR"),
2047     std::make_pair(1ULL << 29, "VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"),
2048     std::make_pair(1ULL << 24, "VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
2049     std::make_pair(1ULL << 30, "VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2050     std::make_pair(1ULL << 27, "VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR"),
2051     std::make_pair(1ULL << 28, "VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR"),
2052 };
print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)2053 static void print_VkFormatFeatureFlagBits(VkFormatFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
2054      PRINT_SPACE
2055      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2056      if (commaNeeded)
2057          _OUT << "\"" <<  VkFormatFeatureFlagBits_map[obj] << "\"," << std::endl;
2058      else
2059          _OUT << "\"" << VkFormatFeatureFlagBits_map[obj] << "\"" << std::endl;
2060 }
print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)2061 static void print_VkFormatFeatureFlagBits(const VkFormatFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2062      PRINT_SPACE
2063      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2064      if (commaNeeded)
2065          _OUT << "\"" <<  VkFormatFeatureFlagBits_map[*obj] << "\"," << std::endl;
2066      else
2067          _OUT << "\"" << VkFormatFeatureFlagBits_map[*obj] << "\"" << std::endl;
2068 }
2069 
2070 static std::map<deUint64, std::string> VkImageCreateFlagBits_map = {
2071     std::make_pair(1ULL << 0, "VK_IMAGE_CREATE_SPARSE_BINDING_BIT"),
2072     std::make_pair(1ULL << 1, "VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT"),
2073     std::make_pair(1ULL << 2, "VK_IMAGE_CREATE_SPARSE_ALIASED_BIT"),
2074     std::make_pair(1ULL << 3, "VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT"),
2075     std::make_pair(1ULL << 4, "VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT"),
2076     std::make_pair(1ULL << 10, "VK_IMAGE_CREATE_ALIAS_BIT"),
2077     std::make_pair(1ULL << 6, "VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT"),
2078     std::make_pair(1ULL << 5, "VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT"),
2079     std::make_pair(1ULL << 7, "VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT"),
2080     std::make_pair(1ULL << 8, "VK_IMAGE_CREATE_EXTENDED_USAGE_BIT"),
2081     std::make_pair(1ULL << 11, "VK_IMAGE_CREATE_PROTECTED_BIT"),
2082     std::make_pair(1ULL << 9, "VK_IMAGE_CREATE_DISJOINT_BIT"),
2083     std::make_pair(1ULL << 13, "VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV"),
2084     std::make_pair(1ULL << 12, "VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT"),
2085     std::make_pair(1ULL << 14, "VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT"),
2086     std::make_pair(1ULL << 16, "VK_IMAGE_CREATE_RESERVED_16_BIT_AMD"),
2087     std::make_pair(1ULL << 17, "VK_IMAGE_CREATE_RESERVED_394_BIT_EXT"),
2088     std::make_pair(1ULL << 15, "VK_IMAGE_CREATE_RESERVED_426_BIT_QCOM"),
2089 };
print_VkImageCreateFlagBits(VkImageCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2090 static void print_VkImageCreateFlagBits(VkImageCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2091      PRINT_SPACE
2092      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2093      if (commaNeeded)
2094          _OUT << "\"" <<  VkImageCreateFlagBits_map[obj] << "\"," << std::endl;
2095      else
2096          _OUT << "\"" << VkImageCreateFlagBits_map[obj] << "\"" << std::endl;
2097 }
print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2098 static void print_VkImageCreateFlagBits(const VkImageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2099      PRINT_SPACE
2100      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2101      if (commaNeeded)
2102          _OUT << "\"" <<  VkImageCreateFlagBits_map[*obj] << "\"," << std::endl;
2103      else
2104          _OUT << "\"" << VkImageCreateFlagBits_map[*obj] << "\"" << std::endl;
2105 }
2106 
2107 static std::map<deUint64, std::string> VkSampleCountFlagBits_map = {
2108     std::make_pair(1ULL << 0, "VK_SAMPLE_COUNT_1_BIT"),
2109     std::make_pair(1ULL << 1, "VK_SAMPLE_COUNT_2_BIT"),
2110     std::make_pair(1ULL << 2, "VK_SAMPLE_COUNT_4_BIT"),
2111     std::make_pair(1ULL << 3, "VK_SAMPLE_COUNT_8_BIT"),
2112     std::make_pair(1ULL << 4, "VK_SAMPLE_COUNT_16_BIT"),
2113     std::make_pair(1ULL << 5, "VK_SAMPLE_COUNT_32_BIT"),
2114     std::make_pair(1ULL << 6, "VK_SAMPLE_COUNT_64_BIT"),
2115 };
print_VkSampleCountFlagBits(VkSampleCountFlagBits obj,const std::string & str,bool commaNeeded=true)2116 static void print_VkSampleCountFlagBits(VkSampleCountFlagBits obj, const std::string& str, bool commaNeeded=true) {
2117      PRINT_SPACE
2118      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2119      if (commaNeeded)
2120          _OUT << "\"" <<  VkSampleCountFlagBits_map[obj] << "\"," << std::endl;
2121      else
2122          _OUT << "\"" << VkSampleCountFlagBits_map[obj] << "\"" << std::endl;
2123 }
print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj,const std::string & str,bool commaNeeded=true)2124 static void print_VkSampleCountFlagBits(const VkSampleCountFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2125      PRINT_SPACE
2126      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2127      if (commaNeeded)
2128          _OUT << "\"" <<  VkSampleCountFlagBits_map[*obj] << "\"," << std::endl;
2129      else
2130          _OUT << "\"" << VkSampleCountFlagBits_map[*obj] << "\"" << std::endl;
2131 }
2132 
2133 static std::map<deUint64, std::string> VkImageTiling_map = {
2134     std::make_pair(0, "VK_IMAGE_TILING_OPTIMAL"),
2135     std::make_pair(1, "VK_IMAGE_TILING_LINEAR"),
2136     std::make_pair(1000158000, "VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT"),
2137 };
print_VkImageTiling(VkImageTiling obj,const std::string & str,bool commaNeeded=true)2138 static void print_VkImageTiling(VkImageTiling obj, const std::string& str, bool commaNeeded=true) {
2139      PRINT_SPACE
2140      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2141      if (commaNeeded)
2142          _OUT << "\"" <<  VkImageTiling_map[obj] << "\"," << std::endl;
2143      else
2144          _OUT << "\"" << VkImageTiling_map[obj] << "\"" << std::endl;
2145 }
print_VkImageTiling(const VkImageTiling * obj,const std::string & str,bool commaNeeded=true)2146 static void print_VkImageTiling(const VkImageTiling * obj, const std::string& str, bool commaNeeded=true) {
2147      PRINT_SPACE
2148      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2149      if (commaNeeded)
2150          _OUT << "\"" <<  VkImageTiling_map[*obj] << "\"," << std::endl;
2151      else
2152          _OUT << "\"" << VkImageTiling_map[*obj] << "\"" << std::endl;
2153 }
2154 
2155 static std::map<deUint64, std::string> VkImageType_map = {
2156     std::make_pair(0, "VK_IMAGE_TYPE_1D"),
2157     std::make_pair(1, "VK_IMAGE_TYPE_2D"),
2158     std::make_pair(2, "VK_IMAGE_TYPE_3D"),
2159 };
print_VkImageType(VkImageType obj,const std::string & str,bool commaNeeded=true)2160 static void print_VkImageType(VkImageType obj, const std::string& str, bool commaNeeded=true) {
2161      PRINT_SPACE
2162      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2163      if (commaNeeded)
2164          _OUT << "\"" <<  VkImageType_map[obj] << "\"," << std::endl;
2165      else
2166          _OUT << "\"" << VkImageType_map[obj] << "\"" << std::endl;
2167 }
print_VkImageType(const VkImageType * obj,const std::string & str,bool commaNeeded=true)2168 static void print_VkImageType(const VkImageType * obj, const std::string& str, bool commaNeeded=true) {
2169      PRINT_SPACE
2170      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2171      if (commaNeeded)
2172          _OUT << "\"" <<  VkImageType_map[*obj] << "\"," << std::endl;
2173      else
2174          _OUT << "\"" << VkImageType_map[*obj] << "\"" << std::endl;
2175 }
2176 
2177 static std::map<deUint64, std::string> VkImageUsageFlagBits_map = {
2178     std::make_pair(1ULL << 0, "VK_IMAGE_USAGE_TRANSFER_SRC_BIT"),
2179     std::make_pair(1ULL << 1, "VK_IMAGE_USAGE_TRANSFER_DST_BIT"),
2180     std::make_pair(1ULL << 2, "VK_IMAGE_USAGE_SAMPLED_BIT"),
2181     std::make_pair(1ULL << 3, "VK_IMAGE_USAGE_STORAGE_BIT"),
2182     std::make_pair(1ULL << 4, "VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT"),
2183     std::make_pair(1ULL << 5, "VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT"),
2184     std::make_pair(1ULL << 6, "VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT"),
2185     std::make_pair(1ULL << 7, "VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT"),
2186     std::make_pair(1ULL << 10, "VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR"),
2187     std::make_pair(1ULL << 11, "VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR"),
2188     std::make_pair(1ULL << 12, "VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR"),
2189     std::make_pair(1ULL << 16, "VK_IMAGE_USAGE_RESERVED_16_BIT_QCOM"),
2190     std::make_pair(1ULL << 17, "VK_IMAGE_USAGE_RESERVED_17_BIT_QCOM"),
2191     std::make_pair(1ULL << 9, "VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT"),
2192     std::make_pair(1ULL << 8, "VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2193     std::make_pair(1ULL << 13, "VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
2194     std::make_pair(1ULL << 14, "VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
2195     std::make_pair(1ULL << 15, "VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR"),
2196     std::make_pair(1ULL << 19, "VK_IMAGE_USAGE_RESERVED_19_BIT_EXT"),
2197     std::make_pair(1ULL << 18, "VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI"),
2198 };
print_VkImageUsageFlagBits(VkImageUsageFlagBits obj,const std::string & str,bool commaNeeded=true)2199 static void print_VkImageUsageFlagBits(VkImageUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2200      PRINT_SPACE
2201      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2202      if (commaNeeded)
2203          _OUT << "\"" <<  VkImageUsageFlagBits_map[obj] << "\"," << std::endl;
2204      else
2205          _OUT << "\"" << VkImageUsageFlagBits_map[obj] << "\"" << std::endl;
2206 }
print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)2207 static void print_VkImageUsageFlagBits(const VkImageUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2208      PRINT_SPACE
2209      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2210      if (commaNeeded)
2211          _OUT << "\"" <<  VkImageUsageFlagBits_map[*obj] << "\"," << std::endl;
2212      else
2213          _OUT << "\"" << VkImageUsageFlagBits_map[*obj] << "\"" << std::endl;
2214 }
2215 
2216 static std::map<deUint64, std::string> VkMemoryHeapFlagBits_map = {
2217     std::make_pair(1ULL << 0, "VK_MEMORY_HEAP_DEVICE_LOCAL_BIT"),
2218     std::make_pair(1ULL << 1, "VK_MEMORY_HEAP_MULTI_INSTANCE_BIT"),
2219     std::make_pair(1ULL << 2, "VK_MEMORY_HEAP_SEU_SAFE_BIT"),
2220 };
print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj,const std::string & str,bool commaNeeded=true)2221 static void print_VkMemoryHeapFlagBits(VkMemoryHeapFlagBits obj, const std::string& str, bool commaNeeded=true) {
2222      PRINT_SPACE
2223      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2224      if (commaNeeded)
2225          _OUT << "\"" <<  VkMemoryHeapFlagBits_map[obj] << "\"," << std::endl;
2226      else
2227          _OUT << "\"" << VkMemoryHeapFlagBits_map[obj] << "\"" << std::endl;
2228 }
print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj,const std::string & str,bool commaNeeded=true)2229 static void print_VkMemoryHeapFlagBits(const VkMemoryHeapFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2230      PRINT_SPACE
2231      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2232      if (commaNeeded)
2233          _OUT << "\"" <<  VkMemoryHeapFlagBits_map[*obj] << "\"," << std::endl;
2234      else
2235          _OUT << "\"" << VkMemoryHeapFlagBits_map[*obj] << "\"" << std::endl;
2236 }
2237 
2238 static std::map<deUint64, std::string> VkMemoryPropertyFlagBits_map = {
2239     std::make_pair(1ULL << 0, "VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT"),
2240     std::make_pair(1ULL << 1, "VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT"),
2241     std::make_pair(1ULL << 2, "VK_MEMORY_PROPERTY_HOST_COHERENT_BIT"),
2242     std::make_pair(1ULL << 3, "VK_MEMORY_PROPERTY_HOST_CACHED_BIT"),
2243     std::make_pair(1ULL << 4, "VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT"),
2244     std::make_pair(1ULL << 5, "VK_MEMORY_PROPERTY_PROTECTED_BIT"),
2245     std::make_pair(1ULL << 6, "VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD"),
2246     std::make_pair(1ULL << 7, "VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD"),
2247     std::make_pair(1ULL << 8, "VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV"),
2248 };
print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj,const std::string & str,bool commaNeeded=true)2249 static void print_VkMemoryPropertyFlagBits(VkMemoryPropertyFlagBits obj, const std::string& str, bool commaNeeded=true) {
2250      PRINT_SPACE
2251      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2252      if (commaNeeded)
2253          _OUT << "\"" <<  VkMemoryPropertyFlagBits_map[obj] << "\"," << std::endl;
2254      else
2255          _OUT << "\"" << VkMemoryPropertyFlagBits_map[obj] << "\"" << std::endl;
2256 }
print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj,const std::string & str,bool commaNeeded=true)2257 static void print_VkMemoryPropertyFlagBits(const VkMemoryPropertyFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2258      PRINT_SPACE
2259      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2260      if (commaNeeded)
2261          _OUT << "\"" <<  VkMemoryPropertyFlagBits_map[*obj] << "\"," << std::endl;
2262      else
2263          _OUT << "\"" << VkMemoryPropertyFlagBits_map[*obj] << "\"" << std::endl;
2264 }
2265 
2266 static std::map<deUint64, std::string> VkPhysicalDeviceType_map = {
2267     std::make_pair(0, "VK_PHYSICAL_DEVICE_TYPE_OTHER"),
2268     std::make_pair(1, "VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU"),
2269     std::make_pair(2, "VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU"),
2270     std::make_pair(3, "VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU"),
2271     std::make_pair(4, "VK_PHYSICAL_DEVICE_TYPE_CPU"),
2272 };
print_VkPhysicalDeviceType(VkPhysicalDeviceType obj,const std::string & str,bool commaNeeded=true)2273 static void print_VkPhysicalDeviceType(VkPhysicalDeviceType obj, const std::string& str, bool commaNeeded=true) {
2274      PRINT_SPACE
2275      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2276      if (commaNeeded)
2277          _OUT << "\"" <<  VkPhysicalDeviceType_map[obj] << "\"," << std::endl;
2278      else
2279          _OUT << "\"" << VkPhysicalDeviceType_map[obj] << "\"" << std::endl;
2280 }
print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj,const std::string & str,bool commaNeeded=true)2281 static void print_VkPhysicalDeviceType(const VkPhysicalDeviceType * obj, const std::string& str, bool commaNeeded=true) {
2282      PRINT_SPACE
2283      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2284      if (commaNeeded)
2285          _OUT << "\"" <<  VkPhysicalDeviceType_map[*obj] << "\"," << std::endl;
2286      else
2287          _OUT << "\"" << VkPhysicalDeviceType_map[*obj] << "\"" << std::endl;
2288 }
2289 
2290 static std::map<deUint64, std::string> VkQueueFlagBits_map = {
2291     std::make_pair(1ULL << 0, "VK_QUEUE_GRAPHICS_BIT"),
2292     std::make_pair(1ULL << 1, "VK_QUEUE_COMPUTE_BIT"),
2293     std::make_pair(1ULL << 2, "VK_QUEUE_TRANSFER_BIT"),
2294     std::make_pair(1ULL << 4, "VK_QUEUE_PROTECTED_BIT"),
2295     std::make_pair(1ULL << 5, "VK_QUEUE_VIDEO_DECODE_BIT_KHR"),
2296     std::make_pair(1ULL << 6, "VK_QUEUE_VIDEO_ENCODE_BIT_KHR"),
2297 };
print_VkQueueFlagBits(VkQueueFlagBits obj,const std::string & str,bool commaNeeded=true)2298 static void print_VkQueueFlagBits(VkQueueFlagBits obj, const std::string& str, bool commaNeeded=true) {
2299      PRINT_SPACE
2300      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2301      if (commaNeeded)
2302          _OUT << "\"" <<  VkQueueFlagBits_map[obj] << "\"," << std::endl;
2303      else
2304          _OUT << "\"" << VkQueueFlagBits_map[obj] << "\"" << std::endl;
2305 }
print_VkQueueFlagBits(const VkQueueFlagBits * obj,const std::string & str,bool commaNeeded=true)2306 static void print_VkQueueFlagBits(const VkQueueFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2307      PRINT_SPACE
2308      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2309      if (commaNeeded)
2310          _OUT << "\"" <<  VkQueueFlagBits_map[*obj] << "\"," << std::endl;
2311      else
2312          _OUT << "\"" << VkQueueFlagBits_map[*obj] << "\"" << std::endl;
2313 }
2314 
2315 static std::map<deUint64, std::string> VkDeviceQueueCreateFlagBits_map = {
2316     std::make_pair(1ULL << 0, "VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT"),
2317 };
print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2318 static void print_VkDeviceQueueCreateFlagBits(VkDeviceQueueCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2319      PRINT_SPACE
2320      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2321      if (commaNeeded)
2322          _OUT << "\"" <<  VkDeviceQueueCreateFlagBits_map[obj] << "\"," << std::endl;
2323      else
2324          _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[obj] << "\"" << std::endl;
2325 }
print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2326 static void print_VkDeviceQueueCreateFlagBits(const VkDeviceQueueCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2327      PRINT_SPACE
2328      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2329      if (commaNeeded)
2330          _OUT << "\"" <<  VkDeviceQueueCreateFlagBits_map[*obj] << "\"," << std::endl;
2331      else
2332          _OUT << "\"" << VkDeviceQueueCreateFlagBits_map[*obj] << "\"" << std::endl;
2333 }
2334 
2335 static std::map<deUint64, std::string> VkPipelineStageFlagBits_map = {
2336     std::make_pair(1ULL << 0, "VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT"),
2337     std::make_pair(1ULL << 1, "VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT"),
2338     std::make_pair(1ULL << 2, "VK_PIPELINE_STAGE_VERTEX_INPUT_BIT"),
2339     std::make_pair(1ULL << 3, "VK_PIPELINE_STAGE_VERTEX_SHADER_BIT"),
2340     std::make_pair(1ULL << 4, "VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT"),
2341     std::make_pair(1ULL << 5, "VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT"),
2342     std::make_pair(1ULL << 6, "VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT"),
2343     std::make_pair(1ULL << 7, "VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT"),
2344     std::make_pair(1ULL << 8, "VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT"),
2345     std::make_pair(1ULL << 9, "VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT"),
2346     std::make_pair(1ULL << 10, "VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT"),
2347     std::make_pair(1ULL << 11, "VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT"),
2348     std::make_pair(1ULL << 12, "VK_PIPELINE_STAGE_TRANSFER_BIT"),
2349     std::make_pair(1ULL << 13, "VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT"),
2350     std::make_pair(1ULL << 14, "VK_PIPELINE_STAGE_HOST_BIT"),
2351     std::make_pair(1ULL << 15, "VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT"),
2352     std::make_pair(1ULL << 16, "VK_PIPELINE_STAGE_ALL_COMMANDS_BIT"),
2353     std::make_pair(1ULL << 24, "VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT"),
2354     std::make_pair(1ULL << 18, "VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT"),
2355     std::make_pair(1ULL << 25, "VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"),
2356     std::make_pair(1ULL << 21, "VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR"),
2357     std::make_pair(1ULL << 19, "VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV"),
2358     std::make_pair(1ULL << 20, "VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV"),
2359     std::make_pair(1ULL << 23, "VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT"),
2360     std::make_pair(1ULL << 22, "VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2361     std::make_pair(1ULL << 17, "VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV"),
2362     std::make_pair(0, "VK_PIPELINE_STAGE_NONE_KHR"),
2363 };
print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj,const std::string & str,bool commaNeeded=true)2364 static void print_VkPipelineStageFlagBits(VkPipelineStageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2365      PRINT_SPACE
2366      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2367      if (commaNeeded)
2368          _OUT << "\"" <<  VkPipelineStageFlagBits_map[obj] << "\"," << std::endl;
2369      else
2370          _OUT << "\"" << VkPipelineStageFlagBits_map[obj] << "\"" << std::endl;
2371 }
print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj,const std::string & str,bool commaNeeded=true)2372 static void print_VkPipelineStageFlagBits(const VkPipelineStageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2373      PRINT_SPACE
2374      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2375      if (commaNeeded)
2376          _OUT << "\"" <<  VkPipelineStageFlagBits_map[*obj] << "\"," << std::endl;
2377      else
2378          _OUT << "\"" << VkPipelineStageFlagBits_map[*obj] << "\"" << std::endl;
2379 }
2380 
2381 static std::map<deUint64, std::string> VkFenceCreateFlagBits_map = {
2382     std::make_pair(1ULL << 0, "VK_FENCE_CREATE_SIGNALED_BIT"),
2383 };
print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2384 static void print_VkFenceCreateFlagBits(VkFenceCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2385      PRINT_SPACE
2386      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2387      if (commaNeeded)
2388          _OUT << "\"" <<  VkFenceCreateFlagBits_map[obj] << "\"," << std::endl;
2389      else
2390          _OUT << "\"" << VkFenceCreateFlagBits_map[obj] << "\"" << std::endl;
2391 }
print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2392 static void print_VkFenceCreateFlagBits(const VkFenceCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2393      PRINT_SPACE
2394      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2395      if (commaNeeded)
2396          _OUT << "\"" <<  VkFenceCreateFlagBits_map[*obj] << "\"," << std::endl;
2397      else
2398          _OUT << "\"" << VkFenceCreateFlagBits_map[*obj] << "\"" << std::endl;
2399 }
2400 
2401 static std::map<deUint64, std::string> VkEventCreateFlagBits_map = {
2402     std::make_pair(1ULL << 0, "VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR"),
2403 };
print_VkEventCreateFlagBits(VkEventCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2404 static void print_VkEventCreateFlagBits(VkEventCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2405      PRINT_SPACE
2406      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2407      if (commaNeeded)
2408          _OUT << "\"" <<  VkEventCreateFlagBits_map[obj] << "\"," << std::endl;
2409      else
2410          _OUT << "\"" << VkEventCreateFlagBits_map[obj] << "\"" << std::endl;
2411 }
print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2412 static void print_VkEventCreateFlagBits(const VkEventCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2413      PRINT_SPACE
2414      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2415      if (commaNeeded)
2416          _OUT << "\"" <<  VkEventCreateFlagBits_map[*obj] << "\"," << std::endl;
2417      else
2418          _OUT << "\"" << VkEventCreateFlagBits_map[*obj] << "\"" << std::endl;
2419 }
2420 
2421 static std::map<deUint64, std::string> VkQueryPipelineStatisticFlagBits_map = {
2422     std::make_pair(1ULL << 0, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT"),
2423     std::make_pair(1ULL << 1, "VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT"),
2424     std::make_pair(1ULL << 2, "VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT"),
2425     std::make_pair(1ULL << 3, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT"),
2426     std::make_pair(1ULL << 4, "VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT"),
2427     std::make_pair(1ULL << 5, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT"),
2428     std::make_pair(1ULL << 6, "VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT"),
2429     std::make_pair(1ULL << 7, "VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT"),
2430     std::make_pair(1ULL << 8, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT"),
2431     std::make_pair(1ULL << 9, "VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT"),
2432     std::make_pair(1ULL << 10, "VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT"),
2433 };
print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj,const std::string & str,bool commaNeeded=true)2434 static void print_VkQueryPipelineStatisticFlagBits(VkQueryPipelineStatisticFlagBits obj, const std::string& str, bool commaNeeded=true) {
2435      PRINT_SPACE
2436      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2437      if (commaNeeded)
2438          _OUT << "\"" <<  VkQueryPipelineStatisticFlagBits_map[obj] << "\"," << std::endl;
2439      else
2440          _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[obj] << "\"" << std::endl;
2441 }
print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj,const std::string & str,bool commaNeeded=true)2442 static void print_VkQueryPipelineStatisticFlagBits(const VkQueryPipelineStatisticFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2443      PRINT_SPACE
2444      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2445      if (commaNeeded)
2446          _OUT << "\"" <<  VkQueryPipelineStatisticFlagBits_map[*obj] << "\"," << std::endl;
2447      else
2448          _OUT << "\"" << VkQueryPipelineStatisticFlagBits_map[*obj] << "\"" << std::endl;
2449 }
2450 
2451 static std::map<deUint64, std::string> VkQueryType_map = {
2452     std::make_pair(0, "VK_QUERY_TYPE_OCCLUSION"),
2453     std::make_pair(1, "VK_QUERY_TYPE_PIPELINE_STATISTICS"),
2454     std::make_pair(2, "VK_QUERY_TYPE_TIMESTAMP"),
2455     std::make_pair(1000023000, "VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR"),
2456     std::make_pair(1000028004, "VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT"),
2457     std::make_pair(1000116000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR"),
2458     std::make_pair(1000150000, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR"),
2459     std::make_pair(1000150001, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR"),
2460     std::make_pair(1000165000, "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV"),
2461     std::make_pair(1000210000, "VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL"),
2462     std::make_pair(1000299000, "VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR"),
2463 };
print_VkQueryType(VkQueryType obj,const std::string & str,bool commaNeeded=true)2464 static void print_VkQueryType(VkQueryType obj, const std::string& str, bool commaNeeded=true) {
2465      PRINT_SPACE
2466      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2467      if (commaNeeded)
2468          _OUT << "\"" <<  VkQueryType_map[obj] << "\"," << std::endl;
2469      else
2470          _OUT << "\"" << VkQueryType_map[obj] << "\"" << std::endl;
2471 }
print_VkQueryType(const VkQueryType * obj,const std::string & str,bool commaNeeded=true)2472 static void print_VkQueryType(const VkQueryType * obj, const std::string& str, bool commaNeeded=true) {
2473      PRINT_SPACE
2474      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2475      if (commaNeeded)
2476          _OUT << "\"" <<  VkQueryType_map[*obj] << "\"," << std::endl;
2477      else
2478          _OUT << "\"" << VkQueryType_map[*obj] << "\"" << std::endl;
2479 }
2480 
2481 static std::map<deUint64, std::string> VkQueryResultFlagBits_map = {
2482     std::make_pair(1ULL << 0, "VK_QUERY_RESULT_64_BIT"),
2483     std::make_pair(1ULL << 1, "VK_QUERY_RESULT_WAIT_BIT"),
2484     std::make_pair(1ULL << 2, "VK_QUERY_RESULT_WITH_AVAILABILITY_BIT"),
2485     std::make_pair(1ULL << 3, "VK_QUERY_RESULT_PARTIAL_BIT"),
2486     std::make_pair(1ULL << 4, "VK_QUERY_RESULT_WITH_STATUS_BIT_KHR"),
2487 };
print_VkQueryResultFlagBits(VkQueryResultFlagBits obj,const std::string & str,bool commaNeeded=true)2488 static void print_VkQueryResultFlagBits(VkQueryResultFlagBits obj, const std::string& str, bool commaNeeded=true) {
2489      PRINT_SPACE
2490      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2491      if (commaNeeded)
2492          _OUT << "\"" <<  VkQueryResultFlagBits_map[obj] << "\"," << std::endl;
2493      else
2494          _OUT << "\"" << VkQueryResultFlagBits_map[obj] << "\"" << std::endl;
2495 }
print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj,const std::string & str,bool commaNeeded=true)2496 static void print_VkQueryResultFlagBits(const VkQueryResultFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2497      PRINT_SPACE
2498      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2499      if (commaNeeded)
2500          _OUT << "\"" <<  VkQueryResultFlagBits_map[*obj] << "\"," << std::endl;
2501      else
2502          _OUT << "\"" << VkQueryResultFlagBits_map[*obj] << "\"" << std::endl;
2503 }
2504 
2505 static std::map<deUint64, std::string> VkBufferCreateFlagBits_map = {
2506     std::make_pair(1ULL << 0, "VK_BUFFER_CREATE_SPARSE_BINDING_BIT"),
2507     std::make_pair(1ULL << 1, "VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT"),
2508     std::make_pair(1ULL << 2, "VK_BUFFER_CREATE_SPARSE_ALIASED_BIT"),
2509     std::make_pair(1ULL << 3, "VK_BUFFER_CREATE_PROTECTED_BIT"),
2510     std::make_pair(1ULL << 4, "VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT"),
2511     std::make_pair(1ULL << 5, "VK_BUFFER_CREATE_RESERVED_5_BIT_AMD"),
2512 };
print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2513 static void print_VkBufferCreateFlagBits(VkBufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2514      PRINT_SPACE
2515      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2516      if (commaNeeded)
2517          _OUT << "\"" <<  VkBufferCreateFlagBits_map[obj] << "\"," << std::endl;
2518      else
2519          _OUT << "\"" << VkBufferCreateFlagBits_map[obj] << "\"" << std::endl;
2520 }
print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2521 static void print_VkBufferCreateFlagBits(const VkBufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2522      PRINT_SPACE
2523      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2524      if (commaNeeded)
2525          _OUT << "\"" <<  VkBufferCreateFlagBits_map[*obj] << "\"," << std::endl;
2526      else
2527          _OUT << "\"" << VkBufferCreateFlagBits_map[*obj] << "\"" << std::endl;
2528 }
2529 
2530 static std::map<deUint64, std::string> VkBufferUsageFlagBits_map = {
2531     std::make_pair(1ULL << 0, "VK_BUFFER_USAGE_TRANSFER_SRC_BIT"),
2532     std::make_pair(1ULL << 1, "VK_BUFFER_USAGE_TRANSFER_DST_BIT"),
2533     std::make_pair(1ULL << 2, "VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT"),
2534     std::make_pair(1ULL << 3, "VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT"),
2535     std::make_pair(1ULL << 4, "VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT"),
2536     std::make_pair(1ULL << 5, "VK_BUFFER_USAGE_STORAGE_BUFFER_BIT"),
2537     std::make_pair(1ULL << 6, "VK_BUFFER_USAGE_INDEX_BUFFER_BIT"),
2538     std::make_pair(1ULL << 7, "VK_BUFFER_USAGE_VERTEX_BUFFER_BIT"),
2539     std::make_pair(1ULL << 8, "VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT"),
2540     std::make_pair(1ULL << 17, "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT"),
2541     std::make_pair(1ULL << 13, "VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR"),
2542     std::make_pair(1ULL << 14, "VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR"),
2543     std::make_pair(1ULL << 11, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT"),
2544     std::make_pair(1ULL << 12, "VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT"),
2545     std::make_pair(1ULL << 9, "VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT"),
2546     std::make_pair(1ULL << 19, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR"),
2547     std::make_pair(1ULL << 20, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR"),
2548     std::make_pair(1ULL << 10, "VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR"),
2549     std::make_pair(1ULL << 18, "VK_BUFFER_USAGE_RESERVED_18_BIT_QCOM"),
2550     std::make_pair(1ULL << 15, "VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR"),
2551     std::make_pair(1ULL << 16, "VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR"),
2552     std::make_pair(1ULL << 21, "VK_BUFFER_USAGE_RESERVED_21_BIT_AMD"),
2553     std::make_pair(1ULL << 22, "VK_BUFFER_USAGE_RESERVED_22_BIT_AMD"),
2554 };
print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj,const std::string & str,bool commaNeeded=true)2555 static void print_VkBufferUsageFlagBits(VkBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2556      PRINT_SPACE
2557      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2558      if (commaNeeded)
2559          _OUT << "\"" <<  VkBufferUsageFlagBits_map[obj] << "\"," << std::endl;
2560      else
2561          _OUT << "\"" << VkBufferUsageFlagBits_map[obj] << "\"" << std::endl;
2562 }
print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)2563 static void print_VkBufferUsageFlagBits(const VkBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2564      PRINT_SPACE
2565      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2566      if (commaNeeded)
2567          _OUT << "\"" <<  VkBufferUsageFlagBits_map[*obj] << "\"," << std::endl;
2568      else
2569          _OUT << "\"" << VkBufferUsageFlagBits_map[*obj] << "\"" << std::endl;
2570 }
2571 
2572 static std::map<deUint64, std::string> VkSharingMode_map = {
2573     std::make_pair(0, "VK_SHARING_MODE_EXCLUSIVE"),
2574     std::make_pair(1, "VK_SHARING_MODE_CONCURRENT"),
2575 };
print_VkSharingMode(VkSharingMode obj,const std::string & str,bool commaNeeded=true)2576 static void print_VkSharingMode(VkSharingMode obj, const std::string& str, bool commaNeeded=true) {
2577      PRINT_SPACE
2578      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2579      if (commaNeeded)
2580          _OUT << "\"" <<  VkSharingMode_map[obj] << "\"," << std::endl;
2581      else
2582          _OUT << "\"" << VkSharingMode_map[obj] << "\"" << std::endl;
2583 }
print_VkSharingMode(const VkSharingMode * obj,const std::string & str,bool commaNeeded=true)2584 static void print_VkSharingMode(const VkSharingMode * obj, const std::string& str, bool commaNeeded=true) {
2585      PRINT_SPACE
2586      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2587      if (commaNeeded)
2588          _OUT << "\"" <<  VkSharingMode_map[*obj] << "\"," << std::endl;
2589      else
2590          _OUT << "\"" << VkSharingMode_map[*obj] << "\"" << std::endl;
2591 }
2592 
2593 static std::map<deUint64, std::string> VkComponentSwizzle_map = {
2594     std::make_pair(0, "VK_COMPONENT_SWIZZLE_IDENTITY"),
2595     std::make_pair(1, "VK_COMPONENT_SWIZZLE_ZERO"),
2596     std::make_pair(2, "VK_COMPONENT_SWIZZLE_ONE"),
2597     std::make_pair(3, "VK_COMPONENT_SWIZZLE_R"),
2598     std::make_pair(4, "VK_COMPONENT_SWIZZLE_G"),
2599     std::make_pair(5, "VK_COMPONENT_SWIZZLE_B"),
2600     std::make_pair(6, "VK_COMPONENT_SWIZZLE_A"),
2601 };
print_VkComponentSwizzle(VkComponentSwizzle obj,const std::string & str,bool commaNeeded=true)2602 static void print_VkComponentSwizzle(VkComponentSwizzle obj, const std::string& str, bool commaNeeded=true) {
2603      PRINT_SPACE
2604      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2605      if (commaNeeded)
2606          _OUT << "\"" <<  VkComponentSwizzle_map[obj] << "\"," << std::endl;
2607      else
2608          _OUT << "\"" << VkComponentSwizzle_map[obj] << "\"" << std::endl;
2609 }
print_VkComponentSwizzle(const VkComponentSwizzle * obj,const std::string & str,bool commaNeeded=true)2610 static void print_VkComponentSwizzle(const VkComponentSwizzle * obj, const std::string& str, bool commaNeeded=true) {
2611      PRINT_SPACE
2612      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2613      if (commaNeeded)
2614          _OUT << "\"" <<  VkComponentSwizzle_map[*obj] << "\"," << std::endl;
2615      else
2616          _OUT << "\"" << VkComponentSwizzle_map[*obj] << "\"" << std::endl;
2617 }
2618 
2619 static std::map<deUint64, std::string> VkImageViewCreateFlagBits_map = {
2620     std::make_pair(1ULL << 0, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT"),
2621     std::make_pair(1ULL << 1, "VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT"),
2622 };
print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2623 static void print_VkImageViewCreateFlagBits(VkImageViewCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2624      PRINT_SPACE
2625      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2626      if (commaNeeded)
2627          _OUT << "\"" <<  VkImageViewCreateFlagBits_map[obj] << "\"," << std::endl;
2628      else
2629          _OUT << "\"" << VkImageViewCreateFlagBits_map[obj] << "\"" << std::endl;
2630 }
print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2631 static void print_VkImageViewCreateFlagBits(const VkImageViewCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2632      PRINT_SPACE
2633      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2634      if (commaNeeded)
2635          _OUT << "\"" <<  VkImageViewCreateFlagBits_map[*obj] << "\"," << std::endl;
2636      else
2637          _OUT << "\"" << VkImageViewCreateFlagBits_map[*obj] << "\"" << std::endl;
2638 }
2639 
2640 static std::map<deUint64, std::string> VkImageViewType_map = {
2641     std::make_pair(0, "VK_IMAGE_VIEW_TYPE_1D"),
2642     std::make_pair(1, "VK_IMAGE_VIEW_TYPE_2D"),
2643     std::make_pair(2, "VK_IMAGE_VIEW_TYPE_3D"),
2644     std::make_pair(3, "VK_IMAGE_VIEW_TYPE_CUBE"),
2645     std::make_pair(4, "VK_IMAGE_VIEW_TYPE_1D_ARRAY"),
2646     std::make_pair(5, "VK_IMAGE_VIEW_TYPE_2D_ARRAY"),
2647     std::make_pair(6, "VK_IMAGE_VIEW_TYPE_CUBE_ARRAY"),
2648 };
print_VkImageViewType(VkImageViewType obj,const std::string & str,bool commaNeeded=true)2649 static void print_VkImageViewType(VkImageViewType obj, const std::string& str, bool commaNeeded=true) {
2650      PRINT_SPACE
2651      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2652      if (commaNeeded)
2653          _OUT << "\"" <<  VkImageViewType_map[obj] << "\"," << std::endl;
2654      else
2655          _OUT << "\"" << VkImageViewType_map[obj] << "\"" << std::endl;
2656 }
print_VkImageViewType(const VkImageViewType * obj,const std::string & str,bool commaNeeded=true)2657 static void print_VkImageViewType(const VkImageViewType * obj, const std::string& str, bool commaNeeded=true) {
2658      PRINT_SPACE
2659      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2660      if (commaNeeded)
2661          _OUT << "\"" <<  VkImageViewType_map[*obj] << "\"," << std::endl;
2662      else
2663          _OUT << "\"" << VkImageViewType_map[*obj] << "\"" << std::endl;
2664 }
2665 
2666 static std::map<deUint64, std::string> VkPipelineCacheCreateFlagBits_map = {
2667     std::make_pair(1ULL << 2, "VK_PIPELINE_CACHE_CREATE_USE_APPLICATION_STORAGE_BIT"),
2668     std::make_pair(1ULL << 1, "VK_PIPELINE_CACHE_CREATE_RESERVED_1_BIT_EXT"),
2669     std::make_pair(1ULL << 0, "VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT"),
2670 };
print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2671 static void print_VkPipelineCacheCreateFlagBits(VkPipelineCacheCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2672      PRINT_SPACE
2673      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2674      if (commaNeeded)
2675          _OUT << "\"" <<  VkPipelineCacheCreateFlagBits_map[obj] << "\"," << std::endl;
2676      else
2677          _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[obj] << "\"" << std::endl;
2678 }
print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2679 static void print_VkPipelineCacheCreateFlagBits(const VkPipelineCacheCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2680      PRINT_SPACE
2681      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2682      if (commaNeeded)
2683          _OUT << "\"" <<  VkPipelineCacheCreateFlagBits_map[*obj] << "\"," << std::endl;
2684      else
2685          _OUT << "\"" << VkPipelineCacheCreateFlagBits_map[*obj] << "\"" << std::endl;
2686 }
2687 
2688 static std::map<deUint64, std::string> VkBlendFactor_map = {
2689     std::make_pair(0, "VK_BLEND_FACTOR_ZERO"),
2690     std::make_pair(1, "VK_BLEND_FACTOR_ONE"),
2691     std::make_pair(2, "VK_BLEND_FACTOR_SRC_COLOR"),
2692     std::make_pair(3, "VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR"),
2693     std::make_pair(4, "VK_BLEND_FACTOR_DST_COLOR"),
2694     std::make_pair(5, "VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR"),
2695     std::make_pair(6, "VK_BLEND_FACTOR_SRC_ALPHA"),
2696     std::make_pair(7, "VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA"),
2697     std::make_pair(8, "VK_BLEND_FACTOR_DST_ALPHA"),
2698     std::make_pair(9, "VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA"),
2699     std::make_pair(10, "VK_BLEND_FACTOR_CONSTANT_COLOR"),
2700     std::make_pair(11, "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR"),
2701     std::make_pair(12, "VK_BLEND_FACTOR_CONSTANT_ALPHA"),
2702     std::make_pair(13, "VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA"),
2703     std::make_pair(14, "VK_BLEND_FACTOR_SRC_ALPHA_SATURATE"),
2704     std::make_pair(15, "VK_BLEND_FACTOR_SRC1_COLOR"),
2705     std::make_pair(16, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR"),
2706     std::make_pair(17, "VK_BLEND_FACTOR_SRC1_ALPHA"),
2707     std::make_pair(18, "VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA"),
2708 };
print_VkBlendFactor(VkBlendFactor obj,const std::string & str,bool commaNeeded=true)2709 static void print_VkBlendFactor(VkBlendFactor obj, const std::string& str, bool commaNeeded=true) {
2710      PRINT_SPACE
2711      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2712      if (commaNeeded)
2713          _OUT << "\"" <<  VkBlendFactor_map[obj] << "\"," << std::endl;
2714      else
2715          _OUT << "\"" << VkBlendFactor_map[obj] << "\"" << std::endl;
2716 }
print_VkBlendFactor(const VkBlendFactor * obj,const std::string & str,bool commaNeeded=true)2717 static void print_VkBlendFactor(const VkBlendFactor * obj, const std::string& str, bool commaNeeded=true) {
2718      PRINT_SPACE
2719      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2720      if (commaNeeded)
2721          _OUT << "\"" <<  VkBlendFactor_map[*obj] << "\"," << std::endl;
2722      else
2723          _OUT << "\"" << VkBlendFactor_map[*obj] << "\"" << std::endl;
2724 }
2725 
2726 static std::map<deUint64, std::string> VkBlendOp_map = {
2727     std::make_pair(0, "VK_BLEND_OP_ADD"),
2728     std::make_pair(1, "VK_BLEND_OP_SUBTRACT"),
2729     std::make_pair(2, "VK_BLEND_OP_REVERSE_SUBTRACT"),
2730     std::make_pair(3, "VK_BLEND_OP_MIN"),
2731     std::make_pair(4, "VK_BLEND_OP_MAX"),
2732     std::make_pair(1000148000, "VK_BLEND_OP_ZERO_EXT"),
2733     std::make_pair(1000148001, "VK_BLEND_OP_SRC_EXT"),
2734     std::make_pair(1000148002, "VK_BLEND_OP_DST_EXT"),
2735     std::make_pair(1000148003, "VK_BLEND_OP_SRC_OVER_EXT"),
2736     std::make_pair(1000148004, "VK_BLEND_OP_DST_OVER_EXT"),
2737     std::make_pair(1000148005, "VK_BLEND_OP_SRC_IN_EXT"),
2738     std::make_pair(1000148006, "VK_BLEND_OP_DST_IN_EXT"),
2739     std::make_pair(1000148007, "VK_BLEND_OP_SRC_OUT_EXT"),
2740     std::make_pair(1000148008, "VK_BLEND_OP_DST_OUT_EXT"),
2741     std::make_pair(1000148009, "VK_BLEND_OP_SRC_ATOP_EXT"),
2742     std::make_pair(1000148010, "VK_BLEND_OP_DST_ATOP_EXT"),
2743     std::make_pair(1000148011, "VK_BLEND_OP_XOR_EXT"),
2744     std::make_pair(1000148012, "VK_BLEND_OP_MULTIPLY_EXT"),
2745     std::make_pair(1000148013, "VK_BLEND_OP_SCREEN_EXT"),
2746     std::make_pair(1000148014, "VK_BLEND_OP_OVERLAY_EXT"),
2747     std::make_pair(1000148015, "VK_BLEND_OP_DARKEN_EXT"),
2748     std::make_pair(1000148016, "VK_BLEND_OP_LIGHTEN_EXT"),
2749     std::make_pair(1000148017, "VK_BLEND_OP_COLORDODGE_EXT"),
2750     std::make_pair(1000148018, "VK_BLEND_OP_COLORBURN_EXT"),
2751     std::make_pair(1000148019, "VK_BLEND_OP_HARDLIGHT_EXT"),
2752     std::make_pair(1000148020, "VK_BLEND_OP_SOFTLIGHT_EXT"),
2753     std::make_pair(1000148021, "VK_BLEND_OP_DIFFERENCE_EXT"),
2754     std::make_pair(1000148022, "VK_BLEND_OP_EXCLUSION_EXT"),
2755     std::make_pair(1000148023, "VK_BLEND_OP_INVERT_EXT"),
2756     std::make_pair(1000148024, "VK_BLEND_OP_INVERT_RGB_EXT"),
2757     std::make_pair(1000148025, "VK_BLEND_OP_LINEARDODGE_EXT"),
2758     std::make_pair(1000148026, "VK_BLEND_OP_LINEARBURN_EXT"),
2759     std::make_pair(1000148027, "VK_BLEND_OP_VIVIDLIGHT_EXT"),
2760     std::make_pair(1000148028, "VK_BLEND_OP_LINEARLIGHT_EXT"),
2761     std::make_pair(1000148029, "VK_BLEND_OP_PINLIGHT_EXT"),
2762     std::make_pair(1000148030, "VK_BLEND_OP_HARDMIX_EXT"),
2763     std::make_pair(1000148031, "VK_BLEND_OP_HSL_HUE_EXT"),
2764     std::make_pair(1000148032, "VK_BLEND_OP_HSL_SATURATION_EXT"),
2765     std::make_pair(1000148033, "VK_BLEND_OP_HSL_COLOR_EXT"),
2766     std::make_pair(1000148034, "VK_BLEND_OP_HSL_LUMINOSITY_EXT"),
2767     std::make_pair(1000148035, "VK_BLEND_OP_PLUS_EXT"),
2768     std::make_pair(1000148036, "VK_BLEND_OP_PLUS_CLAMPED_EXT"),
2769     std::make_pair(1000148037, "VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT"),
2770     std::make_pair(1000148038, "VK_BLEND_OP_PLUS_DARKER_EXT"),
2771     std::make_pair(1000148039, "VK_BLEND_OP_MINUS_EXT"),
2772     std::make_pair(1000148040, "VK_BLEND_OP_MINUS_CLAMPED_EXT"),
2773     std::make_pair(1000148041, "VK_BLEND_OP_CONTRAST_EXT"),
2774     std::make_pair(1000148042, "VK_BLEND_OP_INVERT_OVG_EXT"),
2775     std::make_pair(1000148043, "VK_BLEND_OP_RED_EXT"),
2776     std::make_pair(1000148044, "VK_BLEND_OP_GREEN_EXT"),
2777     std::make_pair(1000148045, "VK_BLEND_OP_BLUE_EXT"),
2778 };
print_VkBlendOp(VkBlendOp obj,const std::string & str,bool commaNeeded=true)2779 static void print_VkBlendOp(VkBlendOp obj, const std::string& str, bool commaNeeded=true) {
2780      PRINT_SPACE
2781      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2782      if (commaNeeded)
2783          _OUT << "\"" <<  VkBlendOp_map[obj] << "\"," << std::endl;
2784      else
2785          _OUT << "\"" << VkBlendOp_map[obj] << "\"" << std::endl;
2786 }
print_VkBlendOp(const VkBlendOp * obj,const std::string & str,bool commaNeeded=true)2787 static void print_VkBlendOp(const VkBlendOp * obj, const std::string& str, bool commaNeeded=true) {
2788      PRINT_SPACE
2789      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2790      if (commaNeeded)
2791          _OUT << "\"" <<  VkBlendOp_map[*obj] << "\"," << std::endl;
2792      else
2793          _OUT << "\"" << VkBlendOp_map[*obj] << "\"" << std::endl;
2794 }
2795 
2796 static std::map<deUint64, std::string> VkColorComponentFlagBits_map = {
2797     std::make_pair(1ULL << 0, "VK_COLOR_COMPONENT_R_BIT"),
2798     std::make_pair(1ULL << 1, "VK_COLOR_COMPONENT_G_BIT"),
2799     std::make_pair(1ULL << 2, "VK_COLOR_COMPONENT_B_BIT"),
2800     std::make_pair(1ULL << 3, "VK_COLOR_COMPONENT_A_BIT"),
2801 };
print_VkColorComponentFlagBits(VkColorComponentFlagBits obj,const std::string & str,bool commaNeeded=true)2802 static void print_VkColorComponentFlagBits(VkColorComponentFlagBits obj, const std::string& str, bool commaNeeded=true) {
2803      PRINT_SPACE
2804      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2805      if (commaNeeded)
2806          _OUT << "\"" <<  VkColorComponentFlagBits_map[obj] << "\"," << std::endl;
2807      else
2808          _OUT << "\"" << VkColorComponentFlagBits_map[obj] << "\"" << std::endl;
2809 }
print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj,const std::string & str,bool commaNeeded=true)2810 static void print_VkColorComponentFlagBits(const VkColorComponentFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2811      PRINT_SPACE
2812      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2813      if (commaNeeded)
2814          _OUT << "\"" <<  VkColorComponentFlagBits_map[*obj] << "\"," << std::endl;
2815      else
2816          _OUT << "\"" << VkColorComponentFlagBits_map[*obj] << "\"" << std::endl;
2817 }
2818 
2819 static std::map<deUint64, std::string> VkCompareOp_map = {
2820     std::make_pair(0, "VK_COMPARE_OP_NEVER"),
2821     std::make_pair(1, "VK_COMPARE_OP_LESS"),
2822     std::make_pair(2, "VK_COMPARE_OP_EQUAL"),
2823     std::make_pair(3, "VK_COMPARE_OP_LESS_OR_EQUAL"),
2824     std::make_pair(4, "VK_COMPARE_OP_GREATER"),
2825     std::make_pair(5, "VK_COMPARE_OP_NOT_EQUAL"),
2826     std::make_pair(6, "VK_COMPARE_OP_GREATER_OR_EQUAL"),
2827     std::make_pair(7, "VK_COMPARE_OP_ALWAYS"),
2828 };
print_VkCompareOp(VkCompareOp obj,const std::string & str,bool commaNeeded=true)2829 static void print_VkCompareOp(VkCompareOp obj, const std::string& str, bool commaNeeded=true) {
2830      PRINT_SPACE
2831      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2832      if (commaNeeded)
2833          _OUT << "\"" <<  VkCompareOp_map[obj] << "\"," << std::endl;
2834      else
2835          _OUT << "\"" << VkCompareOp_map[obj] << "\"" << std::endl;
2836 }
print_VkCompareOp(const VkCompareOp * obj,const std::string & str,bool commaNeeded=true)2837 static void print_VkCompareOp(const VkCompareOp * obj, const std::string& str, bool commaNeeded=true) {
2838      PRINT_SPACE
2839      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2840      if (commaNeeded)
2841          _OUT << "\"" <<  VkCompareOp_map[*obj] << "\"," << std::endl;
2842      else
2843          _OUT << "\"" << VkCompareOp_map[*obj] << "\"" << std::endl;
2844 }
2845 
2846 static std::map<deUint64, std::string> VkPipelineCreateFlagBits_map = {
2847     std::make_pair(1ULL << 0, "VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT"),
2848     std::make_pair(1ULL << 3, "VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT"),
2849     std::make_pair(1ULL << 4, "VK_PIPELINE_CREATE_DISPATCH_BASE_BIT"),
2850     std::make_pair(1ULL << 21, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
2851     std::make_pair(1ULL << 22, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
2852     std::make_pair(1ULL << 14, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR"),
2853     std::make_pair(1ULL << 15, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR"),
2854     std::make_pair(1ULL << 16, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR"),
2855     std::make_pair(1ULL << 17, "VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR"),
2856     std::make_pair(1ULL << 12, "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR"),
2857     std::make_pair(1ULL << 13, "VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR"),
2858     std::make_pair(1ULL << 19, "VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR"),
2859     std::make_pair(1ULL << 5, "VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV"),
2860     std::make_pair(1ULL << 6, "VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR"),
2861     std::make_pair(1ULL << 7, "VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR"),
2862     std::make_pair(1ULL << 18, "VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV"),
2863     std::make_pair(1ULL << 11, "VK_PIPELINE_CREATE_LIBRARY_BIT_KHR"),
2864     std::make_pair(1ULL << 8, "VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT"),
2865     std::make_pair(1ULL << 9, "VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT"),
2866     std::make_pair(1ULL << 23, "VK_PIPELINE_CREATE_RESERVED_23_BIT_AMD"),
2867     std::make_pair(1ULL << 10, "VK_PIPELINE_CREATE_RESERVED_10_BIT_AMD"),
2868     std::make_pair(1ULL << 20, "VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV"),
2869 };
print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2870 static void print_VkPipelineCreateFlagBits(VkPipelineCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2871      PRINT_SPACE
2872      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2873      if (commaNeeded)
2874          _OUT << "\"" <<  VkPipelineCreateFlagBits_map[obj] << "\"," << std::endl;
2875      else
2876          _OUT << "\"" << VkPipelineCreateFlagBits_map[obj] << "\"" << std::endl;
2877 }
print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2878 static void print_VkPipelineCreateFlagBits(const VkPipelineCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2879      PRINT_SPACE
2880      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2881      if (commaNeeded)
2882          _OUT << "\"" <<  VkPipelineCreateFlagBits_map[*obj] << "\"," << std::endl;
2883      else
2884          _OUT << "\"" << VkPipelineCreateFlagBits_map[*obj] << "\"" << std::endl;
2885 }
2886 
2887 static std::map<deUint64, std::string> VkPipelineShaderStageCreateFlagBits_map = {
2888     std::make_pair(1ULL << 0, "VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT"),
2889     std::make_pair(1ULL << 1, "VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT"),
2890     std::make_pair(1ULL << 3, "VK_PIPELINE_SHADER_STAGE_CREATE_RESERVED_3_BIT_KHR"),
2891 };
print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj,const std::string & str,bool commaNeeded=true)2892 static void print_VkPipelineShaderStageCreateFlagBits(VkPipelineShaderStageCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
2893      PRINT_SPACE
2894      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2895      if (commaNeeded)
2896          _OUT << "\"" <<  VkPipelineShaderStageCreateFlagBits_map[obj] << "\"," << std::endl;
2897      else
2898          _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[obj] << "\"" << std::endl;
2899 }
print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)2900 static void print_VkPipelineShaderStageCreateFlagBits(const VkPipelineShaderStageCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2901      PRINT_SPACE
2902      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2903      if (commaNeeded)
2904          _OUT << "\"" <<  VkPipelineShaderStageCreateFlagBits_map[*obj] << "\"," << std::endl;
2905      else
2906          _OUT << "\"" << VkPipelineShaderStageCreateFlagBits_map[*obj] << "\"" << std::endl;
2907 }
2908 
2909 static std::map<deUint64, std::string> VkShaderStageFlagBits_map = {
2910     std::make_pair(1ULL << 0, "VK_SHADER_STAGE_VERTEX_BIT"),
2911     std::make_pair(1ULL << 1, "VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT"),
2912     std::make_pair(1ULL << 2, "VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT"),
2913     std::make_pair(1ULL << 3, "VK_SHADER_STAGE_GEOMETRY_BIT"),
2914     std::make_pair(1ULL << 4, "VK_SHADER_STAGE_FRAGMENT_BIT"),
2915     std::make_pair(1ULL << 5, "VK_SHADER_STAGE_COMPUTE_BIT"),
2916     std::make_pair(0x0000001F, "VK_SHADER_STAGE_ALL_GRAPHICS"),
2917     std::make_pair(0x7FFFFFFF, "VK_SHADER_STAGE_ALL"),
2918     std::make_pair(1ULL << 8, "VK_SHADER_STAGE_RAYGEN_BIT_KHR"),
2919     std::make_pair(1ULL << 9, "VK_SHADER_STAGE_ANY_HIT_BIT_KHR"),
2920     std::make_pair(1ULL << 10, "VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR"),
2921     std::make_pair(1ULL << 11, "VK_SHADER_STAGE_MISS_BIT_KHR"),
2922     std::make_pair(1ULL << 12, "VK_SHADER_STAGE_INTERSECTION_BIT_KHR"),
2923     std::make_pair(1ULL << 13, "VK_SHADER_STAGE_CALLABLE_BIT_KHR"),
2924     std::make_pair(1ULL << 6, "VK_SHADER_STAGE_TASK_BIT_NV"),
2925     std::make_pair(1ULL << 7, "VK_SHADER_STAGE_MESH_BIT_NV"),
2926     std::make_pair(1ULL << 14, "VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI"),
2927 };
print_VkShaderStageFlagBits(VkShaderStageFlagBits obj,const std::string & str,bool commaNeeded=true)2928 static void print_VkShaderStageFlagBits(VkShaderStageFlagBits obj, const std::string& str, bool commaNeeded=true) {
2929      PRINT_SPACE
2930      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2931      if (commaNeeded)
2932          _OUT << "\"" <<  VkShaderStageFlagBits_map[obj] << "\"," << std::endl;
2933      else
2934          _OUT << "\"" << VkShaderStageFlagBits_map[obj] << "\"" << std::endl;
2935 }
print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj,const std::string & str,bool commaNeeded=true)2936 static void print_VkShaderStageFlagBits(const VkShaderStageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2937      PRINT_SPACE
2938      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2939      if (commaNeeded)
2940          _OUT << "\"" <<  VkShaderStageFlagBits_map[*obj] << "\"," << std::endl;
2941      else
2942          _OUT << "\"" << VkShaderStageFlagBits_map[*obj] << "\"" << std::endl;
2943 }
2944 
2945 static std::map<deUint64, std::string> VkCullModeFlagBits_map = {
2946     std::make_pair(0, "VK_CULL_MODE_NONE"),
2947     std::make_pair(1ULL << 0, "VK_CULL_MODE_FRONT_BIT"),
2948     std::make_pair(1ULL << 1, "VK_CULL_MODE_BACK_BIT"),
2949     std::make_pair(0x00000003, "VK_CULL_MODE_FRONT_AND_BACK"),
2950 };
print_VkCullModeFlagBits(VkCullModeFlagBits obj,const std::string & str,bool commaNeeded=true)2951 static void print_VkCullModeFlagBits(VkCullModeFlagBits obj, const std::string& str, bool commaNeeded=true) {
2952      PRINT_SPACE
2953      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2954      if (commaNeeded)
2955          _OUT << "\"" <<  VkCullModeFlagBits_map[obj] << "\"," << std::endl;
2956      else
2957          _OUT << "\"" << VkCullModeFlagBits_map[obj] << "\"" << std::endl;
2958 }
print_VkCullModeFlagBits(const VkCullModeFlagBits * obj,const std::string & str,bool commaNeeded=true)2959 static void print_VkCullModeFlagBits(const VkCullModeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
2960      PRINT_SPACE
2961      if (str != "") _OUT << "\"" << str << "\"" << " : ";
2962      if (commaNeeded)
2963          _OUT << "\"" <<  VkCullModeFlagBits_map[*obj] << "\"," << std::endl;
2964      else
2965          _OUT << "\"" << VkCullModeFlagBits_map[*obj] << "\"" << std::endl;
2966 }
2967 
2968 static std::map<deUint64, std::string> VkDynamicState_map = {
2969     std::make_pair(0, "VK_DYNAMIC_STATE_VIEWPORT"),
2970     std::make_pair(1, "VK_DYNAMIC_STATE_SCISSOR"),
2971     std::make_pair(2, "VK_DYNAMIC_STATE_LINE_WIDTH"),
2972     std::make_pair(3, "VK_DYNAMIC_STATE_DEPTH_BIAS"),
2973     std::make_pair(4, "VK_DYNAMIC_STATE_BLEND_CONSTANTS"),
2974     std::make_pair(5, "VK_DYNAMIC_STATE_DEPTH_BOUNDS"),
2975     std::make_pair(6, "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK"),
2976     std::make_pair(7, "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK"),
2977     std::make_pair(8, "VK_DYNAMIC_STATE_STENCIL_REFERENCE"),
2978     std::make_pair(1000087000, "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV"),
2979     std::make_pair(1000099000, "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT"),
2980     std::make_pair(1000143000, "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT"),
2981     std::make_pair(1000347000, "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR"),
2982     std::make_pair(1000164004, "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV"),
2983     std::make_pair(1000164006, "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV"),
2984     std::make_pair(1000205001, "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV"),
2985     std::make_pair(1000226000, "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR"),
2986     std::make_pair(1000259000, "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT"),
2987     std::make_pair(1000267000, "VK_DYNAMIC_STATE_CULL_MODE_EXT"),
2988     std::make_pair(1000267001, "VK_DYNAMIC_STATE_FRONT_FACE_EXT"),
2989     std::make_pair(1000267002, "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT"),
2990     std::make_pair(1000267003, "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT"),
2991     std::make_pair(1000267004, "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT"),
2992     std::make_pair(1000267005, "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT"),
2993     std::make_pair(1000267006, "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT"),
2994     std::make_pair(1000267007, "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT"),
2995     std::make_pair(1000267008, "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT"),
2996     std::make_pair(1000267009, "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT"),
2997     std::make_pair(1000267010, "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT"),
2998     std::make_pair(1000267011, "VK_DYNAMIC_STATE_STENCIL_OP_EXT"),
2999     std::make_pair(1000352000, "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT"),
3000     std::make_pair(1000377000, "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT"),
3001     std::make_pair(1000377001, "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT"),
3002     std::make_pair(1000377002, "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT"),
3003     std::make_pair(1000377003, "VK_DYNAMIC_STATE_LOGIC_OP_EXT"),
3004     std::make_pair(1000377004, "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT"),
3005     std::make_pair(1000381000, "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT"),
3006 };
print_VkDynamicState(VkDynamicState obj,const std::string & str,bool commaNeeded=true)3007 static void print_VkDynamicState(VkDynamicState obj, const std::string& str, bool commaNeeded=true) {
3008      PRINT_SPACE
3009      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3010      if (commaNeeded)
3011          _OUT << "\"" <<  VkDynamicState_map[obj] << "\"," << std::endl;
3012      else
3013          _OUT << "\"" << VkDynamicState_map[obj] << "\"" << std::endl;
3014 }
print_VkDynamicState(const VkDynamicState * obj,const std::string & str,bool commaNeeded=true)3015 static void print_VkDynamicState(const VkDynamicState * obj, const std::string& str, bool commaNeeded=true) {
3016      PRINT_SPACE
3017      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3018      if (commaNeeded)
3019          _OUT << "\"" <<  VkDynamicState_map[*obj] << "\"," << std::endl;
3020      else
3021          _OUT << "\"" << VkDynamicState_map[*obj] << "\"" << std::endl;
3022 }
3023 
3024 static std::map<deUint64, std::string> VkFrontFace_map = {
3025     std::make_pair(0, "VK_FRONT_FACE_COUNTER_CLOCKWISE"),
3026     std::make_pair(1, "VK_FRONT_FACE_CLOCKWISE"),
3027 };
print_VkFrontFace(VkFrontFace obj,const std::string & str,bool commaNeeded=true)3028 static void print_VkFrontFace(VkFrontFace obj, const std::string& str, bool commaNeeded=true) {
3029      PRINT_SPACE
3030      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3031      if (commaNeeded)
3032          _OUT << "\"" <<  VkFrontFace_map[obj] << "\"," << std::endl;
3033      else
3034          _OUT << "\"" << VkFrontFace_map[obj] << "\"" << std::endl;
3035 }
print_VkFrontFace(const VkFrontFace * obj,const std::string & str,bool commaNeeded=true)3036 static void print_VkFrontFace(const VkFrontFace * obj, const std::string& str, bool commaNeeded=true) {
3037      PRINT_SPACE
3038      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3039      if (commaNeeded)
3040          _OUT << "\"" <<  VkFrontFace_map[*obj] << "\"," << std::endl;
3041      else
3042          _OUT << "\"" << VkFrontFace_map[*obj] << "\"" << std::endl;
3043 }
3044 
3045 static std::map<deUint64, std::string> VkVertexInputRate_map = {
3046     std::make_pair(0, "VK_VERTEX_INPUT_RATE_VERTEX"),
3047     std::make_pair(1, "VK_VERTEX_INPUT_RATE_INSTANCE"),
3048 };
print_VkVertexInputRate(VkVertexInputRate obj,const std::string & str,bool commaNeeded=true)3049 static void print_VkVertexInputRate(VkVertexInputRate obj, const std::string& str, bool commaNeeded=true) {
3050      PRINT_SPACE
3051      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3052      if (commaNeeded)
3053          _OUT << "\"" <<  VkVertexInputRate_map[obj] << "\"," << std::endl;
3054      else
3055          _OUT << "\"" << VkVertexInputRate_map[obj] << "\"" << std::endl;
3056 }
print_VkVertexInputRate(const VkVertexInputRate * obj,const std::string & str,bool commaNeeded=true)3057 static void print_VkVertexInputRate(const VkVertexInputRate * obj, const std::string& str, bool commaNeeded=true) {
3058      PRINT_SPACE
3059      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3060      if (commaNeeded)
3061          _OUT << "\"" <<  VkVertexInputRate_map[*obj] << "\"," << std::endl;
3062      else
3063          _OUT << "\"" << VkVertexInputRate_map[*obj] << "\"" << std::endl;
3064 }
3065 
3066 static std::map<deUint64, std::string> VkPrimitiveTopology_map = {
3067     std::make_pair(0, "VK_PRIMITIVE_TOPOLOGY_POINT_LIST"),
3068     std::make_pair(1, "VK_PRIMITIVE_TOPOLOGY_LINE_LIST"),
3069     std::make_pair(2, "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP"),
3070     std::make_pair(3, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST"),
3071     std::make_pair(4, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP"),
3072     std::make_pair(5, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN"),
3073     std::make_pair(6, "VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY"),
3074     std::make_pair(7, "VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY"),
3075     std::make_pair(8, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY"),
3076     std::make_pair(9, "VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY"),
3077     std::make_pair(10, "VK_PRIMITIVE_TOPOLOGY_PATCH_LIST"),
3078 };
print_VkPrimitiveTopology(VkPrimitiveTopology obj,const std::string & str,bool commaNeeded=true)3079 static void print_VkPrimitiveTopology(VkPrimitiveTopology obj, const std::string& str, bool commaNeeded=true) {
3080      PRINT_SPACE
3081      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3082      if (commaNeeded)
3083          _OUT << "\"" <<  VkPrimitiveTopology_map[obj] << "\"," << std::endl;
3084      else
3085          _OUT << "\"" << VkPrimitiveTopology_map[obj] << "\"" << std::endl;
3086 }
print_VkPrimitiveTopology(const VkPrimitiveTopology * obj,const std::string & str,bool commaNeeded=true)3087 static void print_VkPrimitiveTopology(const VkPrimitiveTopology * obj, const std::string& str, bool commaNeeded=true) {
3088      PRINT_SPACE
3089      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3090      if (commaNeeded)
3091          _OUT << "\"" <<  VkPrimitiveTopology_map[*obj] << "\"," << std::endl;
3092      else
3093          _OUT << "\"" << VkPrimitiveTopology_map[*obj] << "\"" << std::endl;
3094 }
3095 
3096 static std::map<deUint64, std::string> VkPolygonMode_map = {
3097     std::make_pair(0, "VK_POLYGON_MODE_FILL"),
3098     std::make_pair(1, "VK_POLYGON_MODE_LINE"),
3099     std::make_pair(2, "VK_POLYGON_MODE_POINT"),
3100     std::make_pair(1000153000, "VK_POLYGON_MODE_FILL_RECTANGLE_NV"),
3101 };
print_VkPolygonMode(VkPolygonMode obj,const std::string & str,bool commaNeeded=true)3102 static void print_VkPolygonMode(VkPolygonMode obj, const std::string& str, bool commaNeeded=true) {
3103      PRINT_SPACE
3104      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3105      if (commaNeeded)
3106          _OUT << "\"" <<  VkPolygonMode_map[obj] << "\"," << std::endl;
3107      else
3108          _OUT << "\"" << VkPolygonMode_map[obj] << "\"" << std::endl;
3109 }
print_VkPolygonMode(const VkPolygonMode * obj,const std::string & str,bool commaNeeded=true)3110 static void print_VkPolygonMode(const VkPolygonMode * obj, const std::string& str, bool commaNeeded=true) {
3111      PRINT_SPACE
3112      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3113      if (commaNeeded)
3114          _OUT << "\"" <<  VkPolygonMode_map[*obj] << "\"," << std::endl;
3115      else
3116          _OUT << "\"" << VkPolygonMode_map[*obj] << "\"" << std::endl;
3117 }
3118 
3119 static std::map<deUint64, std::string> VkStencilOp_map = {
3120     std::make_pair(0, "VK_STENCIL_OP_KEEP"),
3121     std::make_pair(1, "VK_STENCIL_OP_ZERO"),
3122     std::make_pair(2, "VK_STENCIL_OP_REPLACE"),
3123     std::make_pair(3, "VK_STENCIL_OP_INCREMENT_AND_CLAMP"),
3124     std::make_pair(4, "VK_STENCIL_OP_DECREMENT_AND_CLAMP"),
3125     std::make_pair(5, "VK_STENCIL_OP_INVERT"),
3126     std::make_pair(6, "VK_STENCIL_OP_INCREMENT_AND_WRAP"),
3127     std::make_pair(7, "VK_STENCIL_OP_DECREMENT_AND_WRAP"),
3128 };
print_VkStencilOp(VkStencilOp obj,const std::string & str,bool commaNeeded=true)3129 static void print_VkStencilOp(VkStencilOp obj, const std::string& str, bool commaNeeded=true) {
3130      PRINT_SPACE
3131      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3132      if (commaNeeded)
3133          _OUT << "\"" <<  VkStencilOp_map[obj] << "\"," << std::endl;
3134      else
3135          _OUT << "\"" << VkStencilOp_map[obj] << "\"" << std::endl;
3136 }
print_VkStencilOp(const VkStencilOp * obj,const std::string & str,bool commaNeeded=true)3137 static void print_VkStencilOp(const VkStencilOp * obj, const std::string& str, bool commaNeeded=true) {
3138      PRINT_SPACE
3139      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3140      if (commaNeeded)
3141          _OUT << "\"" <<  VkStencilOp_map[*obj] << "\"," << std::endl;
3142      else
3143          _OUT << "\"" << VkStencilOp_map[*obj] << "\"" << std::endl;
3144 }
3145 
3146 static std::map<deUint64, std::string> VkLogicOp_map = {
3147     std::make_pair(0, "VK_LOGIC_OP_CLEAR"),
3148     std::make_pair(1, "VK_LOGIC_OP_AND"),
3149     std::make_pair(2, "VK_LOGIC_OP_AND_REVERSE"),
3150     std::make_pair(3, "VK_LOGIC_OP_COPY"),
3151     std::make_pair(4, "VK_LOGIC_OP_AND_INVERTED"),
3152     std::make_pair(5, "VK_LOGIC_OP_NO_OP"),
3153     std::make_pair(6, "VK_LOGIC_OP_XOR"),
3154     std::make_pair(7, "VK_LOGIC_OP_OR"),
3155     std::make_pair(8, "VK_LOGIC_OP_NOR"),
3156     std::make_pair(9, "VK_LOGIC_OP_EQUIVALENT"),
3157     std::make_pair(10, "VK_LOGIC_OP_INVERT"),
3158     std::make_pair(11, "VK_LOGIC_OP_OR_REVERSE"),
3159     std::make_pair(12, "VK_LOGIC_OP_COPY_INVERTED"),
3160     std::make_pair(13, "VK_LOGIC_OP_OR_INVERTED"),
3161     std::make_pair(14, "VK_LOGIC_OP_NAND"),
3162     std::make_pair(15, "VK_LOGIC_OP_SET"),
3163 };
print_VkLogicOp(VkLogicOp obj,const std::string & str,bool commaNeeded=true)3164 static void print_VkLogicOp(VkLogicOp obj, const std::string& str, bool commaNeeded=true) {
3165      PRINT_SPACE
3166      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3167      if (commaNeeded)
3168          _OUT << "\"" <<  VkLogicOp_map[obj] << "\"," << std::endl;
3169      else
3170          _OUT << "\"" << VkLogicOp_map[obj] << "\"" << std::endl;
3171 }
print_VkLogicOp(const VkLogicOp * obj,const std::string & str,bool commaNeeded=true)3172 static void print_VkLogicOp(const VkLogicOp * obj, const std::string& str, bool commaNeeded=true) {
3173      PRINT_SPACE
3174      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3175      if (commaNeeded)
3176          _OUT << "\"" <<  VkLogicOp_map[*obj] << "\"," << std::endl;
3177      else
3178          _OUT << "\"" << VkLogicOp_map[*obj] << "\"" << std::endl;
3179 }
3180 
3181 static std::map<deUint64, std::string> VkBorderColor_map = {
3182     std::make_pair(0, "VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK"),
3183     std::make_pair(1, "VK_BORDER_COLOR_INT_TRANSPARENT_BLACK"),
3184     std::make_pair(2, "VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK"),
3185     std::make_pair(3, "VK_BORDER_COLOR_INT_OPAQUE_BLACK"),
3186     std::make_pair(4, "VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE"),
3187     std::make_pair(5, "VK_BORDER_COLOR_INT_OPAQUE_WHITE"),
3188     std::make_pair(1000287003, "VK_BORDER_COLOR_FLOAT_CUSTOM_EXT"),
3189     std::make_pair(1000287004, "VK_BORDER_COLOR_INT_CUSTOM_EXT"),
3190 };
print_VkBorderColor(VkBorderColor obj,const std::string & str,bool commaNeeded=true)3191 static void print_VkBorderColor(VkBorderColor obj, const std::string& str, bool commaNeeded=true) {
3192      PRINT_SPACE
3193      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3194      if (commaNeeded)
3195          _OUT << "\"" <<  VkBorderColor_map[obj] << "\"," << std::endl;
3196      else
3197          _OUT << "\"" << VkBorderColor_map[obj] << "\"" << std::endl;
3198 }
print_VkBorderColor(const VkBorderColor * obj,const std::string & str,bool commaNeeded=true)3199 static void print_VkBorderColor(const VkBorderColor * obj, const std::string& str, bool commaNeeded=true) {
3200      PRINT_SPACE
3201      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3202      if (commaNeeded)
3203          _OUT << "\"" <<  VkBorderColor_map[*obj] << "\"," << std::endl;
3204      else
3205          _OUT << "\"" << VkBorderColor_map[*obj] << "\"" << std::endl;
3206 }
3207 
3208 static std::map<deUint64, std::string> VkFilter_map = {
3209     std::make_pair(0, "VK_FILTER_NEAREST"),
3210     std::make_pair(1, "VK_FILTER_LINEAR"),
3211     std::make_pair(1000015000, "VK_FILTER_CUBIC_IMG"),
3212 };
print_VkFilter(VkFilter obj,const std::string & str,bool commaNeeded=true)3213 static void print_VkFilter(VkFilter obj, const std::string& str, bool commaNeeded=true) {
3214      PRINT_SPACE
3215      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3216      if (commaNeeded)
3217          _OUT << "\"" <<  VkFilter_map[obj] << "\"," << std::endl;
3218      else
3219          _OUT << "\"" << VkFilter_map[obj] << "\"" << std::endl;
3220 }
print_VkFilter(const VkFilter * obj,const std::string & str,bool commaNeeded=true)3221 static void print_VkFilter(const VkFilter * obj, const std::string& str, bool commaNeeded=true) {
3222      PRINT_SPACE
3223      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3224      if (commaNeeded)
3225          _OUT << "\"" <<  VkFilter_map[*obj] << "\"," << std::endl;
3226      else
3227          _OUT << "\"" << VkFilter_map[*obj] << "\"" << std::endl;
3228 }
3229 
3230 static std::map<deUint64, std::string> VkSamplerAddressMode_map = {
3231     std::make_pair(0, "VK_SAMPLER_ADDRESS_MODE_REPEAT"),
3232     std::make_pair(1, "VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT"),
3233     std::make_pair(2, "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE"),
3234     std::make_pair(3, "VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER"),
3235     std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
3236     std::make_pair(4, "VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE"),
3237 };
print_VkSamplerAddressMode(VkSamplerAddressMode obj,const std::string & str,bool commaNeeded=true)3238 static void print_VkSamplerAddressMode(VkSamplerAddressMode obj, const std::string& str, bool commaNeeded=true) {
3239      PRINT_SPACE
3240      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3241      if (commaNeeded)
3242          _OUT << "\"" <<  VkSamplerAddressMode_map[obj] << "\"," << std::endl;
3243      else
3244          _OUT << "\"" << VkSamplerAddressMode_map[obj] << "\"" << std::endl;
3245 }
print_VkSamplerAddressMode(const VkSamplerAddressMode * obj,const std::string & str,bool commaNeeded=true)3246 static void print_VkSamplerAddressMode(const VkSamplerAddressMode * obj, const std::string& str, bool commaNeeded=true) {
3247      PRINT_SPACE
3248      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3249      if (commaNeeded)
3250          _OUT << "\"" <<  VkSamplerAddressMode_map[*obj] << "\"," << std::endl;
3251      else
3252          _OUT << "\"" << VkSamplerAddressMode_map[*obj] << "\"" << std::endl;
3253 }
3254 
3255 static std::map<deUint64, std::string> VkSamplerCreateFlagBits_map = {
3256     std::make_pair(1ULL << 0, "VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT"),
3257     std::make_pair(1ULL << 1, "VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT"),
3258     std::make_pair(1ULL << 3, "VK_SAMPLER_CREATE_RESERVED_3_BIT_AMD"),
3259     std::make_pair(1ULL << 2, "VK_SAMPLER_CREATE_RESERVED_2_BIT_EXT"),
3260 };
print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3261 static void print_VkSamplerCreateFlagBits(VkSamplerCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3262      PRINT_SPACE
3263      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3264      if (commaNeeded)
3265          _OUT << "\"" <<  VkSamplerCreateFlagBits_map[obj] << "\"," << std::endl;
3266      else
3267          _OUT << "\"" << VkSamplerCreateFlagBits_map[obj] << "\"" << std::endl;
3268 }
print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3269 static void print_VkSamplerCreateFlagBits(const VkSamplerCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3270      PRINT_SPACE
3271      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3272      if (commaNeeded)
3273          _OUT << "\"" <<  VkSamplerCreateFlagBits_map[*obj] << "\"," << std::endl;
3274      else
3275          _OUT << "\"" << VkSamplerCreateFlagBits_map[*obj] << "\"" << std::endl;
3276 }
3277 
3278 static std::map<deUint64, std::string> VkSamplerMipmapMode_map = {
3279     std::make_pair(0, "VK_SAMPLER_MIPMAP_MODE_NEAREST"),
3280     std::make_pair(1, "VK_SAMPLER_MIPMAP_MODE_LINEAR"),
3281 };
print_VkSamplerMipmapMode(VkSamplerMipmapMode obj,const std::string & str,bool commaNeeded=true)3282 static void print_VkSamplerMipmapMode(VkSamplerMipmapMode obj, const std::string& str, bool commaNeeded=true) {
3283      PRINT_SPACE
3284      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3285      if (commaNeeded)
3286          _OUT << "\"" <<  VkSamplerMipmapMode_map[obj] << "\"," << std::endl;
3287      else
3288          _OUT << "\"" << VkSamplerMipmapMode_map[obj] << "\"" << std::endl;
3289 }
print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj,const std::string & str,bool commaNeeded=true)3290 static void print_VkSamplerMipmapMode(const VkSamplerMipmapMode * obj, const std::string& str, bool commaNeeded=true) {
3291      PRINT_SPACE
3292      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3293      if (commaNeeded)
3294          _OUT << "\"" <<  VkSamplerMipmapMode_map[*obj] << "\"," << std::endl;
3295      else
3296          _OUT << "\"" << VkSamplerMipmapMode_map[*obj] << "\"" << std::endl;
3297 }
3298 
3299 static std::map<deUint64, std::string> VkDescriptorPoolCreateFlagBits_map = {
3300     std::make_pair(1ULL << 0, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"),
3301     std::make_pair(1ULL << 1, "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT"),
3302     std::make_pair(1ULL << 2, "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE"),
3303 };
print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3304 static void print_VkDescriptorPoolCreateFlagBits(VkDescriptorPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3305      PRINT_SPACE
3306      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3307      if (commaNeeded)
3308          _OUT << "\"" <<  VkDescriptorPoolCreateFlagBits_map[obj] << "\"," << std::endl;
3309      else
3310          _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[obj] << "\"" << std::endl;
3311 }
print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3312 static void print_VkDescriptorPoolCreateFlagBits(const VkDescriptorPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3313      PRINT_SPACE
3314      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3315      if (commaNeeded)
3316          _OUT << "\"" <<  VkDescriptorPoolCreateFlagBits_map[*obj] << "\"," << std::endl;
3317      else
3318          _OUT << "\"" << VkDescriptorPoolCreateFlagBits_map[*obj] << "\"" << std::endl;
3319 }
3320 
3321 static std::map<deUint64, std::string> VkDescriptorType_map = {
3322     std::make_pair(0, "VK_DESCRIPTOR_TYPE_SAMPLER"),
3323     std::make_pair(1, "VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER"),
3324     std::make_pair(2, "VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE"),
3325     std::make_pair(3, "VK_DESCRIPTOR_TYPE_STORAGE_IMAGE"),
3326     std::make_pair(4, "VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER"),
3327     std::make_pair(5, "VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER"),
3328     std::make_pair(6, "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER"),
3329     std::make_pair(7, "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER"),
3330     std::make_pair(8, "VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC"),
3331     std::make_pair(9, "VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC"),
3332     std::make_pair(10, "VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT"),
3333     std::make_pair(1000138000, "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT"),
3334     std::make_pair(1000150000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR"),
3335     std::make_pair(1000165000, "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV"),
3336     std::make_pair(1000351000, "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE"),
3337 };
print_VkDescriptorType(VkDescriptorType obj,const std::string & str,bool commaNeeded=true)3338 static void print_VkDescriptorType(VkDescriptorType obj, const std::string& str, bool commaNeeded=true) {
3339      PRINT_SPACE
3340      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3341      if (commaNeeded)
3342          _OUT << "\"" <<  VkDescriptorType_map[obj] << "\"," << std::endl;
3343      else
3344          _OUT << "\"" << VkDescriptorType_map[obj] << "\"" << std::endl;
3345 }
print_VkDescriptorType(const VkDescriptorType * obj,const std::string & str,bool commaNeeded=true)3346 static void print_VkDescriptorType(const VkDescriptorType * obj, const std::string& str, bool commaNeeded=true) {
3347      PRINT_SPACE
3348      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3349      if (commaNeeded)
3350          _OUT << "\"" <<  VkDescriptorType_map[*obj] << "\"," << std::endl;
3351      else
3352          _OUT << "\"" << VkDescriptorType_map[*obj] << "\"" << std::endl;
3353 }
3354 
3355 static std::map<deUint64, std::string> VkDescriptorSetLayoutCreateFlagBits_map = {
3356     std::make_pair(1ULL << 1, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT"),
3357     std::make_pair(1ULL << 0, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"),
3358     std::make_pair(1ULL << 4, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_4_BIT_AMD"),
3359     std::make_pair(1ULL << 3, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_RESERVED_3_BIT_AMD"),
3360     std::make_pair(1ULL << 2, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE"),
3361 };
print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3362 static void print_VkDescriptorSetLayoutCreateFlagBits(VkDescriptorSetLayoutCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3363      PRINT_SPACE
3364      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3365      if (commaNeeded)
3366          _OUT << "\"" <<  VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"," << std::endl;
3367      else
3368          _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[obj] << "\"" << std::endl;
3369 }
print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3370 static void print_VkDescriptorSetLayoutCreateFlagBits(const VkDescriptorSetLayoutCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3371      PRINT_SPACE
3372      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3373      if (commaNeeded)
3374          _OUT << "\"" <<  VkDescriptorSetLayoutCreateFlagBits_map[*obj] << "\"," << std::endl;
3375      else
3376          _OUT << "\"" << VkDescriptorSetLayoutCreateFlagBits_map[*obj] << "\"" << std::endl;
3377 }
3378 
3379 static std::map<deUint64, std::string> VkAttachmentDescriptionFlagBits_map = {
3380     std::make_pair(1ULL << 0, "VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT"),
3381 };
print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj,const std::string & str,bool commaNeeded=true)3382 static void print_VkAttachmentDescriptionFlagBits(VkAttachmentDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true) {
3383      PRINT_SPACE
3384      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3385      if (commaNeeded)
3386          _OUT << "\"" <<  VkAttachmentDescriptionFlagBits_map[obj] << "\"," << std::endl;
3387      else
3388          _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[obj] << "\"" << std::endl;
3389 }
print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj,const std::string & str,bool commaNeeded=true)3390 static void print_VkAttachmentDescriptionFlagBits(const VkAttachmentDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3391      PRINT_SPACE
3392      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3393      if (commaNeeded)
3394          _OUT << "\"" <<  VkAttachmentDescriptionFlagBits_map[*obj] << "\"," << std::endl;
3395      else
3396          _OUT << "\"" << VkAttachmentDescriptionFlagBits_map[*obj] << "\"" << std::endl;
3397 }
3398 
3399 static std::map<deUint64, std::string> VkAttachmentLoadOp_map = {
3400     std::make_pair(0, "VK_ATTACHMENT_LOAD_OP_LOAD"),
3401     std::make_pair(1, "VK_ATTACHMENT_LOAD_OP_CLEAR"),
3402     std::make_pair(2, "VK_ATTACHMENT_LOAD_OP_DONT_CARE"),
3403     std::make_pair(1000400000, "VK_ATTACHMENT_LOAD_OP_NONE_EXT"),
3404 };
print_VkAttachmentLoadOp(VkAttachmentLoadOp obj,const std::string & str,bool commaNeeded=true)3405 static void print_VkAttachmentLoadOp(VkAttachmentLoadOp obj, const std::string& str, bool commaNeeded=true) {
3406      PRINT_SPACE
3407      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3408      if (commaNeeded)
3409          _OUT << "\"" <<  VkAttachmentLoadOp_map[obj] << "\"," << std::endl;
3410      else
3411          _OUT << "\"" << VkAttachmentLoadOp_map[obj] << "\"" << std::endl;
3412 }
print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj,const std::string & str,bool commaNeeded=true)3413 static void print_VkAttachmentLoadOp(const VkAttachmentLoadOp * obj, const std::string& str, bool commaNeeded=true) {
3414      PRINT_SPACE
3415      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3416      if (commaNeeded)
3417          _OUT << "\"" <<  VkAttachmentLoadOp_map[*obj] << "\"," << std::endl;
3418      else
3419          _OUT << "\"" << VkAttachmentLoadOp_map[*obj] << "\"" << std::endl;
3420 }
3421 
3422 static std::map<deUint64, std::string> VkAttachmentStoreOp_map = {
3423     std::make_pair(0, "VK_ATTACHMENT_STORE_OP_STORE"),
3424     std::make_pair(1, "VK_ATTACHMENT_STORE_OP_DONT_CARE"),
3425     std::make_pair(1000301000, "VK_ATTACHMENT_STORE_OP_NONE_KHR"),
3426 };
print_VkAttachmentStoreOp(VkAttachmentStoreOp obj,const std::string & str,bool commaNeeded=true)3427 static void print_VkAttachmentStoreOp(VkAttachmentStoreOp obj, const std::string& str, bool commaNeeded=true) {
3428      PRINT_SPACE
3429      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3430      if (commaNeeded)
3431          _OUT << "\"" <<  VkAttachmentStoreOp_map[obj] << "\"," << std::endl;
3432      else
3433          _OUT << "\"" << VkAttachmentStoreOp_map[obj] << "\"" << std::endl;
3434 }
print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj,const std::string & str,bool commaNeeded=true)3435 static void print_VkAttachmentStoreOp(const VkAttachmentStoreOp * obj, const std::string& str, bool commaNeeded=true) {
3436      PRINT_SPACE
3437      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3438      if (commaNeeded)
3439          _OUT << "\"" <<  VkAttachmentStoreOp_map[*obj] << "\"," << std::endl;
3440      else
3441          _OUT << "\"" << VkAttachmentStoreOp_map[*obj] << "\"" << std::endl;
3442 }
3443 
3444 static std::map<deUint64, std::string> VkDependencyFlagBits_map = {
3445     std::make_pair(1ULL << 0, "VK_DEPENDENCY_BY_REGION_BIT"),
3446     std::make_pair(1ULL << 2, "VK_DEPENDENCY_DEVICE_GROUP_BIT"),
3447     std::make_pair(1ULL << 1, "VK_DEPENDENCY_VIEW_LOCAL_BIT"),
3448 };
print_VkDependencyFlagBits(VkDependencyFlagBits obj,const std::string & str,bool commaNeeded=true)3449 static void print_VkDependencyFlagBits(VkDependencyFlagBits obj, const std::string& str, bool commaNeeded=true) {
3450      PRINT_SPACE
3451      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3452      if (commaNeeded)
3453          _OUT << "\"" <<  VkDependencyFlagBits_map[obj] << "\"," << std::endl;
3454      else
3455          _OUT << "\"" << VkDependencyFlagBits_map[obj] << "\"" << std::endl;
3456 }
print_VkDependencyFlagBits(const VkDependencyFlagBits * obj,const std::string & str,bool commaNeeded=true)3457 static void print_VkDependencyFlagBits(const VkDependencyFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3458      PRINT_SPACE
3459      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3460      if (commaNeeded)
3461          _OUT << "\"" <<  VkDependencyFlagBits_map[*obj] << "\"," << std::endl;
3462      else
3463          _OUT << "\"" << VkDependencyFlagBits_map[*obj] << "\"" << std::endl;
3464 }
3465 
3466 static std::map<deUint64, std::string> VkFramebufferCreateFlagBits_map = {
3467     std::make_pair(1ULL << 0, "VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT"),
3468 };
print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3469 static void print_VkFramebufferCreateFlagBits(VkFramebufferCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3470      PRINT_SPACE
3471      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3472      if (commaNeeded)
3473          _OUT << "\"" <<  VkFramebufferCreateFlagBits_map[obj] << "\"," << std::endl;
3474      else
3475          _OUT << "\"" << VkFramebufferCreateFlagBits_map[obj] << "\"" << std::endl;
3476 }
print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3477 static void print_VkFramebufferCreateFlagBits(const VkFramebufferCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3478      PRINT_SPACE
3479      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3480      if (commaNeeded)
3481          _OUT << "\"" <<  VkFramebufferCreateFlagBits_map[*obj] << "\"," << std::endl;
3482      else
3483          _OUT << "\"" << VkFramebufferCreateFlagBits_map[*obj] << "\"" << std::endl;
3484 }
3485 
3486 static std::map<deUint64, std::string> VkPipelineBindPoint_map = {
3487     std::make_pair(0, "VK_PIPELINE_BIND_POINT_GRAPHICS"),
3488     std::make_pair(1, "VK_PIPELINE_BIND_POINT_COMPUTE"),
3489     std::make_pair(1000165000, "VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR"),
3490     std::make_pair(1000369003, "VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI"),
3491 };
print_VkPipelineBindPoint(VkPipelineBindPoint obj,const std::string & str,bool commaNeeded=true)3492 static void print_VkPipelineBindPoint(VkPipelineBindPoint obj, const std::string& str, bool commaNeeded=true) {
3493      PRINT_SPACE
3494      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3495      if (commaNeeded)
3496          _OUT << "\"" <<  VkPipelineBindPoint_map[obj] << "\"," << std::endl;
3497      else
3498          _OUT << "\"" << VkPipelineBindPoint_map[obj] << "\"" << std::endl;
3499 }
print_VkPipelineBindPoint(const VkPipelineBindPoint * obj,const std::string & str,bool commaNeeded=true)3500 static void print_VkPipelineBindPoint(const VkPipelineBindPoint * obj, const std::string& str, bool commaNeeded=true) {
3501      PRINT_SPACE
3502      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3503      if (commaNeeded)
3504          _OUT << "\"" <<  VkPipelineBindPoint_map[*obj] << "\"," << std::endl;
3505      else
3506          _OUT << "\"" << VkPipelineBindPoint_map[*obj] << "\"" << std::endl;
3507 }
3508 
3509 static std::map<deUint64, std::string> VkRenderPassCreateFlagBits_map = {
3510     std::make_pair(1ULL << 0, "VK_RENDER_PASS_CREATE_RESERVED_0_BIT_KHR"),
3511     std::make_pair(1ULL << 1, "VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM"),
3512 };
print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3513 static void print_VkRenderPassCreateFlagBits(VkRenderPassCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3514      PRINT_SPACE
3515      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3516      if (commaNeeded)
3517          _OUT << "\"" <<  VkRenderPassCreateFlagBits_map[obj] << "\"," << std::endl;
3518      else
3519          _OUT << "\"" << VkRenderPassCreateFlagBits_map[obj] << "\"" << std::endl;
3520 }
print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3521 static void print_VkRenderPassCreateFlagBits(const VkRenderPassCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3522      PRINT_SPACE
3523      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3524      if (commaNeeded)
3525          _OUT << "\"" <<  VkRenderPassCreateFlagBits_map[*obj] << "\"," << std::endl;
3526      else
3527          _OUT << "\"" << VkRenderPassCreateFlagBits_map[*obj] << "\"" << std::endl;
3528 }
3529 
3530 static std::map<deUint64, std::string> VkSubpassDescriptionFlagBits_map = {
3531     std::make_pair(1ULL << 0, "VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX"),
3532     std::make_pair(1ULL << 1, "VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX"),
3533     std::make_pair(1ULL << 2, "VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM"),
3534     std::make_pair(1ULL << 3, "VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM"),
3535     std::make_pair(1ULL << 4, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM"),
3536     std::make_pair(1ULL << 5, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM"),
3537     std::make_pair(1ULL << 6, "VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM"),
3538 };
print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj,const std::string & str,bool commaNeeded=true)3539 static void print_VkSubpassDescriptionFlagBits(VkSubpassDescriptionFlagBits obj, const std::string& str, bool commaNeeded=true) {
3540      PRINT_SPACE
3541      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3542      if (commaNeeded)
3543          _OUT << "\"" <<  VkSubpassDescriptionFlagBits_map[obj] << "\"," << std::endl;
3544      else
3545          _OUT << "\"" << VkSubpassDescriptionFlagBits_map[obj] << "\"" << std::endl;
3546 }
print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj,const std::string & str,bool commaNeeded=true)3547 static void print_VkSubpassDescriptionFlagBits(const VkSubpassDescriptionFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3548      PRINT_SPACE
3549      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3550      if (commaNeeded)
3551          _OUT << "\"" <<  VkSubpassDescriptionFlagBits_map[*obj] << "\"," << std::endl;
3552      else
3553          _OUT << "\"" << VkSubpassDescriptionFlagBits_map[*obj] << "\"" << std::endl;
3554 }
3555 
3556 static std::map<deUint64, std::string> VkCommandPoolCreateFlagBits_map = {
3557     std::make_pair(1ULL << 0, "VK_COMMAND_POOL_CREATE_TRANSIENT_BIT"),
3558     std::make_pair(1ULL << 1, "VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT"),
3559     std::make_pair(1ULL << 2, "VK_COMMAND_POOL_CREATE_PROTECTED_BIT"),
3560 };
print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj,const std::string & str,bool commaNeeded=true)3561 static void print_VkCommandPoolCreateFlagBits(VkCommandPoolCreateFlagBits obj, const std::string& str, bool commaNeeded=true) {
3562      PRINT_SPACE
3563      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3564      if (commaNeeded)
3565          _OUT << "\"" <<  VkCommandPoolCreateFlagBits_map[obj] << "\"," << std::endl;
3566      else
3567          _OUT << "\"" << VkCommandPoolCreateFlagBits_map[obj] << "\"" << std::endl;
3568 }
print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj,const std::string & str,bool commaNeeded=true)3569 static void print_VkCommandPoolCreateFlagBits(const VkCommandPoolCreateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3570      PRINT_SPACE
3571      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3572      if (commaNeeded)
3573          _OUT << "\"" <<  VkCommandPoolCreateFlagBits_map[*obj] << "\"," << std::endl;
3574      else
3575          _OUT << "\"" << VkCommandPoolCreateFlagBits_map[*obj] << "\"" << std::endl;
3576 }
3577 
3578 static std::map<deUint64, std::string> VkCommandPoolResetFlagBits_map = {
3579     std::make_pair(1ULL << 1, "VK_COMMAND_POOL_RESET_RESERVED_1_BIT_COREAVI"),
3580 };
print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj,const std::string & str,bool commaNeeded=true)3581 static void print_VkCommandPoolResetFlagBits(VkCommandPoolResetFlagBits obj, const std::string& str, bool commaNeeded=true) {
3582      PRINT_SPACE
3583      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3584      if (commaNeeded)
3585          _OUT << "\"" <<  VkCommandPoolResetFlagBits_map[obj] << "\"," << std::endl;
3586      else
3587          _OUT << "\"" << VkCommandPoolResetFlagBits_map[obj] << "\"" << std::endl;
3588 }
print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj,const std::string & str,bool commaNeeded=true)3589 static void print_VkCommandPoolResetFlagBits(const VkCommandPoolResetFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3590      PRINT_SPACE
3591      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3592      if (commaNeeded)
3593          _OUT << "\"" <<  VkCommandPoolResetFlagBits_map[*obj] << "\"," << std::endl;
3594      else
3595          _OUT << "\"" << VkCommandPoolResetFlagBits_map[*obj] << "\"" << std::endl;
3596 }
3597 
3598 static std::map<deUint64, std::string> VkCommandBufferLevel_map = {
3599     std::make_pair(0, "VK_COMMAND_BUFFER_LEVEL_PRIMARY"),
3600     std::make_pair(1, "VK_COMMAND_BUFFER_LEVEL_SECONDARY"),
3601 };
print_VkCommandBufferLevel(VkCommandBufferLevel obj,const std::string & str,bool commaNeeded=true)3602 static void print_VkCommandBufferLevel(VkCommandBufferLevel obj, const std::string& str, bool commaNeeded=true) {
3603      PRINT_SPACE
3604      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3605      if (commaNeeded)
3606          _OUT << "\"" <<  VkCommandBufferLevel_map[obj] << "\"," << std::endl;
3607      else
3608          _OUT << "\"" << VkCommandBufferLevel_map[obj] << "\"" << std::endl;
3609 }
print_VkCommandBufferLevel(const VkCommandBufferLevel * obj,const std::string & str,bool commaNeeded=true)3610 static void print_VkCommandBufferLevel(const VkCommandBufferLevel * obj, const std::string& str, bool commaNeeded=true) {
3611      PRINT_SPACE
3612      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3613      if (commaNeeded)
3614          _OUT << "\"" <<  VkCommandBufferLevel_map[*obj] << "\"," << std::endl;
3615      else
3616          _OUT << "\"" << VkCommandBufferLevel_map[*obj] << "\"" << std::endl;
3617 }
3618 
3619 static std::map<deUint64, std::string> VkCommandBufferUsageFlagBits_map = {
3620     std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT"),
3621     std::make_pair(1ULL << 1, "VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT"),
3622     std::make_pair(1ULL << 2, "VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT"),
3623 };
print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj,const std::string & str,bool commaNeeded=true)3624 static void print_VkCommandBufferUsageFlagBits(VkCommandBufferUsageFlagBits obj, const std::string& str, bool commaNeeded=true) {
3625      PRINT_SPACE
3626      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3627      if (commaNeeded)
3628          _OUT << "\"" <<  VkCommandBufferUsageFlagBits_map[obj] << "\"," << std::endl;
3629      else
3630          _OUT << "\"" << VkCommandBufferUsageFlagBits_map[obj] << "\"" << std::endl;
3631 }
print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj,const std::string & str,bool commaNeeded=true)3632 static void print_VkCommandBufferUsageFlagBits(const VkCommandBufferUsageFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3633      PRINT_SPACE
3634      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3635      if (commaNeeded)
3636          _OUT << "\"" <<  VkCommandBufferUsageFlagBits_map[*obj] << "\"," << std::endl;
3637      else
3638          _OUT << "\"" << VkCommandBufferUsageFlagBits_map[*obj] << "\"" << std::endl;
3639 }
3640 
3641 static std::map<deUint64, std::string> VkQueryControlFlagBits_map = {
3642     std::make_pair(1ULL << 0, "VK_QUERY_CONTROL_PRECISE_BIT"),
3643 };
print_VkQueryControlFlagBits(VkQueryControlFlagBits obj,const std::string & str,bool commaNeeded=true)3644 static void print_VkQueryControlFlagBits(VkQueryControlFlagBits obj, const std::string& str, bool commaNeeded=true) {
3645      PRINT_SPACE
3646      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3647      if (commaNeeded)
3648          _OUT << "\"" <<  VkQueryControlFlagBits_map[obj] << "\"," << std::endl;
3649      else
3650          _OUT << "\"" << VkQueryControlFlagBits_map[obj] << "\"" << std::endl;
3651 }
print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj,const std::string & str,bool commaNeeded=true)3652 static void print_VkQueryControlFlagBits(const VkQueryControlFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3653      PRINT_SPACE
3654      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3655      if (commaNeeded)
3656          _OUT << "\"" <<  VkQueryControlFlagBits_map[*obj] << "\"," << std::endl;
3657      else
3658          _OUT << "\"" << VkQueryControlFlagBits_map[*obj] << "\"" << std::endl;
3659 }
3660 
3661 static std::map<deUint64, std::string> VkCommandBufferResetFlagBits_map = {
3662     std::make_pair(1ULL << 0, "VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT"),
3663 };
print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj,const std::string & str,bool commaNeeded=true)3664 static void print_VkCommandBufferResetFlagBits(VkCommandBufferResetFlagBits obj, const std::string& str, bool commaNeeded=true) {
3665      PRINT_SPACE
3666      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3667      if (commaNeeded)
3668          _OUT << "\"" <<  VkCommandBufferResetFlagBits_map[obj] << "\"," << std::endl;
3669      else
3670          _OUT << "\"" << VkCommandBufferResetFlagBits_map[obj] << "\"" << std::endl;
3671 }
print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj,const std::string & str,bool commaNeeded=true)3672 static void print_VkCommandBufferResetFlagBits(const VkCommandBufferResetFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3673      PRINT_SPACE
3674      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3675      if (commaNeeded)
3676          _OUT << "\"" <<  VkCommandBufferResetFlagBits_map[*obj] << "\"," << std::endl;
3677      else
3678          _OUT << "\"" << VkCommandBufferResetFlagBits_map[*obj] << "\"" << std::endl;
3679 }
3680 
3681 static std::map<deUint64, std::string> VkIndexType_map = {
3682     std::make_pair(0, "VK_INDEX_TYPE_UINT16"),
3683     std::make_pair(1, "VK_INDEX_TYPE_UINT32"),
3684     std::make_pair(1000165000, "VK_INDEX_TYPE_NONE_KHR"),
3685     std::make_pair(1000265000, "VK_INDEX_TYPE_UINT8_EXT"),
3686 };
print_VkIndexType(VkIndexType obj,const std::string & str,bool commaNeeded=true)3687 static void print_VkIndexType(VkIndexType obj, const std::string& str, bool commaNeeded=true) {
3688      PRINT_SPACE
3689      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3690      if (commaNeeded)
3691          _OUT << "\"" <<  VkIndexType_map[obj] << "\"," << std::endl;
3692      else
3693          _OUT << "\"" << VkIndexType_map[obj] << "\"" << std::endl;
3694 }
print_VkIndexType(const VkIndexType * obj,const std::string & str,bool commaNeeded=true)3695 static void print_VkIndexType(const VkIndexType * obj, const std::string& str, bool commaNeeded=true) {
3696      PRINT_SPACE
3697      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3698      if (commaNeeded)
3699          _OUT << "\"" <<  VkIndexType_map[*obj] << "\"," << std::endl;
3700      else
3701          _OUT << "\"" << VkIndexType_map[*obj] << "\"" << std::endl;
3702 }
3703 
3704 static std::map<deUint64, std::string> VkStencilFaceFlagBits_map = {
3705     std::make_pair(1ULL << 0, "VK_STENCIL_FACE_FRONT_BIT"),
3706     std::make_pair(1ULL << 1, "VK_STENCIL_FACE_BACK_BIT"),
3707     std::make_pair(0x00000003, "VK_STENCIL_FACE_FRONT_AND_BACK"),
3708 };
print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj,const std::string & str,bool commaNeeded=true)3709 static void print_VkStencilFaceFlagBits(VkStencilFaceFlagBits obj, const std::string& str, bool commaNeeded=true) {
3710      PRINT_SPACE
3711      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3712      if (commaNeeded)
3713          _OUT << "\"" <<  VkStencilFaceFlagBits_map[obj] << "\"," << std::endl;
3714      else
3715          _OUT << "\"" << VkStencilFaceFlagBits_map[obj] << "\"" << std::endl;
3716 }
print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj,const std::string & str,bool commaNeeded=true)3717 static void print_VkStencilFaceFlagBits(const VkStencilFaceFlagBits * obj, const std::string& str, bool commaNeeded=true) {
3718      PRINT_SPACE
3719      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3720      if (commaNeeded)
3721          _OUT << "\"" <<  VkStencilFaceFlagBits_map[*obj] << "\"," << std::endl;
3722      else
3723          _OUT << "\"" << VkStencilFaceFlagBits_map[*obj] << "\"" << std::endl;
3724 }
3725 
3726 static std::map<deUint64, std::string> VkSubpassContents_map = {
3727     std::make_pair(0, "VK_SUBPASS_CONTENTS_INLINE"),
3728     std::make_pair(1, "VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS"),
3729 };
print_VkSubpassContents(VkSubpassContents obj,const std::string & str,bool commaNeeded=true)3730 static void print_VkSubpassContents(VkSubpassContents obj, const std::string& str, bool commaNeeded=true) {
3731      PRINT_SPACE
3732      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3733      if (commaNeeded)
3734          _OUT << "\"" <<  VkSubpassContents_map[obj] << "\"," << std::endl;
3735      else
3736          _OUT << "\"" << VkSubpassContents_map[obj] << "\"" << std::endl;
3737 }
print_VkSubpassContents(const VkSubpassContents * obj,const std::string & str,bool commaNeeded=true)3738 static void print_VkSubpassContents(const VkSubpassContents * obj, const std::string& str, bool commaNeeded=true) {
3739      PRINT_SPACE
3740      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3741      if (commaNeeded)
3742          _OUT << "\"" <<  VkSubpassContents_map[*obj] << "\"," << std::endl;
3743      else
3744          _OUT << "\"" << VkSubpassContents_map[*obj] << "\"" << std::endl;
3745 }
3746 
print_VkAccessFlags(VkAccessFlags obj,const std::string & str,bool commaNeeded=true)3747 static void print_VkAccessFlags(VkAccessFlags obj, const std::string& str, bool commaNeeded=true) {
3748      PRINT_SPACE
3749      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3750      const int max_bits = 64; // We don't expect the number to be larger.
3751      std::bitset<max_bits> b(obj);
3752      _OUT << "\"";
3753      if (obj == 0) _OUT << "0";
3754      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3755          if (b[i] == 1) {
3756              bitCount++;
3757              if (bitCount < b.count())
3758                  _OUT << VkAccessFlagBits_map[1ULL<<i] << " | ";
3759              else
3760                  _OUT << VkAccessFlagBits_map[1ULL<<i];
3761          }
3762      }
3763      if (commaNeeded)
3764        _OUT << "\"" << ",";
3765      else
3766        _OUT << "\""<< "";
3767      _OUT << std::endl;
3768 }
print_VkAccessFlags(const VkAccessFlags * obj,const std::string & str,bool commaNeeded=true)3769 static void print_VkAccessFlags(const VkAccessFlags * obj, const std::string& str, bool commaNeeded=true) {
3770      PRINT_SPACE
3771      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3772      const int max_bits = 64; // We don't expect the number to be larger.
3773      std::bitset<max_bits> b(obj);
3774      _OUT << "\"";
3775      if (obj == 0) _OUT << "0";
3776      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3777          if (b[i] == 1) {
3778              bitCount++;
3779              if (bitCount < b.count())
3780                  _OUT << VkAccessFlagBits_map[1ULL<<i] << " | ";
3781              else
3782                  _OUT << VkAccessFlagBits_map[1ULL<<i];
3783          }
3784      }
3785      if (commaNeeded)
3786        _OUT << "\"" << ",";
3787      else
3788        _OUT << "\""<< "";
3789      _OUT << std::endl;
3790 }
3791 
print_VkImageAspectFlags(VkImageAspectFlags obj,const std::string & str,bool commaNeeded=true)3792 static void print_VkImageAspectFlags(VkImageAspectFlags obj, const std::string& str, bool commaNeeded=true) {
3793      PRINT_SPACE
3794      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3795      const int max_bits = 64; // We don't expect the number to be larger.
3796      std::bitset<max_bits> b(obj);
3797      _OUT << "\"";
3798      if (obj == 0) _OUT << "0";
3799      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3800          if (b[i] == 1) {
3801              bitCount++;
3802              if (bitCount < b.count())
3803                  _OUT << VkImageAspectFlagBits_map[1ULL<<i] << " | ";
3804              else
3805                  _OUT << VkImageAspectFlagBits_map[1ULL<<i];
3806          }
3807      }
3808      if (commaNeeded)
3809        _OUT << "\"" << ",";
3810      else
3811        _OUT << "\""<< "";
3812      _OUT << std::endl;
3813 }
print_VkImageAspectFlags(const VkImageAspectFlags * obj,const std::string & str,bool commaNeeded=true)3814 static void print_VkImageAspectFlags(const VkImageAspectFlags * obj, const std::string& str, bool commaNeeded=true) {
3815      PRINT_SPACE
3816      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3817      const int max_bits = 64; // We don't expect the number to be larger.
3818      std::bitset<max_bits> b(obj);
3819      _OUT << "\"";
3820      if (obj == 0) _OUT << "0";
3821      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3822          if (b[i] == 1) {
3823              bitCount++;
3824              if (bitCount < b.count())
3825                  _OUT << VkImageAspectFlagBits_map[1ULL<<i] << " | ";
3826              else
3827                  _OUT << VkImageAspectFlagBits_map[1ULL<<i];
3828          }
3829      }
3830      if (commaNeeded)
3831        _OUT << "\"" << ",";
3832      else
3833        _OUT << "\""<< "";
3834      _OUT << std::endl;
3835 }
3836 
print_VkFormatFeatureFlags(VkFormatFeatureFlags obj,const std::string & str,bool commaNeeded=true)3837 static void print_VkFormatFeatureFlags(VkFormatFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
3838      PRINT_SPACE
3839      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3840      const int max_bits = 64; // We don't expect the number to be larger.
3841      std::bitset<max_bits> b(obj);
3842      _OUT << "\"";
3843      if (obj == 0) _OUT << "0";
3844      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3845          if (b[i] == 1) {
3846              bitCount++;
3847              if (bitCount < b.count())
3848                  _OUT << VkFormatFeatureFlagBits_map[1ULL<<i] << " | ";
3849              else
3850                  _OUT << VkFormatFeatureFlagBits_map[1ULL<<i];
3851          }
3852      }
3853      if (commaNeeded)
3854        _OUT << "\"" << ",";
3855      else
3856        _OUT << "\""<< "";
3857      _OUT << std::endl;
3858 }
print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj,const std::string & str,bool commaNeeded=true)3859 static void print_VkFormatFeatureFlags(const VkFormatFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
3860      PRINT_SPACE
3861      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3862      const int max_bits = 64; // We don't expect the number to be larger.
3863      std::bitset<max_bits> b(obj);
3864      _OUT << "\"";
3865      if (obj == 0) _OUT << "0";
3866      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3867          if (b[i] == 1) {
3868              bitCount++;
3869              if (bitCount < b.count())
3870                  _OUT << VkFormatFeatureFlagBits_map[1ULL<<i] << " | ";
3871              else
3872                  _OUT << VkFormatFeatureFlagBits_map[1ULL<<i];
3873          }
3874      }
3875      if (commaNeeded)
3876        _OUT << "\"" << ",";
3877      else
3878        _OUT << "\""<< "";
3879      _OUT << std::endl;
3880 }
3881 
print_VkImageCreateFlags(VkImageCreateFlags obj,const std::string & str,bool commaNeeded=true)3882 static void print_VkImageCreateFlags(VkImageCreateFlags obj, const std::string& str, bool commaNeeded=true) {
3883      PRINT_SPACE
3884      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3885      const int max_bits = 64; // We don't expect the number to be larger.
3886      std::bitset<max_bits> b(obj);
3887      _OUT << "\"";
3888      if (obj == 0) _OUT << "0";
3889      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3890          if (b[i] == 1) {
3891              bitCount++;
3892              if (bitCount < b.count())
3893                  _OUT << VkImageCreateFlagBits_map[1ULL<<i] << " | ";
3894              else
3895                  _OUT << VkImageCreateFlagBits_map[1ULL<<i];
3896          }
3897      }
3898      if (commaNeeded)
3899        _OUT << "\"" << ",";
3900      else
3901        _OUT << "\""<< "";
3902      _OUT << std::endl;
3903 }
print_VkImageCreateFlags(const VkImageCreateFlags * obj,const std::string & str,bool commaNeeded=true)3904 static void print_VkImageCreateFlags(const VkImageCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
3905      PRINT_SPACE
3906      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3907      const int max_bits = 64; // We don't expect the number to be larger.
3908      std::bitset<max_bits> b(obj);
3909      _OUT << "\"";
3910      if (obj == 0) _OUT << "0";
3911      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3912          if (b[i] == 1) {
3913              bitCount++;
3914              if (bitCount < b.count())
3915                  _OUT << VkImageCreateFlagBits_map[1ULL<<i] << " | ";
3916              else
3917                  _OUT << VkImageCreateFlagBits_map[1ULL<<i];
3918          }
3919      }
3920      if (commaNeeded)
3921        _OUT << "\"" << ",";
3922      else
3923        _OUT << "\""<< "";
3924      _OUT << std::endl;
3925 }
3926 
print_VkSampleCountFlags(VkSampleCountFlags obj,const std::string & str,bool commaNeeded=true)3927 static void print_VkSampleCountFlags(VkSampleCountFlags obj, const std::string& str, bool commaNeeded=true) {
3928      PRINT_SPACE
3929      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3930      const int max_bits = 64; // We don't expect the number to be larger.
3931      std::bitset<max_bits> b(obj);
3932      _OUT << "\"";
3933      if (obj == 0) _OUT << "0";
3934      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3935          if (b[i] == 1) {
3936              bitCount++;
3937              if (bitCount < b.count())
3938                  _OUT << VkSampleCountFlagBits_map[1ULL<<i] << " | ";
3939              else
3940                  _OUT << VkSampleCountFlagBits_map[1ULL<<i];
3941          }
3942      }
3943      if (commaNeeded)
3944        _OUT << "\"" << ",";
3945      else
3946        _OUT << "\""<< "";
3947      _OUT << std::endl;
3948 }
print_VkSampleCountFlags(const VkSampleCountFlags * obj,const std::string & str,bool commaNeeded=true)3949 static void print_VkSampleCountFlags(const VkSampleCountFlags * obj, const std::string& str, bool commaNeeded=true) {
3950      PRINT_SPACE
3951      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3952      const int max_bits = 64; // We don't expect the number to be larger.
3953      std::bitset<max_bits> b(obj);
3954      _OUT << "\"";
3955      if (obj == 0) _OUT << "0";
3956      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3957          if (b[i] == 1) {
3958              bitCount++;
3959              if (bitCount < b.count())
3960                  _OUT << VkSampleCountFlagBits_map[1ULL<<i] << " | ";
3961              else
3962                  _OUT << VkSampleCountFlagBits_map[1ULL<<i];
3963          }
3964      }
3965      if (commaNeeded)
3966        _OUT << "\"" << ",";
3967      else
3968        _OUT << "\""<< "";
3969      _OUT << std::endl;
3970 }
3971 
print_VkImageUsageFlags(VkImageUsageFlags obj,const std::string & str,bool commaNeeded=true)3972 static void print_VkImageUsageFlags(VkImageUsageFlags obj, const std::string& str, bool commaNeeded=true) {
3973      PRINT_SPACE
3974      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3975      const int max_bits = 64; // We don't expect the number to be larger.
3976      std::bitset<max_bits> b(obj);
3977      _OUT << "\"";
3978      if (obj == 0) _OUT << "0";
3979      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
3980          if (b[i] == 1) {
3981              bitCount++;
3982              if (bitCount < b.count())
3983                  _OUT << VkImageUsageFlagBits_map[1ULL<<i] << " | ";
3984              else
3985                  _OUT << VkImageUsageFlagBits_map[1ULL<<i];
3986          }
3987      }
3988      if (commaNeeded)
3989        _OUT << "\"" << ",";
3990      else
3991        _OUT << "\""<< "";
3992      _OUT << std::endl;
3993 }
print_VkImageUsageFlags(const VkImageUsageFlags * obj,const std::string & str,bool commaNeeded=true)3994 static void print_VkImageUsageFlags(const VkImageUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
3995      PRINT_SPACE
3996      if (str != "") _OUT << "\"" << str << "\"" << " : ";
3997      const int max_bits = 64; // We don't expect the number to be larger.
3998      std::bitset<max_bits> b(obj);
3999      _OUT << "\"";
4000      if (obj == 0) _OUT << "0";
4001      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4002          if (b[i] == 1) {
4003              bitCount++;
4004              if (bitCount < b.count())
4005                  _OUT << VkImageUsageFlagBits_map[1ULL<<i] << " | ";
4006              else
4007                  _OUT << VkImageUsageFlagBits_map[1ULL<<i];
4008          }
4009      }
4010      if (commaNeeded)
4011        _OUT << "\"" << ",";
4012      else
4013        _OUT << "\""<< "";
4014      _OUT << std::endl;
4015 }
4016 
print_VkInstanceCreateFlags(VkInstanceCreateFlags obj,const std::string & str,bool commaNeeded=true)4017 static void print_VkInstanceCreateFlags(VkInstanceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4018      PRINT_SPACE
4019      if (commaNeeded)
4020          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4021      else
4022          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4023 }
print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4024 static void print_VkInstanceCreateFlags(const VkInstanceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4025      PRINT_SPACE
4026      if (commaNeeded)
4027          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4028      else
4029          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4030 }
4031 
print_VkMemoryHeapFlags(VkMemoryHeapFlags obj,const std::string & str,bool commaNeeded=true)4032 static void print_VkMemoryHeapFlags(VkMemoryHeapFlags obj, const std::string& str, bool commaNeeded=true) {
4033      PRINT_SPACE
4034      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4035      const int max_bits = 64; // We don't expect the number to be larger.
4036      std::bitset<max_bits> b(obj);
4037      _OUT << "\"";
4038      if (obj == 0) _OUT << "0";
4039      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4040          if (b[i] == 1) {
4041              bitCount++;
4042              if (bitCount < b.count())
4043                  _OUT << VkMemoryHeapFlagBits_map[1ULL<<i] << " | ";
4044              else
4045                  _OUT << VkMemoryHeapFlagBits_map[1ULL<<i];
4046          }
4047      }
4048      if (commaNeeded)
4049        _OUT << "\"" << ",";
4050      else
4051        _OUT << "\""<< "";
4052      _OUT << std::endl;
4053 }
print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj,const std::string & str,bool commaNeeded=true)4054 static void print_VkMemoryHeapFlags(const VkMemoryHeapFlags * obj, const std::string& str, bool commaNeeded=true) {
4055      PRINT_SPACE
4056      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4057      const int max_bits = 64; // We don't expect the number to be larger.
4058      std::bitset<max_bits> b(obj);
4059      _OUT << "\"";
4060      if (obj == 0) _OUT << "0";
4061      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4062          if (b[i] == 1) {
4063              bitCount++;
4064              if (bitCount < b.count())
4065                  _OUT << VkMemoryHeapFlagBits_map[1ULL<<i] << " | ";
4066              else
4067                  _OUT << VkMemoryHeapFlagBits_map[1ULL<<i];
4068          }
4069      }
4070      if (commaNeeded)
4071        _OUT << "\"" << ",";
4072      else
4073        _OUT << "\""<< "";
4074      _OUT << std::endl;
4075 }
4076 
print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj,const std::string & str,bool commaNeeded=true)4077 static void print_VkMemoryPropertyFlags(VkMemoryPropertyFlags obj, const std::string& str, bool commaNeeded=true) {
4078      PRINT_SPACE
4079      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4080      const int max_bits = 64; // We don't expect the number to be larger.
4081      std::bitset<max_bits> b(obj);
4082      _OUT << "\"";
4083      if (obj == 0) _OUT << "0";
4084      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4085          if (b[i] == 1) {
4086              bitCount++;
4087              if (bitCount < b.count())
4088                  _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i] << " | ";
4089              else
4090                  _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i];
4091          }
4092      }
4093      if (commaNeeded)
4094        _OUT << "\"" << ",";
4095      else
4096        _OUT << "\""<< "";
4097      _OUT << std::endl;
4098 }
print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj,const std::string & str,bool commaNeeded=true)4099 static void print_VkMemoryPropertyFlags(const VkMemoryPropertyFlags * obj, const std::string& str, bool commaNeeded=true) {
4100      PRINT_SPACE
4101      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4102      const int max_bits = 64; // We don't expect the number to be larger.
4103      std::bitset<max_bits> b(obj);
4104      _OUT << "\"";
4105      if (obj == 0) _OUT << "0";
4106      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4107          if (b[i] == 1) {
4108              bitCount++;
4109              if (bitCount < b.count())
4110                  _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i] << " | ";
4111              else
4112                  _OUT << VkMemoryPropertyFlagBits_map[1ULL<<i];
4113          }
4114      }
4115      if (commaNeeded)
4116        _OUT << "\"" << ",";
4117      else
4118        _OUT << "\""<< "";
4119      _OUT << std::endl;
4120 }
4121 
print_VkQueueFlags(VkQueueFlags obj,const std::string & str,bool commaNeeded=true)4122 static void print_VkQueueFlags(VkQueueFlags obj, const std::string& str, bool commaNeeded=true) {
4123      PRINT_SPACE
4124      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4125      const int max_bits = 64; // We don't expect the number to be larger.
4126      std::bitset<max_bits> b(obj);
4127      _OUT << "\"";
4128      if (obj == 0) _OUT << "0";
4129      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4130          if (b[i] == 1) {
4131              bitCount++;
4132              if (bitCount < b.count())
4133                  _OUT << VkQueueFlagBits_map[1ULL<<i] << " | ";
4134              else
4135                  _OUT << VkQueueFlagBits_map[1ULL<<i];
4136          }
4137      }
4138      if (commaNeeded)
4139        _OUT << "\"" << ",";
4140      else
4141        _OUT << "\""<< "";
4142      _OUT << std::endl;
4143 }
print_VkQueueFlags(const VkQueueFlags * obj,const std::string & str,bool commaNeeded=true)4144 static void print_VkQueueFlags(const VkQueueFlags * obj, const std::string& str, bool commaNeeded=true) {
4145      PRINT_SPACE
4146      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4147      const int max_bits = 64; // We don't expect the number to be larger.
4148      std::bitset<max_bits> b(obj);
4149      _OUT << "\"";
4150      if (obj == 0) _OUT << "0";
4151      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4152          if (b[i] == 1) {
4153              bitCount++;
4154              if (bitCount < b.count())
4155                  _OUT << VkQueueFlagBits_map[1ULL<<i] << " | ";
4156              else
4157                  _OUT << VkQueueFlagBits_map[1ULL<<i];
4158          }
4159      }
4160      if (commaNeeded)
4161        _OUT << "\"" << ",";
4162      else
4163        _OUT << "\""<< "";
4164      _OUT << std::endl;
4165 }
4166 
print_VkDeviceCreateFlags(VkDeviceCreateFlags obj,const std::string & str,bool commaNeeded=true)4167 static void print_VkDeviceCreateFlags(VkDeviceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4168      PRINT_SPACE
4169      if (commaNeeded)
4170          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4171      else
4172          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4173 }
print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4174 static void print_VkDeviceCreateFlags(const VkDeviceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4175      PRINT_SPACE
4176      if (commaNeeded)
4177          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4178      else
4179          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4180 }
4181 
print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj,const std::string & str,bool commaNeeded=true)4182 static void print_VkDeviceQueueCreateFlags(VkDeviceQueueCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4183      PRINT_SPACE
4184      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4185      const int max_bits = 64; // We don't expect the number to be larger.
4186      std::bitset<max_bits> b(obj);
4187      _OUT << "\"";
4188      if (obj == 0) _OUT << "0";
4189      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4190          if (b[i] == 1) {
4191              bitCount++;
4192              if (bitCount < b.count())
4193                  _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i] << " | ";
4194              else
4195                  _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i];
4196          }
4197      }
4198      if (commaNeeded)
4199        _OUT << "\"" << ",";
4200      else
4201        _OUT << "\""<< "";
4202      _OUT << std::endl;
4203 }
print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj,const std::string & str,bool commaNeeded=true)4204 static void print_VkDeviceQueueCreateFlags(const VkDeviceQueueCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4205      PRINT_SPACE
4206      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4207      const int max_bits = 64; // We don't expect the number to be larger.
4208      std::bitset<max_bits> b(obj);
4209      _OUT << "\"";
4210      if (obj == 0) _OUT << "0";
4211      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4212          if (b[i] == 1) {
4213              bitCount++;
4214              if (bitCount < b.count())
4215                  _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i] << " | ";
4216              else
4217                  _OUT << VkDeviceQueueCreateFlagBits_map[1ULL<<i];
4218          }
4219      }
4220      if (commaNeeded)
4221        _OUT << "\"" << ",";
4222      else
4223        _OUT << "\""<< "";
4224      _OUT << std::endl;
4225 }
4226 
print_VkPipelineStageFlags(VkPipelineStageFlags obj,const std::string & str,bool commaNeeded=true)4227 static void print_VkPipelineStageFlags(VkPipelineStageFlags obj, const std::string& str, bool commaNeeded=true) {
4228      PRINT_SPACE
4229      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4230      const int max_bits = 64; // We don't expect the number to be larger.
4231      std::bitset<max_bits> b(obj);
4232      _OUT << "\"";
4233      if (obj == 0) _OUT << "0";
4234      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4235          if (b[i] == 1) {
4236              bitCount++;
4237              if (bitCount < b.count())
4238                  _OUT << VkPipelineStageFlagBits_map[1ULL<<i] << " | ";
4239              else
4240                  _OUT << VkPipelineStageFlagBits_map[1ULL<<i];
4241          }
4242      }
4243      if (commaNeeded)
4244        _OUT << "\"" << ",";
4245      else
4246        _OUT << "\""<< "";
4247      _OUT << std::endl;
4248 }
print_VkPipelineStageFlags(const VkPipelineStageFlags * obj,const std::string & str,bool commaNeeded=true)4249 static void print_VkPipelineStageFlags(const VkPipelineStageFlags * obj, const std::string& str, bool commaNeeded=true) {
4250      PRINT_SPACE
4251      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4252      const int max_bits = 64; // We don't expect the number to be larger.
4253      std::bitset<max_bits> b(obj);
4254      _OUT << "\"";
4255      if (obj == 0) _OUT << "0";
4256      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4257          if (b[i] == 1) {
4258              bitCount++;
4259              if (bitCount < b.count())
4260                  _OUT << VkPipelineStageFlagBits_map[1ULL<<i] << " | ";
4261              else
4262                  _OUT << VkPipelineStageFlagBits_map[1ULL<<i];
4263          }
4264      }
4265      if (commaNeeded)
4266        _OUT << "\"" << ",";
4267      else
4268        _OUT << "\""<< "";
4269      _OUT << std::endl;
4270 }
4271 
print_VkMemoryMapFlags(VkMemoryMapFlags obj,const std::string & str,bool commaNeeded=true)4272 static void print_VkMemoryMapFlags(VkMemoryMapFlags obj, const std::string& str, bool commaNeeded=true) {
4273      PRINT_SPACE
4274      if (commaNeeded)
4275          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4276      else
4277          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4278 }
print_VkMemoryMapFlags(const VkMemoryMapFlags * obj,const std::string & str,bool commaNeeded=true)4279 static void print_VkMemoryMapFlags(const VkMemoryMapFlags * obj, const std::string& str, bool commaNeeded=true) {
4280      PRINT_SPACE
4281      if (commaNeeded)
4282          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4283      else
4284          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4285 }
4286 
print_VkFenceCreateFlags(VkFenceCreateFlags obj,const std::string & str,bool commaNeeded=true)4287 static void print_VkFenceCreateFlags(VkFenceCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4288      PRINT_SPACE
4289      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4290      const int max_bits = 64; // We don't expect the number to be larger.
4291      std::bitset<max_bits> b(obj);
4292      _OUT << "\"";
4293      if (obj == 0) _OUT << "0";
4294      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4295          if (b[i] == 1) {
4296              bitCount++;
4297              if (bitCount < b.count())
4298                  _OUT << VkFenceCreateFlagBits_map[1ULL<<i] << " | ";
4299              else
4300                  _OUT << VkFenceCreateFlagBits_map[1ULL<<i];
4301          }
4302      }
4303      if (commaNeeded)
4304        _OUT << "\"" << ",";
4305      else
4306        _OUT << "\""<< "";
4307      _OUT << std::endl;
4308 }
print_VkFenceCreateFlags(const VkFenceCreateFlags * obj,const std::string & str,bool commaNeeded=true)4309 static void print_VkFenceCreateFlags(const VkFenceCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4310      PRINT_SPACE
4311      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4312      const int max_bits = 64; // We don't expect the number to be larger.
4313      std::bitset<max_bits> b(obj);
4314      _OUT << "\"";
4315      if (obj == 0) _OUT << "0";
4316      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4317          if (b[i] == 1) {
4318              bitCount++;
4319              if (bitCount < b.count())
4320                  _OUT << VkFenceCreateFlagBits_map[1ULL<<i] << " | ";
4321              else
4322                  _OUT << VkFenceCreateFlagBits_map[1ULL<<i];
4323          }
4324      }
4325      if (commaNeeded)
4326        _OUT << "\"" << ",";
4327      else
4328        _OUT << "\""<< "";
4329      _OUT << std::endl;
4330 }
4331 
print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj,const std::string & str,bool commaNeeded=true)4332 static void print_VkSemaphoreCreateFlags(VkSemaphoreCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4333      PRINT_SPACE
4334      if (commaNeeded)
4335          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4336      else
4337          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4338 }
print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj,const std::string & str,bool commaNeeded=true)4339 static void print_VkSemaphoreCreateFlags(const VkSemaphoreCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4340      PRINT_SPACE
4341      if (commaNeeded)
4342          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4343      else
4344          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4345 }
4346 
print_VkEventCreateFlags(VkEventCreateFlags obj,const std::string & str,bool commaNeeded=true)4347 static void print_VkEventCreateFlags(VkEventCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4348      PRINT_SPACE
4349      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4350      const int max_bits = 64; // We don't expect the number to be larger.
4351      std::bitset<max_bits> b(obj);
4352      _OUT << "\"";
4353      if (obj == 0) _OUT << "0";
4354      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4355          if (b[i] == 1) {
4356              bitCount++;
4357              if (bitCount < b.count())
4358                  _OUT << VkEventCreateFlagBits_map[1ULL<<i] << " | ";
4359              else
4360                  _OUT << VkEventCreateFlagBits_map[1ULL<<i];
4361          }
4362      }
4363      if (commaNeeded)
4364        _OUT << "\"" << ",";
4365      else
4366        _OUT << "\""<< "";
4367      _OUT << std::endl;
4368 }
print_VkEventCreateFlags(const VkEventCreateFlags * obj,const std::string & str,bool commaNeeded=true)4369 static void print_VkEventCreateFlags(const VkEventCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4370      PRINT_SPACE
4371      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4372      const int max_bits = 64; // We don't expect the number to be larger.
4373      std::bitset<max_bits> b(obj);
4374      _OUT << "\"";
4375      if (obj == 0) _OUT << "0";
4376      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4377          if (b[i] == 1) {
4378              bitCount++;
4379              if (bitCount < b.count())
4380                  _OUT << VkEventCreateFlagBits_map[1ULL<<i] << " | ";
4381              else
4382                  _OUT << VkEventCreateFlagBits_map[1ULL<<i];
4383          }
4384      }
4385      if (commaNeeded)
4386        _OUT << "\"" << ",";
4387      else
4388        _OUT << "\""<< "";
4389      _OUT << std::endl;
4390 }
4391 
print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj,const std::string & str,bool commaNeeded=true)4392 static void print_VkQueryPipelineStatisticFlags(VkQueryPipelineStatisticFlags obj, const std::string& str, bool commaNeeded=true) {
4393      PRINT_SPACE
4394      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4395      const int max_bits = 64; // We don't expect the number to be larger.
4396      std::bitset<max_bits> b(obj);
4397      _OUT << "\"";
4398      if (obj == 0) _OUT << "0";
4399      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4400          if (b[i] == 1) {
4401              bitCount++;
4402              if (bitCount < b.count())
4403                  _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i] << " | ";
4404              else
4405                  _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i];
4406          }
4407      }
4408      if (commaNeeded)
4409        _OUT << "\"" << ",";
4410      else
4411        _OUT << "\""<< "";
4412      _OUT << std::endl;
4413 }
print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj,const std::string & str,bool commaNeeded=true)4414 static void print_VkQueryPipelineStatisticFlags(const VkQueryPipelineStatisticFlags * obj, const std::string& str, bool commaNeeded=true) {
4415      PRINT_SPACE
4416      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4417      const int max_bits = 64; // We don't expect the number to be larger.
4418      std::bitset<max_bits> b(obj);
4419      _OUT << "\"";
4420      if (obj == 0) _OUT << "0";
4421      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4422          if (b[i] == 1) {
4423              bitCount++;
4424              if (bitCount < b.count())
4425                  _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i] << " | ";
4426              else
4427                  _OUT << VkQueryPipelineStatisticFlagBits_map[1ULL<<i];
4428          }
4429      }
4430      if (commaNeeded)
4431        _OUT << "\"" << ",";
4432      else
4433        _OUT << "\""<< "";
4434      _OUT << std::endl;
4435 }
4436 
print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)4437 static void print_VkQueryPoolCreateFlags(VkQueryPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4438      PRINT_SPACE
4439      if (commaNeeded)
4440          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4441      else
4442          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4443 }
print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)4444 static void print_VkQueryPoolCreateFlags(const VkQueryPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4445      PRINT_SPACE
4446      if (commaNeeded)
4447          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4448      else
4449          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4450 }
4451 
print_VkQueryResultFlags(VkQueryResultFlags obj,const std::string & str,bool commaNeeded=true)4452 static void print_VkQueryResultFlags(VkQueryResultFlags obj, const std::string& str, bool commaNeeded=true) {
4453      PRINT_SPACE
4454      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4455      const int max_bits = 64; // We don't expect the number to be larger.
4456      std::bitset<max_bits> b(obj);
4457      _OUT << "\"";
4458      if (obj == 0) _OUT << "0";
4459      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4460          if (b[i] == 1) {
4461              bitCount++;
4462              if (bitCount < b.count())
4463                  _OUT << VkQueryResultFlagBits_map[1ULL<<i] << " | ";
4464              else
4465                  _OUT << VkQueryResultFlagBits_map[1ULL<<i];
4466          }
4467      }
4468      if (commaNeeded)
4469        _OUT << "\"" << ",";
4470      else
4471        _OUT << "\""<< "";
4472      _OUT << std::endl;
4473 }
print_VkQueryResultFlags(const VkQueryResultFlags * obj,const std::string & str,bool commaNeeded=true)4474 static void print_VkQueryResultFlags(const VkQueryResultFlags * obj, const std::string& str, bool commaNeeded=true) {
4475      PRINT_SPACE
4476      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4477      const int max_bits = 64; // We don't expect the number to be larger.
4478      std::bitset<max_bits> b(obj);
4479      _OUT << "\"";
4480      if (obj == 0) _OUT << "0";
4481      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4482          if (b[i] == 1) {
4483              bitCount++;
4484              if (bitCount < b.count())
4485                  _OUT << VkQueryResultFlagBits_map[1ULL<<i] << " | ";
4486              else
4487                  _OUT << VkQueryResultFlagBits_map[1ULL<<i];
4488          }
4489      }
4490      if (commaNeeded)
4491        _OUT << "\"" << ",";
4492      else
4493        _OUT << "\""<< "";
4494      _OUT << std::endl;
4495 }
4496 
print_VkBufferCreateFlags(VkBufferCreateFlags obj,const std::string & str,bool commaNeeded=true)4497 static void print_VkBufferCreateFlags(VkBufferCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4498      PRINT_SPACE
4499      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4500      const int max_bits = 64; // We don't expect the number to be larger.
4501      std::bitset<max_bits> b(obj);
4502      _OUT << "\"";
4503      if (obj == 0) _OUT << "0";
4504      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4505          if (b[i] == 1) {
4506              bitCount++;
4507              if (bitCount < b.count())
4508                  _OUT << VkBufferCreateFlagBits_map[1ULL<<i] << " | ";
4509              else
4510                  _OUT << VkBufferCreateFlagBits_map[1ULL<<i];
4511          }
4512      }
4513      if (commaNeeded)
4514        _OUT << "\"" << ",";
4515      else
4516        _OUT << "\""<< "";
4517      _OUT << std::endl;
4518 }
print_VkBufferCreateFlags(const VkBufferCreateFlags * obj,const std::string & str,bool commaNeeded=true)4519 static void print_VkBufferCreateFlags(const VkBufferCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4520      PRINT_SPACE
4521      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4522      const int max_bits = 64; // We don't expect the number to be larger.
4523      std::bitset<max_bits> b(obj);
4524      _OUT << "\"";
4525      if (obj == 0) _OUT << "0";
4526      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4527          if (b[i] == 1) {
4528              bitCount++;
4529              if (bitCount < b.count())
4530                  _OUT << VkBufferCreateFlagBits_map[1ULL<<i] << " | ";
4531              else
4532                  _OUT << VkBufferCreateFlagBits_map[1ULL<<i];
4533          }
4534      }
4535      if (commaNeeded)
4536        _OUT << "\"" << ",";
4537      else
4538        _OUT << "\""<< "";
4539      _OUT << std::endl;
4540 }
4541 
print_VkBufferUsageFlags(VkBufferUsageFlags obj,const std::string & str,bool commaNeeded=true)4542 static void print_VkBufferUsageFlags(VkBufferUsageFlags obj, const std::string& str, bool commaNeeded=true) {
4543      PRINT_SPACE
4544      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4545      const int max_bits = 64; // We don't expect the number to be larger.
4546      std::bitset<max_bits> b(obj);
4547      _OUT << "\"";
4548      if (obj == 0) _OUT << "0";
4549      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4550          if (b[i] == 1) {
4551              bitCount++;
4552              if (bitCount < b.count())
4553                  _OUT << VkBufferUsageFlagBits_map[1ULL<<i] << " | ";
4554              else
4555                  _OUT << VkBufferUsageFlagBits_map[1ULL<<i];
4556          }
4557      }
4558      if (commaNeeded)
4559        _OUT << "\"" << ",";
4560      else
4561        _OUT << "\""<< "";
4562      _OUT << std::endl;
4563 }
print_VkBufferUsageFlags(const VkBufferUsageFlags * obj,const std::string & str,bool commaNeeded=true)4564 static void print_VkBufferUsageFlags(const VkBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
4565      PRINT_SPACE
4566      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4567      const int max_bits = 64; // We don't expect the number to be larger.
4568      std::bitset<max_bits> b(obj);
4569      _OUT << "\"";
4570      if (obj == 0) _OUT << "0";
4571      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4572          if (b[i] == 1) {
4573              bitCount++;
4574              if (bitCount < b.count())
4575                  _OUT << VkBufferUsageFlagBits_map[1ULL<<i] << " | ";
4576              else
4577                  _OUT << VkBufferUsageFlagBits_map[1ULL<<i];
4578          }
4579      }
4580      if (commaNeeded)
4581        _OUT << "\"" << ",";
4582      else
4583        _OUT << "\""<< "";
4584      _OUT << std::endl;
4585 }
4586 
print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj,const std::string & str,bool commaNeeded=true)4587 static void print_VkBufferViewCreateFlags(VkBufferViewCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4588      PRINT_SPACE
4589      if (commaNeeded)
4590          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4591      else
4592          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4593 }
print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj,const std::string & str,bool commaNeeded=true)4594 static void print_VkBufferViewCreateFlags(const VkBufferViewCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4595      PRINT_SPACE
4596      if (commaNeeded)
4597          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4598      else
4599          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4600 }
4601 
print_VkImageViewCreateFlags(VkImageViewCreateFlags obj,const std::string & str,bool commaNeeded=true)4602 static void print_VkImageViewCreateFlags(VkImageViewCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4603      PRINT_SPACE
4604      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4605      const int max_bits = 64; // We don't expect the number to be larger.
4606      std::bitset<max_bits> b(obj);
4607      _OUT << "\"";
4608      if (obj == 0) _OUT << "0";
4609      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4610          if (b[i] == 1) {
4611              bitCount++;
4612              if (bitCount < b.count())
4613                  _OUT << VkImageViewCreateFlagBits_map[1ULL<<i] << " | ";
4614              else
4615                  _OUT << VkImageViewCreateFlagBits_map[1ULL<<i];
4616          }
4617      }
4618      if (commaNeeded)
4619        _OUT << "\"" << ",";
4620      else
4621        _OUT << "\""<< "";
4622      _OUT << std::endl;
4623 }
print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj,const std::string & str,bool commaNeeded=true)4624 static void print_VkImageViewCreateFlags(const VkImageViewCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4625      PRINT_SPACE
4626      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4627      const int max_bits = 64; // We don't expect the number to be larger.
4628      std::bitset<max_bits> b(obj);
4629      _OUT << "\"";
4630      if (obj == 0) _OUT << "0";
4631      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4632          if (b[i] == 1) {
4633              bitCount++;
4634              if (bitCount < b.count())
4635                  _OUT << VkImageViewCreateFlagBits_map[1ULL<<i] << " | ";
4636              else
4637                  _OUT << VkImageViewCreateFlagBits_map[1ULL<<i];
4638          }
4639      }
4640      if (commaNeeded)
4641        _OUT << "\"" << ",";
4642      else
4643        _OUT << "\""<< "";
4644      _OUT << std::endl;
4645 }
4646 
print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj,const std::string & str,bool commaNeeded=true)4647 static void print_VkPipelineCacheCreateFlags(VkPipelineCacheCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4648      PRINT_SPACE
4649      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4650      const int max_bits = 64; // We don't expect the number to be larger.
4651      std::bitset<max_bits> b(obj);
4652      _OUT << "\"";
4653      if (obj == 0) _OUT << "0";
4654      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4655          if (b[i] == 1) {
4656              bitCount++;
4657              if (bitCount < b.count())
4658                  _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i] << " | ";
4659              else
4660                  _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i];
4661          }
4662      }
4663      if (commaNeeded)
4664        _OUT << "\"" << ",";
4665      else
4666        _OUT << "\""<< "";
4667      _OUT << std::endl;
4668 }
print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj,const std::string & str,bool commaNeeded=true)4669 static void print_VkPipelineCacheCreateFlags(const VkPipelineCacheCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4670      PRINT_SPACE
4671      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4672      const int max_bits = 64; // We don't expect the number to be larger.
4673      std::bitset<max_bits> b(obj);
4674      _OUT << "\"";
4675      if (obj == 0) _OUT << "0";
4676      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4677          if (b[i] == 1) {
4678              bitCount++;
4679              if (bitCount < b.count())
4680                  _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i] << " | ";
4681              else
4682                  _OUT << VkPipelineCacheCreateFlagBits_map[1ULL<<i];
4683          }
4684      }
4685      if (commaNeeded)
4686        _OUT << "\"" << ",";
4687      else
4688        _OUT << "\""<< "";
4689      _OUT << std::endl;
4690 }
4691 
print_VkColorComponentFlags(VkColorComponentFlags obj,const std::string & str,bool commaNeeded=true)4692 static void print_VkColorComponentFlags(VkColorComponentFlags obj, const std::string& str, bool commaNeeded=true) {
4693      PRINT_SPACE
4694      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4695      const int max_bits = 64; // We don't expect the number to be larger.
4696      std::bitset<max_bits> b(obj);
4697      _OUT << "\"";
4698      if (obj == 0) _OUT << "0";
4699      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4700          if (b[i] == 1) {
4701              bitCount++;
4702              if (bitCount < b.count())
4703                  _OUT << VkColorComponentFlagBits_map[1ULL<<i] << " | ";
4704              else
4705                  _OUT << VkColorComponentFlagBits_map[1ULL<<i];
4706          }
4707      }
4708      if (commaNeeded)
4709        _OUT << "\"" << ",";
4710      else
4711        _OUT << "\""<< "";
4712      _OUT << std::endl;
4713 }
print_VkColorComponentFlags(const VkColorComponentFlags * obj,const std::string & str,bool commaNeeded=true)4714 static void print_VkColorComponentFlags(const VkColorComponentFlags * obj, const std::string& str, bool commaNeeded=true) {
4715      PRINT_SPACE
4716      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4717      const int max_bits = 64; // We don't expect the number to be larger.
4718      std::bitset<max_bits> b(obj);
4719      _OUT << "\"";
4720      if (obj == 0) _OUT << "0";
4721      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4722          if (b[i] == 1) {
4723              bitCount++;
4724              if (bitCount < b.count())
4725                  _OUT << VkColorComponentFlagBits_map[1ULL<<i] << " | ";
4726              else
4727                  _OUT << VkColorComponentFlagBits_map[1ULL<<i];
4728          }
4729      }
4730      if (commaNeeded)
4731        _OUT << "\"" << ",";
4732      else
4733        _OUT << "\""<< "";
4734      _OUT << std::endl;
4735 }
4736 
print_VkPipelineCreateFlags(VkPipelineCreateFlags obj,const std::string & str,bool commaNeeded=true)4737 static void print_VkPipelineCreateFlags(VkPipelineCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4738      PRINT_SPACE
4739      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4740      const int max_bits = 64; // We don't expect the number to be larger.
4741      std::bitset<max_bits> b(obj);
4742      _OUT << "\"";
4743      if (obj == 0) _OUT << "0";
4744      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4745          if (b[i] == 1) {
4746              bitCount++;
4747              if (bitCount < b.count())
4748                  _OUT << VkPipelineCreateFlagBits_map[1ULL<<i] << " | ";
4749              else
4750                  _OUT << VkPipelineCreateFlagBits_map[1ULL<<i];
4751          }
4752      }
4753      if (commaNeeded)
4754        _OUT << "\"" << ",";
4755      else
4756        _OUT << "\""<< "";
4757      _OUT << std::endl;
4758 }
print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj,const std::string & str,bool commaNeeded=true)4759 static void print_VkPipelineCreateFlags(const VkPipelineCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4760      PRINT_SPACE
4761      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4762      const int max_bits = 64; // We don't expect the number to be larger.
4763      std::bitset<max_bits> b(obj);
4764      _OUT << "\"";
4765      if (obj == 0) _OUT << "0";
4766      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4767          if (b[i] == 1) {
4768              bitCount++;
4769              if (bitCount < b.count())
4770                  _OUT << VkPipelineCreateFlagBits_map[1ULL<<i] << " | ";
4771              else
4772                  _OUT << VkPipelineCreateFlagBits_map[1ULL<<i];
4773          }
4774      }
4775      if (commaNeeded)
4776        _OUT << "\"" << ",";
4777      else
4778        _OUT << "\""<< "";
4779      _OUT << std::endl;
4780 }
4781 
print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj,const std::string & str,bool commaNeeded=true)4782 static void print_VkPipelineShaderStageCreateFlags(VkPipelineShaderStageCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4783      PRINT_SPACE
4784      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4785      const int max_bits = 64; // We don't expect the number to be larger.
4786      std::bitset<max_bits> b(obj);
4787      _OUT << "\"";
4788      if (obj == 0) _OUT << "0";
4789      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4790          if (b[i] == 1) {
4791              bitCount++;
4792              if (bitCount < b.count())
4793                  _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i] << " | ";
4794              else
4795                  _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i];
4796          }
4797      }
4798      if (commaNeeded)
4799        _OUT << "\"" << ",";
4800      else
4801        _OUT << "\""<< "";
4802      _OUT << std::endl;
4803 }
print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj,const std::string & str,bool commaNeeded=true)4804 static void print_VkPipelineShaderStageCreateFlags(const VkPipelineShaderStageCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4805      PRINT_SPACE
4806      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4807      const int max_bits = 64; // We don't expect the number to be larger.
4808      std::bitset<max_bits> b(obj);
4809      _OUT << "\"";
4810      if (obj == 0) _OUT << "0";
4811      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4812          if (b[i] == 1) {
4813              bitCount++;
4814              if (bitCount < b.count())
4815                  _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i] << " | ";
4816              else
4817                  _OUT << VkPipelineShaderStageCreateFlagBits_map[1ULL<<i];
4818          }
4819      }
4820      if (commaNeeded)
4821        _OUT << "\"" << ",";
4822      else
4823        _OUT << "\""<< "";
4824      _OUT << std::endl;
4825 }
4826 
print_VkCullModeFlags(VkCullModeFlags obj,const std::string & str,bool commaNeeded=true)4827 static void print_VkCullModeFlags(VkCullModeFlags obj, const std::string& str, bool commaNeeded=true) {
4828      PRINT_SPACE
4829      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4830      const int max_bits = 64; // We don't expect the number to be larger.
4831      std::bitset<max_bits> b(obj);
4832      _OUT << "\"";
4833      if (obj == 0) _OUT << "0";
4834      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4835          if (b[i] == 1) {
4836              bitCount++;
4837              if (bitCount < b.count())
4838                  _OUT << VkCullModeFlagBits_map[1ULL<<i] << " | ";
4839              else
4840                  _OUT << VkCullModeFlagBits_map[1ULL<<i];
4841          }
4842      }
4843      if (commaNeeded)
4844        _OUT << "\"" << ",";
4845      else
4846        _OUT << "\""<< "";
4847      _OUT << std::endl;
4848 }
print_VkCullModeFlags(const VkCullModeFlags * obj,const std::string & str,bool commaNeeded=true)4849 static void print_VkCullModeFlags(const VkCullModeFlags * obj, const std::string& str, bool commaNeeded=true) {
4850      PRINT_SPACE
4851      if (str != "") _OUT << "\"" << str << "\"" << " : ";
4852      const int max_bits = 64; // We don't expect the number to be larger.
4853      std::bitset<max_bits> b(obj);
4854      _OUT << "\"";
4855      if (obj == 0) _OUT << "0";
4856      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
4857          if (b[i] == 1) {
4858              bitCount++;
4859              if (bitCount < b.count())
4860                  _OUT << VkCullModeFlagBits_map[1ULL<<i] << " | ";
4861              else
4862                  _OUT << VkCullModeFlagBits_map[1ULL<<i];
4863          }
4864      }
4865      if (commaNeeded)
4866        _OUT << "\"" << ",";
4867      else
4868        _OUT << "\""<< "";
4869      _OUT << std::endl;
4870 }
4871 
print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4872 static void print_VkPipelineVertexInputStateCreateFlags(VkPipelineVertexInputStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4873      PRINT_SPACE
4874      if (commaNeeded)
4875          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4876      else
4877          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4878 }
print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4879 static void print_VkPipelineVertexInputStateCreateFlags(const VkPipelineVertexInputStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4880      PRINT_SPACE
4881      if (commaNeeded)
4882          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4883      else
4884          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4885 }
4886 
print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4887 static void print_VkPipelineInputAssemblyStateCreateFlags(VkPipelineInputAssemblyStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4888      PRINT_SPACE
4889      if (commaNeeded)
4890          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4891      else
4892          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4893 }
print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4894 static void print_VkPipelineInputAssemblyStateCreateFlags(const VkPipelineInputAssemblyStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4895      PRINT_SPACE
4896      if (commaNeeded)
4897          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4898      else
4899          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4900 }
4901 
print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4902 static void print_VkPipelineTessellationStateCreateFlags(VkPipelineTessellationStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4903      PRINT_SPACE
4904      if (commaNeeded)
4905          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4906      else
4907          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4908 }
print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4909 static void print_VkPipelineTessellationStateCreateFlags(const VkPipelineTessellationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4910      PRINT_SPACE
4911      if (commaNeeded)
4912          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4913      else
4914          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4915 }
4916 
print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4917 static void print_VkPipelineViewportStateCreateFlags(VkPipelineViewportStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4918      PRINT_SPACE
4919      if (commaNeeded)
4920          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4921      else
4922          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4923 }
print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4924 static void print_VkPipelineViewportStateCreateFlags(const VkPipelineViewportStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4925      PRINT_SPACE
4926      if (commaNeeded)
4927          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4928      else
4929          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4930 }
4931 
print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4932 static void print_VkPipelineRasterizationStateCreateFlags(VkPipelineRasterizationStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4933      PRINT_SPACE
4934      if (commaNeeded)
4935          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4936      else
4937          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4938 }
print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4939 static void print_VkPipelineRasterizationStateCreateFlags(const VkPipelineRasterizationStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4940      PRINT_SPACE
4941      if (commaNeeded)
4942          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4943      else
4944          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4945 }
4946 
print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4947 static void print_VkPipelineMultisampleStateCreateFlags(VkPipelineMultisampleStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4948      PRINT_SPACE
4949      if (commaNeeded)
4950          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4951      else
4952          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4953 }
print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4954 static void print_VkPipelineMultisampleStateCreateFlags(const VkPipelineMultisampleStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4955      PRINT_SPACE
4956      if (commaNeeded)
4957          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4958      else
4959          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4960 }
4961 
print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4962 static void print_VkPipelineDepthStencilStateCreateFlags(VkPipelineDepthStencilStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4963      PRINT_SPACE
4964      if (commaNeeded)
4965          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4966      else
4967          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4968 }
print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4969 static void print_VkPipelineDepthStencilStateCreateFlags(const VkPipelineDepthStencilStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4970      PRINT_SPACE
4971      if (commaNeeded)
4972          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4973      else
4974          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4975 }
4976 
print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4977 static void print_VkPipelineColorBlendStateCreateFlags(VkPipelineColorBlendStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4978      PRINT_SPACE
4979      if (commaNeeded)
4980          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4981      else
4982          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4983 }
print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4984 static void print_VkPipelineColorBlendStateCreateFlags(const VkPipelineColorBlendStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
4985      PRINT_SPACE
4986      if (commaNeeded)
4987          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4988      else
4989          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4990 }
4991 
print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj,const std::string & str,bool commaNeeded=true)4992 static void print_VkPipelineDynamicStateCreateFlags(VkPipelineDynamicStateCreateFlags obj, const std::string& str, bool commaNeeded=true) {
4993      PRINT_SPACE
4994      if (commaNeeded)
4995          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
4996      else
4997          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
4998 }
print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj,const std::string & str,bool commaNeeded=true)4999 static void print_VkPipelineDynamicStateCreateFlags(const VkPipelineDynamicStateCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5000      PRINT_SPACE
5001      if (commaNeeded)
5002          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5003      else
5004          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5005 }
5006 
print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj,const std::string & str,bool commaNeeded=true)5007 static void print_VkPipelineLayoutCreateFlags(VkPipelineLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5008      PRINT_SPACE
5009      if (commaNeeded)
5010          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5011      else
5012          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5013 }
print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj,const std::string & str,bool commaNeeded=true)5014 static void print_VkPipelineLayoutCreateFlags(const VkPipelineLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5015      PRINT_SPACE
5016      if (commaNeeded)
5017          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5018      else
5019          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5020 }
5021 
print_VkShaderStageFlags(VkShaderStageFlags obj,const std::string & str,bool commaNeeded=true)5022 static void print_VkShaderStageFlags(VkShaderStageFlags obj, const std::string& str, bool commaNeeded=true) {
5023      PRINT_SPACE
5024      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5025      const int max_bits = 64; // We don't expect the number to be larger.
5026      std::bitset<max_bits> b(obj);
5027      _OUT << "\"";
5028      if (obj == 0) _OUT << "0";
5029      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5030          if (b[i] == 1) {
5031              bitCount++;
5032              if (bitCount < b.count())
5033                  _OUT << VkShaderStageFlagBits_map[1ULL<<i] << " | ";
5034              else
5035                  _OUT << VkShaderStageFlagBits_map[1ULL<<i];
5036          }
5037      }
5038      if (commaNeeded)
5039        _OUT << "\"" << ",";
5040      else
5041        _OUT << "\""<< "";
5042      _OUT << std::endl;
5043 }
print_VkShaderStageFlags(const VkShaderStageFlags * obj,const std::string & str,bool commaNeeded=true)5044 static void print_VkShaderStageFlags(const VkShaderStageFlags * obj, const std::string& str, bool commaNeeded=true) {
5045      PRINT_SPACE
5046      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5047      const int max_bits = 64; // We don't expect the number to be larger.
5048      std::bitset<max_bits> b(obj);
5049      _OUT << "\"";
5050      if (obj == 0) _OUT << "0";
5051      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5052          if (b[i] == 1) {
5053              bitCount++;
5054              if (bitCount < b.count())
5055                  _OUT << VkShaderStageFlagBits_map[1ULL<<i] << " | ";
5056              else
5057                  _OUT << VkShaderStageFlagBits_map[1ULL<<i];
5058          }
5059      }
5060      if (commaNeeded)
5061        _OUT << "\"" << ",";
5062      else
5063        _OUT << "\""<< "";
5064      _OUT << std::endl;
5065 }
5066 
print_VkSamplerCreateFlags(VkSamplerCreateFlags obj,const std::string & str,bool commaNeeded=true)5067 static void print_VkSamplerCreateFlags(VkSamplerCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5068      PRINT_SPACE
5069      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5070      const int max_bits = 64; // We don't expect the number to be larger.
5071      std::bitset<max_bits> b(obj);
5072      _OUT << "\"";
5073      if (obj == 0) _OUT << "0";
5074      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5075          if (b[i] == 1) {
5076              bitCount++;
5077              if (bitCount < b.count())
5078                  _OUT << VkSamplerCreateFlagBits_map[1ULL<<i] << " | ";
5079              else
5080                  _OUT << VkSamplerCreateFlagBits_map[1ULL<<i];
5081          }
5082      }
5083      if (commaNeeded)
5084        _OUT << "\"" << ",";
5085      else
5086        _OUT << "\""<< "";
5087      _OUT << std::endl;
5088 }
print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj,const std::string & str,bool commaNeeded=true)5089 static void print_VkSamplerCreateFlags(const VkSamplerCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5090      PRINT_SPACE
5091      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5092      const int max_bits = 64; // We don't expect the number to be larger.
5093      std::bitset<max_bits> b(obj);
5094      _OUT << "\"";
5095      if (obj == 0) _OUT << "0";
5096      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5097          if (b[i] == 1) {
5098              bitCount++;
5099              if (bitCount < b.count())
5100                  _OUT << VkSamplerCreateFlagBits_map[1ULL<<i] << " | ";
5101              else
5102                  _OUT << VkSamplerCreateFlagBits_map[1ULL<<i];
5103          }
5104      }
5105      if (commaNeeded)
5106        _OUT << "\"" << ",";
5107      else
5108        _OUT << "\""<< "";
5109      _OUT << std::endl;
5110 }
5111 
print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)5112 static void print_VkDescriptorPoolCreateFlags(VkDescriptorPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5113      PRINT_SPACE
5114      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5115      const int max_bits = 64; // We don't expect the number to be larger.
5116      std::bitset<max_bits> b(obj);
5117      _OUT << "\"";
5118      if (obj == 0) _OUT << "0";
5119      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5120          if (b[i] == 1) {
5121              bitCount++;
5122              if (bitCount < b.count())
5123                  _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i] << " | ";
5124              else
5125                  _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i];
5126          }
5127      }
5128      if (commaNeeded)
5129        _OUT << "\"" << ",";
5130      else
5131        _OUT << "\""<< "";
5132      _OUT << std::endl;
5133 }
print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)5134 static void print_VkDescriptorPoolCreateFlags(const VkDescriptorPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5135      PRINT_SPACE
5136      if (str != "") _OUT << "\"" << str << "\"" << " : ";
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) _OUT << "0";
5141      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5142          if (b[i] == 1) {
5143              bitCount++;
5144              if (bitCount < b.count())
5145                  _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i] << " | ";
5146              else
5147                  _OUT << VkDescriptorPoolCreateFlagBits_map[1ULL<<i];
5148          }
5149      }
5150      if (commaNeeded)
5151        _OUT << "\"" << ",";
5152      else
5153        _OUT << "\""<< "";
5154      _OUT << std::endl;
5155 }
5156 
print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj,const std::string & str,bool commaNeeded=true)5157 static void print_VkDescriptorPoolResetFlags(VkDescriptorPoolResetFlags obj, const std::string& str, bool commaNeeded=true) {
5158      PRINT_SPACE
5159      if (commaNeeded)
5160          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5161      else
5162          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5163 }
print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj,const std::string & str,bool commaNeeded=true)5164 static void print_VkDescriptorPoolResetFlags(const VkDescriptorPoolResetFlags * obj, const std::string& str, bool commaNeeded=true) {
5165      PRINT_SPACE
5166      if (commaNeeded)
5167          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
5168      else
5169          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
5170 }
5171 
print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj,const std::string & str,bool commaNeeded=true)5172 static void print_VkDescriptorSetLayoutCreateFlags(VkDescriptorSetLayoutCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5173      PRINT_SPACE
5174      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5175      const int max_bits = 64; // We don't expect the number to be larger.
5176      std::bitset<max_bits> b(obj);
5177      _OUT << "\"";
5178      if (obj == 0) _OUT << "0";
5179      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5180          if (b[i] == 1) {
5181              bitCount++;
5182              if (bitCount < b.count())
5183                  _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i] << " | ";
5184              else
5185                  _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i];
5186          }
5187      }
5188      if (commaNeeded)
5189        _OUT << "\"" << ",";
5190      else
5191        _OUT << "\""<< "";
5192      _OUT << std::endl;
5193 }
print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj,const std::string & str,bool commaNeeded=true)5194 static void print_VkDescriptorSetLayoutCreateFlags(const VkDescriptorSetLayoutCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5195      PRINT_SPACE
5196      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5197      const int max_bits = 64; // We don't expect the number to be larger.
5198      std::bitset<max_bits> b(obj);
5199      _OUT << "\"";
5200      if (obj == 0) _OUT << "0";
5201      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5202          if (b[i] == 1) {
5203              bitCount++;
5204              if (bitCount < b.count())
5205                  _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i] << " | ";
5206              else
5207                  _OUT << VkDescriptorSetLayoutCreateFlagBits_map[1ULL<<i];
5208          }
5209      }
5210      if (commaNeeded)
5211        _OUT << "\"" << ",";
5212      else
5213        _OUT << "\""<< "";
5214      _OUT << std::endl;
5215 }
5216 
print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj,const std::string & str,bool commaNeeded=true)5217 static void print_VkAttachmentDescriptionFlags(VkAttachmentDescriptionFlags obj, const std::string& str, bool commaNeeded=true) {
5218      PRINT_SPACE
5219      if (str != "") _OUT << "\"" << str << "\"" << " : ";
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) _OUT << "0";
5224      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5225          if (b[i] == 1) {
5226              bitCount++;
5227              if (bitCount < b.count())
5228                  _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i] << " | ";
5229              else
5230                  _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i];
5231          }
5232      }
5233      if (commaNeeded)
5234        _OUT << "\"" << ",";
5235      else
5236        _OUT << "\""<< "";
5237      _OUT << std::endl;
5238 }
print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj,const std::string & str,bool commaNeeded=true)5239 static void print_VkAttachmentDescriptionFlags(const VkAttachmentDescriptionFlags * obj, const std::string& str, bool commaNeeded=true) {
5240      PRINT_SPACE
5241      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5242      const int max_bits = 64; // We don't expect the number to be larger.
5243      std::bitset<max_bits> b(obj);
5244      _OUT << "\"";
5245      if (obj == 0) _OUT << "0";
5246      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5247          if (b[i] == 1) {
5248              bitCount++;
5249              if (bitCount < b.count())
5250                  _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i] << " | ";
5251              else
5252                  _OUT << VkAttachmentDescriptionFlagBits_map[1ULL<<i];
5253          }
5254      }
5255      if (commaNeeded)
5256        _OUT << "\"" << ",";
5257      else
5258        _OUT << "\""<< "";
5259      _OUT << std::endl;
5260 }
5261 
print_VkDependencyFlags(VkDependencyFlags obj,const std::string & str,bool commaNeeded=true)5262 static void print_VkDependencyFlags(VkDependencyFlags obj, const std::string& str, bool commaNeeded=true) {
5263      PRINT_SPACE
5264      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5265      const int max_bits = 64; // We don't expect the number to be larger.
5266      std::bitset<max_bits> b(obj);
5267      _OUT << "\"";
5268      if (obj == 0) _OUT << "0";
5269      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5270          if (b[i] == 1) {
5271              bitCount++;
5272              if (bitCount < b.count())
5273                  _OUT << VkDependencyFlagBits_map[1ULL<<i] << " | ";
5274              else
5275                  _OUT << VkDependencyFlagBits_map[1ULL<<i];
5276          }
5277      }
5278      if (commaNeeded)
5279        _OUT << "\"" << ",";
5280      else
5281        _OUT << "\""<< "";
5282      _OUT << std::endl;
5283 }
print_VkDependencyFlags(const VkDependencyFlags * obj,const std::string & str,bool commaNeeded=true)5284 static void print_VkDependencyFlags(const VkDependencyFlags * obj, const std::string& str, bool commaNeeded=true) {
5285      PRINT_SPACE
5286      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5287      const int max_bits = 64; // We don't expect the number to be larger.
5288      std::bitset<max_bits> b(obj);
5289      _OUT << "\"";
5290      if (obj == 0) _OUT << "0";
5291      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5292          if (b[i] == 1) {
5293              bitCount++;
5294              if (bitCount < b.count())
5295                  _OUT << VkDependencyFlagBits_map[1ULL<<i] << " | ";
5296              else
5297                  _OUT << VkDependencyFlagBits_map[1ULL<<i];
5298          }
5299      }
5300      if (commaNeeded)
5301        _OUT << "\"" << ",";
5302      else
5303        _OUT << "\""<< "";
5304      _OUT << std::endl;
5305 }
5306 
print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj,const std::string & str,bool commaNeeded=true)5307 static void print_VkFramebufferCreateFlags(VkFramebufferCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5308      PRINT_SPACE
5309      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5310      const int max_bits = 64; // We don't expect the number to be larger.
5311      std::bitset<max_bits> b(obj);
5312      _OUT << "\"";
5313      if (obj == 0) _OUT << "0";
5314      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5315          if (b[i] == 1) {
5316              bitCount++;
5317              if (bitCount < b.count())
5318                  _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i] << " | ";
5319              else
5320                  _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i];
5321          }
5322      }
5323      if (commaNeeded)
5324        _OUT << "\"" << ",";
5325      else
5326        _OUT << "\""<< "";
5327      _OUT << std::endl;
5328 }
print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj,const std::string & str,bool commaNeeded=true)5329 static void print_VkFramebufferCreateFlags(const VkFramebufferCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5330      PRINT_SPACE
5331      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5332      const int max_bits = 64; // We don't expect the number to be larger.
5333      std::bitset<max_bits> b(obj);
5334      _OUT << "\"";
5335      if (obj == 0) _OUT << "0";
5336      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5337          if (b[i] == 1) {
5338              bitCount++;
5339              if (bitCount < b.count())
5340                  _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i] << " | ";
5341              else
5342                  _OUT << VkFramebufferCreateFlagBits_map[1ULL<<i];
5343          }
5344      }
5345      if (commaNeeded)
5346        _OUT << "\"" << ",";
5347      else
5348        _OUT << "\""<< "";
5349      _OUT << std::endl;
5350 }
5351 
print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj,const std::string & str,bool commaNeeded=true)5352 static void print_VkRenderPassCreateFlags(VkRenderPassCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5353      PRINT_SPACE
5354      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5355      const int max_bits = 64; // We don't expect the number to be larger.
5356      std::bitset<max_bits> b(obj);
5357      _OUT << "\"";
5358      if (obj == 0) _OUT << "0";
5359      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5360          if (b[i] == 1) {
5361              bitCount++;
5362              if (bitCount < b.count())
5363                  _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i] << " | ";
5364              else
5365                  _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i];
5366          }
5367      }
5368      if (commaNeeded)
5369        _OUT << "\"" << ",";
5370      else
5371        _OUT << "\""<< "";
5372      _OUT << std::endl;
5373 }
print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj,const std::string & str,bool commaNeeded=true)5374 static void print_VkRenderPassCreateFlags(const VkRenderPassCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5375      PRINT_SPACE
5376      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5377      const int max_bits = 64; // We don't expect the number to be larger.
5378      std::bitset<max_bits> b(obj);
5379      _OUT << "\"";
5380      if (obj == 0) _OUT << "0";
5381      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5382          if (b[i] == 1) {
5383              bitCount++;
5384              if (bitCount < b.count())
5385                  _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i] << " | ";
5386              else
5387                  _OUT << VkRenderPassCreateFlagBits_map[1ULL<<i];
5388          }
5389      }
5390      if (commaNeeded)
5391        _OUT << "\"" << ",";
5392      else
5393        _OUT << "\""<< "";
5394      _OUT << std::endl;
5395 }
5396 
print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj,const std::string & str,bool commaNeeded=true)5397 static void print_VkSubpassDescriptionFlags(VkSubpassDescriptionFlags obj, const std::string& str, bool commaNeeded=true) {
5398      PRINT_SPACE
5399      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5400      const int max_bits = 64; // We don't expect the number to be larger.
5401      std::bitset<max_bits> b(obj);
5402      _OUT << "\"";
5403      if (obj == 0) _OUT << "0";
5404      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5405          if (b[i] == 1) {
5406              bitCount++;
5407              if (bitCount < b.count())
5408                  _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i] << " | ";
5409              else
5410                  _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i];
5411          }
5412      }
5413      if (commaNeeded)
5414        _OUT << "\"" << ",";
5415      else
5416        _OUT << "\""<< "";
5417      _OUT << std::endl;
5418 }
print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj,const std::string & str,bool commaNeeded=true)5419 static void print_VkSubpassDescriptionFlags(const VkSubpassDescriptionFlags * obj, const std::string& str, bool commaNeeded=true) {
5420      PRINT_SPACE
5421      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5422      const int max_bits = 64; // We don't expect the number to be larger.
5423      std::bitset<max_bits> b(obj);
5424      _OUT << "\"";
5425      if (obj == 0) _OUT << "0";
5426      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5427          if (b[i] == 1) {
5428              bitCount++;
5429              if (bitCount < b.count())
5430                  _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i] << " | ";
5431              else
5432                  _OUT << VkSubpassDescriptionFlagBits_map[1ULL<<i];
5433          }
5434      }
5435      if (commaNeeded)
5436        _OUT << "\"" << ",";
5437      else
5438        _OUT << "\""<< "";
5439      _OUT << std::endl;
5440 }
5441 
print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj,const std::string & str,bool commaNeeded=true)5442 static void print_VkCommandPoolCreateFlags(VkCommandPoolCreateFlags obj, const std::string& str, bool commaNeeded=true) {
5443      PRINT_SPACE
5444      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5445      const int max_bits = 64; // We don't expect the number to be larger.
5446      std::bitset<max_bits> b(obj);
5447      _OUT << "\"";
5448      if (obj == 0) _OUT << "0";
5449      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5450          if (b[i] == 1) {
5451              bitCount++;
5452              if (bitCount < b.count())
5453                  _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i] << " | ";
5454              else
5455                  _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i];
5456          }
5457      }
5458      if (commaNeeded)
5459        _OUT << "\"" << ",";
5460      else
5461        _OUT << "\""<< "";
5462      _OUT << std::endl;
5463 }
print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj,const std::string & str,bool commaNeeded=true)5464 static void print_VkCommandPoolCreateFlags(const VkCommandPoolCreateFlags * obj, const std::string& str, bool commaNeeded=true) {
5465      PRINT_SPACE
5466      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5467      const int max_bits = 64; // We don't expect the number to be larger.
5468      std::bitset<max_bits> b(obj);
5469      _OUT << "\"";
5470      if (obj == 0) _OUT << "0";
5471      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5472          if (b[i] == 1) {
5473              bitCount++;
5474              if (bitCount < b.count())
5475                  _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i] << " | ";
5476              else
5477                  _OUT << VkCommandPoolCreateFlagBits_map[1ULL<<i];
5478          }
5479      }
5480      if (commaNeeded)
5481        _OUT << "\"" << ",";
5482      else
5483        _OUT << "\""<< "";
5484      _OUT << std::endl;
5485 }
5486 
print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj,const std::string & str,bool commaNeeded=true)5487 static void print_VkCommandPoolResetFlags(VkCommandPoolResetFlags obj, const std::string& str, bool commaNeeded=true) {
5488      PRINT_SPACE
5489      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5490      const int max_bits = 64; // We don't expect the number to be larger.
5491      std::bitset<max_bits> b(obj);
5492      _OUT << "\"";
5493      if (obj == 0) _OUT << "0";
5494      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5495          if (b[i] == 1) {
5496              bitCount++;
5497              if (bitCount < b.count())
5498                  _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i] << " | ";
5499              else
5500                  _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i];
5501          }
5502      }
5503      if (commaNeeded)
5504        _OUT << "\"" << ",";
5505      else
5506        _OUT << "\""<< "";
5507      _OUT << std::endl;
5508 }
print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj,const std::string & str,bool commaNeeded=true)5509 static void print_VkCommandPoolResetFlags(const VkCommandPoolResetFlags * obj, const std::string& str, bool commaNeeded=true) {
5510      PRINT_SPACE
5511      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5512      const int max_bits = 64; // We don't expect the number to be larger.
5513      std::bitset<max_bits> b(obj);
5514      _OUT << "\"";
5515      if (obj == 0) _OUT << "0";
5516      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5517          if (b[i] == 1) {
5518              bitCount++;
5519              if (bitCount < b.count())
5520                  _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i] << " | ";
5521              else
5522                  _OUT << VkCommandPoolResetFlagBits_map[1ULL<<i];
5523          }
5524      }
5525      if (commaNeeded)
5526        _OUT << "\"" << ",";
5527      else
5528        _OUT << "\""<< "";
5529      _OUT << std::endl;
5530 }
5531 
print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj,const std::string & str,bool commaNeeded=true)5532 static void print_VkCommandBufferUsageFlags(VkCommandBufferUsageFlags obj, const std::string& str, bool commaNeeded=true) {
5533      PRINT_SPACE
5534      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5535      const int max_bits = 64; // We don't expect the number to be larger.
5536      std::bitset<max_bits> b(obj);
5537      _OUT << "\"";
5538      if (obj == 0) _OUT << "0";
5539      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5540          if (b[i] == 1) {
5541              bitCount++;
5542              if (bitCount < b.count())
5543                  _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i] << " | ";
5544              else
5545                  _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i];
5546          }
5547      }
5548      if (commaNeeded)
5549        _OUT << "\"" << ",";
5550      else
5551        _OUT << "\""<< "";
5552      _OUT << std::endl;
5553 }
print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj,const std::string & str,bool commaNeeded=true)5554 static void print_VkCommandBufferUsageFlags(const VkCommandBufferUsageFlags * obj, const std::string& str, bool commaNeeded=true) {
5555      PRINT_SPACE
5556      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5557      const int max_bits = 64; // We don't expect the number to be larger.
5558      std::bitset<max_bits> b(obj);
5559      _OUT << "\"";
5560      if (obj == 0) _OUT << "0";
5561      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5562          if (b[i] == 1) {
5563              bitCount++;
5564              if (bitCount < b.count())
5565                  _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i] << " | ";
5566              else
5567                  _OUT << VkCommandBufferUsageFlagBits_map[1ULL<<i];
5568          }
5569      }
5570      if (commaNeeded)
5571        _OUT << "\"" << ",";
5572      else
5573        _OUT << "\""<< "";
5574      _OUT << std::endl;
5575 }
5576 
print_VkQueryControlFlags(VkQueryControlFlags obj,const std::string & str,bool commaNeeded=true)5577 static void print_VkQueryControlFlags(VkQueryControlFlags obj, const std::string& str, bool commaNeeded=true) {
5578      PRINT_SPACE
5579      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5580      const int max_bits = 64; // We don't expect the number to be larger.
5581      std::bitset<max_bits> b(obj);
5582      _OUT << "\"";
5583      if (obj == 0) _OUT << "0";
5584      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5585          if (b[i] == 1) {
5586              bitCount++;
5587              if (bitCount < b.count())
5588                  _OUT << VkQueryControlFlagBits_map[1ULL<<i] << " | ";
5589              else
5590                  _OUT << VkQueryControlFlagBits_map[1ULL<<i];
5591          }
5592      }
5593      if (commaNeeded)
5594        _OUT << "\"" << ",";
5595      else
5596        _OUT << "\""<< "";
5597      _OUT << std::endl;
5598 }
print_VkQueryControlFlags(const VkQueryControlFlags * obj,const std::string & str,bool commaNeeded=true)5599 static void print_VkQueryControlFlags(const VkQueryControlFlags * obj, const std::string& str, bool commaNeeded=true) {
5600      PRINT_SPACE
5601      if (str != "") _OUT << "\"" << str << "\"" << " : ";
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) _OUT << "0";
5606      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5607          if (b[i] == 1) {
5608              bitCount++;
5609              if (bitCount < b.count())
5610                  _OUT << VkQueryControlFlagBits_map[1ULL<<i] << " | ";
5611              else
5612                  _OUT << VkQueryControlFlagBits_map[1ULL<<i];
5613          }
5614      }
5615      if (commaNeeded)
5616        _OUT << "\"" << ",";
5617      else
5618        _OUT << "\""<< "";
5619      _OUT << std::endl;
5620 }
5621 
print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj,const std::string & str,bool commaNeeded=true)5622 static void print_VkCommandBufferResetFlags(VkCommandBufferResetFlags obj, const std::string& str, bool commaNeeded=true) {
5623      PRINT_SPACE
5624      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5625      const int max_bits = 64; // We don't expect the number to be larger.
5626      std::bitset<max_bits> b(obj);
5627      _OUT << "\"";
5628      if (obj == 0) _OUT << "0";
5629      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5630          if (b[i] == 1) {
5631              bitCount++;
5632              if (bitCount < b.count())
5633                  _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i] << " | ";
5634              else
5635                  _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i];
5636          }
5637      }
5638      if (commaNeeded)
5639        _OUT << "\"" << ",";
5640      else
5641        _OUT << "\""<< "";
5642      _OUT << std::endl;
5643 }
print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj,const std::string & str,bool commaNeeded=true)5644 static void print_VkCommandBufferResetFlags(const VkCommandBufferResetFlags * obj, const std::string& str, bool commaNeeded=true) {
5645      PRINT_SPACE
5646      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5647      const int max_bits = 64; // We don't expect the number to be larger.
5648      std::bitset<max_bits> b(obj);
5649      _OUT << "\"";
5650      if (obj == 0) _OUT << "0";
5651      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5652          if (b[i] == 1) {
5653              bitCount++;
5654              if (bitCount < b.count())
5655                  _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i] << " | ";
5656              else
5657                  _OUT << VkCommandBufferResetFlagBits_map[1ULL<<i];
5658          }
5659      }
5660      if (commaNeeded)
5661        _OUT << "\"" << ",";
5662      else
5663        _OUT << "\""<< "";
5664      _OUT << std::endl;
5665 }
5666 
print_VkStencilFaceFlags(VkStencilFaceFlags obj,const std::string & str,bool commaNeeded=true)5667 static void print_VkStencilFaceFlags(VkStencilFaceFlags obj, const std::string& str, bool commaNeeded=true) {
5668      PRINT_SPACE
5669      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5670      const int max_bits = 64; // We don't expect the number to be larger.
5671      std::bitset<max_bits> b(obj);
5672      _OUT << "\"";
5673      if (obj == 0) _OUT << "0";
5674      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5675          if (b[i] == 1) {
5676              bitCount++;
5677              if (bitCount < b.count())
5678                  _OUT << VkStencilFaceFlagBits_map[1ULL<<i] << " | ";
5679              else
5680                  _OUT << VkStencilFaceFlagBits_map[1ULL<<i];
5681          }
5682      }
5683      if (commaNeeded)
5684        _OUT << "\"" << ",";
5685      else
5686        _OUT << "\""<< "";
5687      _OUT << std::endl;
5688 }
print_VkStencilFaceFlags(const VkStencilFaceFlags * obj,const std::string & str,bool commaNeeded=true)5689 static void print_VkStencilFaceFlags(const VkStencilFaceFlags * obj, const std::string& str, bool commaNeeded=true) {
5690      PRINT_SPACE
5691      if (str != "") _OUT << "\"" << str << "\"" << " : ";
5692      const int max_bits = 64; // We don't expect the number to be larger.
5693      std::bitset<max_bits> b(obj);
5694      _OUT << "\"";
5695      if (obj == 0) _OUT << "0";
5696      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
5697          if (b[i] == 1) {
5698              bitCount++;
5699              if (bitCount < b.count())
5700                  _OUT << VkStencilFaceFlagBits_map[1ULL<<i] << " | ";
5701              else
5702                  _OUT << VkStencilFaceFlagBits_map[1ULL<<i];
5703          }
5704      }
5705      if (commaNeeded)
5706        _OUT << "\"" << ",";
5707      else
5708        _OUT << "\""<< "";
5709      _OUT << std::endl;
5710 }
5711 
print_VkExtent2D(VkExtent2D obj,const std::string & s,bool commaNeeded=true)5712 static void print_VkExtent2D(VkExtent2D obj, const std::string& s, bool commaNeeded=true) {
5713      PRINT_SPACE
5714      _OUT << "{" << std::endl;
5715      INDENT(4);
5716 
5717      print_uint32_t(obj.width, "width", 1);
5718 
5719      print_uint32_t(obj.height, "height", 0);
5720 
5721      INDENT(-4);
5722      PRINT_SPACE
5723      if (commaNeeded)
5724          _OUT << "}," << std::endl;
5725      else
5726          _OUT << "}" << std::endl;
5727 }
print_VkExtent2D(const VkExtent2D * obj,const std::string & s,bool commaNeeded=true)5728 static void print_VkExtent2D(const VkExtent2D * obj, const std::string& s, bool commaNeeded=true) {
5729      PRINT_SPACE
5730      _OUT << "{" << std::endl;
5731      INDENT(4);
5732 
5733      print_uint32_t(obj->width, "width", 1);
5734 
5735      print_uint32_t(obj->height, "height", 0);
5736 
5737      INDENT(-4);
5738      PRINT_SPACE
5739      if (commaNeeded)
5740          _OUT << "}," << std::endl;
5741      else
5742          _OUT << "}" << std::endl;
5743 }
5744 
print_VkExtent3D(VkExtent3D obj,const std::string & s,bool commaNeeded=true)5745 static void print_VkExtent3D(VkExtent3D obj, const std::string& s, bool commaNeeded=true) {
5746      PRINT_SPACE
5747      _OUT << "{" << std::endl;
5748      INDENT(4);
5749 
5750      print_uint32_t(obj.width, "width", 1);
5751 
5752      print_uint32_t(obj.height, "height", 1);
5753 
5754      print_uint32_t(obj.depth, "depth", 0);
5755 
5756      INDENT(-4);
5757      PRINT_SPACE
5758      if (commaNeeded)
5759          _OUT << "}," << std::endl;
5760      else
5761          _OUT << "}" << std::endl;
5762 }
print_VkExtent3D(const VkExtent3D * obj,const std::string & s,bool commaNeeded=true)5763 static void print_VkExtent3D(const VkExtent3D * obj, const std::string& s, bool commaNeeded=true) {
5764      PRINT_SPACE
5765      _OUT << "{" << std::endl;
5766      INDENT(4);
5767 
5768      print_uint32_t(obj->width, "width", 1);
5769 
5770      print_uint32_t(obj->height, "height", 1);
5771 
5772      print_uint32_t(obj->depth, "depth", 0);
5773 
5774      INDENT(-4);
5775      PRINT_SPACE
5776      if (commaNeeded)
5777          _OUT << "}," << std::endl;
5778      else
5779          _OUT << "}" << std::endl;
5780 }
5781 
print_VkOffset2D(VkOffset2D obj,const std::string & s,bool commaNeeded=true)5782 static void print_VkOffset2D(VkOffset2D obj, const std::string& s, bool commaNeeded=true) {
5783      PRINT_SPACE
5784      _OUT << "{" << std::endl;
5785      INDENT(4);
5786 
5787      print_int32_t(obj.x, "x", 1);
5788 
5789      print_int32_t(obj.y, "y", 0);
5790 
5791      INDENT(-4);
5792      PRINT_SPACE
5793      if (commaNeeded)
5794          _OUT << "}," << std::endl;
5795      else
5796          _OUT << "}" << std::endl;
5797 }
print_VkOffset2D(const VkOffset2D * obj,const std::string & s,bool commaNeeded=true)5798 static void print_VkOffset2D(const VkOffset2D * obj, const std::string& s, bool commaNeeded=true) {
5799      PRINT_SPACE
5800      _OUT << "{" << std::endl;
5801      INDENT(4);
5802 
5803      print_int32_t(obj->x, "x", 1);
5804 
5805      print_int32_t(obj->y, "y", 0);
5806 
5807      INDENT(-4);
5808      PRINT_SPACE
5809      if (commaNeeded)
5810          _OUT << "}," << std::endl;
5811      else
5812          _OUT << "}" << std::endl;
5813 }
5814 
print_VkOffset3D(VkOffset3D obj,const std::string & s,bool commaNeeded=true)5815 static void print_VkOffset3D(VkOffset3D obj, const std::string& s, bool commaNeeded=true) {
5816      PRINT_SPACE
5817      _OUT << "{" << std::endl;
5818      INDENT(4);
5819 
5820      print_int32_t(obj.x, "x", 1);
5821 
5822      print_int32_t(obj.y, "y", 1);
5823 
5824      print_int32_t(obj.z, "z", 0);
5825 
5826      INDENT(-4);
5827      PRINT_SPACE
5828      if (commaNeeded)
5829          _OUT << "}," << std::endl;
5830      else
5831          _OUT << "}" << std::endl;
5832 }
print_VkOffset3D(const VkOffset3D * obj,const std::string & s,bool commaNeeded=true)5833 static void print_VkOffset3D(const VkOffset3D * obj, const std::string& s, bool commaNeeded=true) {
5834      PRINT_SPACE
5835      _OUT << "{" << std::endl;
5836      INDENT(4);
5837 
5838      print_int32_t(obj->x, "x", 1);
5839 
5840      print_int32_t(obj->y, "y", 1);
5841 
5842      print_int32_t(obj->z, "z", 0);
5843 
5844      INDENT(-4);
5845      PRINT_SPACE
5846      if (commaNeeded)
5847          _OUT << "}," << std::endl;
5848      else
5849          _OUT << "}" << std::endl;
5850 }
5851 
print_VkRect2D(VkRect2D obj,const std::string & s,bool commaNeeded=true)5852 static void print_VkRect2D(VkRect2D obj, const std::string& s, bool commaNeeded=true) {
5853      PRINT_SPACE
5854      _OUT << "{" << std::endl;
5855      INDENT(4);
5856 
5857      PRINT_SPACE
5858      _OUT << "\"offset\": " << std::endl;
5859      {
5860            print_VkOffset2D(obj.offset, "offset", 1);
5861      }
5862 
5863      PRINT_SPACE
5864      _OUT << "\"extent\": " << std::endl;
5865      {
5866            print_VkExtent2D(obj.extent, "extent", 0);
5867      }
5868 
5869      INDENT(-4);
5870      PRINT_SPACE
5871      if (commaNeeded)
5872          _OUT << "}," << std::endl;
5873      else
5874          _OUT << "}" << std::endl;
5875 }
print_VkRect2D(const VkRect2D * obj,const std::string & s,bool commaNeeded=true)5876 static void print_VkRect2D(const VkRect2D * obj, const std::string& s, bool commaNeeded=true) {
5877      PRINT_SPACE
5878      _OUT << "{" << std::endl;
5879      INDENT(4);
5880 
5881      PRINT_SPACE
5882      _OUT << "\"offset\": " << std::endl;
5883      {
5884            print_VkOffset2D(obj->offset, "offset", 1);
5885      }
5886 
5887      PRINT_SPACE
5888      _OUT << "\"extent\": " << std::endl;
5889      {
5890            print_VkExtent2D(obj->extent, "extent", 0);
5891      }
5892 
5893      INDENT(-4);
5894      PRINT_SPACE
5895      if (commaNeeded)
5896          _OUT << "}," << std::endl;
5897      else
5898          _OUT << "}" << std::endl;
5899 }
5900 
print_VkBaseInStructure(VkBaseInStructure obj,const std::string & s,bool commaNeeded=true)5901 static void print_VkBaseInStructure(VkBaseInStructure obj, const std::string& s, bool commaNeeded=true) {
5902      PRINT_SPACE
5903      _OUT << "{" << std::endl;
5904      INDENT(4);
5905 
5906      print_VkStructureType(obj.sType, "sType", 1);
5907 
5908       if (obj.pNext) {
5909          dumpPNextChain(obj.pNext);
5910       } else {
5911          PRINT_SPACE
5912          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5913      }
5914 
5915      INDENT(-4);
5916      PRINT_SPACE
5917      if (commaNeeded)
5918          _OUT << "}," << std::endl;
5919      else
5920          _OUT << "}" << std::endl;
5921 }
print_VkBaseInStructure(const VkBaseInStructure * obj,const std::string & s,bool commaNeeded=true)5922 static void print_VkBaseInStructure(const VkBaseInStructure * obj, const std::string& s, bool commaNeeded=true) {
5923      PRINT_SPACE
5924      _OUT << "{" << std::endl;
5925      INDENT(4);
5926 
5927      print_VkStructureType(obj->sType, "sType", 1);
5928 
5929       if (obj->pNext) {
5930          dumpPNextChain(obj->pNext);
5931       } else {
5932          PRINT_SPACE
5933          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5934      }
5935 
5936      INDENT(-4);
5937      PRINT_SPACE
5938      if (commaNeeded)
5939          _OUT << "}," << std::endl;
5940      else
5941          _OUT << "}" << std::endl;
5942 }
5943 
print_VkBaseOutStructure(VkBaseOutStructure obj,const std::string & s,bool commaNeeded=true)5944 static void print_VkBaseOutStructure(VkBaseOutStructure obj, const std::string& s, bool commaNeeded=true) {
5945      PRINT_SPACE
5946      _OUT << "{" << std::endl;
5947      INDENT(4);
5948 
5949      print_VkStructureType(obj.sType, "sType", 1);
5950 
5951       if (obj.pNext) {
5952          dumpPNextChain(obj.pNext);
5953       } else {
5954          PRINT_SPACE
5955          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5956      }
5957 
5958      INDENT(-4);
5959      PRINT_SPACE
5960      if (commaNeeded)
5961          _OUT << "}," << std::endl;
5962      else
5963          _OUT << "}" << std::endl;
5964 }
print_VkBaseOutStructure(const VkBaseOutStructure * obj,const std::string & s,bool commaNeeded=true)5965 static void print_VkBaseOutStructure(const VkBaseOutStructure * obj, const std::string& s, bool commaNeeded=true) {
5966      PRINT_SPACE
5967      _OUT << "{" << std::endl;
5968      INDENT(4);
5969 
5970      print_VkStructureType(obj->sType, "sType", 1);
5971 
5972       if (obj->pNext) {
5973          dumpPNextChain(obj->pNext);
5974       } else {
5975          PRINT_SPACE
5976          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5977      }
5978 
5979      INDENT(-4);
5980      PRINT_SPACE
5981      if (commaNeeded)
5982          _OUT << "}," << std::endl;
5983      else
5984          _OUT << "}" << std::endl;
5985 }
5986 
print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj,const std::string & s,bool commaNeeded=true)5987 static void print_VkBufferMemoryBarrier(VkBufferMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
5988      PRINT_SPACE
5989      _OUT << "{" << std::endl;
5990      INDENT(4);
5991 
5992      print_VkStructureType(obj.sType, "sType", 1);
5993 
5994       if (obj.pNext) {
5995          dumpPNextChain(obj.pNext);
5996       } else {
5997          PRINT_SPACE
5998          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
5999      }
6000 
6001      print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
6002 
6003      print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
6004 
6005      print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6006 
6007      print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6008 
6009      // CTS : required value
6010      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
6011 
6012      print_VkDeviceSize(obj.offset, "offset", 1);
6013 
6014      print_VkDeviceSize(obj.size, "size", 0);
6015 
6016      INDENT(-4);
6017      PRINT_SPACE
6018      if (commaNeeded)
6019          _OUT << "}," << std::endl;
6020      else
6021          _OUT << "}" << std::endl;
6022 }
print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)6023 static void print_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
6024      PRINT_SPACE
6025      _OUT << "{" << std::endl;
6026      INDENT(4);
6027 
6028      print_VkStructureType(obj->sType, "sType", 1);
6029 
6030       if (obj->pNext) {
6031          dumpPNextChain(obj->pNext);
6032       } else {
6033          PRINT_SPACE
6034          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6035      }
6036 
6037      print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
6038 
6039      print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
6040 
6041      print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6042 
6043      print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6044 
6045      // CTS : required value
6046      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
6047 
6048      print_VkDeviceSize(obj->offset, "offset", 1);
6049 
6050      print_VkDeviceSize(obj->size, "size", 0);
6051 
6052      INDENT(-4);
6053      PRINT_SPACE
6054      if (commaNeeded)
6055          _OUT << "}," << std::endl;
6056      else
6057          _OUT << "}" << std::endl;
6058 }
6059 
print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj,const std::string & s,bool commaNeeded=true)6060 static void print_VkDispatchIndirectCommand(VkDispatchIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
6061      PRINT_SPACE
6062      _OUT << "{" << std::endl;
6063      INDENT(4);
6064 
6065      print_uint32_t(obj.x, "x", 1);
6066 
6067      print_uint32_t(obj.y, "y", 1);
6068 
6069      print_uint32_t(obj.z, "z", 0);
6070 
6071      INDENT(-4);
6072      PRINT_SPACE
6073      if (commaNeeded)
6074          _OUT << "}," << std::endl;
6075      else
6076          _OUT << "}" << std::endl;
6077 }
print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj,const std::string & s,bool commaNeeded=true)6078 static void print_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
6079      PRINT_SPACE
6080      _OUT << "{" << std::endl;
6081      INDENT(4);
6082 
6083      print_uint32_t(obj->x, "x", 1);
6084 
6085      print_uint32_t(obj->y, "y", 1);
6086 
6087      print_uint32_t(obj->z, "z", 0);
6088 
6089      INDENT(-4);
6090      PRINT_SPACE
6091      if (commaNeeded)
6092          _OUT << "}," << std::endl;
6093      else
6094          _OUT << "}" << std::endl;
6095 }
6096 
print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj,const std::string & s,bool commaNeeded=true)6097 static void print_VkDrawIndexedIndirectCommand(VkDrawIndexedIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
6098      PRINT_SPACE
6099      _OUT << "{" << std::endl;
6100      INDENT(4);
6101 
6102      print_uint32_t(obj.indexCount, "indexCount", 1);
6103 
6104      print_uint32_t(obj.instanceCount, "instanceCount", 1);
6105 
6106      print_uint32_t(obj.firstIndex, "firstIndex", 1);
6107 
6108      print_int32_t(obj.vertexOffset, "vertexOffset", 1);
6109 
6110      print_uint32_t(obj.firstInstance, "firstInstance", 0);
6111 
6112      INDENT(-4);
6113      PRINT_SPACE
6114      if (commaNeeded)
6115          _OUT << "}," << std::endl;
6116      else
6117          _OUT << "}" << std::endl;
6118 }
print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj,const std::string & s,bool commaNeeded=true)6119 static void print_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
6120      PRINT_SPACE
6121      _OUT << "{" << std::endl;
6122      INDENT(4);
6123 
6124      print_uint32_t(obj->indexCount, "indexCount", 1);
6125 
6126      print_uint32_t(obj->instanceCount, "instanceCount", 1);
6127 
6128      print_uint32_t(obj->firstIndex, "firstIndex", 1);
6129 
6130      print_int32_t(obj->vertexOffset, "vertexOffset", 1);
6131 
6132      print_uint32_t(obj->firstInstance, "firstInstance", 0);
6133 
6134      INDENT(-4);
6135      PRINT_SPACE
6136      if (commaNeeded)
6137          _OUT << "}," << std::endl;
6138      else
6139          _OUT << "}" << std::endl;
6140 }
6141 
print_VkDrawIndirectCommand(VkDrawIndirectCommand obj,const std::string & s,bool commaNeeded=true)6142 static void print_VkDrawIndirectCommand(VkDrawIndirectCommand obj, const std::string& s, bool commaNeeded=true) {
6143      PRINT_SPACE
6144      _OUT << "{" << std::endl;
6145      INDENT(4);
6146 
6147      print_uint32_t(obj.vertexCount, "vertexCount", 1);
6148 
6149      print_uint32_t(obj.instanceCount, "instanceCount", 1);
6150 
6151      print_uint32_t(obj.firstVertex, "firstVertex", 1);
6152 
6153      print_uint32_t(obj.firstInstance, "firstInstance", 0);
6154 
6155      INDENT(-4);
6156      PRINT_SPACE
6157      if (commaNeeded)
6158          _OUT << "}," << std::endl;
6159      else
6160          _OUT << "}" << std::endl;
6161 }
print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj,const std::string & s,bool commaNeeded=true)6162 static void print_VkDrawIndirectCommand(const VkDrawIndirectCommand * obj, const std::string& s, bool commaNeeded=true) {
6163      PRINT_SPACE
6164      _OUT << "{" << std::endl;
6165      INDENT(4);
6166 
6167      print_uint32_t(obj->vertexCount, "vertexCount", 1);
6168 
6169      print_uint32_t(obj->instanceCount, "instanceCount", 1);
6170 
6171      print_uint32_t(obj->firstVertex, "firstVertex", 1);
6172 
6173      print_uint32_t(obj->firstInstance, "firstInstance", 0);
6174 
6175      INDENT(-4);
6176      PRINT_SPACE
6177      if (commaNeeded)
6178          _OUT << "}," << std::endl;
6179      else
6180          _OUT << "}" << std::endl;
6181 }
6182 
print_VkImageSubresourceRange(VkImageSubresourceRange obj,const std::string & s,bool commaNeeded=true)6183 static void print_VkImageSubresourceRange(VkImageSubresourceRange obj, const std::string& s, bool commaNeeded=true) {
6184      PRINT_SPACE
6185      _OUT << "{" << std::endl;
6186      INDENT(4);
6187 
6188      print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
6189 
6190      print_uint32_t(obj.baseMipLevel, "baseMipLevel", 1);
6191 
6192      print_uint32_t(obj.levelCount, "levelCount", 1);
6193 
6194      print_uint32_t(obj.baseArrayLayer, "baseArrayLayer", 1);
6195 
6196      print_uint32_t(obj.layerCount, "layerCount", 0);
6197 
6198      INDENT(-4);
6199      PRINT_SPACE
6200      if (commaNeeded)
6201          _OUT << "}," << std::endl;
6202      else
6203          _OUT << "}" << std::endl;
6204 }
print_VkImageSubresourceRange(const VkImageSubresourceRange * obj,const std::string & s,bool commaNeeded=true)6205 static void print_VkImageSubresourceRange(const VkImageSubresourceRange * obj, const std::string& s, bool commaNeeded=true) {
6206      PRINT_SPACE
6207      _OUT << "{" << std::endl;
6208      INDENT(4);
6209 
6210      print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
6211 
6212      print_uint32_t(obj->baseMipLevel, "baseMipLevel", 1);
6213 
6214      print_uint32_t(obj->levelCount, "levelCount", 1);
6215 
6216      print_uint32_t(obj->baseArrayLayer, "baseArrayLayer", 1);
6217 
6218      print_uint32_t(obj->layerCount, "layerCount", 0);
6219 
6220      INDENT(-4);
6221      PRINT_SPACE
6222      if (commaNeeded)
6223          _OUT << "}," << std::endl;
6224      else
6225          _OUT << "}" << std::endl;
6226 }
6227 
print_VkImageMemoryBarrier(VkImageMemoryBarrier obj,const std::string & s,bool commaNeeded=true)6228 static void print_VkImageMemoryBarrier(VkImageMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
6229      PRINT_SPACE
6230      _OUT << "{" << std::endl;
6231      INDENT(4);
6232 
6233      print_VkStructureType(obj.sType, "sType", 1);
6234 
6235       if (obj.pNext) {
6236          dumpPNextChain(obj.pNext);
6237       } else {
6238          PRINT_SPACE
6239          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6240      }
6241 
6242      print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
6243 
6244      print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
6245 
6246      print_VkImageLayout(obj.oldLayout, "oldLayout", 1);
6247 
6248      print_VkImageLayout(obj.newLayout, "newLayout", 1);
6249 
6250      print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6251 
6252      print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6253 
6254      // CTS : required value
6255      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
6256 
6257      PRINT_SPACE
6258      _OUT << "\"subresourceRange\": " << std::endl;
6259      {
6260            print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
6261      }
6262 
6263      INDENT(-4);
6264      PRINT_SPACE
6265      if (commaNeeded)
6266          _OUT << "}," << std::endl;
6267      else
6268          _OUT << "}" << std::endl;
6269 }
print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)6270 static void print_VkImageMemoryBarrier(const VkImageMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
6271      PRINT_SPACE
6272      _OUT << "{" << std::endl;
6273      INDENT(4);
6274 
6275      print_VkStructureType(obj->sType, "sType", 1);
6276 
6277       if (obj->pNext) {
6278          dumpPNextChain(obj->pNext);
6279       } else {
6280          PRINT_SPACE
6281          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6282      }
6283 
6284      print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
6285 
6286      print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
6287 
6288      print_VkImageLayout(obj->oldLayout, "oldLayout", 1);
6289 
6290      print_VkImageLayout(obj->newLayout, "newLayout", 1);
6291 
6292      print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
6293 
6294      print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
6295 
6296      // CTS : required value
6297      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
6298 
6299      PRINT_SPACE
6300      _OUT << "\"subresourceRange\": " << std::endl;
6301      {
6302            print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
6303      }
6304 
6305      INDENT(-4);
6306      PRINT_SPACE
6307      if (commaNeeded)
6308          _OUT << "}," << std::endl;
6309      else
6310          _OUT << "}" << std::endl;
6311 }
6312 
print_VkMemoryBarrier(VkMemoryBarrier obj,const std::string & s,bool commaNeeded=true)6313 static void print_VkMemoryBarrier(VkMemoryBarrier obj, const std::string& s, bool commaNeeded=true) {
6314      PRINT_SPACE
6315      _OUT << "{" << std::endl;
6316      INDENT(4);
6317 
6318      print_VkStructureType(obj.sType, "sType", 1);
6319 
6320       if (obj.pNext) {
6321          dumpPNextChain(obj.pNext);
6322       } else {
6323          PRINT_SPACE
6324          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6325      }
6326 
6327      print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
6328 
6329      print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 0);
6330 
6331      INDENT(-4);
6332      PRINT_SPACE
6333      if (commaNeeded)
6334          _OUT << "}," << std::endl;
6335      else
6336          _OUT << "}" << std::endl;
6337 }
print_VkMemoryBarrier(const VkMemoryBarrier * obj,const std::string & s,bool commaNeeded=true)6338 static void print_VkMemoryBarrier(const VkMemoryBarrier * obj, const std::string& s, bool commaNeeded=true) {
6339      PRINT_SPACE
6340      _OUT << "{" << std::endl;
6341      INDENT(4);
6342 
6343      print_VkStructureType(obj->sType, "sType", 1);
6344 
6345       if (obj->pNext) {
6346          dumpPNextChain(obj->pNext);
6347       } else {
6348          PRINT_SPACE
6349          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6350      }
6351 
6352      print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
6353 
6354      print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 0);
6355 
6356      INDENT(-4);
6357      PRINT_SPACE
6358      if (commaNeeded)
6359          _OUT << "}," << std::endl;
6360      else
6361          _OUT << "}" << std::endl;
6362 }
6363 
print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj,const std::string & s,bool commaNeeded=true)6364 static void print_VkPipelineCacheHeaderVersionOne(VkPipelineCacheHeaderVersionOne obj, const std::string& s, bool commaNeeded=true) {
6365      PRINT_SPACE
6366      _OUT << "{" << std::endl;
6367      INDENT(4);
6368 
6369      print_uint32_t(obj.headerSize, "headerSize", 1);
6370 
6371      print_VkPipelineCacheHeaderVersion(obj.headerVersion, "headerVersion", 1);
6372 
6373      print_uint32_t(obj.vendorID, "vendorID", 1);
6374 
6375      print_uint32_t(obj.deviceID, "deviceID", 1);
6376 
6377      PRINT_SPACE
6378      _OUT << "\"pipelineCacheUUID\":" << std::endl;
6379      PRINT_SPACE
6380        _OUT << "[" << std::endl;
6381        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
6382            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
6383            print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
6384        }
6385        PRINT_SPACE
6386        _OUT << "]" << "" << std::endl;
6387 
6388      INDENT(-4);
6389      PRINT_SPACE
6390      if (commaNeeded)
6391          _OUT << "}," << std::endl;
6392      else
6393          _OUT << "}" << std::endl;
6394 }
print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj,const std::string & s,bool commaNeeded=true)6395 static void print_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * obj, const std::string& s, bool commaNeeded=true) {
6396      PRINT_SPACE
6397      _OUT << "{" << std::endl;
6398      INDENT(4);
6399 
6400      print_uint32_t(obj->headerSize, "headerSize", 1);
6401 
6402      print_VkPipelineCacheHeaderVersion(obj->headerVersion, "headerVersion", 1);
6403 
6404      print_uint32_t(obj->vendorID, "vendorID", 1);
6405 
6406      print_uint32_t(obj->deviceID, "deviceID", 1);
6407 
6408      PRINT_SPACE
6409      _OUT << "\"pipelineCacheUUID\":" << std::endl;
6410      PRINT_SPACE
6411        _OUT << "[" << std::endl;
6412        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
6413            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
6414            print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
6415        }
6416        PRINT_SPACE
6417        _OUT << "]" << "" << std::endl;
6418 
6419      INDENT(-4);
6420      PRINT_SPACE
6421      if (commaNeeded)
6422          _OUT << "}," << std::endl;
6423      else
6424          _OUT << "}" << std::endl;
6425 }
6426 
print_VkAllocationCallbacks(VkAllocationCallbacks obj,const std::string & s,bool commaNeeded=true)6427 static void print_VkAllocationCallbacks(VkAllocationCallbacks obj, const std::string& s, bool commaNeeded=true) {
6428      PRINT_SPACE
6429      _OUT << "{" << std::endl;
6430      INDENT(4);
6431 
6432      /** Note: Ignoring void* data. **/
6433 
6434      /** Note: Ignoring function pointer (PFN_vkAllocationFunction). **/
6435 
6436      /** Note: Ignoring function pointer (PFN_vkReallocationFunction). **/
6437 
6438      /** Note: Ignoring function pointer (PFN_vkFreeFunction). **/
6439 
6440      /** Note: Ignoring function pointer (PFN_vkInternalAllocationNotification). **/
6441 
6442      /** Note: Ignoring function pointer (PFN_vkInternalFreeNotification). **/
6443 
6444      INDENT(-4);
6445      PRINT_SPACE
6446      if (commaNeeded)
6447          _OUT << "}," << std::endl;
6448      else
6449          _OUT << "}" << std::endl;
6450 }
print_VkAllocationCallbacks(const VkAllocationCallbacks * obj,const std::string & s,bool commaNeeded=true)6451 static void print_VkAllocationCallbacks(const VkAllocationCallbacks * obj, const std::string& s, bool commaNeeded=true) {
6452      PRINT_SPACE
6453      _OUT << "{" << std::endl;
6454      INDENT(4);
6455 
6456      /** Note: Ignoring void* data. **/
6457 
6458      /** Note: Ignoring function pointer (PFN_vkAllocationFunction). **/
6459 
6460      /** Note: Ignoring function pointer (PFN_vkReallocationFunction). **/
6461 
6462      /** Note: Ignoring function pointer (PFN_vkFreeFunction). **/
6463 
6464      /** Note: Ignoring function pointer (PFN_vkInternalAllocationNotification). **/
6465 
6466      /** Note: Ignoring function pointer (PFN_vkInternalFreeNotification). **/
6467 
6468      INDENT(-4);
6469      PRINT_SPACE
6470      if (commaNeeded)
6471          _OUT << "}," << std::endl;
6472      else
6473          _OUT << "}" << std::endl;
6474 }
6475 
print_VkApplicationInfo(VkApplicationInfo obj,const std::string & s,bool commaNeeded=true)6476 static void print_VkApplicationInfo(VkApplicationInfo obj, const std::string& s, bool commaNeeded=true) {
6477      PRINT_SPACE
6478      _OUT << "{" << std::endl;
6479      INDENT(4);
6480 
6481      print_VkStructureType(obj.sType, "sType", 1);
6482 
6483       if (obj.pNext) {
6484          dumpPNextChain(obj.pNext);
6485       } else {
6486          PRINT_SPACE
6487          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6488      }
6489 
6490      print_char(obj.pApplicationName, "pApplicationName", 1);
6491 
6492      print_uint32_t(obj.applicationVersion, "applicationVersion", 1);
6493 
6494      print_char(obj.pEngineName, "pEngineName", 1);
6495 
6496      print_uint32_t(obj.engineVersion, "engineVersion", 1);
6497 
6498      print_uint32_t(obj.apiVersion, "apiVersion", 0);
6499 
6500      INDENT(-4);
6501      PRINT_SPACE
6502      if (commaNeeded)
6503          _OUT << "}," << std::endl;
6504      else
6505          _OUT << "}" << std::endl;
6506 }
print_VkApplicationInfo(const VkApplicationInfo * obj,const std::string & s,bool commaNeeded=true)6507 static void print_VkApplicationInfo(const VkApplicationInfo * obj, const std::string& s, bool commaNeeded=true) {
6508      PRINT_SPACE
6509      _OUT << "{" << std::endl;
6510      INDENT(4);
6511 
6512      print_VkStructureType(obj->sType, "sType", 1);
6513 
6514       if (obj->pNext) {
6515          dumpPNextChain(obj->pNext);
6516       } else {
6517          PRINT_SPACE
6518          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6519      }
6520 
6521      print_char(obj->pApplicationName, "pApplicationName", 1);
6522 
6523      print_uint32_t(obj->applicationVersion, "applicationVersion", 1);
6524 
6525      print_char(obj->pEngineName, "pEngineName", 1);
6526 
6527      print_uint32_t(obj->engineVersion, "engineVersion", 1);
6528 
6529      print_uint32_t(obj->apiVersion, "apiVersion", 0);
6530 
6531      INDENT(-4);
6532      PRINT_SPACE
6533      if (commaNeeded)
6534          _OUT << "}," << std::endl;
6535      else
6536          _OUT << "}" << std::endl;
6537 }
6538 
print_VkFormatProperties(VkFormatProperties obj,const std::string & s,bool commaNeeded=true)6539 static void print_VkFormatProperties(VkFormatProperties obj, const std::string& s, bool commaNeeded=true) {
6540      PRINT_SPACE
6541      _OUT << "{" << std::endl;
6542      INDENT(4);
6543 
6544      print_VkFormatFeatureFlags(obj.linearTilingFeatures, "linearTilingFeatures", 1);
6545 
6546      print_VkFormatFeatureFlags(obj.optimalTilingFeatures, "optimalTilingFeatures", 1);
6547 
6548      print_VkFormatFeatureFlags(obj.bufferFeatures, "bufferFeatures", 0);
6549 
6550      INDENT(-4);
6551      PRINT_SPACE
6552      if (commaNeeded)
6553          _OUT << "}," << std::endl;
6554      else
6555          _OUT << "}" << std::endl;
6556 }
print_VkFormatProperties(const VkFormatProperties * obj,const std::string & s,bool commaNeeded=true)6557 static void print_VkFormatProperties(const VkFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
6558      PRINT_SPACE
6559      _OUT << "{" << std::endl;
6560      INDENT(4);
6561 
6562      print_VkFormatFeatureFlags(obj->linearTilingFeatures, "linearTilingFeatures", 1);
6563 
6564      print_VkFormatFeatureFlags(obj->optimalTilingFeatures, "optimalTilingFeatures", 1);
6565 
6566      print_VkFormatFeatureFlags(obj->bufferFeatures, "bufferFeatures", 0);
6567 
6568      INDENT(-4);
6569      PRINT_SPACE
6570      if (commaNeeded)
6571          _OUT << "}," << std::endl;
6572      else
6573          _OUT << "}" << std::endl;
6574 }
6575 
print_VkImageFormatProperties(VkImageFormatProperties obj,const std::string & s,bool commaNeeded=true)6576 static void print_VkImageFormatProperties(VkImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
6577      PRINT_SPACE
6578      _OUT << "{" << std::endl;
6579      INDENT(4);
6580 
6581      PRINT_SPACE
6582      _OUT << "\"maxExtent\": " << std::endl;
6583      {
6584            print_VkExtent3D(obj.maxExtent, "maxExtent", 1);
6585      }
6586 
6587      print_uint32_t(obj.maxMipLevels, "maxMipLevels", 1);
6588 
6589      print_uint32_t(obj.maxArrayLayers, "maxArrayLayers", 1);
6590 
6591      print_VkSampleCountFlags(obj.sampleCounts, "sampleCounts", 1);
6592 
6593      print_VkDeviceSize(obj.maxResourceSize, "maxResourceSize", 0);
6594 
6595      INDENT(-4);
6596      PRINT_SPACE
6597      if (commaNeeded)
6598          _OUT << "}," << std::endl;
6599      else
6600          _OUT << "}" << std::endl;
6601 }
print_VkImageFormatProperties(const VkImageFormatProperties * obj,const std::string & s,bool commaNeeded=true)6602 static void print_VkImageFormatProperties(const VkImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
6603      PRINT_SPACE
6604      _OUT << "{" << std::endl;
6605      INDENT(4);
6606 
6607      PRINT_SPACE
6608      _OUT << "\"maxExtent\": " << std::endl;
6609      {
6610            print_VkExtent3D(obj->maxExtent, "maxExtent", 1);
6611      }
6612 
6613      print_uint32_t(obj->maxMipLevels, "maxMipLevels", 1);
6614 
6615      print_uint32_t(obj->maxArrayLayers, "maxArrayLayers", 1);
6616 
6617      print_VkSampleCountFlags(obj->sampleCounts, "sampleCounts", 1);
6618 
6619      print_VkDeviceSize(obj->maxResourceSize, "maxResourceSize", 0);
6620 
6621      INDENT(-4);
6622      PRINT_SPACE
6623      if (commaNeeded)
6624          _OUT << "}," << std::endl;
6625      else
6626          _OUT << "}" << std::endl;
6627 }
6628 
print_VkInstanceCreateInfo(VkInstanceCreateInfo obj,const std::string & s,bool commaNeeded=true)6629 static void print_VkInstanceCreateInfo(VkInstanceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
6630      PRINT_SPACE
6631      _OUT << "{" << std::endl;
6632      INDENT(4);
6633 
6634      print_VkStructureType(obj.sType, "sType", 1);
6635 
6636       if (obj.pNext) {
6637          dumpPNextChain(obj.pNext);
6638       } else {
6639          PRINT_SPACE
6640          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6641      }
6642 
6643      print_VkInstanceCreateFlags(obj.flags, "flags", 1);
6644 
6645      PRINT_SPACE
6646      _OUT << "\"pApplicationInfo\": " << std::endl;
6647      if (obj.pApplicationInfo) {
6648            print_VkApplicationInfo(obj.pApplicationInfo, "pApplicationInfo", 1);
6649      }
6650      else
6651      {
6652          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
6653      }
6654 
6655      print_uint32_t(obj.enabledLayerCount, "enabledLayerCount", 1);
6656 
6657      print_char(obj.ppEnabledLayerNames, "ppEnabledLayerNames", 1);
6658 
6659      print_uint32_t(obj.enabledExtensionCount, "enabledExtensionCount", 1);
6660 
6661      print_char(obj.ppEnabledExtensionNames, "ppEnabledExtensionNames", 0);
6662 
6663      INDENT(-4);
6664      PRINT_SPACE
6665      if (commaNeeded)
6666          _OUT << "}," << std::endl;
6667      else
6668          _OUT << "}" << std::endl;
6669 }
print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj,const std::string & s,bool commaNeeded=true)6670 static void print_VkInstanceCreateInfo(const VkInstanceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
6671      PRINT_SPACE
6672      _OUT << "{" << std::endl;
6673      INDENT(4);
6674 
6675      print_VkStructureType(obj->sType, "sType", 1);
6676 
6677       if (obj->pNext) {
6678          dumpPNextChain(obj->pNext);
6679       } else {
6680          PRINT_SPACE
6681          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
6682      }
6683 
6684      print_VkInstanceCreateFlags(obj->flags, "flags", 1);
6685 
6686      PRINT_SPACE
6687      _OUT << "\"pApplicationInfo\": " << std::endl;
6688      if (obj->pApplicationInfo) {
6689            print_VkApplicationInfo(obj->pApplicationInfo, "pApplicationInfo", 1);
6690      }
6691      else
6692      {
6693          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
6694      }
6695 
6696      print_uint32_t(obj->enabledLayerCount, "enabledLayerCount", 1);
6697 
6698      print_char(obj->ppEnabledLayerNames, "ppEnabledLayerNames", 1);
6699 
6700      print_uint32_t(obj->enabledExtensionCount, "enabledExtensionCount", 1);
6701 
6702      print_char(obj->ppEnabledExtensionNames, "ppEnabledExtensionNames", 0);
6703 
6704      INDENT(-4);
6705      PRINT_SPACE
6706      if (commaNeeded)
6707          _OUT << "}," << std::endl;
6708      else
6709          _OUT << "}" << std::endl;
6710 }
6711 
print_VkMemoryHeap(VkMemoryHeap obj,const std::string & s,bool commaNeeded=true)6712 static void print_VkMemoryHeap(VkMemoryHeap obj, const std::string& s, bool commaNeeded=true) {
6713      PRINT_SPACE
6714      _OUT << "{" << std::endl;
6715      INDENT(4);
6716 
6717      print_VkDeviceSize(obj.size, "size", 1);
6718 
6719      print_VkMemoryHeapFlags(obj.flags, "flags", 0);
6720 
6721      INDENT(-4);
6722      PRINT_SPACE
6723      if (commaNeeded)
6724          _OUT << "}," << std::endl;
6725      else
6726          _OUT << "}" << std::endl;
6727 }
print_VkMemoryHeap(const VkMemoryHeap * obj,const std::string & s,bool commaNeeded=true)6728 static void print_VkMemoryHeap(const VkMemoryHeap * obj, const std::string& s, bool commaNeeded=true) {
6729      PRINT_SPACE
6730      _OUT << "{" << std::endl;
6731      INDENT(4);
6732 
6733      print_VkDeviceSize(obj->size, "size", 1);
6734 
6735      print_VkMemoryHeapFlags(obj->flags, "flags", 0);
6736 
6737      INDENT(-4);
6738      PRINT_SPACE
6739      if (commaNeeded)
6740          _OUT << "}," << std::endl;
6741      else
6742          _OUT << "}" << std::endl;
6743 }
6744 
print_VkMemoryType(VkMemoryType obj,const std::string & s,bool commaNeeded=true)6745 static void print_VkMemoryType(VkMemoryType obj, const std::string& s, bool commaNeeded=true) {
6746      PRINT_SPACE
6747      _OUT << "{" << std::endl;
6748      INDENT(4);
6749 
6750      print_VkMemoryPropertyFlags(obj.propertyFlags, "propertyFlags", 1);
6751 
6752      print_uint32_t(obj.heapIndex, "heapIndex", 0);
6753 
6754      INDENT(-4);
6755      PRINT_SPACE
6756      if (commaNeeded)
6757          _OUT << "}," << std::endl;
6758      else
6759          _OUT << "}" << std::endl;
6760 }
print_VkMemoryType(const VkMemoryType * obj,const std::string & s,bool commaNeeded=true)6761 static void print_VkMemoryType(const VkMemoryType * obj, const std::string& s, bool commaNeeded=true) {
6762      PRINT_SPACE
6763      _OUT << "{" << std::endl;
6764      INDENT(4);
6765 
6766      print_VkMemoryPropertyFlags(obj->propertyFlags, "propertyFlags", 1);
6767 
6768      print_uint32_t(obj->heapIndex, "heapIndex", 0);
6769 
6770      INDENT(-4);
6771      PRINT_SPACE
6772      if (commaNeeded)
6773          _OUT << "}," << std::endl;
6774      else
6775          _OUT << "}" << std::endl;
6776 }
6777 
print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj,const std::string & s,bool commaNeeded=true)6778 static void print_VkPhysicalDeviceFeatures(VkPhysicalDeviceFeatures obj, const std::string& s, bool commaNeeded=true) {
6779      PRINT_SPACE
6780      _OUT << "{" << std::endl;
6781      INDENT(4);
6782 
6783      print_VkBool32(obj.robustBufferAccess, "robustBufferAccess", 1);
6784 
6785      print_VkBool32(obj.fullDrawIndexUint32, "fullDrawIndexUint32", 1);
6786 
6787      print_VkBool32(obj.imageCubeArray, "imageCubeArray", 1);
6788 
6789      print_VkBool32(obj.independentBlend, "independentBlend", 1);
6790 
6791      print_VkBool32(obj.geometryShader, "geometryShader", 1);
6792 
6793      print_VkBool32(obj.tessellationShader, "tessellationShader", 1);
6794 
6795      print_VkBool32(obj.sampleRateShading, "sampleRateShading", 1);
6796 
6797      print_VkBool32(obj.dualSrcBlend, "dualSrcBlend", 1);
6798 
6799      print_VkBool32(obj.logicOp, "logicOp", 1);
6800 
6801      print_VkBool32(obj.multiDrawIndirect, "multiDrawIndirect", 1);
6802 
6803      print_VkBool32(obj.drawIndirectFirstInstance, "drawIndirectFirstInstance", 1);
6804 
6805      print_VkBool32(obj.depthClamp, "depthClamp", 1);
6806 
6807      print_VkBool32(obj.depthBiasClamp, "depthBiasClamp", 1);
6808 
6809      print_VkBool32(obj.fillModeNonSolid, "fillModeNonSolid", 1);
6810 
6811      print_VkBool32(obj.depthBounds, "depthBounds", 1);
6812 
6813      print_VkBool32(obj.wideLines, "wideLines", 1);
6814 
6815      print_VkBool32(obj.largePoints, "largePoints", 1);
6816 
6817      print_VkBool32(obj.alphaToOne, "alphaToOne", 1);
6818 
6819      print_VkBool32(obj.multiViewport, "multiViewport", 1);
6820 
6821      print_VkBool32(obj.samplerAnisotropy, "samplerAnisotropy", 1);
6822 
6823      print_VkBool32(obj.textureCompressionETC2, "textureCompressionETC2", 1);
6824 
6825      print_VkBool32(obj.textureCompressionASTC_LDR, "textureCompressionASTC_LDR", 1);
6826 
6827      print_VkBool32(obj.textureCompressionBC, "textureCompressionBC", 1);
6828 
6829      print_VkBool32(obj.occlusionQueryPrecise, "occlusionQueryPrecise", 1);
6830 
6831      print_VkBool32(obj.pipelineStatisticsQuery, "pipelineStatisticsQuery", 1);
6832 
6833      print_VkBool32(obj.vertexPipelineStoresAndAtomics, "vertexPipelineStoresAndAtomics", 1);
6834 
6835      print_VkBool32(obj.fragmentStoresAndAtomics, "fragmentStoresAndAtomics", 1);
6836 
6837      print_VkBool32(obj.shaderTessellationAndGeometryPointSize, "shaderTessellationAndGeometryPointSize", 1);
6838 
6839      print_VkBool32(obj.shaderImageGatherExtended, "shaderImageGatherExtended", 1);
6840 
6841      print_VkBool32(obj.shaderStorageImageExtendedFormats, "shaderStorageImageExtendedFormats", 1);
6842 
6843      print_VkBool32(obj.shaderStorageImageMultisample, "shaderStorageImageMultisample", 1);
6844 
6845      print_VkBool32(obj.shaderStorageImageReadWithoutFormat, "shaderStorageImageReadWithoutFormat", 1);
6846 
6847      print_VkBool32(obj.shaderStorageImageWriteWithoutFormat, "shaderStorageImageWriteWithoutFormat", 1);
6848 
6849      print_VkBool32(obj.shaderUniformBufferArrayDynamicIndexing, "shaderUniformBufferArrayDynamicIndexing", 1);
6850 
6851      print_VkBool32(obj.shaderSampledImageArrayDynamicIndexing, "shaderSampledImageArrayDynamicIndexing", 1);
6852 
6853      print_VkBool32(obj.shaderStorageBufferArrayDynamicIndexing, "shaderStorageBufferArrayDynamicIndexing", 1);
6854 
6855      print_VkBool32(obj.shaderStorageImageArrayDynamicIndexing, "shaderStorageImageArrayDynamicIndexing", 1);
6856 
6857      print_VkBool32(obj.shaderClipDistance, "shaderClipDistance", 1);
6858 
6859      print_VkBool32(obj.shaderCullDistance, "shaderCullDistance", 1);
6860 
6861      print_VkBool32(obj.shaderFloat64, "shaderFloat64", 1);
6862 
6863      print_VkBool32(obj.shaderInt64, "shaderInt64", 1);
6864 
6865      print_VkBool32(obj.shaderInt16, "shaderInt16", 1);
6866 
6867      print_VkBool32(obj.shaderResourceResidency, "shaderResourceResidency", 1);
6868 
6869      print_VkBool32(obj.shaderResourceMinLod, "shaderResourceMinLod", 1);
6870 
6871      print_VkBool32(obj.sparseBinding, "sparseBinding", 1);
6872 
6873      print_VkBool32(obj.sparseResidencyBuffer, "sparseResidencyBuffer", 1);
6874 
6875      print_VkBool32(obj.sparseResidencyImage2D, "sparseResidencyImage2D", 1);
6876 
6877      print_VkBool32(obj.sparseResidencyImage3D, "sparseResidencyImage3D", 1);
6878 
6879      print_VkBool32(obj.sparseResidency2Samples, "sparseResidency2Samples", 1);
6880 
6881      print_VkBool32(obj.sparseResidency4Samples, "sparseResidency4Samples", 1);
6882 
6883      print_VkBool32(obj.sparseResidency8Samples, "sparseResidency8Samples", 1);
6884 
6885      print_VkBool32(obj.sparseResidency16Samples, "sparseResidency16Samples", 1);
6886 
6887      print_VkBool32(obj.sparseResidencyAliased, "sparseResidencyAliased", 1);
6888 
6889      print_VkBool32(obj.variableMultisampleRate, "variableMultisampleRate", 1);
6890 
6891      print_VkBool32(obj.inheritedQueries, "inheritedQueries", 0);
6892 
6893      INDENT(-4);
6894      PRINT_SPACE
6895      if (commaNeeded)
6896          _OUT << "}," << std::endl;
6897      else
6898          _OUT << "}" << std::endl;
6899 }
print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj,const std::string & s,bool commaNeeded=true)6900 static void print_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * obj, const std::string& s, bool commaNeeded=true) {
6901      PRINT_SPACE
6902      _OUT << "{" << std::endl;
6903      INDENT(4);
6904 
6905      print_VkBool32(obj->robustBufferAccess, "robustBufferAccess", 1);
6906 
6907      print_VkBool32(obj->fullDrawIndexUint32, "fullDrawIndexUint32", 1);
6908 
6909      print_VkBool32(obj->imageCubeArray, "imageCubeArray", 1);
6910 
6911      print_VkBool32(obj->independentBlend, "independentBlend", 1);
6912 
6913      print_VkBool32(obj->geometryShader, "geometryShader", 1);
6914 
6915      print_VkBool32(obj->tessellationShader, "tessellationShader", 1);
6916 
6917      print_VkBool32(obj->sampleRateShading, "sampleRateShading", 1);
6918 
6919      print_VkBool32(obj->dualSrcBlend, "dualSrcBlend", 1);
6920 
6921      print_VkBool32(obj->logicOp, "logicOp", 1);
6922 
6923      print_VkBool32(obj->multiDrawIndirect, "multiDrawIndirect", 1);
6924 
6925      print_VkBool32(obj->drawIndirectFirstInstance, "drawIndirectFirstInstance", 1);
6926 
6927      print_VkBool32(obj->depthClamp, "depthClamp", 1);
6928 
6929      print_VkBool32(obj->depthBiasClamp, "depthBiasClamp", 1);
6930 
6931      print_VkBool32(obj->fillModeNonSolid, "fillModeNonSolid", 1);
6932 
6933      print_VkBool32(obj->depthBounds, "depthBounds", 1);
6934 
6935      print_VkBool32(obj->wideLines, "wideLines", 1);
6936 
6937      print_VkBool32(obj->largePoints, "largePoints", 1);
6938 
6939      print_VkBool32(obj->alphaToOne, "alphaToOne", 1);
6940 
6941      print_VkBool32(obj->multiViewport, "multiViewport", 1);
6942 
6943      print_VkBool32(obj->samplerAnisotropy, "samplerAnisotropy", 1);
6944 
6945      print_VkBool32(obj->textureCompressionETC2, "textureCompressionETC2", 1);
6946 
6947      print_VkBool32(obj->textureCompressionASTC_LDR, "textureCompressionASTC_LDR", 1);
6948 
6949      print_VkBool32(obj->textureCompressionBC, "textureCompressionBC", 1);
6950 
6951      print_VkBool32(obj->occlusionQueryPrecise, "occlusionQueryPrecise", 1);
6952 
6953      print_VkBool32(obj->pipelineStatisticsQuery, "pipelineStatisticsQuery", 1);
6954 
6955      print_VkBool32(obj->vertexPipelineStoresAndAtomics, "vertexPipelineStoresAndAtomics", 1);
6956 
6957      print_VkBool32(obj->fragmentStoresAndAtomics, "fragmentStoresAndAtomics", 1);
6958 
6959      print_VkBool32(obj->shaderTessellationAndGeometryPointSize, "shaderTessellationAndGeometryPointSize", 1);
6960 
6961      print_VkBool32(obj->shaderImageGatherExtended, "shaderImageGatherExtended", 1);
6962 
6963      print_VkBool32(obj->shaderStorageImageExtendedFormats, "shaderStorageImageExtendedFormats", 1);
6964 
6965      print_VkBool32(obj->shaderStorageImageMultisample, "shaderStorageImageMultisample", 1);
6966 
6967      print_VkBool32(obj->shaderStorageImageReadWithoutFormat, "shaderStorageImageReadWithoutFormat", 1);
6968 
6969      print_VkBool32(obj->shaderStorageImageWriteWithoutFormat, "shaderStorageImageWriteWithoutFormat", 1);
6970 
6971      print_VkBool32(obj->shaderUniformBufferArrayDynamicIndexing, "shaderUniformBufferArrayDynamicIndexing", 1);
6972 
6973      print_VkBool32(obj->shaderSampledImageArrayDynamicIndexing, "shaderSampledImageArrayDynamicIndexing", 1);
6974 
6975      print_VkBool32(obj->shaderStorageBufferArrayDynamicIndexing, "shaderStorageBufferArrayDynamicIndexing", 1);
6976 
6977      print_VkBool32(obj->shaderStorageImageArrayDynamicIndexing, "shaderStorageImageArrayDynamicIndexing", 1);
6978 
6979      print_VkBool32(obj->shaderClipDistance, "shaderClipDistance", 1);
6980 
6981      print_VkBool32(obj->shaderCullDistance, "shaderCullDistance", 1);
6982 
6983      print_VkBool32(obj->shaderFloat64, "shaderFloat64", 1);
6984 
6985      print_VkBool32(obj->shaderInt64, "shaderInt64", 1);
6986 
6987      print_VkBool32(obj->shaderInt16, "shaderInt16", 1);
6988 
6989      print_VkBool32(obj->shaderResourceResidency, "shaderResourceResidency", 1);
6990 
6991      print_VkBool32(obj->shaderResourceMinLod, "shaderResourceMinLod", 1);
6992 
6993      print_VkBool32(obj->sparseBinding, "sparseBinding", 1);
6994 
6995      print_VkBool32(obj->sparseResidencyBuffer, "sparseResidencyBuffer", 1);
6996 
6997      print_VkBool32(obj->sparseResidencyImage2D, "sparseResidencyImage2D", 1);
6998 
6999      print_VkBool32(obj->sparseResidencyImage3D, "sparseResidencyImage3D", 1);
7000 
7001      print_VkBool32(obj->sparseResidency2Samples, "sparseResidency2Samples", 1);
7002 
7003      print_VkBool32(obj->sparseResidency4Samples, "sparseResidency4Samples", 1);
7004 
7005      print_VkBool32(obj->sparseResidency8Samples, "sparseResidency8Samples", 1);
7006 
7007      print_VkBool32(obj->sparseResidency16Samples, "sparseResidency16Samples", 1);
7008 
7009      print_VkBool32(obj->sparseResidencyAliased, "sparseResidencyAliased", 1);
7010 
7011      print_VkBool32(obj->variableMultisampleRate, "variableMultisampleRate", 1);
7012 
7013      print_VkBool32(obj->inheritedQueries, "inheritedQueries", 0);
7014 
7015      INDENT(-4);
7016      PRINT_SPACE
7017      if (commaNeeded)
7018          _OUT << "}," << std::endl;
7019      else
7020          _OUT << "}" << std::endl;
7021 }
7022 
print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj,const std::string & s,bool commaNeeded=true)7023 static void print_VkPhysicalDeviceLimits(VkPhysicalDeviceLimits obj, const std::string& s, bool commaNeeded=true) {
7024      PRINT_SPACE
7025      _OUT << "{" << std::endl;
7026      INDENT(4);
7027 
7028      print_uint32_t(obj.maxImageDimension1D, "maxImageDimension1D", 1);
7029 
7030      print_uint32_t(obj.maxImageDimension2D, "maxImageDimension2D", 1);
7031 
7032      print_uint32_t(obj.maxImageDimension3D, "maxImageDimension3D", 1);
7033 
7034      print_uint32_t(obj.maxImageDimensionCube, "maxImageDimensionCube", 1);
7035 
7036      print_uint32_t(obj.maxImageArrayLayers, "maxImageArrayLayers", 1);
7037 
7038      print_uint32_t(obj.maxTexelBufferElements, "maxTexelBufferElements", 1);
7039 
7040      print_uint32_t(obj.maxUniformBufferRange, "maxUniformBufferRange", 1);
7041 
7042      print_uint32_t(obj.maxStorageBufferRange, "maxStorageBufferRange", 1);
7043 
7044      print_uint32_t(obj.maxPushConstantsSize, "maxPushConstantsSize", 1);
7045 
7046      print_uint32_t(obj.maxMemoryAllocationCount, "maxMemoryAllocationCount", 1);
7047 
7048      print_uint32_t(obj.maxSamplerAllocationCount, "maxSamplerAllocationCount", 1);
7049 
7050      print_VkDeviceSize(obj.bufferImageGranularity, "bufferImageGranularity", 1);
7051 
7052      print_VkDeviceSize(obj.sparseAddressSpaceSize, "sparseAddressSpaceSize", 1);
7053 
7054      print_uint32_t(obj.maxBoundDescriptorSets, "maxBoundDescriptorSets", 1);
7055 
7056      print_uint32_t(obj.maxPerStageDescriptorSamplers, "maxPerStageDescriptorSamplers", 1);
7057 
7058      print_uint32_t(obj.maxPerStageDescriptorUniformBuffers, "maxPerStageDescriptorUniformBuffers", 1);
7059 
7060      print_uint32_t(obj.maxPerStageDescriptorStorageBuffers, "maxPerStageDescriptorStorageBuffers", 1);
7061 
7062      print_uint32_t(obj.maxPerStageDescriptorSampledImages, "maxPerStageDescriptorSampledImages", 1);
7063 
7064      print_uint32_t(obj.maxPerStageDescriptorStorageImages, "maxPerStageDescriptorStorageImages", 1);
7065 
7066      print_uint32_t(obj.maxPerStageDescriptorInputAttachments, "maxPerStageDescriptorInputAttachments", 1);
7067 
7068      print_uint32_t(obj.maxPerStageResources, "maxPerStageResources", 1);
7069 
7070      print_uint32_t(obj.maxDescriptorSetSamplers, "maxDescriptorSetSamplers", 1);
7071 
7072      print_uint32_t(obj.maxDescriptorSetUniformBuffers, "maxDescriptorSetUniformBuffers", 1);
7073 
7074      print_uint32_t(obj.maxDescriptorSetUniformBuffersDynamic, "maxDescriptorSetUniformBuffersDynamic", 1);
7075 
7076      print_uint32_t(obj.maxDescriptorSetStorageBuffers, "maxDescriptorSetStorageBuffers", 1);
7077 
7078      print_uint32_t(obj.maxDescriptorSetStorageBuffersDynamic, "maxDescriptorSetStorageBuffersDynamic", 1);
7079 
7080      print_uint32_t(obj.maxDescriptorSetSampledImages, "maxDescriptorSetSampledImages", 1);
7081 
7082      print_uint32_t(obj.maxDescriptorSetStorageImages, "maxDescriptorSetStorageImages", 1);
7083 
7084      print_uint32_t(obj.maxDescriptorSetInputAttachments, "maxDescriptorSetInputAttachments", 1);
7085 
7086      print_uint32_t(obj.maxVertexInputAttributes, "maxVertexInputAttributes", 1);
7087 
7088      print_uint32_t(obj.maxVertexInputBindings, "maxVertexInputBindings", 1);
7089 
7090      print_uint32_t(obj.maxVertexInputAttributeOffset, "maxVertexInputAttributeOffset", 1);
7091 
7092      print_uint32_t(obj.maxVertexInputBindingStride, "maxVertexInputBindingStride", 1);
7093 
7094      print_uint32_t(obj.maxVertexOutputComponents, "maxVertexOutputComponents", 1);
7095 
7096      print_uint32_t(obj.maxTessellationGenerationLevel, "maxTessellationGenerationLevel", 1);
7097 
7098      print_uint32_t(obj.maxTessellationPatchSize, "maxTessellationPatchSize", 1);
7099 
7100      print_uint32_t(obj.maxTessellationControlPerVertexInputComponents, "maxTessellationControlPerVertexInputComponents", 1);
7101 
7102      print_uint32_t(obj.maxTessellationControlPerVertexOutputComponents, "maxTessellationControlPerVertexOutputComponents", 1);
7103 
7104      print_uint32_t(obj.maxTessellationControlPerPatchOutputComponents, "maxTessellationControlPerPatchOutputComponents", 1);
7105 
7106      print_uint32_t(obj.maxTessellationControlTotalOutputComponents, "maxTessellationControlTotalOutputComponents", 1);
7107 
7108      print_uint32_t(obj.maxTessellationEvaluationInputComponents, "maxTessellationEvaluationInputComponents", 1);
7109 
7110      print_uint32_t(obj.maxTessellationEvaluationOutputComponents, "maxTessellationEvaluationOutputComponents", 1);
7111 
7112      print_uint32_t(obj.maxGeometryShaderInvocations, "maxGeometryShaderInvocations", 1);
7113 
7114      print_uint32_t(obj.maxGeometryInputComponents, "maxGeometryInputComponents", 1);
7115 
7116      print_uint32_t(obj.maxGeometryOutputComponents, "maxGeometryOutputComponents", 1);
7117 
7118      print_uint32_t(obj.maxGeometryOutputVertices, "maxGeometryOutputVertices", 1);
7119 
7120      print_uint32_t(obj.maxGeometryTotalOutputComponents, "maxGeometryTotalOutputComponents", 1);
7121 
7122      print_uint32_t(obj.maxFragmentInputComponents, "maxFragmentInputComponents", 1);
7123 
7124      print_uint32_t(obj.maxFragmentOutputAttachments, "maxFragmentOutputAttachments", 1);
7125 
7126      print_uint32_t(obj.maxFragmentDualSrcAttachments, "maxFragmentDualSrcAttachments", 1);
7127 
7128      print_uint32_t(obj.maxFragmentCombinedOutputResources, "maxFragmentCombinedOutputResources", 1);
7129 
7130      print_uint32_t(obj.maxComputeSharedMemorySize, "maxComputeSharedMemorySize", 1);
7131 
7132      PRINT_SPACE
7133      _OUT << "\"maxComputeWorkGroupCount\":" << std::endl;
7134      PRINT_SPACE
7135        _OUT << "[" << std::endl;
7136        for (unsigned int i = 0; i < 3; i++) {
7137            bool isCommaNeeded = (i+1) != 3;
7138            print_uint32_t(obj.maxComputeWorkGroupCount[i], "", isCommaNeeded);
7139        }
7140        PRINT_SPACE
7141        _OUT << "]" << "," << std::endl;
7142 
7143      print_uint32_t(obj.maxComputeWorkGroupInvocations, "maxComputeWorkGroupInvocations", 1);
7144 
7145      PRINT_SPACE
7146      _OUT << "\"maxComputeWorkGroupSize\":" << std::endl;
7147      PRINT_SPACE
7148        _OUT << "[" << std::endl;
7149        for (unsigned int i = 0; i < 3; i++) {
7150            bool isCommaNeeded = (i+1) != 3;
7151            print_uint32_t(obj.maxComputeWorkGroupSize[i], "", isCommaNeeded);
7152        }
7153        PRINT_SPACE
7154        _OUT << "]" << "," << std::endl;
7155 
7156      print_uint32_t(obj.subPixelPrecisionBits, "subPixelPrecisionBits", 1);
7157 
7158      print_uint32_t(obj.subTexelPrecisionBits, "subTexelPrecisionBits", 1);
7159 
7160      print_uint32_t(obj.mipmapPrecisionBits, "mipmapPrecisionBits", 1);
7161 
7162      print_uint32_t(obj.maxDrawIndexedIndexValue, "maxDrawIndexedIndexValue", 1);
7163 
7164      print_uint32_t(obj.maxDrawIndirectCount, "maxDrawIndirectCount", 1);
7165 
7166      print_float(obj.maxSamplerLodBias, "maxSamplerLodBias", 1);
7167 
7168      print_float(obj.maxSamplerAnisotropy, "maxSamplerAnisotropy", 1);
7169 
7170      print_uint32_t(obj.maxViewports, "maxViewports", 1);
7171 
7172      PRINT_SPACE
7173      _OUT << "\"maxViewportDimensions\":" << std::endl;
7174      PRINT_SPACE
7175        _OUT << "[" << std::endl;
7176        for (unsigned int i = 0; i < 2; i++) {
7177            bool isCommaNeeded = (i+1) != 2;
7178            print_uint32_t(obj.maxViewportDimensions[i], "", isCommaNeeded);
7179        }
7180        PRINT_SPACE
7181        _OUT << "]" << "," << std::endl;
7182 
7183      PRINT_SPACE
7184      _OUT << "\"viewportBoundsRange\":" << std::endl;
7185      PRINT_SPACE
7186        _OUT << "[" << std::endl;
7187        for (unsigned int i = 0; i < 2; i++) {
7188            bool isCommaNeeded = (i+1) != 2;
7189            print_float(obj.viewportBoundsRange[i], "", isCommaNeeded);
7190        }
7191        PRINT_SPACE
7192        _OUT << "]" << "," << std::endl;
7193 
7194      print_uint32_t(obj.viewportSubPixelBits, "viewportSubPixelBits", 1);
7195 
7196      print_size_t(obj.minMemoryMapAlignment, "minMemoryMapAlignment", 1);
7197 
7198      print_VkDeviceSize(obj.minTexelBufferOffsetAlignment, "minTexelBufferOffsetAlignment", 1);
7199 
7200      print_VkDeviceSize(obj.minUniformBufferOffsetAlignment, "minUniformBufferOffsetAlignment", 1);
7201 
7202      print_VkDeviceSize(obj.minStorageBufferOffsetAlignment, "minStorageBufferOffsetAlignment", 1);
7203 
7204      print_int32_t(obj.minTexelOffset, "minTexelOffset", 1);
7205 
7206      print_uint32_t(obj.maxTexelOffset, "maxTexelOffset", 1);
7207 
7208      print_int32_t(obj.minTexelGatherOffset, "minTexelGatherOffset", 1);
7209 
7210      print_uint32_t(obj.maxTexelGatherOffset, "maxTexelGatherOffset", 1);
7211 
7212      print_float(obj.minInterpolationOffset, "minInterpolationOffset", 1);
7213 
7214      print_float(obj.maxInterpolationOffset, "maxInterpolationOffset", 1);
7215 
7216      print_uint32_t(obj.subPixelInterpolationOffsetBits, "subPixelInterpolationOffsetBits", 1);
7217 
7218      print_uint32_t(obj.maxFramebufferWidth, "maxFramebufferWidth", 1);
7219 
7220      print_uint32_t(obj.maxFramebufferHeight, "maxFramebufferHeight", 1);
7221 
7222      print_uint32_t(obj.maxFramebufferLayers, "maxFramebufferLayers", 1);
7223 
7224      print_VkSampleCountFlags(obj.framebufferColorSampleCounts, "framebufferColorSampleCounts", 1);
7225 
7226      print_VkSampleCountFlags(obj.framebufferDepthSampleCounts, "framebufferDepthSampleCounts", 1);
7227 
7228      print_VkSampleCountFlags(obj.framebufferStencilSampleCounts, "framebufferStencilSampleCounts", 1);
7229 
7230      print_VkSampleCountFlags(obj.framebufferNoAttachmentsSampleCounts, "framebufferNoAttachmentsSampleCounts", 1);
7231 
7232      print_uint32_t(obj.maxColorAttachments, "maxColorAttachments", 1);
7233 
7234      print_VkSampleCountFlags(obj.sampledImageColorSampleCounts, "sampledImageColorSampleCounts", 1);
7235 
7236      print_VkSampleCountFlags(obj.sampledImageIntegerSampleCounts, "sampledImageIntegerSampleCounts", 1);
7237 
7238      print_VkSampleCountFlags(obj.sampledImageDepthSampleCounts, "sampledImageDepthSampleCounts", 1);
7239 
7240      print_VkSampleCountFlags(obj.sampledImageStencilSampleCounts, "sampledImageStencilSampleCounts", 1);
7241 
7242      print_VkSampleCountFlags(obj.storageImageSampleCounts, "storageImageSampleCounts", 1);
7243 
7244      print_uint32_t(obj.maxSampleMaskWords, "maxSampleMaskWords", 1);
7245 
7246      print_VkBool32(obj.timestampComputeAndGraphics, "timestampComputeAndGraphics", 1);
7247 
7248      print_float(obj.timestampPeriod, "timestampPeriod", 1);
7249 
7250      print_uint32_t(obj.maxClipDistances, "maxClipDistances", 1);
7251 
7252      print_uint32_t(obj.maxCullDistances, "maxCullDistances", 1);
7253 
7254      print_uint32_t(obj.maxCombinedClipAndCullDistances, "maxCombinedClipAndCullDistances", 1);
7255 
7256      print_uint32_t(obj.discreteQueuePriorities, "discreteQueuePriorities", 1);
7257 
7258      PRINT_SPACE
7259      _OUT << "\"pointSizeRange\":" << std::endl;
7260      PRINT_SPACE
7261        _OUT << "[" << std::endl;
7262        for (unsigned int i = 0; i < 2; i++) {
7263            bool isCommaNeeded = (i+1) != 2;
7264            print_float(obj.pointSizeRange[i], "", isCommaNeeded);
7265        }
7266        PRINT_SPACE
7267        _OUT << "]" << "," << std::endl;
7268 
7269      PRINT_SPACE
7270      _OUT << "\"lineWidthRange\":" << std::endl;
7271      PRINT_SPACE
7272        _OUT << "[" << std::endl;
7273        for (unsigned int i = 0; i < 2; i++) {
7274            bool isCommaNeeded = (i+1) != 2;
7275            print_float(obj.lineWidthRange[i], "", isCommaNeeded);
7276        }
7277        PRINT_SPACE
7278        _OUT << "]" << "," << std::endl;
7279 
7280      print_float(obj.pointSizeGranularity, "pointSizeGranularity", 1);
7281 
7282      print_float(obj.lineWidthGranularity, "lineWidthGranularity", 1);
7283 
7284      print_VkBool32(obj.strictLines, "strictLines", 1);
7285 
7286      print_VkBool32(obj.standardSampleLocations, "standardSampleLocations", 1);
7287 
7288      print_VkDeviceSize(obj.optimalBufferCopyOffsetAlignment, "optimalBufferCopyOffsetAlignment", 1);
7289 
7290      print_VkDeviceSize(obj.optimalBufferCopyRowPitchAlignment, "optimalBufferCopyRowPitchAlignment", 1);
7291 
7292      print_VkDeviceSize(obj.nonCoherentAtomSize, "nonCoherentAtomSize", 0);
7293 
7294      INDENT(-4);
7295      PRINT_SPACE
7296      if (commaNeeded)
7297          _OUT << "}," << std::endl;
7298      else
7299          _OUT << "}" << std::endl;
7300 }
print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj,const std::string & s,bool commaNeeded=true)7301 static void print_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * obj, const std::string& s, bool commaNeeded=true) {
7302      PRINT_SPACE
7303      _OUT << "{" << std::endl;
7304      INDENT(4);
7305 
7306      print_uint32_t(obj->maxImageDimension1D, "maxImageDimension1D", 1);
7307 
7308      print_uint32_t(obj->maxImageDimension2D, "maxImageDimension2D", 1);
7309 
7310      print_uint32_t(obj->maxImageDimension3D, "maxImageDimension3D", 1);
7311 
7312      print_uint32_t(obj->maxImageDimensionCube, "maxImageDimensionCube", 1);
7313 
7314      print_uint32_t(obj->maxImageArrayLayers, "maxImageArrayLayers", 1);
7315 
7316      print_uint32_t(obj->maxTexelBufferElements, "maxTexelBufferElements", 1);
7317 
7318      print_uint32_t(obj->maxUniformBufferRange, "maxUniformBufferRange", 1);
7319 
7320      print_uint32_t(obj->maxStorageBufferRange, "maxStorageBufferRange", 1);
7321 
7322      print_uint32_t(obj->maxPushConstantsSize, "maxPushConstantsSize", 1);
7323 
7324      print_uint32_t(obj->maxMemoryAllocationCount, "maxMemoryAllocationCount", 1);
7325 
7326      print_uint32_t(obj->maxSamplerAllocationCount, "maxSamplerAllocationCount", 1);
7327 
7328      print_VkDeviceSize(obj->bufferImageGranularity, "bufferImageGranularity", 1);
7329 
7330      print_VkDeviceSize(obj->sparseAddressSpaceSize, "sparseAddressSpaceSize", 1);
7331 
7332      print_uint32_t(obj->maxBoundDescriptorSets, "maxBoundDescriptorSets", 1);
7333 
7334      print_uint32_t(obj->maxPerStageDescriptorSamplers, "maxPerStageDescriptorSamplers", 1);
7335 
7336      print_uint32_t(obj->maxPerStageDescriptorUniformBuffers, "maxPerStageDescriptorUniformBuffers", 1);
7337 
7338      print_uint32_t(obj->maxPerStageDescriptorStorageBuffers, "maxPerStageDescriptorStorageBuffers", 1);
7339 
7340      print_uint32_t(obj->maxPerStageDescriptorSampledImages, "maxPerStageDescriptorSampledImages", 1);
7341 
7342      print_uint32_t(obj->maxPerStageDescriptorStorageImages, "maxPerStageDescriptorStorageImages", 1);
7343 
7344      print_uint32_t(obj->maxPerStageDescriptorInputAttachments, "maxPerStageDescriptorInputAttachments", 1);
7345 
7346      print_uint32_t(obj->maxPerStageResources, "maxPerStageResources", 1);
7347 
7348      print_uint32_t(obj->maxDescriptorSetSamplers, "maxDescriptorSetSamplers", 1);
7349 
7350      print_uint32_t(obj->maxDescriptorSetUniformBuffers, "maxDescriptorSetUniformBuffers", 1);
7351 
7352      print_uint32_t(obj->maxDescriptorSetUniformBuffersDynamic, "maxDescriptorSetUniformBuffersDynamic", 1);
7353 
7354      print_uint32_t(obj->maxDescriptorSetStorageBuffers, "maxDescriptorSetStorageBuffers", 1);
7355 
7356      print_uint32_t(obj->maxDescriptorSetStorageBuffersDynamic, "maxDescriptorSetStorageBuffersDynamic", 1);
7357 
7358      print_uint32_t(obj->maxDescriptorSetSampledImages, "maxDescriptorSetSampledImages", 1);
7359 
7360      print_uint32_t(obj->maxDescriptorSetStorageImages, "maxDescriptorSetStorageImages", 1);
7361 
7362      print_uint32_t(obj->maxDescriptorSetInputAttachments, "maxDescriptorSetInputAttachments", 1);
7363 
7364      print_uint32_t(obj->maxVertexInputAttributes, "maxVertexInputAttributes", 1);
7365 
7366      print_uint32_t(obj->maxVertexInputBindings, "maxVertexInputBindings", 1);
7367 
7368      print_uint32_t(obj->maxVertexInputAttributeOffset, "maxVertexInputAttributeOffset", 1);
7369 
7370      print_uint32_t(obj->maxVertexInputBindingStride, "maxVertexInputBindingStride", 1);
7371 
7372      print_uint32_t(obj->maxVertexOutputComponents, "maxVertexOutputComponents", 1);
7373 
7374      print_uint32_t(obj->maxTessellationGenerationLevel, "maxTessellationGenerationLevel", 1);
7375 
7376      print_uint32_t(obj->maxTessellationPatchSize, "maxTessellationPatchSize", 1);
7377 
7378      print_uint32_t(obj->maxTessellationControlPerVertexInputComponents, "maxTessellationControlPerVertexInputComponents", 1);
7379 
7380      print_uint32_t(obj->maxTessellationControlPerVertexOutputComponents, "maxTessellationControlPerVertexOutputComponents", 1);
7381 
7382      print_uint32_t(obj->maxTessellationControlPerPatchOutputComponents, "maxTessellationControlPerPatchOutputComponents", 1);
7383 
7384      print_uint32_t(obj->maxTessellationControlTotalOutputComponents, "maxTessellationControlTotalOutputComponents", 1);
7385 
7386      print_uint32_t(obj->maxTessellationEvaluationInputComponents, "maxTessellationEvaluationInputComponents", 1);
7387 
7388      print_uint32_t(obj->maxTessellationEvaluationOutputComponents, "maxTessellationEvaluationOutputComponents", 1);
7389 
7390      print_uint32_t(obj->maxGeometryShaderInvocations, "maxGeometryShaderInvocations", 1);
7391 
7392      print_uint32_t(obj->maxGeometryInputComponents, "maxGeometryInputComponents", 1);
7393 
7394      print_uint32_t(obj->maxGeometryOutputComponents, "maxGeometryOutputComponents", 1);
7395 
7396      print_uint32_t(obj->maxGeometryOutputVertices, "maxGeometryOutputVertices", 1);
7397 
7398      print_uint32_t(obj->maxGeometryTotalOutputComponents, "maxGeometryTotalOutputComponents", 1);
7399 
7400      print_uint32_t(obj->maxFragmentInputComponents, "maxFragmentInputComponents", 1);
7401 
7402      print_uint32_t(obj->maxFragmentOutputAttachments, "maxFragmentOutputAttachments", 1);
7403 
7404      print_uint32_t(obj->maxFragmentDualSrcAttachments, "maxFragmentDualSrcAttachments", 1);
7405 
7406      print_uint32_t(obj->maxFragmentCombinedOutputResources, "maxFragmentCombinedOutputResources", 1);
7407 
7408      print_uint32_t(obj->maxComputeSharedMemorySize, "maxComputeSharedMemorySize", 1);
7409 
7410      PRINT_SPACE
7411      _OUT << "\"maxComputeWorkGroupCount\":" << std::endl;
7412      PRINT_SPACE
7413        _OUT << "[" << std::endl;
7414        for (unsigned int i = 0; i < 3; i++) {
7415            bool isCommaNeeded = (i+1) != 3;
7416            print_uint32_t(obj->maxComputeWorkGroupCount[i], "", isCommaNeeded);
7417        }
7418        PRINT_SPACE
7419        _OUT << "]" << "," << std::endl;
7420 
7421      print_uint32_t(obj->maxComputeWorkGroupInvocations, "maxComputeWorkGroupInvocations", 1);
7422 
7423      PRINT_SPACE
7424      _OUT << "\"maxComputeWorkGroupSize\":" << std::endl;
7425      PRINT_SPACE
7426        _OUT << "[" << std::endl;
7427        for (unsigned int i = 0; i < 3; i++) {
7428            bool isCommaNeeded = (i+1) != 3;
7429            print_uint32_t(obj->maxComputeWorkGroupSize[i], "", isCommaNeeded);
7430        }
7431        PRINT_SPACE
7432        _OUT << "]" << "," << std::endl;
7433 
7434      print_uint32_t(obj->subPixelPrecisionBits, "subPixelPrecisionBits", 1);
7435 
7436      print_uint32_t(obj->subTexelPrecisionBits, "subTexelPrecisionBits", 1);
7437 
7438      print_uint32_t(obj->mipmapPrecisionBits, "mipmapPrecisionBits", 1);
7439 
7440      print_uint32_t(obj->maxDrawIndexedIndexValue, "maxDrawIndexedIndexValue", 1);
7441 
7442      print_uint32_t(obj->maxDrawIndirectCount, "maxDrawIndirectCount", 1);
7443 
7444      print_float(obj->maxSamplerLodBias, "maxSamplerLodBias", 1);
7445 
7446      print_float(obj->maxSamplerAnisotropy, "maxSamplerAnisotropy", 1);
7447 
7448      print_uint32_t(obj->maxViewports, "maxViewports", 1);
7449 
7450      PRINT_SPACE
7451      _OUT << "\"maxViewportDimensions\":" << std::endl;
7452      PRINT_SPACE
7453        _OUT << "[" << std::endl;
7454        for (unsigned int i = 0; i < 2; i++) {
7455            bool isCommaNeeded = (i+1) != 2;
7456            print_uint32_t(obj->maxViewportDimensions[i], "", isCommaNeeded);
7457        }
7458        PRINT_SPACE
7459        _OUT << "]" << "," << std::endl;
7460 
7461      PRINT_SPACE
7462      _OUT << "\"viewportBoundsRange\":" << std::endl;
7463      PRINT_SPACE
7464        _OUT << "[" << std::endl;
7465        for (unsigned int i = 0; i < 2; i++) {
7466            bool isCommaNeeded = (i+1) != 2;
7467            print_float(obj->viewportBoundsRange[i], "", isCommaNeeded);
7468        }
7469        PRINT_SPACE
7470        _OUT << "]" << "," << std::endl;
7471 
7472      print_uint32_t(obj->viewportSubPixelBits, "viewportSubPixelBits", 1);
7473 
7474      print_size_t(obj->minMemoryMapAlignment, "minMemoryMapAlignment", 1);
7475 
7476      print_VkDeviceSize(obj->minTexelBufferOffsetAlignment, "minTexelBufferOffsetAlignment", 1);
7477 
7478      print_VkDeviceSize(obj->minUniformBufferOffsetAlignment, "minUniformBufferOffsetAlignment", 1);
7479 
7480      print_VkDeviceSize(obj->minStorageBufferOffsetAlignment, "minStorageBufferOffsetAlignment", 1);
7481 
7482      print_int32_t(obj->minTexelOffset, "minTexelOffset", 1);
7483 
7484      print_uint32_t(obj->maxTexelOffset, "maxTexelOffset", 1);
7485 
7486      print_int32_t(obj->minTexelGatherOffset, "minTexelGatherOffset", 1);
7487 
7488      print_uint32_t(obj->maxTexelGatherOffset, "maxTexelGatherOffset", 1);
7489 
7490      print_float(obj->minInterpolationOffset, "minInterpolationOffset", 1);
7491 
7492      print_float(obj->maxInterpolationOffset, "maxInterpolationOffset", 1);
7493 
7494      print_uint32_t(obj->subPixelInterpolationOffsetBits, "subPixelInterpolationOffsetBits", 1);
7495 
7496      print_uint32_t(obj->maxFramebufferWidth, "maxFramebufferWidth", 1);
7497 
7498      print_uint32_t(obj->maxFramebufferHeight, "maxFramebufferHeight", 1);
7499 
7500      print_uint32_t(obj->maxFramebufferLayers, "maxFramebufferLayers", 1);
7501 
7502      print_VkSampleCountFlags(obj->framebufferColorSampleCounts, "framebufferColorSampleCounts", 1);
7503 
7504      print_VkSampleCountFlags(obj->framebufferDepthSampleCounts, "framebufferDepthSampleCounts", 1);
7505 
7506      print_VkSampleCountFlags(obj->framebufferStencilSampleCounts, "framebufferStencilSampleCounts", 1);
7507 
7508      print_VkSampleCountFlags(obj->framebufferNoAttachmentsSampleCounts, "framebufferNoAttachmentsSampleCounts", 1);
7509 
7510      print_uint32_t(obj->maxColorAttachments, "maxColorAttachments", 1);
7511 
7512      print_VkSampleCountFlags(obj->sampledImageColorSampleCounts, "sampledImageColorSampleCounts", 1);
7513 
7514      print_VkSampleCountFlags(obj->sampledImageIntegerSampleCounts, "sampledImageIntegerSampleCounts", 1);
7515 
7516      print_VkSampleCountFlags(obj->sampledImageDepthSampleCounts, "sampledImageDepthSampleCounts", 1);
7517 
7518      print_VkSampleCountFlags(obj->sampledImageStencilSampleCounts, "sampledImageStencilSampleCounts", 1);
7519 
7520      print_VkSampleCountFlags(obj->storageImageSampleCounts, "storageImageSampleCounts", 1);
7521 
7522      print_uint32_t(obj->maxSampleMaskWords, "maxSampleMaskWords", 1);
7523 
7524      print_VkBool32(obj->timestampComputeAndGraphics, "timestampComputeAndGraphics", 1);
7525 
7526      print_float(obj->timestampPeriod, "timestampPeriod", 1);
7527 
7528      print_uint32_t(obj->maxClipDistances, "maxClipDistances", 1);
7529 
7530      print_uint32_t(obj->maxCullDistances, "maxCullDistances", 1);
7531 
7532      print_uint32_t(obj->maxCombinedClipAndCullDistances, "maxCombinedClipAndCullDistances", 1);
7533 
7534      print_uint32_t(obj->discreteQueuePriorities, "discreteQueuePriorities", 1);
7535 
7536      PRINT_SPACE
7537      _OUT << "\"pointSizeRange\":" << std::endl;
7538      PRINT_SPACE
7539        _OUT << "[" << std::endl;
7540        for (unsigned int i = 0; i < 2; i++) {
7541            bool isCommaNeeded = (i+1) != 2;
7542            print_float(obj->pointSizeRange[i], "", isCommaNeeded);
7543        }
7544        PRINT_SPACE
7545        _OUT << "]" << "," << std::endl;
7546 
7547      PRINT_SPACE
7548      _OUT << "\"lineWidthRange\":" << std::endl;
7549      PRINT_SPACE
7550        _OUT << "[" << std::endl;
7551        for (unsigned int i = 0; i < 2; i++) {
7552            bool isCommaNeeded = (i+1) != 2;
7553            print_float(obj->lineWidthRange[i], "", isCommaNeeded);
7554        }
7555        PRINT_SPACE
7556        _OUT << "]" << "," << std::endl;
7557 
7558      print_float(obj->pointSizeGranularity, "pointSizeGranularity", 1);
7559 
7560      print_float(obj->lineWidthGranularity, "lineWidthGranularity", 1);
7561 
7562      print_VkBool32(obj->strictLines, "strictLines", 1);
7563 
7564      print_VkBool32(obj->standardSampleLocations, "standardSampleLocations", 1);
7565 
7566      print_VkDeviceSize(obj->optimalBufferCopyOffsetAlignment, "optimalBufferCopyOffsetAlignment", 1);
7567 
7568      print_VkDeviceSize(obj->optimalBufferCopyRowPitchAlignment, "optimalBufferCopyRowPitchAlignment", 1);
7569 
7570      print_VkDeviceSize(obj->nonCoherentAtomSize, "nonCoherentAtomSize", 0);
7571 
7572      INDENT(-4);
7573      PRINT_SPACE
7574      if (commaNeeded)
7575          _OUT << "}," << std::endl;
7576      else
7577          _OUT << "}" << std::endl;
7578 }
7579 
print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj,const std::string & s,bool commaNeeded=true)7580 static void print_VkPhysicalDeviceMemoryProperties(VkPhysicalDeviceMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
7581      PRINT_SPACE
7582      _OUT << "{" << std::endl;
7583      INDENT(4);
7584 
7585      print_uint32_t(obj.memoryTypeCount, "memoryTypeCount", 1);
7586 
7587      PRINT_SPACE
7588      _OUT << "\"memoryTypes\":" << std::endl;
7589      PRINT_SPACE
7590        _OUT << "[" << std::endl;
7591        for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++) {
7592            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_TYPES;
7593            print_VkMemoryType(obj.memoryTypes[i], "", isCommaNeeded);
7594        }
7595        PRINT_SPACE
7596        _OUT << "]" << "," << std::endl;
7597 
7598      print_uint32_t(obj.memoryHeapCount, "memoryHeapCount", 1);
7599 
7600      PRINT_SPACE
7601      _OUT << "\"memoryHeaps\":" << std::endl;
7602      PRINT_SPACE
7603        _OUT << "[" << std::endl;
7604        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
7605            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
7606            print_VkMemoryHeap(obj.memoryHeaps[i], "", isCommaNeeded);
7607        }
7608        PRINT_SPACE
7609        _OUT << "]" << "" << std::endl;
7610 
7611      INDENT(-4);
7612      PRINT_SPACE
7613      if (commaNeeded)
7614          _OUT << "}," << std::endl;
7615      else
7616          _OUT << "}" << std::endl;
7617 }
print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj,const std::string & s,bool commaNeeded=true)7618 static void print_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
7619      PRINT_SPACE
7620      _OUT << "{" << std::endl;
7621      INDENT(4);
7622 
7623      print_uint32_t(obj->memoryTypeCount, "memoryTypeCount", 1);
7624 
7625      PRINT_SPACE
7626      _OUT << "\"memoryTypes\":" << std::endl;
7627      PRINT_SPACE
7628        _OUT << "[" << std::endl;
7629        for (unsigned int i = 0; i < VK_MAX_MEMORY_TYPES; i++) {
7630            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_TYPES;
7631            print_VkMemoryType(obj->memoryTypes[i], "", isCommaNeeded);
7632        }
7633        PRINT_SPACE
7634        _OUT << "]" << "," << std::endl;
7635 
7636      print_uint32_t(obj->memoryHeapCount, "memoryHeapCount", 1);
7637 
7638      PRINT_SPACE
7639      _OUT << "\"memoryHeaps\":" << std::endl;
7640      PRINT_SPACE
7641        _OUT << "[" << std::endl;
7642        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
7643            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
7644            print_VkMemoryHeap(obj->memoryHeaps[i], "", isCommaNeeded);
7645        }
7646        PRINT_SPACE
7647        _OUT << "]" << "" << std::endl;
7648 
7649      INDENT(-4);
7650      PRINT_SPACE
7651      if (commaNeeded)
7652          _OUT << "}," << std::endl;
7653      else
7654          _OUT << "}" << std::endl;
7655 }
7656 
print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj,const std::string & s,bool commaNeeded=true)7657 static void print_VkPhysicalDeviceSparseProperties(VkPhysicalDeviceSparseProperties obj, const std::string& s, bool commaNeeded=true) {
7658      PRINT_SPACE
7659      _OUT << "{" << std::endl;
7660      INDENT(4);
7661 
7662      print_VkBool32(obj.residencyStandard2DBlockShape, "residencyStandard2DBlockShape", 1);
7663 
7664      print_VkBool32(obj.residencyStandard2DMultisampleBlockShape, "residencyStandard2DMultisampleBlockShape", 1);
7665 
7666      print_VkBool32(obj.residencyStandard3DBlockShape, "residencyStandard3DBlockShape", 1);
7667 
7668      print_VkBool32(obj.residencyAlignedMipSize, "residencyAlignedMipSize", 1);
7669 
7670      print_VkBool32(obj.residencyNonResidentStrict, "residencyNonResidentStrict", 0);
7671 
7672      INDENT(-4);
7673      PRINT_SPACE
7674      if (commaNeeded)
7675          _OUT << "}," << std::endl;
7676      else
7677          _OUT << "}" << std::endl;
7678 }
print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj,const std::string & s,bool commaNeeded=true)7679 static void print_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * obj, const std::string& s, bool commaNeeded=true) {
7680      PRINT_SPACE
7681      _OUT << "{" << std::endl;
7682      INDENT(4);
7683 
7684      print_VkBool32(obj->residencyStandard2DBlockShape, "residencyStandard2DBlockShape", 1);
7685 
7686      print_VkBool32(obj->residencyStandard2DMultisampleBlockShape, "residencyStandard2DMultisampleBlockShape", 1);
7687 
7688      print_VkBool32(obj->residencyStandard3DBlockShape, "residencyStandard3DBlockShape", 1);
7689 
7690      print_VkBool32(obj->residencyAlignedMipSize, "residencyAlignedMipSize", 1);
7691 
7692      print_VkBool32(obj->residencyNonResidentStrict, "residencyNonResidentStrict", 0);
7693 
7694      INDENT(-4);
7695      PRINT_SPACE
7696      if (commaNeeded)
7697          _OUT << "}," << std::endl;
7698      else
7699          _OUT << "}" << std::endl;
7700 }
7701 
print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj,const std::string & s,bool commaNeeded=true)7702 static void print_VkPhysicalDeviceProperties(VkPhysicalDeviceProperties obj, const std::string& s, bool commaNeeded=true) {
7703      PRINT_SPACE
7704      _OUT << "{" << std::endl;
7705      INDENT(4);
7706 
7707      print_uint32_t(obj.apiVersion, "apiVersion", 1);
7708 
7709      print_uint32_t(obj.driverVersion, "driverVersion", 1);
7710 
7711      print_uint32_t(obj.vendorID, "vendorID", 1);
7712 
7713      print_uint32_t(obj.deviceID, "deviceID", 1);
7714 
7715      print_VkPhysicalDeviceType(obj.deviceType, "deviceType", 1);
7716 
7717      PRINT_SPACE
7718      _OUT << "\"deviceName\":" << std::endl;
7719      PRINT_SPACE
7720        _OUT << "[" << std::endl;
7721        for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++) {
7722            bool isCommaNeeded = (i+1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
7723            print_char(obj.deviceName[i], "", isCommaNeeded);
7724        }
7725        PRINT_SPACE
7726        _OUT << "]" << "," << std::endl;
7727 
7728      PRINT_SPACE
7729      _OUT << "\"pipelineCacheUUID\":" << std::endl;
7730      PRINT_SPACE
7731        _OUT << "[" << std::endl;
7732        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
7733            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
7734            print_uint8_t(obj.pipelineCacheUUID[i], "", isCommaNeeded);
7735        }
7736        PRINT_SPACE
7737        _OUT << "]" << "," << std::endl;
7738 
7739      PRINT_SPACE
7740      _OUT << "\"limits\": " << std::endl;
7741      {
7742            print_VkPhysicalDeviceLimits(obj.limits, "limits", 1);
7743      }
7744 
7745      PRINT_SPACE
7746      _OUT << "\"sparseProperties\": " << std::endl;
7747      {
7748            print_VkPhysicalDeviceSparseProperties(obj.sparseProperties, "sparseProperties", 0);
7749      }
7750 
7751      INDENT(-4);
7752      PRINT_SPACE
7753      if (commaNeeded)
7754          _OUT << "}," << std::endl;
7755      else
7756          _OUT << "}" << std::endl;
7757 }
print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj,const std::string & s,bool commaNeeded=true)7758 static void print_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * obj, const std::string& s, bool commaNeeded=true) {
7759      PRINT_SPACE
7760      _OUT << "{" << std::endl;
7761      INDENT(4);
7762 
7763      print_uint32_t(obj->apiVersion, "apiVersion", 1);
7764 
7765      print_uint32_t(obj->driverVersion, "driverVersion", 1);
7766 
7767      print_uint32_t(obj->vendorID, "vendorID", 1);
7768 
7769      print_uint32_t(obj->deviceID, "deviceID", 1);
7770 
7771      print_VkPhysicalDeviceType(obj->deviceType, "deviceType", 1);
7772 
7773      PRINT_SPACE
7774      _OUT << "\"deviceName\":" << std::endl;
7775      PRINT_SPACE
7776        _OUT << "[" << std::endl;
7777        for (unsigned int i = 0; i < VK_MAX_PHYSICAL_DEVICE_NAME_SIZE; i++) {
7778            bool isCommaNeeded = (i+1) != VK_MAX_PHYSICAL_DEVICE_NAME_SIZE;
7779            print_char(obj->deviceName[i], "", isCommaNeeded);
7780        }
7781        PRINT_SPACE
7782        _OUT << "]" << "," << std::endl;
7783 
7784      PRINT_SPACE
7785      _OUT << "\"pipelineCacheUUID\":" << std::endl;
7786      PRINT_SPACE
7787        _OUT << "[" << std::endl;
7788        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
7789            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
7790            print_uint8_t(obj->pipelineCacheUUID[i], "", isCommaNeeded);
7791        }
7792        PRINT_SPACE
7793        _OUT << "]" << "," << std::endl;
7794 
7795      PRINT_SPACE
7796      _OUT << "\"limits\": " << std::endl;
7797      {
7798            print_VkPhysicalDeviceLimits(obj->limits, "limits", 1);
7799      }
7800 
7801      PRINT_SPACE
7802      _OUT << "\"sparseProperties\": " << std::endl;
7803      {
7804            print_VkPhysicalDeviceSparseProperties(obj->sparseProperties, "sparseProperties", 0);
7805      }
7806 
7807      INDENT(-4);
7808      PRINT_SPACE
7809      if (commaNeeded)
7810          _OUT << "}," << std::endl;
7811      else
7812          _OUT << "}" << std::endl;
7813 }
7814 
print_VkQueueFamilyProperties(VkQueueFamilyProperties obj,const std::string & s,bool commaNeeded=true)7815 static void print_VkQueueFamilyProperties(VkQueueFamilyProperties obj, const std::string& s, bool commaNeeded=true) {
7816      PRINT_SPACE
7817      _OUT << "{" << std::endl;
7818      INDENT(4);
7819 
7820      print_VkQueueFlags(obj.queueFlags, "queueFlags", 1);
7821 
7822      print_uint32_t(obj.queueCount, "queueCount", 1);
7823 
7824      print_uint32_t(obj.timestampValidBits, "timestampValidBits", 1);
7825 
7826      PRINT_SPACE
7827      _OUT << "\"minImageTransferGranularity\": " << std::endl;
7828      {
7829            print_VkExtent3D(obj.minImageTransferGranularity, "minImageTransferGranularity", 0);
7830      }
7831 
7832      INDENT(-4);
7833      PRINT_SPACE
7834      if (commaNeeded)
7835          _OUT << "}," << std::endl;
7836      else
7837          _OUT << "}" << std::endl;
7838 }
print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj,const std::string & s,bool commaNeeded=true)7839 static void print_VkQueueFamilyProperties(const VkQueueFamilyProperties * obj, const std::string& s, bool commaNeeded=true) {
7840      PRINT_SPACE
7841      _OUT << "{" << std::endl;
7842      INDENT(4);
7843 
7844      print_VkQueueFlags(obj->queueFlags, "queueFlags", 1);
7845 
7846      print_uint32_t(obj->queueCount, "queueCount", 1);
7847 
7848      print_uint32_t(obj->timestampValidBits, "timestampValidBits", 1);
7849 
7850      PRINT_SPACE
7851      _OUT << "\"minImageTransferGranularity\": " << std::endl;
7852      {
7853            print_VkExtent3D(obj->minImageTransferGranularity, "minImageTransferGranularity", 0);
7854      }
7855 
7856      INDENT(-4);
7857      PRINT_SPACE
7858      if (commaNeeded)
7859          _OUT << "}," << std::endl;
7860      else
7861          _OUT << "}" << std::endl;
7862 }
7863 
print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj,const std::string & s,bool commaNeeded=true)7864 static void print_VkDeviceQueueCreateInfo(VkDeviceQueueCreateInfo obj, const std::string& s, bool commaNeeded=true) {
7865      PRINT_SPACE
7866      _OUT << "{" << std::endl;
7867      INDENT(4);
7868 
7869      print_VkStructureType(obj.sType, "sType", 1);
7870 
7871       if (obj.pNext) {
7872          dumpPNextChain(obj.pNext);
7873       } else {
7874          PRINT_SPACE
7875          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
7876      }
7877 
7878      print_VkDeviceQueueCreateFlags(obj.flags, "flags", 1);
7879 
7880      print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 1);
7881 
7882      print_uint32_t(obj.queueCount, "queueCount", 1);
7883 
7884      PRINT_SPACE
7885      _OUT << "\"pQueuePriorities\":" << std::endl;
7886      PRINT_SPACE
7887      if (obj.pQueuePriorities) {
7888        _OUT << "[" << std::endl;
7889        for (unsigned int i = 0; i < obj.queueCount; i++) {
7890            bool isCommaNeeded = (i+1) != obj.queueCount;
7891            print_float(obj.pQueuePriorities[i], "", isCommaNeeded);
7892        }
7893        PRINT_SPACE
7894        _OUT << "]" << "" << std::endl;
7895      } else {
7896        _OUT << "\"NULL\"" << "" << std::endl;
7897      }
7898 
7899      INDENT(-4);
7900      PRINT_SPACE
7901      if (commaNeeded)
7902          _OUT << "}," << std::endl;
7903      else
7904          _OUT << "}" << std::endl;
7905 }
print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj,const std::string & s,bool commaNeeded=true)7906 static void print_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
7907      PRINT_SPACE
7908      _OUT << "{" << std::endl;
7909      INDENT(4);
7910 
7911      print_VkStructureType(obj->sType, "sType", 1);
7912 
7913       if (obj->pNext) {
7914          dumpPNextChain(obj->pNext);
7915       } else {
7916          PRINT_SPACE
7917          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
7918      }
7919 
7920      print_VkDeviceQueueCreateFlags(obj->flags, "flags", 1);
7921 
7922      print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 1);
7923 
7924      print_uint32_t(obj->queueCount, "queueCount", 1);
7925 
7926      PRINT_SPACE
7927      _OUT << "\"pQueuePriorities\":" << std::endl;
7928      PRINT_SPACE
7929      if (obj->pQueuePriorities) {
7930        _OUT << "[" << std::endl;
7931        for (unsigned int i = 0; i < obj->queueCount; i++) {
7932            bool isCommaNeeded = (i+1) != obj->queueCount;
7933            print_float(obj->pQueuePriorities[i], "", isCommaNeeded);
7934        }
7935        PRINT_SPACE
7936        _OUT << "]" << "" << std::endl;
7937      } else {
7938        _OUT << "\"NULL\"" << "" << std::endl;
7939      }
7940 
7941      INDENT(-4);
7942      PRINT_SPACE
7943      if (commaNeeded)
7944          _OUT << "}," << std::endl;
7945      else
7946          _OUT << "}" << std::endl;
7947 }
7948 
print_VkDeviceCreateInfo(VkDeviceCreateInfo obj,const std::string & s,bool commaNeeded=true)7949 static void print_VkDeviceCreateInfo(VkDeviceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
7950      PRINT_SPACE
7951      _OUT << "{" << std::endl;
7952      INDENT(4);
7953 
7954      print_VkStructureType(obj.sType, "sType", 1);
7955 
7956       if (obj.pNext) {
7957          dumpPNextChain(obj.pNext);
7958       } else {
7959          PRINT_SPACE
7960          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
7961      }
7962 
7963      print_VkDeviceCreateFlags(obj.flags, "flags", 1);
7964 
7965      print_uint32_t(obj.queueCreateInfoCount, "queueCreateInfoCount", 1);
7966 
7967      PRINT_SPACE
7968      _OUT << "\"pQueueCreateInfos\": " << std::endl;
7969      if (obj.pQueueCreateInfos) {
7970          PRINT_SPACE
7971          _OUT << "[" << std::endl;
7972          for (unsigned int i = 0; i < obj.queueCreateInfoCount; i++) {
7973            if (i+1 == obj.queueCreateInfoCount)
7974                print_VkDeviceQueueCreateInfo(obj.pQueueCreateInfos[i], "pQueueCreateInfos", 0);
7975            else
7976                print_VkDeviceQueueCreateInfo(obj.pQueueCreateInfos[i], "pQueueCreateInfos", 1);
7977          }
7978          PRINT_SPACE
7979          _OUT << "]," << std::endl;
7980     }
7981      else
7982      {
7983          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
7984      }
7985 
7986      print_uint32_t(obj.enabledLayerCount, "enabledLayerCount", 1);
7987 
7988      print_char(obj.ppEnabledLayerNames, "ppEnabledLayerNames", 1);
7989 
7990      print_uint32_t(obj.enabledExtensionCount, "enabledExtensionCount", 1);
7991 
7992      print_char(obj.ppEnabledExtensionNames, "ppEnabledExtensionNames", 1);
7993 
7994      PRINT_SPACE
7995      _OUT << "\"pEnabledFeatures\": " << std::endl;
7996      if (obj.pEnabledFeatures) {
7997            print_VkPhysicalDeviceFeatures(obj.pEnabledFeatures, "pEnabledFeatures", 0);
7998      }
7999      else
8000      {
8001          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
8002      }
8003 
8004      INDENT(-4);
8005      PRINT_SPACE
8006      if (commaNeeded)
8007          _OUT << "}," << std::endl;
8008      else
8009          _OUT << "}" << std::endl;
8010 }
print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj,const std::string & s,bool commaNeeded=true)8011 static void print_VkDeviceCreateInfo(const VkDeviceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8012      PRINT_SPACE
8013      _OUT << "{" << std::endl;
8014      INDENT(4);
8015 
8016      print_VkStructureType(obj->sType, "sType", 1);
8017 
8018       if (obj->pNext) {
8019          dumpPNextChain(obj->pNext);
8020       } else {
8021          PRINT_SPACE
8022          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8023      }
8024 
8025      print_VkDeviceCreateFlags(obj->flags, "flags", 1);
8026 
8027      print_uint32_t(obj->queueCreateInfoCount, "queueCreateInfoCount", 1);
8028 
8029      PRINT_SPACE
8030      _OUT << "\"pQueueCreateInfos\": " << std::endl;
8031      if (obj->pQueueCreateInfos) {
8032          PRINT_SPACE
8033          _OUT << "[" << std::endl;
8034          for (unsigned int i = 0; i < obj->queueCreateInfoCount; i++) {
8035            if (i+1 == obj->queueCreateInfoCount)
8036                print_VkDeviceQueueCreateInfo(obj->pQueueCreateInfos[i], "pQueueCreateInfos", 0);
8037            else
8038                print_VkDeviceQueueCreateInfo(obj->pQueueCreateInfos[i], "pQueueCreateInfos", 1);
8039          }
8040          PRINT_SPACE
8041          _OUT << "]," << std::endl;
8042     }
8043      else
8044      {
8045          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
8046      }
8047 
8048      print_uint32_t(obj->enabledLayerCount, "enabledLayerCount", 1);
8049 
8050      print_char(obj->ppEnabledLayerNames, "ppEnabledLayerNames", 1);
8051 
8052      print_uint32_t(obj->enabledExtensionCount, "enabledExtensionCount", 1);
8053 
8054      print_char(obj->ppEnabledExtensionNames, "ppEnabledExtensionNames", 1);
8055 
8056      PRINT_SPACE
8057      _OUT << "\"pEnabledFeatures\": " << std::endl;
8058      if (obj->pEnabledFeatures) {
8059            print_VkPhysicalDeviceFeatures(obj->pEnabledFeatures, "pEnabledFeatures", 0);
8060      }
8061      else
8062      {
8063          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
8064      }
8065 
8066      INDENT(-4);
8067      PRINT_SPACE
8068      if (commaNeeded)
8069          _OUT << "}," << std::endl;
8070      else
8071          _OUT << "}" << std::endl;
8072 }
8073 
print_VkExtensionProperties(VkExtensionProperties obj,const std::string & s,bool commaNeeded=true)8074 static void print_VkExtensionProperties(VkExtensionProperties obj, const std::string& s, bool commaNeeded=true) {
8075      PRINT_SPACE
8076      _OUT << "{" << std::endl;
8077      INDENT(4);
8078 
8079      PRINT_SPACE
8080      _OUT << "\"extensionName\":" << std::endl;
8081      PRINT_SPACE
8082        _OUT << "[" << std::endl;
8083        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8084            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8085            print_char(obj.extensionName[i], "", isCommaNeeded);
8086        }
8087        PRINT_SPACE
8088        _OUT << "]" << "," << std::endl;
8089 
8090      print_uint32_t(obj.specVersion, "specVersion", 0);
8091 
8092      INDENT(-4);
8093      PRINT_SPACE
8094      if (commaNeeded)
8095          _OUT << "}," << std::endl;
8096      else
8097          _OUT << "}" << std::endl;
8098 }
print_VkExtensionProperties(const VkExtensionProperties * obj,const std::string & s,bool commaNeeded=true)8099 static void print_VkExtensionProperties(const VkExtensionProperties * obj, const std::string& s, bool commaNeeded=true) {
8100      PRINT_SPACE
8101      _OUT << "{" << std::endl;
8102      INDENT(4);
8103 
8104      PRINT_SPACE
8105      _OUT << "\"extensionName\":" << std::endl;
8106      PRINT_SPACE
8107        _OUT << "[" << std::endl;
8108        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8109            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8110            print_char(obj->extensionName[i], "", isCommaNeeded);
8111        }
8112        PRINT_SPACE
8113        _OUT << "]" << "," << std::endl;
8114 
8115      print_uint32_t(obj->specVersion, "specVersion", 0);
8116 
8117      INDENT(-4);
8118      PRINT_SPACE
8119      if (commaNeeded)
8120          _OUT << "}," << std::endl;
8121      else
8122          _OUT << "}" << std::endl;
8123 }
8124 
print_VkLayerProperties(VkLayerProperties obj,const std::string & s,bool commaNeeded=true)8125 static void print_VkLayerProperties(VkLayerProperties obj, const std::string& s, bool commaNeeded=true) {
8126      PRINT_SPACE
8127      _OUT << "{" << std::endl;
8128      INDENT(4);
8129 
8130      PRINT_SPACE
8131      _OUT << "\"layerName\":" << std::endl;
8132      PRINT_SPACE
8133        _OUT << "[" << std::endl;
8134        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8135            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8136            print_char(obj.layerName[i], "", isCommaNeeded);
8137        }
8138        PRINT_SPACE
8139        _OUT << "]" << "," << std::endl;
8140 
8141      print_uint32_t(obj.specVersion, "specVersion", 1);
8142 
8143      print_uint32_t(obj.implementationVersion, "implementationVersion", 1);
8144 
8145      PRINT_SPACE
8146      _OUT << "\"description\":" << std::endl;
8147      PRINT_SPACE
8148        _OUT << "[" << std::endl;
8149        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
8150            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
8151            print_char(obj.description[i], "", isCommaNeeded);
8152        }
8153        PRINT_SPACE
8154        _OUT << "]" << "" << std::endl;
8155 
8156      INDENT(-4);
8157      PRINT_SPACE
8158      if (commaNeeded)
8159          _OUT << "}," << std::endl;
8160      else
8161          _OUT << "}" << std::endl;
8162 }
print_VkLayerProperties(const VkLayerProperties * obj,const std::string & s,bool commaNeeded=true)8163 static void print_VkLayerProperties(const VkLayerProperties * obj, const std::string& s, bool commaNeeded=true) {
8164      PRINT_SPACE
8165      _OUT << "{" << std::endl;
8166      INDENT(4);
8167 
8168      PRINT_SPACE
8169      _OUT << "\"layerName\":" << std::endl;
8170      PRINT_SPACE
8171        _OUT << "[" << std::endl;
8172        for (unsigned int i = 0; i < VK_MAX_EXTENSION_NAME_SIZE; i++) {
8173            bool isCommaNeeded = (i+1) != VK_MAX_EXTENSION_NAME_SIZE;
8174            print_char(obj->layerName[i], "", isCommaNeeded);
8175        }
8176        PRINT_SPACE
8177        _OUT << "]" << "," << std::endl;
8178 
8179      print_uint32_t(obj->specVersion, "specVersion", 1);
8180 
8181      print_uint32_t(obj->implementationVersion, "implementationVersion", 1);
8182 
8183      PRINT_SPACE
8184      _OUT << "\"description\":" << std::endl;
8185      PRINT_SPACE
8186        _OUT << "[" << std::endl;
8187        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
8188            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
8189            print_char(obj->description[i], "", isCommaNeeded);
8190        }
8191        PRINT_SPACE
8192        _OUT << "]" << "" << std::endl;
8193 
8194      INDENT(-4);
8195      PRINT_SPACE
8196      if (commaNeeded)
8197          _OUT << "}," << std::endl;
8198      else
8199          _OUT << "}" << std::endl;
8200 }
8201 
print_VkSubmitInfo(VkSubmitInfo obj,const std::string & s,bool commaNeeded=true)8202 static void print_VkSubmitInfo(VkSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
8203      PRINT_SPACE
8204      _OUT << "{" << std::endl;
8205      INDENT(4);
8206 
8207      print_VkStructureType(obj.sType, "sType", 1);
8208 
8209       if (obj.pNext) {
8210          dumpPNextChain(obj.pNext);
8211       } else {
8212          PRINT_SPACE
8213          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8214      }
8215 
8216      print_uint32_t(obj.waitSemaphoreCount, "waitSemaphoreCount", 1);
8217 
8218      PRINT_SPACE
8219      _OUT << "\"pWaitSemaphores\":" << std::endl;
8220      PRINT_SPACE
8221      if (obj.pWaitSemaphores) {
8222        _OUT << "[" << std::endl;
8223        for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
8224            std:: stringstream tmp;
8225            tmp << "pWaitSemaphores" << "_" << i;
8226            bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
8227            print_VkSemaphore(obj.pWaitSemaphores[i], tmp.str(), isCommaNeeded);
8228        }
8229        PRINT_SPACE
8230        _OUT << "]" << "," << std::endl;
8231      } else {
8232        _OUT << "\"NULL\"" << "," << std::endl;
8233      }
8234 
8235      PRINT_SPACE
8236      _OUT << "\"pWaitDstStageMask\":" << std::endl;
8237      PRINT_SPACE
8238      if (obj.pWaitDstStageMask) {
8239        _OUT << "[" << std::endl;
8240        for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
8241            bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
8242            print_VkPipelineStageFlags(obj.pWaitDstStageMask[i], "", isCommaNeeded);
8243        }
8244        PRINT_SPACE
8245        _OUT << "]" << "," << std::endl;
8246      } else {
8247        _OUT << "\"NULL\"" << "," << std::endl;
8248      }
8249 
8250      print_uint32_t(obj.commandBufferCount, "commandBufferCount", 1);
8251 
8252      PRINT_SPACE
8253      _OUT << "\"pCommandBuffers\":" << std::endl;
8254      PRINT_SPACE
8255      if (obj.pCommandBuffers) {
8256        _OUT << "[" << std::endl;
8257        for (unsigned int i = 0; i < obj.commandBufferCount; i++) {
8258            std:: stringstream tmp;
8259            tmp << "pCommandBuffers" << "_" << i;
8260            bool isCommaNeeded = (i+1) != obj.commandBufferCount;
8261            print_VkCommandBuffer(obj.pCommandBuffers[i], tmp.str(), isCommaNeeded);
8262        }
8263        PRINT_SPACE
8264        _OUT << "]" << "," << std::endl;
8265      } else {
8266        _OUT << "\"NULL\"" << "," << std::endl;
8267      }
8268 
8269      print_uint32_t(obj.signalSemaphoreCount, "signalSemaphoreCount", 1);
8270 
8271      PRINT_SPACE
8272      _OUT << "\"pSignalSemaphores\":" << std::endl;
8273      PRINT_SPACE
8274      if (obj.pSignalSemaphores) {
8275        _OUT << "[" << std::endl;
8276        for (unsigned int i = 0; i < obj.signalSemaphoreCount; i++) {
8277            std:: stringstream tmp;
8278            tmp << "pSignalSemaphores" << "_" << i;
8279            bool isCommaNeeded = (i+1) != obj.signalSemaphoreCount;
8280            print_VkSemaphore(obj.pSignalSemaphores[i], tmp.str(), isCommaNeeded);
8281        }
8282        PRINT_SPACE
8283        _OUT << "]" << "" << std::endl;
8284      } else {
8285        _OUT << "\"NULL\"" << "" << std::endl;
8286      }
8287 
8288      INDENT(-4);
8289      PRINT_SPACE
8290      if (commaNeeded)
8291          _OUT << "}," << std::endl;
8292      else
8293          _OUT << "}" << std::endl;
8294 }
print_VkSubmitInfo(const VkSubmitInfo * obj,const std::string & s,bool commaNeeded=true)8295 static void print_VkSubmitInfo(const VkSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
8296      PRINT_SPACE
8297      _OUT << "{" << std::endl;
8298      INDENT(4);
8299 
8300      print_VkStructureType(obj->sType, "sType", 1);
8301 
8302       if (obj->pNext) {
8303          dumpPNextChain(obj->pNext);
8304       } else {
8305          PRINT_SPACE
8306          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8307      }
8308 
8309      print_uint32_t(obj->waitSemaphoreCount, "waitSemaphoreCount", 1);
8310 
8311      PRINT_SPACE
8312      _OUT << "\"pWaitSemaphores\":" << std::endl;
8313      PRINT_SPACE
8314      if (obj->pWaitSemaphores) {
8315        _OUT << "[" << std::endl;
8316        for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
8317            std:: stringstream tmp;
8318            tmp << "pWaitSemaphores" << "_" << i;
8319            bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
8320            print_VkSemaphore(obj->pWaitSemaphores[i], tmp.str(), isCommaNeeded);
8321        }
8322        PRINT_SPACE
8323        _OUT << "]" << "," << std::endl;
8324      } else {
8325        _OUT << "\"NULL\"" << "," << std::endl;
8326      }
8327 
8328      PRINT_SPACE
8329      _OUT << "\"pWaitDstStageMask\":" << std::endl;
8330      PRINT_SPACE
8331      if (obj->pWaitDstStageMask) {
8332        _OUT << "[" << std::endl;
8333        for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
8334            bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
8335            print_VkPipelineStageFlags(obj->pWaitDstStageMask[i], "", isCommaNeeded);
8336        }
8337        PRINT_SPACE
8338        _OUT << "]" << "," << std::endl;
8339      } else {
8340        _OUT << "\"NULL\"" << "," << std::endl;
8341      }
8342 
8343      print_uint32_t(obj->commandBufferCount, "commandBufferCount", 1);
8344 
8345      PRINT_SPACE
8346      _OUT << "\"pCommandBuffers\":" << std::endl;
8347      PRINT_SPACE
8348      if (obj->pCommandBuffers) {
8349        _OUT << "[" << std::endl;
8350        for (unsigned int i = 0; i < obj->commandBufferCount; i++) {
8351            std:: stringstream tmp;
8352            tmp << "pCommandBuffers" << "_" << i;
8353            bool isCommaNeeded = (i+1) != obj->commandBufferCount;
8354            print_VkCommandBuffer(obj->pCommandBuffers[i], tmp.str(), isCommaNeeded);
8355        }
8356        PRINT_SPACE
8357        _OUT << "]" << "," << std::endl;
8358      } else {
8359        _OUT << "\"NULL\"" << "," << std::endl;
8360      }
8361 
8362      print_uint32_t(obj->signalSemaphoreCount, "signalSemaphoreCount", 1);
8363 
8364      PRINT_SPACE
8365      _OUT << "\"pSignalSemaphores\":" << std::endl;
8366      PRINT_SPACE
8367      if (obj->pSignalSemaphores) {
8368        _OUT << "[" << std::endl;
8369        for (unsigned int i = 0; i < obj->signalSemaphoreCount; i++) {
8370            std:: stringstream tmp;
8371            tmp << "pSignalSemaphores" << "_" << i;
8372            bool isCommaNeeded = (i+1) != obj->signalSemaphoreCount;
8373            print_VkSemaphore(obj->pSignalSemaphores[i], tmp.str(), isCommaNeeded);
8374        }
8375        PRINT_SPACE
8376        _OUT << "]" << "" << std::endl;
8377      } else {
8378        _OUT << "\"NULL\"" << "" << std::endl;
8379      }
8380 
8381      INDENT(-4);
8382      PRINT_SPACE
8383      if (commaNeeded)
8384          _OUT << "}," << std::endl;
8385      else
8386          _OUT << "}" << std::endl;
8387 }
8388 
print_VkMappedMemoryRange(VkMappedMemoryRange obj,const std::string & s,bool commaNeeded=true)8389 static void print_VkMappedMemoryRange(VkMappedMemoryRange obj, const std::string& s, bool commaNeeded=true) {
8390      PRINT_SPACE
8391      _OUT << "{" << std::endl;
8392      INDENT(4);
8393 
8394      print_VkStructureType(obj.sType, "sType", 1);
8395 
8396       if (obj.pNext) {
8397          dumpPNextChain(obj.pNext);
8398       } else {
8399          PRINT_SPACE
8400          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8401      }
8402 
8403      // CTS : required value
8404      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
8405 
8406      print_VkDeviceSize(obj.offset, "offset", 1);
8407 
8408      print_VkDeviceSize(obj.size, "size", 0);
8409 
8410      INDENT(-4);
8411      PRINT_SPACE
8412      if (commaNeeded)
8413          _OUT << "}," << std::endl;
8414      else
8415          _OUT << "}" << std::endl;
8416 }
print_VkMappedMemoryRange(const VkMappedMemoryRange * obj,const std::string & s,bool commaNeeded=true)8417 static void print_VkMappedMemoryRange(const VkMappedMemoryRange * obj, const std::string& s, bool commaNeeded=true) {
8418      PRINT_SPACE
8419      _OUT << "{" << std::endl;
8420      INDENT(4);
8421 
8422      print_VkStructureType(obj->sType, "sType", 1);
8423 
8424       if (obj->pNext) {
8425          dumpPNextChain(obj->pNext);
8426       } else {
8427          PRINT_SPACE
8428          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8429      }
8430 
8431      // CTS : required value
8432      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
8433 
8434      print_VkDeviceSize(obj->offset, "offset", 1);
8435 
8436      print_VkDeviceSize(obj->size, "size", 0);
8437 
8438      INDENT(-4);
8439      PRINT_SPACE
8440      if (commaNeeded)
8441          _OUT << "}," << std::endl;
8442      else
8443          _OUT << "}" << std::endl;
8444 }
8445 
print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj,const std::string & s,bool commaNeeded=true)8446 static void print_VkMemoryAllocateInfo(VkMemoryAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
8447      PRINT_SPACE
8448      _OUT << "{" << std::endl;
8449      INDENT(4);
8450 
8451      print_VkStructureType(obj.sType, "sType", 1);
8452 
8453       if (obj.pNext) {
8454          dumpPNextChain(obj.pNext);
8455       } else {
8456          PRINT_SPACE
8457          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8458      }
8459 
8460      print_VkDeviceSize(obj.allocationSize, "allocationSize", 1);
8461 
8462      print_uint32_t(obj.memoryTypeIndex, "memoryTypeIndex", 0);
8463 
8464      INDENT(-4);
8465      PRINT_SPACE
8466      if (commaNeeded)
8467          _OUT << "}," << std::endl;
8468      else
8469          _OUT << "}" << std::endl;
8470 }
print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj,const std::string & s,bool commaNeeded=true)8471 static void print_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
8472      PRINT_SPACE
8473      _OUT << "{" << std::endl;
8474      INDENT(4);
8475 
8476      print_VkStructureType(obj->sType, "sType", 1);
8477 
8478       if (obj->pNext) {
8479          dumpPNextChain(obj->pNext);
8480       } else {
8481          PRINT_SPACE
8482          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8483      }
8484 
8485      print_VkDeviceSize(obj->allocationSize, "allocationSize", 1);
8486 
8487      print_uint32_t(obj->memoryTypeIndex, "memoryTypeIndex", 0);
8488 
8489      INDENT(-4);
8490      PRINT_SPACE
8491      if (commaNeeded)
8492          _OUT << "}," << std::endl;
8493      else
8494          _OUT << "}" << std::endl;
8495 }
8496 
print_VkMemoryRequirements(VkMemoryRequirements obj,const std::string & s,bool commaNeeded=true)8497 static void print_VkMemoryRequirements(VkMemoryRequirements obj, const std::string& s, bool commaNeeded=true) {
8498      PRINT_SPACE
8499      _OUT << "{" << std::endl;
8500      INDENT(4);
8501 
8502      print_VkDeviceSize(obj.size, "size", 1);
8503 
8504      print_VkDeviceSize(obj.alignment, "alignment", 1);
8505 
8506      print_uint32_t(obj.memoryTypeBits, "memoryTypeBits", 0);
8507 
8508      INDENT(-4);
8509      PRINT_SPACE
8510      if (commaNeeded)
8511          _OUT << "}," << std::endl;
8512      else
8513          _OUT << "}" << std::endl;
8514 }
print_VkMemoryRequirements(const VkMemoryRequirements * obj,const std::string & s,bool commaNeeded=true)8515 static void print_VkMemoryRequirements(const VkMemoryRequirements * obj, const std::string& s, bool commaNeeded=true) {
8516      PRINT_SPACE
8517      _OUT << "{" << std::endl;
8518      INDENT(4);
8519 
8520      print_VkDeviceSize(obj->size, "size", 1);
8521 
8522      print_VkDeviceSize(obj->alignment, "alignment", 1);
8523 
8524      print_uint32_t(obj->memoryTypeBits, "memoryTypeBits", 0);
8525 
8526      INDENT(-4);
8527      PRINT_SPACE
8528      if (commaNeeded)
8529          _OUT << "}," << std::endl;
8530      else
8531          _OUT << "}" << std::endl;
8532 }
8533 
print_VkImageSubresource(VkImageSubresource obj,const std::string & s,bool commaNeeded=true)8534 static void print_VkImageSubresource(VkImageSubresource obj, const std::string& s, bool commaNeeded=true) {
8535      PRINT_SPACE
8536      _OUT << "{" << std::endl;
8537      INDENT(4);
8538 
8539      print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
8540 
8541      print_uint32_t(obj.mipLevel, "mipLevel", 1);
8542 
8543      print_uint32_t(obj.arrayLayer, "arrayLayer", 0);
8544 
8545      INDENT(-4);
8546      PRINT_SPACE
8547      if (commaNeeded)
8548          _OUT << "}," << std::endl;
8549      else
8550          _OUT << "}" << std::endl;
8551 }
print_VkImageSubresource(const VkImageSubresource * obj,const std::string & s,bool commaNeeded=true)8552 static void print_VkImageSubresource(const VkImageSubresource * obj, const std::string& s, bool commaNeeded=true) {
8553      PRINT_SPACE
8554      _OUT << "{" << std::endl;
8555      INDENT(4);
8556 
8557      print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
8558 
8559      print_uint32_t(obj->mipLevel, "mipLevel", 1);
8560 
8561      print_uint32_t(obj->arrayLayer, "arrayLayer", 0);
8562 
8563      INDENT(-4);
8564      PRINT_SPACE
8565      if (commaNeeded)
8566          _OUT << "}," << std::endl;
8567      else
8568          _OUT << "}" << std::endl;
8569 }
8570 
print_VkFenceCreateInfo(VkFenceCreateInfo obj,const std::string & s,bool commaNeeded=true)8571 static void print_VkFenceCreateInfo(VkFenceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8572      PRINT_SPACE
8573      _OUT << "{" << std::endl;
8574      INDENT(4);
8575 
8576      print_VkStructureType(obj.sType, "sType", 1);
8577 
8578       if (obj.pNext) {
8579          dumpPNextChain(obj.pNext);
8580       } else {
8581          PRINT_SPACE
8582          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8583      }
8584 
8585      print_VkFenceCreateFlags(obj.flags, "flags", 0);
8586 
8587      INDENT(-4);
8588      PRINT_SPACE
8589      if (commaNeeded)
8590          _OUT << "}," << std::endl;
8591      else
8592          _OUT << "}" << std::endl;
8593 }
print_VkFenceCreateInfo(const VkFenceCreateInfo * obj,const std::string & s,bool commaNeeded=true)8594 static void print_VkFenceCreateInfo(const VkFenceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8595      PRINT_SPACE
8596      _OUT << "{" << std::endl;
8597      INDENT(4);
8598 
8599      print_VkStructureType(obj->sType, "sType", 1);
8600 
8601       if (obj->pNext) {
8602          dumpPNextChain(obj->pNext);
8603       } else {
8604          PRINT_SPACE
8605          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8606      }
8607 
8608      print_VkFenceCreateFlags(obj->flags, "flags", 0);
8609 
8610      INDENT(-4);
8611      PRINT_SPACE
8612      if (commaNeeded)
8613          _OUT << "}," << std::endl;
8614      else
8615          _OUT << "}" << std::endl;
8616 }
8617 
print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj,const std::string & s,bool commaNeeded=true)8618 static void print_VkSemaphoreCreateInfo(VkSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8619      PRINT_SPACE
8620      _OUT << "{" << std::endl;
8621      INDENT(4);
8622 
8623      print_VkStructureType(obj.sType, "sType", 1);
8624 
8625       if (obj.pNext) {
8626          dumpPNextChain(obj.pNext);
8627       } else {
8628          PRINT_SPACE
8629          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8630      }
8631 
8632      print_VkSemaphoreCreateFlags(obj.flags, "flags", 0);
8633 
8634      INDENT(-4);
8635      PRINT_SPACE
8636      if (commaNeeded)
8637          _OUT << "}," << std::endl;
8638      else
8639          _OUT << "}" << std::endl;
8640 }
print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj,const std::string & s,bool commaNeeded=true)8641 static void print_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8642      PRINT_SPACE
8643      _OUT << "{" << std::endl;
8644      INDENT(4);
8645 
8646      print_VkStructureType(obj->sType, "sType", 1);
8647 
8648       if (obj->pNext) {
8649          dumpPNextChain(obj->pNext);
8650       } else {
8651          PRINT_SPACE
8652          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8653      }
8654 
8655      print_VkSemaphoreCreateFlags(obj->flags, "flags", 0);
8656 
8657      INDENT(-4);
8658      PRINT_SPACE
8659      if (commaNeeded)
8660          _OUT << "}," << std::endl;
8661      else
8662          _OUT << "}" << std::endl;
8663 }
8664 
print_VkEventCreateInfo(VkEventCreateInfo obj,const std::string & s,bool commaNeeded=true)8665 static void print_VkEventCreateInfo(VkEventCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8666      PRINT_SPACE
8667      _OUT << "{" << std::endl;
8668      INDENT(4);
8669 
8670      print_VkStructureType(obj.sType, "sType", 1);
8671 
8672       if (obj.pNext) {
8673          dumpPNextChain(obj.pNext);
8674       } else {
8675          PRINT_SPACE
8676          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8677      }
8678 
8679      print_VkEventCreateFlags(obj.flags, "flags", 0);
8680 
8681      INDENT(-4);
8682      PRINT_SPACE
8683      if (commaNeeded)
8684          _OUT << "}," << std::endl;
8685      else
8686          _OUT << "}" << std::endl;
8687 }
print_VkEventCreateInfo(const VkEventCreateInfo * obj,const std::string & s,bool commaNeeded=true)8688 static void print_VkEventCreateInfo(const VkEventCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8689      PRINT_SPACE
8690      _OUT << "{" << std::endl;
8691      INDENT(4);
8692 
8693      print_VkStructureType(obj->sType, "sType", 1);
8694 
8695       if (obj->pNext) {
8696          dumpPNextChain(obj->pNext);
8697       } else {
8698          PRINT_SPACE
8699          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8700      }
8701 
8702      print_VkEventCreateFlags(obj->flags, "flags", 0);
8703 
8704      INDENT(-4);
8705      PRINT_SPACE
8706      if (commaNeeded)
8707          _OUT << "}," << std::endl;
8708      else
8709          _OUT << "}" << std::endl;
8710 }
8711 
print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)8712 static void print_VkQueryPoolCreateInfo(VkQueryPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8713      PRINT_SPACE
8714      _OUT << "{" << std::endl;
8715      INDENT(4);
8716 
8717      print_VkStructureType(obj.sType, "sType", 1);
8718 
8719       if (obj.pNext) {
8720          dumpPNextChain(obj.pNext);
8721       } else {
8722          PRINT_SPACE
8723          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8724      }
8725 
8726      print_VkQueryPoolCreateFlags(obj.flags, "flags", 1);
8727 
8728      print_VkQueryType(obj.queryType, "queryType", 1);
8729 
8730      print_uint32_t(obj.queryCount, "queryCount", 1);
8731 
8732      print_VkQueryPipelineStatisticFlags(obj.pipelineStatistics, "pipelineStatistics", 0);
8733 
8734      INDENT(-4);
8735      PRINT_SPACE
8736      if (commaNeeded)
8737          _OUT << "}," << std::endl;
8738      else
8739          _OUT << "}" << std::endl;
8740 }
print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)8741 static void print_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8742      PRINT_SPACE
8743      _OUT << "{" << std::endl;
8744      INDENT(4);
8745 
8746      print_VkStructureType(obj->sType, "sType", 1);
8747 
8748       if (obj->pNext) {
8749          dumpPNextChain(obj->pNext);
8750       } else {
8751          PRINT_SPACE
8752          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8753      }
8754 
8755      print_VkQueryPoolCreateFlags(obj->flags, "flags", 1);
8756 
8757      print_VkQueryType(obj->queryType, "queryType", 1);
8758 
8759      print_uint32_t(obj->queryCount, "queryCount", 1);
8760 
8761      print_VkQueryPipelineStatisticFlags(obj->pipelineStatistics, "pipelineStatistics", 0);
8762 
8763      INDENT(-4);
8764      PRINT_SPACE
8765      if (commaNeeded)
8766          _OUT << "}," << std::endl;
8767      else
8768          _OUT << "}" << std::endl;
8769 }
8770 
print_VkBufferCreateInfo(VkBufferCreateInfo obj,const std::string & s,bool commaNeeded=true)8771 static void print_VkBufferCreateInfo(VkBufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8772      PRINT_SPACE
8773      _OUT << "{" << std::endl;
8774      INDENT(4);
8775 
8776      print_VkStructureType(obj.sType, "sType", 1);
8777 
8778       if (obj.pNext) {
8779          dumpPNextChain(obj.pNext);
8780       } else {
8781          PRINT_SPACE
8782          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8783      }
8784 
8785      print_VkBufferCreateFlags(obj.flags, "flags", 1);
8786 
8787      print_VkDeviceSize(obj.size, "size", 1);
8788 
8789      print_VkBufferUsageFlags(obj.usage, "usage", 1);
8790 
8791      print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
8792 
8793      print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
8794 
8795      PRINT_SPACE
8796      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
8797      PRINT_SPACE
8798      if (obj.pQueueFamilyIndices) {
8799        _OUT << "[" << std::endl;
8800        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
8801            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
8802            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
8803        }
8804        PRINT_SPACE
8805        _OUT << "]" << "" << std::endl;
8806      } else {
8807        _OUT << "\"NULL\"" << "" << std::endl;
8808      }
8809 
8810      INDENT(-4);
8811      PRINT_SPACE
8812      if (commaNeeded)
8813          _OUT << "}," << std::endl;
8814      else
8815          _OUT << "}" << std::endl;
8816 }
print_VkBufferCreateInfo(const VkBufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)8817 static void print_VkBufferCreateInfo(const VkBufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8818      PRINT_SPACE
8819      _OUT << "{" << std::endl;
8820      INDENT(4);
8821 
8822      print_VkStructureType(obj->sType, "sType", 1);
8823 
8824       if (obj->pNext) {
8825          dumpPNextChain(obj->pNext);
8826       } else {
8827          PRINT_SPACE
8828          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8829      }
8830 
8831      print_VkBufferCreateFlags(obj->flags, "flags", 1);
8832 
8833      print_VkDeviceSize(obj->size, "size", 1);
8834 
8835      print_VkBufferUsageFlags(obj->usage, "usage", 1);
8836 
8837      print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
8838 
8839      print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
8840 
8841      PRINT_SPACE
8842      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
8843      PRINT_SPACE
8844      if (obj->pQueueFamilyIndices) {
8845        _OUT << "[" << std::endl;
8846        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
8847            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
8848            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
8849        }
8850        PRINT_SPACE
8851        _OUT << "]" << "" << std::endl;
8852      } else {
8853        _OUT << "\"NULL\"" << "" << std::endl;
8854      }
8855 
8856      INDENT(-4);
8857      PRINT_SPACE
8858      if (commaNeeded)
8859          _OUT << "}," << std::endl;
8860      else
8861          _OUT << "}" << std::endl;
8862 }
8863 
print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj,const std::string & s,bool commaNeeded=true)8864 static void print_VkBufferViewCreateInfo(VkBufferViewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8865      PRINT_SPACE
8866      _OUT << "{" << std::endl;
8867      INDENT(4);
8868 
8869      print_VkStructureType(obj.sType, "sType", 1);
8870 
8871       if (obj.pNext) {
8872          dumpPNextChain(obj.pNext);
8873       } else {
8874          PRINT_SPACE
8875          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8876      }
8877 
8878      print_VkBufferViewCreateFlags(obj.flags, "flags", 1);
8879 
8880      // CTS : required value
8881      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
8882 
8883      print_VkFormat(obj.format, "format", 1);
8884 
8885      print_VkDeviceSize(obj.offset, "offset", 1);
8886 
8887      print_VkDeviceSize(obj.range, "range", 0);
8888 
8889      INDENT(-4);
8890      PRINT_SPACE
8891      if (commaNeeded)
8892          _OUT << "}," << std::endl;
8893      else
8894          _OUT << "}" << std::endl;
8895 }
print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj,const std::string & s,bool commaNeeded=true)8896 static void print_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8897      PRINT_SPACE
8898      _OUT << "{" << std::endl;
8899      INDENT(4);
8900 
8901      print_VkStructureType(obj->sType, "sType", 1);
8902 
8903       if (obj->pNext) {
8904          dumpPNextChain(obj->pNext);
8905       } else {
8906          PRINT_SPACE
8907          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8908      }
8909 
8910      print_VkBufferViewCreateFlags(obj->flags, "flags", 1);
8911 
8912      // CTS : required value
8913      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
8914 
8915      print_VkFormat(obj->format, "format", 1);
8916 
8917      print_VkDeviceSize(obj->offset, "offset", 1);
8918 
8919      print_VkDeviceSize(obj->range, "range", 0);
8920 
8921      INDENT(-4);
8922      PRINT_SPACE
8923      if (commaNeeded)
8924          _OUT << "}," << std::endl;
8925      else
8926          _OUT << "}" << std::endl;
8927 }
8928 
print_VkImageCreateInfo(VkImageCreateInfo obj,const std::string & s,bool commaNeeded=true)8929 static void print_VkImageCreateInfo(VkImageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
8930      PRINT_SPACE
8931      _OUT << "{" << std::endl;
8932      INDENT(4);
8933 
8934      print_VkStructureType(obj.sType, "sType", 1);
8935 
8936       if (obj.pNext) {
8937          dumpPNextChain(obj.pNext);
8938       } else {
8939          PRINT_SPACE
8940          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
8941      }
8942 
8943      print_VkImageCreateFlags(obj.flags, "flags", 1);
8944 
8945      print_VkImageType(obj.imageType, "imageType", 1);
8946 
8947      print_VkFormat(obj.format, "format", 1);
8948 
8949      PRINT_SPACE
8950      _OUT << "\"extent\": " << std::endl;
8951      {
8952            print_VkExtent3D(obj.extent, "extent", 1);
8953      }
8954 
8955      print_uint32_t(obj.mipLevels, "mipLevels", 1);
8956 
8957      print_uint32_t(obj.arrayLayers, "arrayLayers", 1);
8958 
8959      print_VkSampleCountFlagBits(obj.samples, "samples", 1);
8960 
8961      print_VkImageTiling(obj.tiling, "tiling", 1);
8962 
8963      print_VkImageUsageFlags(obj.usage, "usage", 1);
8964 
8965      print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
8966 
8967      print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
8968 
8969      PRINT_SPACE
8970      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
8971      PRINT_SPACE
8972      if (obj.pQueueFamilyIndices) {
8973        _OUT << "[" << std::endl;
8974        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
8975            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
8976            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
8977        }
8978        PRINT_SPACE
8979        _OUT << "]" << "," << std::endl;
8980      } else {
8981        _OUT << "\"NULL\"" << "," << std::endl;
8982      }
8983 
8984      print_VkImageLayout(obj.initialLayout, "initialLayout", 0);
8985 
8986      INDENT(-4);
8987      PRINT_SPACE
8988      if (commaNeeded)
8989          _OUT << "}," << std::endl;
8990      else
8991          _OUT << "}" << std::endl;
8992 }
print_VkImageCreateInfo(const VkImageCreateInfo * obj,const std::string & s,bool commaNeeded=true)8993 static void print_VkImageCreateInfo(const VkImageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
8994      PRINT_SPACE
8995      _OUT << "{" << std::endl;
8996      INDENT(4);
8997 
8998      print_VkStructureType(obj->sType, "sType", 1);
8999 
9000       if (obj->pNext) {
9001          dumpPNextChain(obj->pNext);
9002       } else {
9003          PRINT_SPACE
9004          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9005      }
9006 
9007      print_VkImageCreateFlags(obj->flags, "flags", 1);
9008 
9009      print_VkImageType(obj->imageType, "imageType", 1);
9010 
9011      print_VkFormat(obj->format, "format", 1);
9012 
9013      PRINT_SPACE
9014      _OUT << "\"extent\": " << std::endl;
9015      {
9016            print_VkExtent3D(obj->extent, "extent", 1);
9017      }
9018 
9019      print_uint32_t(obj->mipLevels, "mipLevels", 1);
9020 
9021      print_uint32_t(obj->arrayLayers, "arrayLayers", 1);
9022 
9023      print_VkSampleCountFlagBits(obj->samples, "samples", 1);
9024 
9025      print_VkImageTiling(obj->tiling, "tiling", 1);
9026 
9027      print_VkImageUsageFlags(obj->usage, "usage", 1);
9028 
9029      print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
9030 
9031      print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
9032 
9033      PRINT_SPACE
9034      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
9035      PRINT_SPACE
9036      if (obj->pQueueFamilyIndices) {
9037        _OUT << "[" << std::endl;
9038        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
9039            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
9040            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
9041        }
9042        PRINT_SPACE
9043        _OUT << "]" << "," << std::endl;
9044      } else {
9045        _OUT << "\"NULL\"" << "," << std::endl;
9046      }
9047 
9048      print_VkImageLayout(obj->initialLayout, "initialLayout", 0);
9049 
9050      INDENT(-4);
9051      PRINT_SPACE
9052      if (commaNeeded)
9053          _OUT << "}," << std::endl;
9054      else
9055          _OUT << "}" << std::endl;
9056 }
9057 
print_VkSubresourceLayout(VkSubresourceLayout obj,const std::string & s,bool commaNeeded=true)9058 static void print_VkSubresourceLayout(VkSubresourceLayout obj, const std::string& s, bool commaNeeded=true) {
9059      PRINT_SPACE
9060      _OUT << "{" << std::endl;
9061      INDENT(4);
9062 
9063      print_VkDeviceSize(obj.offset, "offset", 1);
9064 
9065      print_VkDeviceSize(obj.size, "size", 1);
9066 
9067      print_VkDeviceSize(obj.rowPitch, "rowPitch", 1);
9068 
9069      print_VkDeviceSize(obj.arrayPitch, "arrayPitch", 1);
9070 
9071      print_VkDeviceSize(obj.depthPitch, "depthPitch", 0);
9072 
9073      INDENT(-4);
9074      PRINT_SPACE
9075      if (commaNeeded)
9076          _OUT << "}," << std::endl;
9077      else
9078          _OUT << "}" << std::endl;
9079 }
print_VkSubresourceLayout(const VkSubresourceLayout * obj,const std::string & s,bool commaNeeded=true)9080 static void print_VkSubresourceLayout(const VkSubresourceLayout * obj, const std::string& s, bool commaNeeded=true) {
9081      PRINT_SPACE
9082      _OUT << "{" << std::endl;
9083      INDENT(4);
9084 
9085      print_VkDeviceSize(obj->offset, "offset", 1);
9086 
9087      print_VkDeviceSize(obj->size, "size", 1);
9088 
9089      print_VkDeviceSize(obj->rowPitch, "rowPitch", 1);
9090 
9091      print_VkDeviceSize(obj->arrayPitch, "arrayPitch", 1);
9092 
9093      print_VkDeviceSize(obj->depthPitch, "depthPitch", 0);
9094 
9095      INDENT(-4);
9096      PRINT_SPACE
9097      if (commaNeeded)
9098          _OUT << "}," << std::endl;
9099      else
9100          _OUT << "}" << std::endl;
9101 }
9102 
print_VkComponentMapping(VkComponentMapping obj,const std::string & s,bool commaNeeded=true)9103 static void print_VkComponentMapping(VkComponentMapping obj, const std::string& s, bool commaNeeded=true) {
9104      PRINT_SPACE
9105      _OUT << "{" << std::endl;
9106      INDENT(4);
9107 
9108      print_VkComponentSwizzle(obj.r, "r", 1);
9109 
9110      print_VkComponentSwizzle(obj.g, "g", 1);
9111 
9112      print_VkComponentSwizzle(obj.b, "b", 1);
9113 
9114      print_VkComponentSwizzle(obj.a, "a", 0);
9115 
9116      INDENT(-4);
9117      PRINT_SPACE
9118      if (commaNeeded)
9119          _OUT << "}," << std::endl;
9120      else
9121          _OUT << "}" << std::endl;
9122 }
print_VkComponentMapping(const VkComponentMapping * obj,const std::string & s,bool commaNeeded=true)9123 static void print_VkComponentMapping(const VkComponentMapping * obj, const std::string& s, bool commaNeeded=true) {
9124      PRINT_SPACE
9125      _OUT << "{" << std::endl;
9126      INDENT(4);
9127 
9128      print_VkComponentSwizzle(obj->r, "r", 1);
9129 
9130      print_VkComponentSwizzle(obj->g, "g", 1);
9131 
9132      print_VkComponentSwizzle(obj->b, "b", 1);
9133 
9134      print_VkComponentSwizzle(obj->a, "a", 0);
9135 
9136      INDENT(-4);
9137      PRINT_SPACE
9138      if (commaNeeded)
9139          _OUT << "}," << std::endl;
9140      else
9141          _OUT << "}" << std::endl;
9142 }
9143 
print_VkImageViewCreateInfo(VkImageViewCreateInfo obj,const std::string & s,bool commaNeeded=true)9144 static void print_VkImageViewCreateInfo(VkImageViewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9145      PRINT_SPACE
9146      _OUT << "{" << std::endl;
9147      INDENT(4);
9148 
9149      print_VkStructureType(obj.sType, "sType", 1);
9150 
9151       if (obj.pNext) {
9152          dumpPNextChain(obj.pNext);
9153       } else {
9154          PRINT_SPACE
9155          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9156      }
9157 
9158      print_VkImageViewCreateFlags(obj.flags, "flags", 1);
9159 
9160      // CTS : required value
9161      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
9162 
9163      print_VkImageViewType(obj.viewType, "viewType", 1);
9164 
9165      print_VkFormat(obj.format, "format", 1);
9166 
9167      PRINT_SPACE
9168      _OUT << "\"components\": " << std::endl;
9169      {
9170            print_VkComponentMapping(obj.components, "components", 1);
9171      }
9172 
9173      PRINT_SPACE
9174      _OUT << "\"subresourceRange\": " << std::endl;
9175      {
9176            print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
9177      }
9178 
9179      INDENT(-4);
9180      PRINT_SPACE
9181      if (commaNeeded)
9182          _OUT << "}," << std::endl;
9183      else
9184          _OUT << "}" << std::endl;
9185 }
print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj,const std::string & s,bool commaNeeded=true)9186 static void print_VkImageViewCreateInfo(const VkImageViewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9187      PRINT_SPACE
9188      _OUT << "{" << std::endl;
9189      INDENT(4);
9190 
9191      print_VkStructureType(obj->sType, "sType", 1);
9192 
9193       if (obj->pNext) {
9194          dumpPNextChain(obj->pNext);
9195       } else {
9196          PRINT_SPACE
9197          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9198      }
9199 
9200      print_VkImageViewCreateFlags(obj->flags, "flags", 1);
9201 
9202      // CTS : required value
9203      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
9204 
9205      print_VkImageViewType(obj->viewType, "viewType", 1);
9206 
9207      print_VkFormat(obj->format, "format", 1);
9208 
9209      PRINT_SPACE
9210      _OUT << "\"components\": " << std::endl;
9211      {
9212            print_VkComponentMapping(obj->components, "components", 1);
9213      }
9214 
9215      PRINT_SPACE
9216      _OUT << "\"subresourceRange\": " << std::endl;
9217      {
9218            print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
9219      }
9220 
9221      INDENT(-4);
9222      PRINT_SPACE
9223      if (commaNeeded)
9224          _OUT << "}," << std::endl;
9225      else
9226          _OUT << "}" << std::endl;
9227 }
9228 
print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj,const std::string & s,bool commaNeeded=true)9229 static void print_VkPipelineCacheCreateInfo(VkPipelineCacheCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9230      PRINT_SPACE
9231      _OUT << "{" << std::endl;
9232      INDENT(4);
9233 
9234      print_VkStructureType(obj.sType, "sType", 1);
9235 
9236       if (obj.pNext) {
9237          dumpPNextChain(obj.pNext);
9238       } else {
9239          PRINT_SPACE
9240          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9241      }
9242 
9243      print_VkPipelineCacheCreateFlags(obj.flags, "flags", 1);
9244 
9245      print_size_t(obj.initialDataSize, "initialDataSize", 1);
9246 
9247      print_void_data(obj.pInitialData, int(obj.initialDataSize), "pInitialData", 0);
9248 
9249      INDENT(-4);
9250      PRINT_SPACE
9251      if (commaNeeded)
9252          _OUT << "}," << std::endl;
9253      else
9254          _OUT << "}" << std::endl;
9255 }
print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj,const std::string & s,bool commaNeeded=true)9256 static void print_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9257      PRINT_SPACE
9258      _OUT << "{" << std::endl;
9259      INDENT(4);
9260 
9261      print_VkStructureType(obj->sType, "sType", 1);
9262 
9263       if (obj->pNext) {
9264          dumpPNextChain(obj->pNext);
9265       } else {
9266          PRINT_SPACE
9267          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9268      }
9269 
9270      print_VkPipelineCacheCreateFlags(obj->flags, "flags", 1);
9271 
9272      print_size_t(obj->initialDataSize, "initialDataSize", 1);
9273 
9274      print_void_data(obj->pInitialData, int(obj->initialDataSize), "pInitialData", 0);
9275 
9276      INDENT(-4);
9277      PRINT_SPACE
9278      if (commaNeeded)
9279          _OUT << "}," << std::endl;
9280      else
9281          _OUT << "}" << std::endl;
9282 }
9283 
print_VkSpecializationMapEntry(VkSpecializationMapEntry obj,const std::string & s,bool commaNeeded=true)9284 static void print_VkSpecializationMapEntry(VkSpecializationMapEntry obj, const std::string& s, bool commaNeeded=true) {
9285      PRINT_SPACE
9286      _OUT << "{" << std::endl;
9287      INDENT(4);
9288 
9289      print_uint32_t(obj.constantID, "constantID", 1);
9290 
9291      print_uint32_t(obj.offset, "offset", 1);
9292 
9293      print_size_t(obj.size, "size", 0);
9294 
9295      INDENT(-4);
9296      PRINT_SPACE
9297      if (commaNeeded)
9298          _OUT << "}," << std::endl;
9299      else
9300          _OUT << "}" << std::endl;
9301 }
print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj,const std::string & s,bool commaNeeded=true)9302 static void print_VkSpecializationMapEntry(const VkSpecializationMapEntry * obj, const std::string& s, bool commaNeeded=true) {
9303      PRINT_SPACE
9304      _OUT << "{" << std::endl;
9305      INDENT(4);
9306 
9307      print_uint32_t(obj->constantID, "constantID", 1);
9308 
9309      print_uint32_t(obj->offset, "offset", 1);
9310 
9311      print_size_t(obj->size, "size", 0);
9312 
9313      INDENT(-4);
9314      PRINT_SPACE
9315      if (commaNeeded)
9316          _OUT << "}," << std::endl;
9317      else
9318          _OUT << "}" << std::endl;
9319 }
9320 
print_VkSpecializationInfo(VkSpecializationInfo obj,const std::string & s,bool commaNeeded=true)9321 static void print_VkSpecializationInfo(VkSpecializationInfo obj, const std::string& s, bool commaNeeded=true) {
9322      PRINT_SPACE
9323      _OUT << "{" << std::endl;
9324      INDENT(4);
9325 
9326      print_uint32_t(obj.mapEntryCount, "mapEntryCount", 1);
9327 
9328      PRINT_SPACE
9329      _OUT << "\"pMapEntries\": " << std::endl;
9330      if (obj.pMapEntries) {
9331          PRINT_SPACE
9332          _OUT << "[" << std::endl;
9333          for (unsigned int i = 0; i < obj.mapEntryCount; i++) {
9334            if (i+1 == obj.mapEntryCount)
9335                print_VkSpecializationMapEntry(obj.pMapEntries[i], "pMapEntries", 0);
9336            else
9337                print_VkSpecializationMapEntry(obj.pMapEntries[i], "pMapEntries", 1);
9338          }
9339          PRINT_SPACE
9340          _OUT << "]," << std::endl;
9341     }
9342      else
9343      {
9344          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9345      }
9346 
9347      print_size_t(obj.dataSize, "dataSize", 1);
9348 
9349      print_void_data(obj.pData, int(obj.dataSize), "pData", 0);
9350 
9351      INDENT(-4);
9352      PRINT_SPACE
9353      if (commaNeeded)
9354          _OUT << "}," << std::endl;
9355      else
9356          _OUT << "}" << std::endl;
9357 }
print_VkSpecializationInfo(const VkSpecializationInfo * obj,const std::string & s,bool commaNeeded=true)9358 static void print_VkSpecializationInfo(const VkSpecializationInfo * obj, const std::string& s, bool commaNeeded=true) {
9359      PRINT_SPACE
9360      _OUT << "{" << std::endl;
9361      INDENT(4);
9362 
9363      print_uint32_t(obj->mapEntryCount, "mapEntryCount", 1);
9364 
9365      PRINT_SPACE
9366      _OUT << "\"pMapEntries\": " << std::endl;
9367      if (obj->pMapEntries) {
9368          PRINT_SPACE
9369          _OUT << "[" << std::endl;
9370          for (unsigned int i = 0; i < obj->mapEntryCount; i++) {
9371            if (i+1 == obj->mapEntryCount)
9372                print_VkSpecializationMapEntry(obj->pMapEntries[i], "pMapEntries", 0);
9373            else
9374                print_VkSpecializationMapEntry(obj->pMapEntries[i], "pMapEntries", 1);
9375          }
9376          PRINT_SPACE
9377          _OUT << "]," << std::endl;
9378     }
9379      else
9380      {
9381          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9382      }
9383 
9384      print_size_t(obj->dataSize, "dataSize", 1);
9385 
9386      print_void_data(obj->pData, int(obj->dataSize), "pData", 0);
9387 
9388      INDENT(-4);
9389      PRINT_SPACE
9390      if (commaNeeded)
9391          _OUT << "}," << std::endl;
9392      else
9393          _OUT << "}" << std::endl;
9394 }
9395 
print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj,const std::string & s,bool commaNeeded=true)9396 static void print_VkPipelineShaderStageCreateInfo(VkPipelineShaderStageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9397      PRINT_SPACE
9398      _OUT << "{" << std::endl;
9399      INDENT(4);
9400 
9401      print_VkStructureType(obj.sType, "sType", 1);
9402 
9403       if (obj.pNext) {
9404          dumpPNextChain(obj.pNext);
9405       } else {
9406          PRINT_SPACE
9407          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9408      }
9409 
9410      print_VkPipelineShaderStageCreateFlags(obj.flags, "flags", 1);
9411 
9412      print_VkShaderStageFlagBits(obj.stage, "stage", 1);
9413 
9414      // CTS : required value
9415      PRINT_SPACE    _OUT << "\"" << "module" << "\"" << " : " << obj.module.getInternal() << "," << std::endl;
9416 
9417      print_char(obj.pName, "pName", 1);
9418 
9419      PRINT_SPACE
9420      _OUT << "\"pSpecializationInfo\": " << std::endl;
9421      if (obj.pSpecializationInfo) {
9422            print_VkSpecializationInfo(obj.pSpecializationInfo, "pSpecializationInfo", 0);
9423      }
9424      else
9425      {
9426          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9427      }
9428 
9429      INDENT(-4);
9430      PRINT_SPACE
9431      if (commaNeeded)
9432          _OUT << "}," << std::endl;
9433      else
9434          _OUT << "}" << std::endl;
9435 }
print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj,const std::string & s,bool commaNeeded=true)9436 static void print_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9437      PRINT_SPACE
9438      _OUT << "{" << std::endl;
9439      INDENT(4);
9440 
9441      print_VkStructureType(obj->sType, "sType", 1);
9442 
9443       if (obj->pNext) {
9444          dumpPNextChain(obj->pNext);
9445       } else {
9446          PRINT_SPACE
9447          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9448      }
9449 
9450      print_VkPipelineShaderStageCreateFlags(obj->flags, "flags", 1);
9451 
9452      print_VkShaderStageFlagBits(obj->stage, "stage", 1);
9453 
9454      // CTS : required value
9455      PRINT_SPACE    _OUT << "\"" << "module" << "\"" << " : " << obj->module.getInternal() << "," << std::endl;
9456 
9457      print_char(obj->pName, "pName", 1);
9458 
9459      PRINT_SPACE
9460      _OUT << "\"pSpecializationInfo\": " << std::endl;
9461      if (obj->pSpecializationInfo) {
9462            print_VkSpecializationInfo(obj->pSpecializationInfo, "pSpecializationInfo", 0);
9463      }
9464      else
9465      {
9466          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9467      }
9468 
9469      INDENT(-4);
9470      PRINT_SPACE
9471      if (commaNeeded)
9472          _OUT << "}," << std::endl;
9473      else
9474          _OUT << "}" << std::endl;
9475 }
9476 
print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj,const std::string & s,bool commaNeeded=true)9477 static void print_VkComputePipelineCreateInfo(VkComputePipelineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9478      PRINT_SPACE
9479      _OUT << "{" << std::endl;
9480      INDENT(4);
9481 
9482      print_VkStructureType(obj.sType, "sType", 1);
9483 
9484       if (obj.pNext) {
9485          dumpPNextChain(obj.pNext);
9486       } else {
9487          PRINT_SPACE
9488          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9489      }
9490 
9491      print_VkPipelineCreateFlags(obj.flags, "flags", 1);
9492 
9493      PRINT_SPACE
9494      _OUT << "\"stage\": " << std::endl;
9495      {
9496            print_VkPipelineShaderStageCreateInfo(obj.stage, "stage", 1);
9497      }
9498 
9499      // CTS : required value
9500      PRINT_SPACE    _OUT << "\"" << "layout" << "\"" << " : " << obj.layout.getInternal() << "," << std::endl;
9501 
9502      // CTS : required value
9503      PRINT_SPACE    _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
9504 
9505      print_int32_t(obj.basePipelineIndex, "basePipelineIndex", 0);
9506 
9507      INDENT(-4);
9508      PRINT_SPACE
9509      if (commaNeeded)
9510          _OUT << "}," << std::endl;
9511      else
9512          _OUT << "}" << std::endl;
9513 }
print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj,const std::string & s,bool commaNeeded=true)9514 static void print_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9515      PRINT_SPACE
9516      _OUT << "{" << std::endl;
9517      INDENT(4);
9518 
9519      print_VkStructureType(obj->sType, "sType", 1);
9520 
9521       if (obj->pNext) {
9522          dumpPNextChain(obj->pNext);
9523       } else {
9524          PRINT_SPACE
9525          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9526      }
9527 
9528      print_VkPipelineCreateFlags(obj->flags, "flags", 1);
9529 
9530      PRINT_SPACE
9531      _OUT << "\"stage\": " << std::endl;
9532      {
9533            print_VkPipelineShaderStageCreateInfo(obj->stage, "stage", 1);
9534      }
9535 
9536      // CTS : required value
9537      PRINT_SPACE    _OUT << "\"" << "layout" << "\"" << " : " << obj->layout.getInternal() << "," << std::endl;
9538 
9539      // CTS : required value
9540      PRINT_SPACE    _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
9541 
9542      print_int32_t(obj->basePipelineIndex, "basePipelineIndex", 0);
9543 
9544      INDENT(-4);
9545      PRINT_SPACE
9546      if (commaNeeded)
9547          _OUT << "}," << std::endl;
9548      else
9549          _OUT << "}" << std::endl;
9550 }
9551 
print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj,const std::string & s,bool commaNeeded=true)9552 static void print_VkVertexInputBindingDescription(VkVertexInputBindingDescription obj, const std::string& s, bool commaNeeded=true) {
9553      PRINT_SPACE
9554      _OUT << "{" << std::endl;
9555      INDENT(4);
9556 
9557      print_uint32_t(obj.binding, "binding", 1);
9558 
9559      print_uint32_t(obj.stride, "stride", 1);
9560 
9561      print_VkVertexInputRate(obj.inputRate, "inputRate", 0);
9562 
9563      INDENT(-4);
9564      PRINT_SPACE
9565      if (commaNeeded)
9566          _OUT << "}," << std::endl;
9567      else
9568          _OUT << "}" << std::endl;
9569 }
print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj,const std::string & s,bool commaNeeded=true)9570 static void print_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * obj, const std::string& s, bool commaNeeded=true) {
9571      PRINT_SPACE
9572      _OUT << "{" << std::endl;
9573      INDENT(4);
9574 
9575      print_uint32_t(obj->binding, "binding", 1);
9576 
9577      print_uint32_t(obj->stride, "stride", 1);
9578 
9579      print_VkVertexInputRate(obj->inputRate, "inputRate", 0);
9580 
9581      INDENT(-4);
9582      PRINT_SPACE
9583      if (commaNeeded)
9584          _OUT << "}," << std::endl;
9585      else
9586          _OUT << "}" << std::endl;
9587 }
9588 
print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj,const std::string & s,bool commaNeeded=true)9589 static void print_VkVertexInputAttributeDescription(VkVertexInputAttributeDescription obj, const std::string& s, bool commaNeeded=true) {
9590      PRINT_SPACE
9591      _OUT << "{" << std::endl;
9592      INDENT(4);
9593 
9594      print_uint32_t(obj.location, "location", 1);
9595 
9596      print_uint32_t(obj.binding, "binding", 1);
9597 
9598      print_VkFormat(obj.format, "format", 1);
9599 
9600      print_uint32_t(obj.offset, "offset", 0);
9601 
9602      INDENT(-4);
9603      PRINT_SPACE
9604      if (commaNeeded)
9605          _OUT << "}," << std::endl;
9606      else
9607          _OUT << "}" << std::endl;
9608 }
print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj,const std::string & s,bool commaNeeded=true)9609 static void print_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * obj, const std::string& s, bool commaNeeded=true) {
9610      PRINT_SPACE
9611      _OUT << "{" << std::endl;
9612      INDENT(4);
9613 
9614      print_uint32_t(obj->location, "location", 1);
9615 
9616      print_uint32_t(obj->binding, "binding", 1);
9617 
9618      print_VkFormat(obj->format, "format", 1);
9619 
9620      print_uint32_t(obj->offset, "offset", 0);
9621 
9622      INDENT(-4);
9623      PRINT_SPACE
9624      if (commaNeeded)
9625          _OUT << "}," << std::endl;
9626      else
9627          _OUT << "}" << std::endl;
9628 }
9629 
print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9630 static void print_VkPipelineVertexInputStateCreateInfo(VkPipelineVertexInputStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9631      PRINT_SPACE
9632      _OUT << "{" << std::endl;
9633      INDENT(4);
9634 
9635      print_VkStructureType(obj.sType, "sType", 1);
9636 
9637       if (obj.pNext) {
9638          dumpPNextChain(obj.pNext);
9639       } else {
9640          PRINT_SPACE
9641          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9642      }
9643 
9644      print_VkPipelineVertexInputStateCreateFlags(obj.flags, "flags", 1);
9645 
9646      print_uint32_t(obj.vertexBindingDescriptionCount, "vertexBindingDescriptionCount", 1);
9647 
9648      PRINT_SPACE
9649      _OUT << "\"pVertexBindingDescriptions\": " << std::endl;
9650      if (obj.pVertexBindingDescriptions) {
9651          PRINT_SPACE
9652          _OUT << "[" << std::endl;
9653          for (unsigned int i = 0; i < obj.vertexBindingDescriptionCount; i++) {
9654            if (i+1 == obj.vertexBindingDescriptionCount)
9655                print_VkVertexInputBindingDescription(obj.pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 0);
9656            else
9657                print_VkVertexInputBindingDescription(obj.pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 1);
9658          }
9659          PRINT_SPACE
9660          _OUT << "]," << std::endl;
9661     }
9662      else
9663      {
9664          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9665      }
9666 
9667      print_uint32_t(obj.vertexAttributeDescriptionCount, "vertexAttributeDescriptionCount", 1);
9668 
9669      PRINT_SPACE
9670      _OUT << "\"pVertexAttributeDescriptions\": " << std::endl;
9671      if (obj.pVertexAttributeDescriptions) {
9672          PRINT_SPACE
9673          _OUT << "[" << std::endl;
9674          for (unsigned int i = 0; i < obj.vertexAttributeDescriptionCount; i++) {
9675            if (i+1 == obj.vertexAttributeDescriptionCount)
9676                print_VkVertexInputAttributeDescription(obj.pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 0);
9677            else
9678                print_VkVertexInputAttributeDescription(obj.pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 1);
9679          }
9680          PRINT_SPACE
9681          _OUT << "]" << std::endl;
9682     }
9683      else
9684      {
9685          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9686      }
9687 
9688      INDENT(-4);
9689      PRINT_SPACE
9690      if (commaNeeded)
9691          _OUT << "}," << std::endl;
9692      else
9693          _OUT << "}" << std::endl;
9694 }
print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9695 static void print_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9696      PRINT_SPACE
9697      _OUT << "{" << std::endl;
9698      INDENT(4);
9699 
9700      print_VkStructureType(obj->sType, "sType", 1);
9701 
9702       if (obj->pNext) {
9703          dumpPNextChain(obj->pNext);
9704       } else {
9705          PRINT_SPACE
9706          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9707      }
9708 
9709      print_VkPipelineVertexInputStateCreateFlags(obj->flags, "flags", 1);
9710 
9711      print_uint32_t(obj->vertexBindingDescriptionCount, "vertexBindingDescriptionCount", 1);
9712 
9713      PRINT_SPACE
9714      _OUT << "\"pVertexBindingDescriptions\": " << std::endl;
9715      if (obj->pVertexBindingDescriptions) {
9716          PRINT_SPACE
9717          _OUT << "[" << std::endl;
9718          for (unsigned int i = 0; i < obj->vertexBindingDescriptionCount; i++) {
9719            if (i+1 == obj->vertexBindingDescriptionCount)
9720                print_VkVertexInputBindingDescription(obj->pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 0);
9721            else
9722                print_VkVertexInputBindingDescription(obj->pVertexBindingDescriptions[i], "pVertexBindingDescriptions", 1);
9723          }
9724          PRINT_SPACE
9725          _OUT << "]," << std::endl;
9726     }
9727      else
9728      {
9729          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9730      }
9731 
9732      print_uint32_t(obj->vertexAttributeDescriptionCount, "vertexAttributeDescriptionCount", 1);
9733 
9734      PRINT_SPACE
9735      _OUT << "\"pVertexAttributeDescriptions\": " << std::endl;
9736      if (obj->pVertexAttributeDescriptions) {
9737          PRINT_SPACE
9738          _OUT << "[" << std::endl;
9739          for (unsigned int i = 0; i < obj->vertexAttributeDescriptionCount; i++) {
9740            if (i+1 == obj->vertexAttributeDescriptionCount)
9741                print_VkVertexInputAttributeDescription(obj->pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 0);
9742            else
9743                print_VkVertexInputAttributeDescription(obj->pVertexAttributeDescriptions[i], "pVertexAttributeDescriptions", 1);
9744          }
9745          PRINT_SPACE
9746          _OUT << "]" << std::endl;
9747     }
9748      else
9749      {
9750          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9751      }
9752 
9753      INDENT(-4);
9754      PRINT_SPACE
9755      if (commaNeeded)
9756          _OUT << "}," << std::endl;
9757      else
9758          _OUT << "}" << std::endl;
9759 }
9760 
print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9761 static void print_VkPipelineInputAssemblyStateCreateInfo(VkPipelineInputAssemblyStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9762      PRINT_SPACE
9763      _OUT << "{" << std::endl;
9764      INDENT(4);
9765 
9766      print_VkStructureType(obj.sType, "sType", 1);
9767 
9768       if (obj.pNext) {
9769          dumpPNextChain(obj.pNext);
9770       } else {
9771          PRINT_SPACE
9772          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9773      }
9774 
9775      print_VkPipelineInputAssemblyStateCreateFlags(obj.flags, "flags", 1);
9776 
9777      print_VkPrimitiveTopology(obj.topology, "topology", 1);
9778 
9779      print_VkBool32(obj.primitiveRestartEnable, "primitiveRestartEnable", 0);
9780 
9781      INDENT(-4);
9782      PRINT_SPACE
9783      if (commaNeeded)
9784          _OUT << "}," << std::endl;
9785      else
9786          _OUT << "}" << std::endl;
9787 }
print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9788 static void print_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9789      PRINT_SPACE
9790      _OUT << "{" << std::endl;
9791      INDENT(4);
9792 
9793      print_VkStructureType(obj->sType, "sType", 1);
9794 
9795       if (obj->pNext) {
9796          dumpPNextChain(obj->pNext);
9797       } else {
9798          PRINT_SPACE
9799          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9800      }
9801 
9802      print_VkPipelineInputAssemblyStateCreateFlags(obj->flags, "flags", 1);
9803 
9804      print_VkPrimitiveTopology(obj->topology, "topology", 1);
9805 
9806      print_VkBool32(obj->primitiveRestartEnable, "primitiveRestartEnable", 0);
9807 
9808      INDENT(-4);
9809      PRINT_SPACE
9810      if (commaNeeded)
9811          _OUT << "}," << std::endl;
9812      else
9813          _OUT << "}" << std::endl;
9814 }
9815 
print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9816 static void print_VkPipelineTessellationStateCreateInfo(VkPipelineTessellationStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9817      PRINT_SPACE
9818      _OUT << "{" << std::endl;
9819      INDENT(4);
9820 
9821      print_VkStructureType(obj.sType, "sType", 1);
9822 
9823       if (obj.pNext) {
9824          dumpPNextChain(obj.pNext);
9825       } else {
9826          PRINT_SPACE
9827          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9828      }
9829 
9830      print_VkPipelineTessellationStateCreateFlags(obj.flags, "flags", 1);
9831 
9832      print_uint32_t(obj.patchControlPoints, "patchControlPoints", 0);
9833 
9834      INDENT(-4);
9835      PRINT_SPACE
9836      if (commaNeeded)
9837          _OUT << "}," << std::endl;
9838      else
9839          _OUT << "}" << std::endl;
9840 }
print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9841 static void print_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9842      PRINT_SPACE
9843      _OUT << "{" << std::endl;
9844      INDENT(4);
9845 
9846      print_VkStructureType(obj->sType, "sType", 1);
9847 
9848       if (obj->pNext) {
9849          dumpPNextChain(obj->pNext);
9850       } else {
9851          PRINT_SPACE
9852          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9853      }
9854 
9855      print_VkPipelineTessellationStateCreateFlags(obj->flags, "flags", 1);
9856 
9857      print_uint32_t(obj->patchControlPoints, "patchControlPoints", 0);
9858 
9859      INDENT(-4);
9860      PRINT_SPACE
9861      if (commaNeeded)
9862          _OUT << "}," << std::endl;
9863      else
9864          _OUT << "}" << std::endl;
9865 }
9866 
print_VkViewport(VkViewport obj,const std::string & s,bool commaNeeded=true)9867 static void print_VkViewport(VkViewport obj, const std::string& s, bool commaNeeded=true) {
9868      PRINT_SPACE
9869      _OUT << "{" << std::endl;
9870      INDENT(4);
9871 
9872      print_float(obj.x, "x", 1);
9873 
9874      print_float(obj.y, "y", 1);
9875 
9876      print_float(obj.width, "width", 1);
9877 
9878      print_float(obj.height, "height", 1);
9879 
9880      print_float(obj.minDepth, "minDepth", 1);
9881 
9882      print_float(obj.maxDepth, "maxDepth", 0);
9883 
9884      INDENT(-4);
9885      PRINT_SPACE
9886      if (commaNeeded)
9887          _OUT << "}," << std::endl;
9888      else
9889          _OUT << "}" << std::endl;
9890 }
print_VkViewport(const VkViewport * obj,const std::string & s,bool commaNeeded=true)9891 static void print_VkViewport(const VkViewport * obj, const std::string& s, bool commaNeeded=true) {
9892      PRINT_SPACE
9893      _OUT << "{" << std::endl;
9894      INDENT(4);
9895 
9896      print_float(obj->x, "x", 1);
9897 
9898      print_float(obj->y, "y", 1);
9899 
9900      print_float(obj->width, "width", 1);
9901 
9902      print_float(obj->height, "height", 1);
9903 
9904      print_float(obj->minDepth, "minDepth", 1);
9905 
9906      print_float(obj->maxDepth, "maxDepth", 0);
9907 
9908      INDENT(-4);
9909      PRINT_SPACE
9910      if (commaNeeded)
9911          _OUT << "}," << std::endl;
9912      else
9913          _OUT << "}" << std::endl;
9914 }
9915 
print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj,const std::string & s,bool commaNeeded=true)9916 static void print_VkPipelineViewportStateCreateInfo(VkPipelineViewportStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
9917      PRINT_SPACE
9918      _OUT << "{" << std::endl;
9919      INDENT(4);
9920 
9921      print_VkStructureType(obj.sType, "sType", 1);
9922 
9923       if (obj.pNext) {
9924          dumpPNextChain(obj.pNext);
9925       } else {
9926          PRINT_SPACE
9927          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9928      }
9929 
9930      print_VkPipelineViewportStateCreateFlags(obj.flags, "flags", 1);
9931 
9932      print_uint32_t(obj.viewportCount, "viewportCount", 1);
9933 
9934      PRINT_SPACE
9935      _OUT << "\"pViewports\": " << std::endl;
9936      if (obj.pViewports) {
9937          PRINT_SPACE
9938          _OUT << "[" << std::endl;
9939          for (unsigned int i = 0; i < obj.viewportCount; i++) {
9940            if (i+1 == obj.viewportCount)
9941                print_VkViewport(obj.pViewports[i], "pViewports", 0);
9942            else
9943                print_VkViewport(obj.pViewports[i], "pViewports", 1);
9944          }
9945          PRINT_SPACE
9946          _OUT << "]," << std::endl;
9947     }
9948      else
9949      {
9950          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
9951      }
9952 
9953      print_uint32_t(obj.scissorCount, "scissorCount", 1);
9954 
9955      PRINT_SPACE
9956      _OUT << "\"pScissors\": " << std::endl;
9957      if (obj.pScissors) {
9958          PRINT_SPACE
9959          _OUT << "[" << std::endl;
9960          for (unsigned int i = 0; i < obj.scissorCount; i++) {
9961            if (i+1 == obj.scissorCount)
9962                print_VkRect2D(obj.pScissors[i], "pScissors", 0);
9963            else
9964                print_VkRect2D(obj.pScissors[i], "pScissors", 1);
9965          }
9966          PRINT_SPACE
9967          _OUT << "]" << std::endl;
9968     }
9969      else
9970      {
9971          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
9972      }
9973 
9974      INDENT(-4);
9975      PRINT_SPACE
9976      if (commaNeeded)
9977          _OUT << "}," << std::endl;
9978      else
9979          _OUT << "}" << std::endl;
9980 }
print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)9981 static void print_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
9982      PRINT_SPACE
9983      _OUT << "{" << std::endl;
9984      INDENT(4);
9985 
9986      print_VkStructureType(obj->sType, "sType", 1);
9987 
9988       if (obj->pNext) {
9989          dumpPNextChain(obj->pNext);
9990       } else {
9991          PRINT_SPACE
9992          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
9993      }
9994 
9995      print_VkPipelineViewportStateCreateFlags(obj->flags, "flags", 1);
9996 
9997      print_uint32_t(obj->viewportCount, "viewportCount", 1);
9998 
9999      PRINT_SPACE
10000      _OUT << "\"pViewports\": " << std::endl;
10001      if (obj->pViewports) {
10002          PRINT_SPACE
10003          _OUT << "[" << std::endl;
10004          for (unsigned int i = 0; i < obj->viewportCount; i++) {
10005            if (i+1 == obj->viewportCount)
10006                print_VkViewport(obj->pViewports[i], "pViewports", 0);
10007            else
10008                print_VkViewport(obj->pViewports[i], "pViewports", 1);
10009          }
10010          PRINT_SPACE
10011          _OUT << "]," << std::endl;
10012     }
10013      else
10014      {
10015          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10016      }
10017 
10018      print_uint32_t(obj->scissorCount, "scissorCount", 1);
10019 
10020      PRINT_SPACE
10021      _OUT << "\"pScissors\": " << std::endl;
10022      if (obj->pScissors) {
10023          PRINT_SPACE
10024          _OUT << "[" << std::endl;
10025          for (unsigned int i = 0; i < obj->scissorCount; i++) {
10026            if (i+1 == obj->scissorCount)
10027                print_VkRect2D(obj->pScissors[i], "pScissors", 0);
10028            else
10029                print_VkRect2D(obj->pScissors[i], "pScissors", 1);
10030          }
10031          PRINT_SPACE
10032          _OUT << "]" << std::endl;
10033     }
10034      else
10035      {
10036          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
10037      }
10038 
10039      INDENT(-4);
10040      PRINT_SPACE
10041      if (commaNeeded)
10042          _OUT << "}," << std::endl;
10043      else
10044          _OUT << "}" << std::endl;
10045 }
10046 
print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10047 static void print_VkPipelineRasterizationStateCreateInfo(VkPipelineRasterizationStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10048      PRINT_SPACE
10049      _OUT << "{" << std::endl;
10050      INDENT(4);
10051 
10052      print_VkStructureType(obj.sType, "sType", 1);
10053 
10054       if (obj.pNext) {
10055          dumpPNextChain(obj.pNext);
10056       } else {
10057          PRINT_SPACE
10058          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10059      }
10060 
10061      print_VkPipelineRasterizationStateCreateFlags(obj.flags, "flags", 1);
10062 
10063      print_VkBool32(obj.depthClampEnable, "depthClampEnable", 1);
10064 
10065      print_VkBool32(obj.rasterizerDiscardEnable, "rasterizerDiscardEnable", 1);
10066 
10067      print_VkPolygonMode(obj.polygonMode, "polygonMode", 1);
10068 
10069      print_VkCullModeFlags(obj.cullMode, "cullMode", 1);
10070 
10071      print_VkFrontFace(obj.frontFace, "frontFace", 1);
10072 
10073      print_VkBool32(obj.depthBiasEnable, "depthBiasEnable", 1);
10074 
10075      print_float(obj.depthBiasConstantFactor, "depthBiasConstantFactor", 1);
10076 
10077      print_float(obj.depthBiasClamp, "depthBiasClamp", 1);
10078 
10079      print_float(obj.depthBiasSlopeFactor, "depthBiasSlopeFactor", 1);
10080 
10081      print_float(obj.lineWidth, "lineWidth", 0);
10082 
10083      INDENT(-4);
10084      PRINT_SPACE
10085      if (commaNeeded)
10086          _OUT << "}," << std::endl;
10087      else
10088          _OUT << "}" << std::endl;
10089 }
print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10090 static void print_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10091      PRINT_SPACE
10092      _OUT << "{" << std::endl;
10093      INDENT(4);
10094 
10095      print_VkStructureType(obj->sType, "sType", 1);
10096 
10097       if (obj->pNext) {
10098          dumpPNextChain(obj->pNext);
10099       } else {
10100          PRINT_SPACE
10101          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10102      }
10103 
10104      print_VkPipelineRasterizationStateCreateFlags(obj->flags, "flags", 1);
10105 
10106      print_VkBool32(obj->depthClampEnable, "depthClampEnable", 1);
10107 
10108      print_VkBool32(obj->rasterizerDiscardEnable, "rasterizerDiscardEnable", 1);
10109 
10110      print_VkPolygonMode(obj->polygonMode, "polygonMode", 1);
10111 
10112      print_VkCullModeFlags(obj->cullMode, "cullMode", 1);
10113 
10114      print_VkFrontFace(obj->frontFace, "frontFace", 1);
10115 
10116      print_VkBool32(obj->depthBiasEnable, "depthBiasEnable", 1);
10117 
10118      print_float(obj->depthBiasConstantFactor, "depthBiasConstantFactor", 1);
10119 
10120      print_float(obj->depthBiasClamp, "depthBiasClamp", 1);
10121 
10122      print_float(obj->depthBiasSlopeFactor, "depthBiasSlopeFactor", 1);
10123 
10124      print_float(obj->lineWidth, "lineWidth", 0);
10125 
10126      INDENT(-4);
10127      PRINT_SPACE
10128      if (commaNeeded)
10129          _OUT << "}," << std::endl;
10130      else
10131          _OUT << "}" << std::endl;
10132 }
10133 
print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10134 static void print_VkPipelineMultisampleStateCreateInfo(VkPipelineMultisampleStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10135      PRINT_SPACE
10136      _OUT << "{" << std::endl;
10137      INDENT(4);
10138 
10139      print_VkStructureType(obj.sType, "sType", 1);
10140 
10141       if (obj.pNext) {
10142          dumpPNextChain(obj.pNext);
10143       } else {
10144          PRINT_SPACE
10145          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10146      }
10147 
10148      print_VkPipelineMultisampleStateCreateFlags(obj.flags, "flags", 1);
10149 
10150      print_VkSampleCountFlagBits(obj.rasterizationSamples, "rasterizationSamples", 1);
10151 
10152      print_VkBool32(obj.sampleShadingEnable, "sampleShadingEnable", 1);
10153 
10154      print_float(obj.minSampleShading, "minSampleShading", 1);
10155 
10156      deUint32 sampleMaskSize = ((obj.rasterizationSamples + 31) / 32);
10157      PRINT_SPACE
10158      _OUT << "\"pSampleMask\":" << std::endl;
10159      PRINT_SPACE
10160      if (obj.pSampleMask) {
10161        _OUT << "[" << std::endl;
10162        for (unsigned int i = 0; i < sampleMaskSize; i++) {
10163            bool isCommaNeeded = (i+1) != sampleMaskSize;
10164            print_uint32_t(obj.pSampleMask[i], "", isCommaNeeded);
10165        }
10166        PRINT_SPACE
10167        _OUT << "]" << "," << std::endl;
10168      } else {
10169        _OUT << "\"NULL\"" << "," << std::endl;
10170      }
10171 
10172      print_VkBool32(obj.alphaToCoverageEnable, "alphaToCoverageEnable", 1);
10173 
10174      print_VkBool32(obj.alphaToOneEnable, "alphaToOneEnable", 0);
10175 
10176      INDENT(-4);
10177      PRINT_SPACE
10178      if (commaNeeded)
10179          _OUT << "}," << std::endl;
10180      else
10181          _OUT << "}" << std::endl;
10182 }
print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10183 static void print_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10184      PRINT_SPACE
10185      _OUT << "{" << std::endl;
10186      INDENT(4);
10187 
10188      print_VkStructureType(obj->sType, "sType", 1);
10189 
10190       if (obj->pNext) {
10191          dumpPNextChain(obj->pNext);
10192       } else {
10193          PRINT_SPACE
10194          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10195      }
10196 
10197      print_VkPipelineMultisampleStateCreateFlags(obj->flags, "flags", 1);
10198 
10199      print_VkSampleCountFlagBits(obj->rasterizationSamples, "rasterizationSamples", 1);
10200 
10201      print_VkBool32(obj->sampleShadingEnable, "sampleShadingEnable", 1);
10202 
10203      print_float(obj->minSampleShading, "minSampleShading", 1);
10204 
10205      deUint32 sampleMaskSize = ((obj->rasterizationSamples + 31) / 32);
10206      PRINT_SPACE
10207      _OUT << "\"pSampleMask\":" << std::endl;
10208      PRINT_SPACE
10209      if (obj->pSampleMask) {
10210        _OUT << "[" << std::endl;
10211        for (unsigned int i = 0; i < sampleMaskSize; i++) {
10212            bool isCommaNeeded = (i+1) != sampleMaskSize;
10213            print_uint32_t(obj->pSampleMask[i], "", isCommaNeeded);
10214        }
10215        PRINT_SPACE
10216        _OUT << "]" << "," << std::endl;
10217      } else {
10218        _OUT << "\"NULL\"" << "," << std::endl;
10219      }
10220 
10221      print_VkBool32(obj->alphaToCoverageEnable, "alphaToCoverageEnable", 1);
10222 
10223      print_VkBool32(obj->alphaToOneEnable, "alphaToOneEnable", 0);
10224 
10225      INDENT(-4);
10226      PRINT_SPACE
10227      if (commaNeeded)
10228          _OUT << "}," << std::endl;
10229      else
10230          _OUT << "}" << std::endl;
10231 }
10232 
print_VkStencilOpState(VkStencilOpState obj,const std::string & s,bool commaNeeded=true)10233 static void print_VkStencilOpState(VkStencilOpState obj, const std::string& s, bool commaNeeded=true) {
10234      PRINT_SPACE
10235      _OUT << "{" << std::endl;
10236      INDENT(4);
10237 
10238      print_VkStencilOp(obj.failOp, "failOp", 1);
10239 
10240      print_VkStencilOp(obj.passOp, "passOp", 1);
10241 
10242      print_VkStencilOp(obj.depthFailOp, "depthFailOp", 1);
10243 
10244      print_VkCompareOp(obj.compareOp, "compareOp", 1);
10245 
10246      print_uint32_t(obj.compareMask, "compareMask", 1);
10247 
10248      print_uint32_t(obj.writeMask, "writeMask", 1);
10249 
10250      print_uint32_t(obj.reference, "reference", 0);
10251 
10252      INDENT(-4);
10253      PRINT_SPACE
10254      if (commaNeeded)
10255          _OUT << "}," << std::endl;
10256      else
10257          _OUT << "}" << std::endl;
10258 }
print_VkStencilOpState(const VkStencilOpState * obj,const std::string & s,bool commaNeeded=true)10259 static void print_VkStencilOpState(const VkStencilOpState * obj, const std::string& s, bool commaNeeded=true) {
10260      PRINT_SPACE
10261      _OUT << "{" << std::endl;
10262      INDENT(4);
10263 
10264      print_VkStencilOp(obj->failOp, "failOp", 1);
10265 
10266      print_VkStencilOp(obj->passOp, "passOp", 1);
10267 
10268      print_VkStencilOp(obj->depthFailOp, "depthFailOp", 1);
10269 
10270      print_VkCompareOp(obj->compareOp, "compareOp", 1);
10271 
10272      print_uint32_t(obj->compareMask, "compareMask", 1);
10273 
10274      print_uint32_t(obj->writeMask, "writeMask", 1);
10275 
10276      print_uint32_t(obj->reference, "reference", 0);
10277 
10278      INDENT(-4);
10279      PRINT_SPACE
10280      if (commaNeeded)
10281          _OUT << "}," << std::endl;
10282      else
10283          _OUT << "}" << std::endl;
10284 }
10285 
print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10286 static void print_VkPipelineDepthStencilStateCreateInfo(VkPipelineDepthStencilStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10287      PRINT_SPACE
10288      _OUT << "{" << std::endl;
10289      INDENT(4);
10290 
10291      print_VkStructureType(obj.sType, "sType", 1);
10292 
10293       if (obj.pNext) {
10294          dumpPNextChain(obj.pNext);
10295       } else {
10296          PRINT_SPACE
10297          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10298      }
10299 
10300      print_VkPipelineDepthStencilStateCreateFlags(obj.flags, "flags", 1);
10301 
10302      print_VkBool32(obj.depthTestEnable, "depthTestEnable", 1);
10303 
10304      print_VkBool32(obj.depthWriteEnable, "depthWriteEnable", 1);
10305 
10306      print_VkCompareOp(obj.depthCompareOp, "depthCompareOp", 1);
10307 
10308      print_VkBool32(obj.depthBoundsTestEnable, "depthBoundsTestEnable", 1);
10309 
10310      print_VkBool32(obj.stencilTestEnable, "stencilTestEnable", 1);
10311 
10312      PRINT_SPACE
10313      _OUT << "\"front\": " << std::endl;
10314      {
10315            print_VkStencilOpState(obj.front, "front", 1);
10316      }
10317 
10318      PRINT_SPACE
10319      _OUT << "\"back\": " << std::endl;
10320      {
10321            print_VkStencilOpState(obj.back, "back", 1);
10322      }
10323 
10324      print_float(obj.minDepthBounds, "minDepthBounds", 1);
10325 
10326      print_float(obj.maxDepthBounds, "maxDepthBounds", 0);
10327 
10328      INDENT(-4);
10329      PRINT_SPACE
10330      if (commaNeeded)
10331          _OUT << "}," << std::endl;
10332      else
10333          _OUT << "}" << std::endl;
10334 }
print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10335 static void print_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10336      PRINT_SPACE
10337      _OUT << "{" << std::endl;
10338      INDENT(4);
10339 
10340      print_VkStructureType(obj->sType, "sType", 1);
10341 
10342       if (obj->pNext) {
10343          dumpPNextChain(obj->pNext);
10344       } else {
10345          PRINT_SPACE
10346          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10347      }
10348 
10349      print_VkPipelineDepthStencilStateCreateFlags(obj->flags, "flags", 1);
10350 
10351      print_VkBool32(obj->depthTestEnable, "depthTestEnable", 1);
10352 
10353      print_VkBool32(obj->depthWriteEnable, "depthWriteEnable", 1);
10354 
10355      print_VkCompareOp(obj->depthCompareOp, "depthCompareOp", 1);
10356 
10357      print_VkBool32(obj->depthBoundsTestEnable, "depthBoundsTestEnable", 1);
10358 
10359      print_VkBool32(obj->stencilTestEnable, "stencilTestEnable", 1);
10360 
10361      PRINT_SPACE
10362      _OUT << "\"front\": " << std::endl;
10363      {
10364            print_VkStencilOpState(obj->front, "front", 1);
10365      }
10366 
10367      PRINT_SPACE
10368      _OUT << "\"back\": " << std::endl;
10369      {
10370            print_VkStencilOpState(obj->back, "back", 1);
10371      }
10372 
10373      print_float(obj->minDepthBounds, "minDepthBounds", 1);
10374 
10375      print_float(obj->maxDepthBounds, "maxDepthBounds", 0);
10376 
10377      INDENT(-4);
10378      PRINT_SPACE
10379      if (commaNeeded)
10380          _OUT << "}," << std::endl;
10381      else
10382          _OUT << "}" << std::endl;
10383 }
10384 
print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj,const std::string & s,bool commaNeeded=true)10385 static void print_VkPipelineColorBlendAttachmentState(VkPipelineColorBlendAttachmentState obj, const std::string& s, bool commaNeeded=true) {
10386      PRINT_SPACE
10387      _OUT << "{" << std::endl;
10388      INDENT(4);
10389 
10390      print_VkBool32(obj.blendEnable, "blendEnable", 1);
10391 
10392      print_VkBlendFactor(obj.srcColorBlendFactor, "srcColorBlendFactor", 1);
10393 
10394      print_VkBlendFactor(obj.dstColorBlendFactor, "dstColorBlendFactor", 1);
10395 
10396      print_VkBlendOp(obj.colorBlendOp, "colorBlendOp", 1);
10397 
10398      print_VkBlendFactor(obj.srcAlphaBlendFactor, "srcAlphaBlendFactor", 1);
10399 
10400      print_VkBlendFactor(obj.dstAlphaBlendFactor, "dstAlphaBlendFactor", 1);
10401 
10402      print_VkBlendOp(obj.alphaBlendOp, "alphaBlendOp", 1);
10403 
10404      print_VkColorComponentFlags(obj.colorWriteMask, "colorWriteMask", 0);
10405 
10406      INDENT(-4);
10407      PRINT_SPACE
10408      if (commaNeeded)
10409          _OUT << "}," << std::endl;
10410      else
10411          _OUT << "}" << std::endl;
10412 }
print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj,const std::string & s,bool commaNeeded=true)10413 static void print_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * obj, const std::string& s, bool commaNeeded=true) {
10414      PRINT_SPACE
10415      _OUT << "{" << std::endl;
10416      INDENT(4);
10417 
10418      print_VkBool32(obj->blendEnable, "blendEnable", 1);
10419 
10420      print_VkBlendFactor(obj->srcColorBlendFactor, "srcColorBlendFactor", 1);
10421 
10422      print_VkBlendFactor(obj->dstColorBlendFactor, "dstColorBlendFactor", 1);
10423 
10424      print_VkBlendOp(obj->colorBlendOp, "colorBlendOp", 1);
10425 
10426      print_VkBlendFactor(obj->srcAlphaBlendFactor, "srcAlphaBlendFactor", 1);
10427 
10428      print_VkBlendFactor(obj->dstAlphaBlendFactor, "dstAlphaBlendFactor", 1);
10429 
10430      print_VkBlendOp(obj->alphaBlendOp, "alphaBlendOp", 1);
10431 
10432      print_VkColorComponentFlags(obj->colorWriteMask, "colorWriteMask", 0);
10433 
10434      INDENT(-4);
10435      PRINT_SPACE
10436      if (commaNeeded)
10437          _OUT << "}," << std::endl;
10438      else
10439          _OUT << "}" << std::endl;
10440 }
10441 
print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10442 static void print_VkPipelineColorBlendStateCreateInfo(VkPipelineColorBlendStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10443      PRINT_SPACE
10444      _OUT << "{" << std::endl;
10445      INDENT(4);
10446 
10447      print_VkStructureType(obj.sType, "sType", 1);
10448 
10449       if (obj.pNext) {
10450          dumpPNextChain(obj.pNext);
10451       } else {
10452          PRINT_SPACE
10453          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10454      }
10455 
10456      print_VkPipelineColorBlendStateCreateFlags(obj.flags, "flags", 1);
10457 
10458      print_VkBool32(obj.logicOpEnable, "logicOpEnable", 1);
10459 
10460      print_VkLogicOp(obj.logicOp, "logicOp", 1);
10461 
10462      print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
10463 
10464      PRINT_SPACE
10465      _OUT << "\"pAttachments\": " << std::endl;
10466      if (obj.pAttachments) {
10467          PRINT_SPACE
10468          _OUT << "[" << std::endl;
10469          for (unsigned int i = 0; i < obj.attachmentCount; i++) {
10470            if (i+1 == obj.attachmentCount)
10471                print_VkPipelineColorBlendAttachmentState(obj.pAttachments[i], "pAttachments", 0);
10472            else
10473                print_VkPipelineColorBlendAttachmentState(obj.pAttachments[i], "pAttachments", 1);
10474          }
10475          PRINT_SPACE
10476          _OUT << "]," << std::endl;
10477     }
10478      else
10479      {
10480          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10481      }
10482 
10483      PRINT_SPACE
10484      _OUT << "\"blendConstants\":" << std::endl;
10485      PRINT_SPACE
10486        _OUT << "[" << std::endl;
10487        for (unsigned int i = 0; i < 4; i++) {
10488            bool isCommaNeeded = (i+1) != 4;
10489            print_float(obj.blendConstants[i], "", isCommaNeeded);
10490        }
10491        PRINT_SPACE
10492        _OUT << "]" << "" << std::endl;
10493 
10494      INDENT(-4);
10495      PRINT_SPACE
10496      if (commaNeeded)
10497          _OUT << "}," << std::endl;
10498      else
10499          _OUT << "}" << std::endl;
10500 }
print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10501 static void print_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10502      PRINT_SPACE
10503      _OUT << "{" << std::endl;
10504      INDENT(4);
10505 
10506      print_VkStructureType(obj->sType, "sType", 1);
10507 
10508       if (obj->pNext) {
10509          dumpPNextChain(obj->pNext);
10510       } else {
10511          PRINT_SPACE
10512          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10513      }
10514 
10515      print_VkPipelineColorBlendStateCreateFlags(obj->flags, "flags", 1);
10516 
10517      print_VkBool32(obj->logicOpEnable, "logicOpEnable", 1);
10518 
10519      print_VkLogicOp(obj->logicOp, "logicOp", 1);
10520 
10521      print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
10522 
10523      PRINT_SPACE
10524      _OUT << "\"pAttachments\": " << std::endl;
10525      if (obj->pAttachments) {
10526          PRINT_SPACE
10527          _OUT << "[" << std::endl;
10528          for (unsigned int i = 0; i < obj->attachmentCount; i++) {
10529            if (i+1 == obj->attachmentCount)
10530                print_VkPipelineColorBlendAttachmentState(obj->pAttachments[i], "pAttachments", 0);
10531            else
10532                print_VkPipelineColorBlendAttachmentState(obj->pAttachments[i], "pAttachments", 1);
10533          }
10534          PRINT_SPACE
10535          _OUT << "]," << std::endl;
10536     }
10537      else
10538      {
10539          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10540      }
10541 
10542      PRINT_SPACE
10543      _OUT << "\"blendConstants\":" << std::endl;
10544      PRINT_SPACE
10545        _OUT << "[" << std::endl;
10546        for (unsigned int i = 0; i < 4; i++) {
10547            bool isCommaNeeded = (i+1) != 4;
10548            print_float(obj->blendConstants[i], "", isCommaNeeded);
10549        }
10550        PRINT_SPACE
10551        _OUT << "]" << "" << std::endl;
10552 
10553      INDENT(-4);
10554      PRINT_SPACE
10555      if (commaNeeded)
10556          _OUT << "}," << std::endl;
10557      else
10558          _OUT << "}" << std::endl;
10559 }
10560 
print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj,const std::string & s,bool commaNeeded=true)10561 static void print_VkPipelineDynamicStateCreateInfo(VkPipelineDynamicStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10562      PRINT_SPACE
10563      _OUT << "{" << std::endl;
10564      INDENT(4);
10565 
10566      print_VkStructureType(obj.sType, "sType", 1);
10567 
10568       if (obj.pNext) {
10569          dumpPNextChain(obj.pNext);
10570       } else {
10571          PRINT_SPACE
10572          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10573      }
10574 
10575      print_VkPipelineDynamicStateCreateFlags(obj.flags, "flags", 1);
10576 
10577      print_uint32_t(obj.dynamicStateCount, "dynamicStateCount", 1);
10578 
10579      PRINT_SPACE
10580      _OUT << "\"pDynamicStates\":" << std::endl;
10581      PRINT_SPACE
10582      if (obj.pDynamicStates) {
10583        _OUT << "[" << std::endl;
10584        for (unsigned int i = 0; i < obj.dynamicStateCount; i++) {
10585            bool isCommaNeeded = (i+1) != obj.dynamicStateCount;
10586            print_VkDynamicState(obj.pDynamicStates[i], "", isCommaNeeded);
10587        }
10588        PRINT_SPACE
10589        _OUT << "]" << "" << std::endl;
10590      } else {
10591        _OUT << "\"NULL\"" << "" << std::endl;
10592      }
10593 
10594      INDENT(-4);
10595      PRINT_SPACE
10596      if (commaNeeded)
10597          _OUT << "}," << std::endl;
10598      else
10599          _OUT << "}" << std::endl;
10600 }
print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)10601 static void print_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10602      PRINT_SPACE
10603      _OUT << "{" << std::endl;
10604      INDENT(4);
10605 
10606      print_VkStructureType(obj->sType, "sType", 1);
10607 
10608       if (obj->pNext) {
10609          dumpPNextChain(obj->pNext);
10610       } else {
10611          PRINT_SPACE
10612          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10613      }
10614 
10615      print_VkPipelineDynamicStateCreateFlags(obj->flags, "flags", 1);
10616 
10617      print_uint32_t(obj->dynamicStateCount, "dynamicStateCount", 1);
10618 
10619      PRINT_SPACE
10620      _OUT << "\"pDynamicStates\":" << std::endl;
10621      PRINT_SPACE
10622      if (obj->pDynamicStates) {
10623        _OUT << "[" << std::endl;
10624        for (unsigned int i = 0; i < obj->dynamicStateCount; i++) {
10625            bool isCommaNeeded = (i+1) != obj->dynamicStateCount;
10626            print_VkDynamicState(obj->pDynamicStates[i], "", isCommaNeeded);
10627        }
10628        PRINT_SPACE
10629        _OUT << "]" << "" << std::endl;
10630      } else {
10631        _OUT << "\"NULL\"" << "" << std::endl;
10632      }
10633 
10634      INDENT(-4);
10635      PRINT_SPACE
10636      if (commaNeeded)
10637          _OUT << "}," << std::endl;
10638      else
10639          _OUT << "}" << std::endl;
10640 }
10641 
print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj,const std::string & s,bool commaNeeded=true)10642 static void print_VkGraphicsPipelineCreateInfo(VkGraphicsPipelineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10643      PRINT_SPACE
10644      _OUT << "{" << std::endl;
10645      INDENT(4);
10646 
10647      print_VkStructureType(obj.sType, "sType", 1);
10648 
10649       if (obj.pNext) {
10650          dumpPNextChain(obj.pNext);
10651       } else {
10652          PRINT_SPACE
10653          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10654      }
10655 
10656      print_VkPipelineCreateFlags(obj.flags, "flags", 1);
10657 
10658      print_uint32_t(obj.stageCount, "stageCount", 1);
10659 
10660      PRINT_SPACE
10661      _OUT << "\"pStages\": " << std::endl;
10662      if (obj.pStages) {
10663          PRINT_SPACE
10664          _OUT << "[" << std::endl;
10665          for (unsigned int i = 0; i < obj.stageCount; i++) {
10666            if (i+1 == obj.stageCount)
10667                print_VkPipelineShaderStageCreateInfo(obj.pStages[i], "pStages", 0);
10668            else
10669                print_VkPipelineShaderStageCreateInfo(obj.pStages[i], "pStages", 1);
10670          }
10671          PRINT_SPACE
10672          _OUT << "]," << std::endl;
10673     }
10674      else
10675      {
10676          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10677      }
10678 
10679      PRINT_SPACE
10680      _OUT << "\"pVertexInputState\": " << std::endl;
10681      if (obj.pVertexInputState) {
10682            print_VkPipelineVertexInputStateCreateInfo(obj.pVertexInputState, "pVertexInputState", 1);
10683      }
10684      else
10685      {
10686          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10687      }
10688 
10689      PRINT_SPACE
10690      _OUT << "\"pInputAssemblyState\": " << std::endl;
10691      if (obj.pInputAssemblyState) {
10692            print_VkPipelineInputAssemblyStateCreateInfo(obj.pInputAssemblyState, "pInputAssemblyState", 1);
10693      }
10694      else
10695      {
10696          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10697      }
10698 
10699      PRINT_SPACE
10700      _OUT << "\"pTessellationState\": " << std::endl;
10701      if (obj.pTessellationState) {
10702            print_VkPipelineTessellationStateCreateInfo(obj.pTessellationState, "pTessellationState", 1);
10703      }
10704      else
10705      {
10706          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10707      }
10708 
10709      PRINT_SPACE
10710      _OUT << "\"pViewportState\": " << std::endl;
10711      if (obj.pViewportState) {
10712            print_VkPipelineViewportStateCreateInfo(obj.pViewportState, "pViewportState", 1);
10713      }
10714      else
10715      {
10716          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10717      }
10718 
10719      PRINT_SPACE
10720      _OUT << "\"pRasterizationState\": " << std::endl;
10721      if (obj.pRasterizationState) {
10722            print_VkPipelineRasterizationStateCreateInfo(obj.pRasterizationState, "pRasterizationState", 1);
10723      }
10724      else
10725      {
10726          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10727      }
10728 
10729      PRINT_SPACE
10730      _OUT << "\"pMultisampleState\": " << std::endl;
10731      if (obj.pMultisampleState) {
10732            print_VkPipelineMultisampleStateCreateInfo(obj.pMultisampleState, "pMultisampleState", 1);
10733      }
10734      else
10735      {
10736          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10737      }
10738 
10739      PRINT_SPACE
10740      _OUT << "\"pDepthStencilState\": " << std::endl;
10741      if (obj.pDepthStencilState) {
10742            print_VkPipelineDepthStencilStateCreateInfo(obj.pDepthStencilState, "pDepthStencilState", 1);
10743      }
10744      else
10745      {
10746          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10747      }
10748 
10749      PRINT_SPACE
10750      _OUT << "\"pColorBlendState\": " << std::endl;
10751      if (obj.pColorBlendState) {
10752            print_VkPipelineColorBlendStateCreateInfo(obj.pColorBlendState, "pColorBlendState", 1);
10753      }
10754      else
10755      {
10756          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10757      }
10758 
10759      PRINT_SPACE
10760      _OUT << "\"pDynamicState\": " << std::endl;
10761      if (obj.pDynamicState) {
10762            print_VkPipelineDynamicStateCreateInfo(obj.pDynamicState, "pDynamicState", 1);
10763      }
10764      else
10765      {
10766          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10767      }
10768 
10769      // CTS : required value
10770      PRINT_SPACE    _OUT << "\"" << "layout" << "\"" << " : " << obj.layout.getInternal() << "," << std::endl;
10771 
10772      // CTS : required value
10773      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
10774 
10775      print_uint32_t(obj.subpass, "subpass", 1);
10776 
10777      // CTS : required value
10778      PRINT_SPACE    _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
10779 
10780      print_int32_t(obj.basePipelineIndex, "basePipelineIndex", 0);
10781 
10782      INDENT(-4);
10783      PRINT_SPACE
10784      if (commaNeeded)
10785          _OUT << "}," << std::endl;
10786      else
10787          _OUT << "}" << std::endl;
10788 }
print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj,const std::string & s,bool commaNeeded=true)10789 static void print_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
10790      PRINT_SPACE
10791      _OUT << "{" << std::endl;
10792      INDENT(4);
10793 
10794      print_VkStructureType(obj->sType, "sType", 1);
10795 
10796       if (obj->pNext) {
10797          dumpPNextChain(obj->pNext);
10798       } else {
10799          PRINT_SPACE
10800          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10801      }
10802 
10803      print_VkPipelineCreateFlags(obj->flags, "flags", 1);
10804 
10805      print_uint32_t(obj->stageCount, "stageCount", 1);
10806 
10807      PRINT_SPACE
10808      _OUT << "\"pStages\": " << std::endl;
10809      if (obj->pStages) {
10810          PRINT_SPACE
10811          _OUT << "[" << std::endl;
10812          for (unsigned int i = 0; i < obj->stageCount; i++) {
10813            if (i+1 == obj->stageCount)
10814                print_VkPipelineShaderStageCreateInfo(obj->pStages[i], "pStages", 0);
10815            else
10816                print_VkPipelineShaderStageCreateInfo(obj->pStages[i], "pStages", 1);
10817          }
10818          PRINT_SPACE
10819          _OUT << "]," << std::endl;
10820     }
10821      else
10822      {
10823          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10824      }
10825 
10826      PRINT_SPACE
10827      _OUT << "\"pVertexInputState\": " << std::endl;
10828      if (obj->pVertexInputState) {
10829            print_VkPipelineVertexInputStateCreateInfo(obj->pVertexInputState, "pVertexInputState", 1);
10830      }
10831      else
10832      {
10833          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10834      }
10835 
10836      PRINT_SPACE
10837      _OUT << "\"pInputAssemblyState\": " << std::endl;
10838      if (obj->pInputAssemblyState) {
10839            print_VkPipelineInputAssemblyStateCreateInfo(obj->pInputAssemblyState, "pInputAssemblyState", 1);
10840      }
10841      else
10842      {
10843          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10844      }
10845 
10846      PRINT_SPACE
10847      _OUT << "\"pTessellationState\": " << std::endl;
10848      if (obj->pTessellationState) {
10849            print_VkPipelineTessellationStateCreateInfo(obj->pTessellationState, "pTessellationState", 1);
10850      }
10851      else
10852      {
10853          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10854      }
10855 
10856      PRINT_SPACE
10857      _OUT << "\"pViewportState\": " << std::endl;
10858      if (obj->pViewportState) {
10859            print_VkPipelineViewportStateCreateInfo(obj->pViewportState, "pViewportState", 1);
10860      }
10861      else
10862      {
10863          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10864      }
10865 
10866      PRINT_SPACE
10867      _OUT << "\"pRasterizationState\": " << std::endl;
10868      if (obj->pRasterizationState) {
10869            print_VkPipelineRasterizationStateCreateInfo(obj->pRasterizationState, "pRasterizationState", 1);
10870      }
10871      else
10872      {
10873          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10874      }
10875 
10876      PRINT_SPACE
10877      _OUT << "\"pMultisampleState\": " << std::endl;
10878      if (obj->pMultisampleState) {
10879            print_VkPipelineMultisampleStateCreateInfo(obj->pMultisampleState, "pMultisampleState", 1);
10880      }
10881      else
10882      {
10883          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10884      }
10885 
10886      PRINT_SPACE
10887      _OUT << "\"pDepthStencilState\": " << std::endl;
10888      if (obj->pDepthStencilState) {
10889            print_VkPipelineDepthStencilStateCreateInfo(obj->pDepthStencilState, "pDepthStencilState", 1);
10890      }
10891      else
10892      {
10893          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10894      }
10895 
10896      PRINT_SPACE
10897      _OUT << "\"pColorBlendState\": " << std::endl;
10898      if (obj->pColorBlendState) {
10899            print_VkPipelineColorBlendStateCreateInfo(obj->pColorBlendState, "pColorBlendState", 1);
10900      }
10901      else
10902      {
10903          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10904      }
10905 
10906      PRINT_SPACE
10907      _OUT << "\"pDynamicState\": " << std::endl;
10908      if (obj->pDynamicState) {
10909            print_VkPipelineDynamicStateCreateInfo(obj->pDynamicState, "pDynamicState", 1);
10910      }
10911      else
10912      {
10913          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
10914      }
10915 
10916      // CTS : required value
10917      PRINT_SPACE    _OUT << "\"" << "layout" << "\"" << " : " << obj->layout.getInternal() << "," << std::endl;
10918 
10919      // CTS : required value
10920      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj->renderPass.getInternal() << "," << std::endl;
10921 
10922      print_uint32_t(obj->subpass, "subpass", 1);
10923 
10924      // CTS : required value
10925      PRINT_SPACE    _OUT << "\"" << "basePipelineHandle" << "\"" << " : " << "\"" << "\"," << std::endl;
10926 
10927      print_int32_t(obj->basePipelineIndex, "basePipelineIndex", 0);
10928 
10929      INDENT(-4);
10930      PRINT_SPACE
10931      if (commaNeeded)
10932          _OUT << "}," << std::endl;
10933      else
10934          _OUT << "}" << std::endl;
10935 }
10936 
print_VkPushConstantRange(VkPushConstantRange obj,const std::string & s,bool commaNeeded=true)10937 static void print_VkPushConstantRange(VkPushConstantRange obj, const std::string& s, bool commaNeeded=true) {
10938      PRINT_SPACE
10939      _OUT << "{" << std::endl;
10940      INDENT(4);
10941 
10942      print_VkShaderStageFlags(obj.stageFlags, "stageFlags", 1);
10943 
10944      print_uint32_t(obj.offset, "offset", 1);
10945 
10946      print_uint32_t(obj.size, "size", 0);
10947 
10948      INDENT(-4);
10949      PRINT_SPACE
10950      if (commaNeeded)
10951          _OUT << "}," << std::endl;
10952      else
10953          _OUT << "}" << std::endl;
10954 }
print_VkPushConstantRange(const VkPushConstantRange * obj,const std::string & s,bool commaNeeded=true)10955 static void print_VkPushConstantRange(const VkPushConstantRange * obj, const std::string& s, bool commaNeeded=true) {
10956      PRINT_SPACE
10957      _OUT << "{" << std::endl;
10958      INDENT(4);
10959 
10960      print_VkShaderStageFlags(obj->stageFlags, "stageFlags", 1);
10961 
10962      print_uint32_t(obj->offset, "offset", 1);
10963 
10964      print_uint32_t(obj->size, "size", 0);
10965 
10966      INDENT(-4);
10967      PRINT_SPACE
10968      if (commaNeeded)
10969          _OUT << "}," << std::endl;
10970      else
10971          _OUT << "}" << std::endl;
10972 }
10973 
print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj,const std::string & s,bool commaNeeded=true)10974 static void print_VkPipelineLayoutCreateInfo(VkPipelineLayoutCreateInfo obj, const std::string& s, bool commaNeeded=true) {
10975      PRINT_SPACE
10976      _OUT << "{" << std::endl;
10977      INDENT(4);
10978 
10979      print_VkStructureType(obj.sType, "sType", 1);
10980 
10981       if (obj.pNext) {
10982          dumpPNextChain(obj.pNext);
10983       } else {
10984          PRINT_SPACE
10985          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
10986      }
10987 
10988      print_VkPipelineLayoutCreateFlags(obj.flags, "flags", 1);
10989 
10990      print_uint32_t(obj.setLayoutCount, "setLayoutCount", 1);
10991 
10992      PRINT_SPACE
10993      _OUT << "\"pSetLayouts\":" << std::endl;
10994      PRINT_SPACE
10995      if (obj.pSetLayouts) {
10996        _OUT << "[" << std::endl;
10997        for (unsigned int i = 0; i < obj.setLayoutCount; i++) {
10998            bool isCommaNeeded = (i+1) != obj.setLayoutCount;
10999            if (isCommaNeeded)
11000            {
11001                PRINT_SPACE
11002                _OUT << obj.pSetLayouts[i].getInternal() << "," << std::endl;
11003            }
11004            else
11005            {
11006                PRINT_SPACE
11007                _OUT << obj.pSetLayouts[i].getInternal() << std::endl;
11008            }
11009        }
11010        PRINT_SPACE
11011        _OUT << "]" << "," << std::endl;
11012      } else {
11013        _OUT << "\"NULL\"" << "," << std::endl;
11014      }
11015 
11016      print_uint32_t(obj.pushConstantRangeCount, "pushConstantRangeCount", 1);
11017 
11018      PRINT_SPACE
11019      _OUT << "\"pPushConstantRanges\": " << std::endl;
11020      if (obj.pPushConstantRanges) {
11021          PRINT_SPACE
11022          _OUT << "[" << std::endl;
11023          for (unsigned int i = 0; i < obj.pushConstantRangeCount; i++) {
11024            if (i+1 == obj.pushConstantRangeCount)
11025                print_VkPushConstantRange(obj.pPushConstantRanges[i], "pPushConstantRanges", 0);
11026            else
11027                print_VkPushConstantRange(obj.pPushConstantRanges[i], "pPushConstantRanges", 1);
11028          }
11029          PRINT_SPACE
11030          _OUT << "]" << std::endl;
11031     }
11032      else
11033      {
11034          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11035      }
11036 
11037      INDENT(-4);
11038      PRINT_SPACE
11039      if (commaNeeded)
11040          _OUT << "}," << std::endl;
11041      else
11042          _OUT << "}" << std::endl;
11043 }
print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj,const std::string & s,bool commaNeeded=true)11044 static void print_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11045      PRINT_SPACE
11046      _OUT << "{" << std::endl;
11047      INDENT(4);
11048 
11049      print_VkStructureType(obj->sType, "sType", 1);
11050 
11051       if (obj->pNext) {
11052          dumpPNextChain(obj->pNext);
11053       } else {
11054          PRINT_SPACE
11055          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11056      }
11057 
11058      print_VkPipelineLayoutCreateFlags(obj->flags, "flags", 1);
11059 
11060      print_uint32_t(obj->setLayoutCount, "setLayoutCount", 1);
11061 
11062      PRINT_SPACE
11063      _OUT << "\"pSetLayouts\":" << std::endl;
11064      PRINT_SPACE
11065      if (obj->pSetLayouts) {
11066        _OUT << "[" << std::endl;
11067        for (unsigned int i = 0; i < obj->setLayoutCount; i++) {
11068            bool isCommaNeeded = (i+1) != obj->setLayoutCount;
11069            if (isCommaNeeded)
11070            {
11071                PRINT_SPACE
11072                _OUT << obj->pSetLayouts[i].getInternal() << "," << std::endl;
11073            }
11074            else
11075            {
11076                PRINT_SPACE
11077                _OUT << obj->pSetLayouts[i].getInternal() << std::endl;
11078            }
11079        }
11080        PRINT_SPACE
11081        _OUT << "]" << "," << std::endl;
11082      } else {
11083        _OUT << "\"NULL\"" << "," << std::endl;
11084      }
11085 
11086      print_uint32_t(obj->pushConstantRangeCount, "pushConstantRangeCount", 1);
11087 
11088      PRINT_SPACE
11089      _OUT << "\"pPushConstantRanges\": " << std::endl;
11090      if (obj->pPushConstantRanges) {
11091          PRINT_SPACE
11092          _OUT << "[" << std::endl;
11093          for (unsigned int i = 0; i < obj->pushConstantRangeCount; i++) {
11094            if (i+1 == obj->pushConstantRangeCount)
11095                print_VkPushConstantRange(obj->pPushConstantRanges[i], "pPushConstantRanges", 0);
11096            else
11097                print_VkPushConstantRange(obj->pPushConstantRanges[i], "pPushConstantRanges", 1);
11098          }
11099          PRINT_SPACE
11100          _OUT << "]" << std::endl;
11101     }
11102      else
11103      {
11104          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11105      }
11106 
11107      INDENT(-4);
11108      PRINT_SPACE
11109      if (commaNeeded)
11110          _OUT << "}," << std::endl;
11111      else
11112          _OUT << "}" << std::endl;
11113 }
11114 
print_VkSamplerCreateInfo(VkSamplerCreateInfo obj,const std::string & s,bool commaNeeded=true)11115 static void print_VkSamplerCreateInfo(VkSamplerCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11116      PRINT_SPACE
11117      _OUT << "{" << std::endl;
11118      INDENT(4);
11119 
11120      print_VkStructureType(obj.sType, "sType", 1);
11121 
11122       if (obj.pNext) {
11123          dumpPNextChain(obj.pNext);
11124       } else {
11125          PRINT_SPACE
11126          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11127      }
11128 
11129      print_VkSamplerCreateFlags(obj.flags, "flags", 1);
11130 
11131      print_VkFilter(obj.magFilter, "magFilter", 1);
11132 
11133      print_VkFilter(obj.minFilter, "minFilter", 1);
11134 
11135      print_VkSamplerMipmapMode(obj.mipmapMode, "mipmapMode", 1);
11136 
11137      print_VkSamplerAddressMode(obj.addressModeU, "addressModeU", 1);
11138 
11139      print_VkSamplerAddressMode(obj.addressModeV, "addressModeV", 1);
11140 
11141      print_VkSamplerAddressMode(obj.addressModeW, "addressModeW", 1);
11142 
11143      print_float(obj.mipLodBias, "mipLodBias", 1);
11144 
11145      print_VkBool32(obj.anisotropyEnable, "anisotropyEnable", 1);
11146 
11147      print_float(obj.maxAnisotropy, "maxAnisotropy", 1);
11148 
11149      print_VkBool32(obj.compareEnable, "compareEnable", 1);
11150 
11151      print_VkCompareOp(obj.compareOp, "compareOp", 1);
11152 
11153      print_float(obj.minLod, "minLod", 1);
11154 
11155      print_float(obj.maxLod, "maxLod", 1);
11156 
11157      print_VkBorderColor(obj.borderColor, "borderColor", 1);
11158 
11159      print_VkBool32(obj.unnormalizedCoordinates, "unnormalizedCoordinates", 0);
11160 
11161      INDENT(-4);
11162      PRINT_SPACE
11163      if (commaNeeded)
11164          _OUT << "}," << std::endl;
11165      else
11166          _OUT << "}" << std::endl;
11167 }
print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj,const std::string & s,bool commaNeeded=true)11168 static void print_VkSamplerCreateInfo(const VkSamplerCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11169      PRINT_SPACE
11170      _OUT << "{" << std::endl;
11171      INDENT(4);
11172 
11173      print_VkStructureType(obj->sType, "sType", 1);
11174 
11175       if (obj->pNext) {
11176          dumpPNextChain(obj->pNext);
11177       } else {
11178          PRINT_SPACE
11179          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11180      }
11181 
11182      print_VkSamplerCreateFlags(obj->flags, "flags", 1);
11183 
11184      print_VkFilter(obj->magFilter, "magFilter", 1);
11185 
11186      print_VkFilter(obj->minFilter, "minFilter", 1);
11187 
11188      print_VkSamplerMipmapMode(obj->mipmapMode, "mipmapMode", 1);
11189 
11190      print_VkSamplerAddressMode(obj->addressModeU, "addressModeU", 1);
11191 
11192      print_VkSamplerAddressMode(obj->addressModeV, "addressModeV", 1);
11193 
11194      print_VkSamplerAddressMode(obj->addressModeW, "addressModeW", 1);
11195 
11196      print_float(obj->mipLodBias, "mipLodBias", 1);
11197 
11198      print_VkBool32(obj->anisotropyEnable, "anisotropyEnable", 1);
11199 
11200      print_float(obj->maxAnisotropy, "maxAnisotropy", 1);
11201 
11202      print_VkBool32(obj->compareEnable, "compareEnable", 1);
11203 
11204      print_VkCompareOp(obj->compareOp, "compareOp", 1);
11205 
11206      print_float(obj->minLod, "minLod", 1);
11207 
11208      print_float(obj->maxLod, "maxLod", 1);
11209 
11210      print_VkBorderColor(obj->borderColor, "borderColor", 1);
11211 
11212      print_VkBool32(obj->unnormalizedCoordinates, "unnormalizedCoordinates", 0);
11213 
11214      INDENT(-4);
11215      PRINT_SPACE
11216      if (commaNeeded)
11217          _OUT << "}," << std::endl;
11218      else
11219          _OUT << "}" << std::endl;
11220 }
11221 
print_VkCopyDescriptorSet(VkCopyDescriptorSet obj,const std::string & s,bool commaNeeded=true)11222 static void print_VkCopyDescriptorSet(VkCopyDescriptorSet obj, const std::string& s, bool commaNeeded=true) {
11223      PRINT_SPACE
11224      _OUT << "{" << std::endl;
11225      INDENT(4);
11226 
11227      print_VkStructureType(obj.sType, "sType", 1);
11228 
11229       if (obj.pNext) {
11230          dumpPNextChain(obj.pNext);
11231       } else {
11232          PRINT_SPACE
11233          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11234      }
11235 
11236      // CTS : required value
11237      PRINT_SPACE    _OUT << "\"" << "srcSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11238 
11239      print_uint32_t(obj.srcBinding, "srcBinding", 1);
11240 
11241      print_uint32_t(obj.srcArrayElement, "srcArrayElement", 1);
11242 
11243      // CTS : required value
11244      PRINT_SPACE    _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11245 
11246      print_uint32_t(obj.dstBinding, "dstBinding", 1);
11247 
11248      print_uint32_t(obj.dstArrayElement, "dstArrayElement", 1);
11249 
11250      print_uint32_t(obj.descriptorCount, "descriptorCount", 0);
11251 
11252      INDENT(-4);
11253      PRINT_SPACE
11254      if (commaNeeded)
11255          _OUT << "}," << std::endl;
11256      else
11257          _OUT << "}" << std::endl;
11258 }
print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj,const std::string & s,bool commaNeeded=true)11259 static void print_VkCopyDescriptorSet(const VkCopyDescriptorSet * obj, const std::string& s, bool commaNeeded=true) {
11260      PRINT_SPACE
11261      _OUT << "{" << std::endl;
11262      INDENT(4);
11263 
11264      print_VkStructureType(obj->sType, "sType", 1);
11265 
11266       if (obj->pNext) {
11267          dumpPNextChain(obj->pNext);
11268       } else {
11269          PRINT_SPACE
11270          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11271      }
11272 
11273      // CTS : required value
11274      PRINT_SPACE    _OUT << "\"" << "srcSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11275 
11276      print_uint32_t(obj->srcBinding, "srcBinding", 1);
11277 
11278      print_uint32_t(obj->srcArrayElement, "srcArrayElement", 1);
11279 
11280      // CTS : required value
11281      PRINT_SPACE    _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11282 
11283      print_uint32_t(obj->dstBinding, "dstBinding", 1);
11284 
11285      print_uint32_t(obj->dstArrayElement, "dstArrayElement", 1);
11286 
11287      print_uint32_t(obj->descriptorCount, "descriptorCount", 0);
11288 
11289      INDENT(-4);
11290      PRINT_SPACE
11291      if (commaNeeded)
11292          _OUT << "}," << std::endl;
11293      else
11294          _OUT << "}" << std::endl;
11295 }
11296 
print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj,const std::string & s,bool commaNeeded=true)11297 static void print_VkDescriptorBufferInfo(VkDescriptorBufferInfo obj, const std::string& s, bool commaNeeded=true) {
11298      PRINT_SPACE
11299      _OUT << "{" << std::endl;
11300      INDENT(4);
11301 
11302      // CTS : required value
11303      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
11304 
11305      print_VkDeviceSize(obj.offset, "offset", 1);
11306 
11307      print_VkDeviceSize(obj.range, "range", 0);
11308 
11309      INDENT(-4);
11310      PRINT_SPACE
11311      if (commaNeeded)
11312          _OUT << "}," << std::endl;
11313      else
11314          _OUT << "}" << std::endl;
11315 }
print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj,const std::string & s,bool commaNeeded=true)11316 static void print_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * obj, const std::string& s, bool commaNeeded=true) {
11317      PRINT_SPACE
11318      _OUT << "{" << std::endl;
11319      INDENT(4);
11320 
11321      // CTS : required value
11322      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
11323 
11324      print_VkDeviceSize(obj->offset, "offset", 1);
11325 
11326      print_VkDeviceSize(obj->range, "range", 0);
11327 
11328      INDENT(-4);
11329      PRINT_SPACE
11330      if (commaNeeded)
11331          _OUT << "}," << std::endl;
11332      else
11333          _OUT << "}" << std::endl;
11334 }
11335 
print_VkDescriptorImageInfo(VkDescriptorImageInfo obj,const std::string & s,bool commaNeeded=true)11336 static void print_VkDescriptorImageInfo(VkDescriptorImageInfo obj, const std::string& s, bool commaNeeded=true) {
11337      PRINT_SPACE
11338      _OUT << "{" << std::endl;
11339      INDENT(4);
11340 
11341      // CTS : required value
11342      PRINT_SPACE    _OUT << "\"" << "sampler" << "\"" << " : " << "\"" << "\"," << std::endl;
11343 
11344      // CTS : required value
11345      PRINT_SPACE    _OUT << "\"" << "imageView" << "\"" << " : " << "\"" << "\"," << std::endl;
11346 
11347      print_VkImageLayout(obj.imageLayout, "imageLayout", 0);
11348 
11349      INDENT(-4);
11350      PRINT_SPACE
11351      if (commaNeeded)
11352          _OUT << "}," << std::endl;
11353      else
11354          _OUT << "}" << std::endl;
11355 }
print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj,const std::string & s,bool commaNeeded=true)11356 static void print_VkDescriptorImageInfo(const VkDescriptorImageInfo * obj, const std::string& s, bool commaNeeded=true) {
11357      PRINT_SPACE
11358      _OUT << "{" << std::endl;
11359      INDENT(4);
11360 
11361      // CTS : required value
11362      PRINT_SPACE    _OUT << "\"" << "sampler" << "\"" << " : " << "\"" << "\"," << std::endl;
11363 
11364      // CTS : required value
11365      PRINT_SPACE    _OUT << "\"" << "imageView" << "\"" << " : " << "\"" << "\"," << std::endl;
11366 
11367      print_VkImageLayout(obj->imageLayout, "imageLayout", 0);
11368 
11369      INDENT(-4);
11370      PRINT_SPACE
11371      if (commaNeeded)
11372          _OUT << "}," << std::endl;
11373      else
11374          _OUT << "}" << std::endl;
11375 }
11376 
print_VkDescriptorPoolSize(VkDescriptorPoolSize obj,const std::string & s,bool commaNeeded=true)11377 static void print_VkDescriptorPoolSize(VkDescriptorPoolSize obj, const std::string& s, bool commaNeeded=true) {
11378      PRINT_SPACE
11379      _OUT << "{" << std::endl;
11380      INDENT(4);
11381 
11382      print_VkDescriptorType(obj.type, "type", 1);
11383 
11384      print_uint32_t(obj.descriptorCount, "descriptorCount", 0);
11385 
11386      INDENT(-4);
11387      PRINT_SPACE
11388      if (commaNeeded)
11389          _OUT << "}," << std::endl;
11390      else
11391          _OUT << "}" << std::endl;
11392 }
print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj,const std::string & s,bool commaNeeded=true)11393 static void print_VkDescriptorPoolSize(const VkDescriptorPoolSize * obj, const std::string& s, bool commaNeeded=true) {
11394      PRINT_SPACE
11395      _OUT << "{" << std::endl;
11396      INDENT(4);
11397 
11398      print_VkDescriptorType(obj->type, "type", 1);
11399 
11400      print_uint32_t(obj->descriptorCount, "descriptorCount", 0);
11401 
11402      INDENT(-4);
11403      PRINT_SPACE
11404      if (commaNeeded)
11405          _OUT << "}," << std::endl;
11406      else
11407          _OUT << "}" << std::endl;
11408 }
11409 
print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)11410 static void print_VkDescriptorPoolCreateInfo(VkDescriptorPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11411      PRINT_SPACE
11412      _OUT << "{" << std::endl;
11413      INDENT(4);
11414 
11415      print_VkStructureType(obj.sType, "sType", 1);
11416 
11417       if (obj.pNext) {
11418          dumpPNextChain(obj.pNext);
11419       } else {
11420          PRINT_SPACE
11421          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11422      }
11423 
11424      print_VkDescriptorPoolCreateFlags(obj.flags, "flags", 1);
11425 
11426      print_uint32_t(obj.maxSets, "maxSets", 1);
11427 
11428      print_uint32_t(obj.poolSizeCount, "poolSizeCount", 1);
11429 
11430      PRINT_SPACE
11431      _OUT << "\"pPoolSizes\": " << std::endl;
11432      if (obj.pPoolSizes) {
11433          PRINT_SPACE
11434          _OUT << "[" << std::endl;
11435          for (unsigned int i = 0; i < obj.poolSizeCount; i++) {
11436            if (i+1 == obj.poolSizeCount)
11437                print_VkDescriptorPoolSize(obj.pPoolSizes[i], "pPoolSizes", 0);
11438            else
11439                print_VkDescriptorPoolSize(obj.pPoolSizes[i], "pPoolSizes", 1);
11440          }
11441          PRINT_SPACE
11442          _OUT << "]" << std::endl;
11443     }
11444      else
11445      {
11446          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11447      }
11448 
11449      INDENT(-4);
11450      PRINT_SPACE
11451      if (commaNeeded)
11452          _OUT << "}," << std::endl;
11453      else
11454          _OUT << "}" << std::endl;
11455 }
print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)11456 static void print_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11457      PRINT_SPACE
11458      _OUT << "{" << std::endl;
11459      INDENT(4);
11460 
11461      print_VkStructureType(obj->sType, "sType", 1);
11462 
11463       if (obj->pNext) {
11464          dumpPNextChain(obj->pNext);
11465       } else {
11466          PRINT_SPACE
11467          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11468      }
11469 
11470      print_VkDescriptorPoolCreateFlags(obj->flags, "flags", 1);
11471 
11472      print_uint32_t(obj->maxSets, "maxSets", 1);
11473 
11474      print_uint32_t(obj->poolSizeCount, "poolSizeCount", 1);
11475 
11476      PRINT_SPACE
11477      _OUT << "\"pPoolSizes\": " << std::endl;
11478      if (obj->pPoolSizes) {
11479          PRINT_SPACE
11480          _OUT << "[" << std::endl;
11481          for (unsigned int i = 0; i < obj->poolSizeCount; i++) {
11482            if (i+1 == obj->poolSizeCount)
11483                print_VkDescriptorPoolSize(obj->pPoolSizes[i], "pPoolSizes", 0);
11484            else
11485                print_VkDescriptorPoolSize(obj->pPoolSizes[i], "pPoolSizes", 1);
11486          }
11487          PRINT_SPACE
11488          _OUT << "]" << std::endl;
11489     }
11490      else
11491      {
11492          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11493      }
11494 
11495      INDENT(-4);
11496      PRINT_SPACE
11497      if (commaNeeded)
11498          _OUT << "}," << std::endl;
11499      else
11500          _OUT << "}" << std::endl;
11501 }
11502 
print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj,const std::string & s,bool commaNeeded=true)11503 static void print_VkDescriptorSetAllocateInfo(VkDescriptorSetAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
11504      PRINT_SPACE
11505      _OUT << "{" << std::endl;
11506      INDENT(4);
11507 
11508      print_VkStructureType(obj.sType, "sType", 1);
11509 
11510       if (obj.pNext) {
11511          dumpPNextChain(obj.pNext);
11512       } else {
11513          PRINT_SPACE
11514          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11515      }
11516 
11517      // CTS : required value
11518      PRINT_SPACE    _OUT << "\"" << "descriptorPool" << "\"" << " : " << "\"" << "\"," << std::endl;
11519 
11520      print_uint32_t(obj.descriptorSetCount, "descriptorSetCount", 1);
11521 
11522      PRINT_SPACE
11523      _OUT << "\"pSetLayouts\":" << std::endl;
11524      PRINT_SPACE
11525      if (obj.pSetLayouts) {
11526        _OUT << "[" << std::endl;
11527        for (unsigned int i = 0; i < obj.descriptorSetCount; i++) {
11528            std:: stringstream tmp;
11529            tmp << "pSetLayouts" << "_" << i;
11530            bool isCommaNeeded = (i+1) != obj.descriptorSetCount;
11531            print_VkDescriptorSetLayout(obj.pSetLayouts[i], tmp.str(), isCommaNeeded);
11532        }
11533        PRINT_SPACE
11534        _OUT << "]" << "" << std::endl;
11535      } else {
11536        _OUT << "\"NULL\"" << "" << std::endl;
11537      }
11538 
11539      INDENT(-4);
11540      PRINT_SPACE
11541      if (commaNeeded)
11542          _OUT << "}," << std::endl;
11543      else
11544          _OUT << "}" << std::endl;
11545 }
print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj,const std::string & s,bool commaNeeded=true)11546 static void print_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
11547      PRINT_SPACE
11548      _OUT << "{" << std::endl;
11549      INDENT(4);
11550 
11551      print_VkStructureType(obj->sType, "sType", 1);
11552 
11553       if (obj->pNext) {
11554          dumpPNextChain(obj->pNext);
11555       } else {
11556          PRINT_SPACE
11557          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11558      }
11559 
11560      // CTS : required value
11561      PRINT_SPACE    _OUT << "\"" << "descriptorPool" << "\"" << " : " << "\"" << "\"," << std::endl;
11562 
11563      print_uint32_t(obj->descriptorSetCount, "descriptorSetCount", 1);
11564 
11565      PRINT_SPACE
11566      _OUT << "\"pSetLayouts\":" << std::endl;
11567      PRINT_SPACE
11568      if (obj->pSetLayouts) {
11569        _OUT << "[" << std::endl;
11570        for (unsigned int i = 0; i < obj->descriptorSetCount; i++) {
11571            std:: stringstream tmp;
11572            tmp << "pSetLayouts" << "_" << i;
11573            bool isCommaNeeded = (i+1) != obj->descriptorSetCount;
11574            print_VkDescriptorSetLayout(obj->pSetLayouts[i], tmp.str(), isCommaNeeded);
11575        }
11576        PRINT_SPACE
11577        _OUT << "]" << "" << std::endl;
11578      } else {
11579        _OUT << "\"NULL\"" << "" << std::endl;
11580      }
11581 
11582      INDENT(-4);
11583      PRINT_SPACE
11584      if (commaNeeded)
11585          _OUT << "}," << std::endl;
11586      else
11587          _OUT << "}" << std::endl;
11588 }
11589 
print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj,const std::string & s,bool commaNeeded=true)11590 static void print_VkDescriptorSetLayoutBinding(VkDescriptorSetLayoutBinding obj, const std::string& s, bool commaNeeded=true) {
11591      PRINT_SPACE
11592      _OUT << "{" << std::endl;
11593      INDENT(4);
11594 
11595      print_uint32_t(obj.binding, "binding", 1);
11596 
11597      print_VkDescriptorType(obj.descriptorType, "descriptorType", 1);
11598 
11599      print_uint32_t(obj.descriptorCount, "descriptorCount", 1);
11600 
11601      print_VkShaderStageFlags(obj.stageFlags, "stageFlags", 1);
11602 
11603      PRINT_SPACE
11604      _OUT << "\"pImmutableSamplers\":" << std::endl;
11605      PRINT_SPACE
11606      if (obj.pImmutableSamplers) {
11607        _OUT << "[" << std::endl;
11608        for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11609            bool isCommaNeeded = (i+1) != obj.descriptorCount;
11610            if (isCommaNeeded)
11611            {
11612                PRINT_SPACE
11613                _OUT << obj.pImmutableSamplers[i].getInternal() << "," << std::endl;
11614            }
11615            else
11616            {
11617                PRINT_SPACE
11618                _OUT << obj.pImmutableSamplers[i].getInternal() << std::endl;
11619            }
11620        }
11621        PRINT_SPACE
11622        _OUT << "]" << "" << std::endl;
11623      } else {
11624        _OUT << "\"NULL\"" << "" << std::endl;
11625      }
11626 
11627      INDENT(-4);
11628      PRINT_SPACE
11629      if (commaNeeded)
11630          _OUT << "}," << std::endl;
11631      else
11632          _OUT << "}" << std::endl;
11633 }
print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj,const std::string & s,bool commaNeeded=true)11634 static void print_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * obj, const std::string& s, bool commaNeeded=true) {
11635      PRINT_SPACE
11636      _OUT << "{" << std::endl;
11637      INDENT(4);
11638 
11639      print_uint32_t(obj->binding, "binding", 1);
11640 
11641      print_VkDescriptorType(obj->descriptorType, "descriptorType", 1);
11642 
11643      print_uint32_t(obj->descriptorCount, "descriptorCount", 1);
11644 
11645      print_VkShaderStageFlags(obj->stageFlags, "stageFlags", 1);
11646 
11647      PRINT_SPACE
11648      _OUT << "\"pImmutableSamplers\":" << std::endl;
11649      PRINT_SPACE
11650      if (obj->pImmutableSamplers) {
11651        _OUT << "[" << std::endl;
11652        for (unsigned int i = 0; i < obj->descriptorCount; i++) {
11653            bool isCommaNeeded = (i+1) != obj->descriptorCount;
11654            if (isCommaNeeded)
11655            {
11656                PRINT_SPACE
11657                _OUT << obj->pImmutableSamplers[i].getInternal() << "," << std::endl;
11658            }
11659            else
11660            {
11661                PRINT_SPACE
11662                _OUT << obj->pImmutableSamplers[i].getInternal() << std::endl;
11663            }
11664        }
11665        PRINT_SPACE
11666        _OUT << "]" << "" << std::endl;
11667      } else {
11668        _OUT << "\"NULL\"" << "" << std::endl;
11669      }
11670 
11671      INDENT(-4);
11672      PRINT_SPACE
11673      if (commaNeeded)
11674          _OUT << "}," << std::endl;
11675      else
11676          _OUT << "}" << std::endl;
11677 }
11678 
print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj,const std::string & s,bool commaNeeded=true)11679 static void print_VkDescriptorSetLayoutCreateInfo(VkDescriptorSetLayoutCreateInfo obj, const std::string& s, bool commaNeeded=true) {
11680      PRINT_SPACE
11681      _OUT << "{" << std::endl;
11682      INDENT(4);
11683 
11684      print_VkStructureType(obj.sType, "sType", 1);
11685 
11686       if (obj.pNext) {
11687          dumpPNextChain(obj.pNext);
11688       } else {
11689          PRINT_SPACE
11690          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11691      }
11692 
11693      print_VkDescriptorSetLayoutCreateFlags(obj.flags, "flags", 1);
11694 
11695      print_uint32_t(obj.bindingCount, "bindingCount", 1);
11696 
11697      PRINT_SPACE
11698      _OUT << "\"pBindings\": " << std::endl;
11699      if (obj.pBindings) {
11700          PRINT_SPACE
11701          _OUT << "[" << std::endl;
11702          for (unsigned int i = 0; i < obj.bindingCount; i++) {
11703            if (i+1 == obj.bindingCount)
11704                print_VkDescriptorSetLayoutBinding(obj.pBindings[i], "pBindings", 0);
11705            else
11706                print_VkDescriptorSetLayoutBinding(obj.pBindings[i], "pBindings", 1);
11707          }
11708          PRINT_SPACE
11709          _OUT << "]" << std::endl;
11710     }
11711      else
11712      {
11713          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11714      }
11715 
11716      INDENT(-4);
11717      PRINT_SPACE
11718      if (commaNeeded)
11719          _OUT << "}," << std::endl;
11720      else
11721          _OUT << "}" << std::endl;
11722 }
print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj,const std::string & s,bool commaNeeded=true)11723 static void print_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
11724      PRINT_SPACE
11725      _OUT << "{" << std::endl;
11726      INDENT(4);
11727 
11728      print_VkStructureType(obj->sType, "sType", 1);
11729 
11730       if (obj->pNext) {
11731          dumpPNextChain(obj->pNext);
11732       } else {
11733          PRINT_SPACE
11734          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11735      }
11736 
11737      print_VkDescriptorSetLayoutCreateFlags(obj->flags, "flags", 1);
11738 
11739      print_uint32_t(obj->bindingCount, "bindingCount", 1);
11740 
11741      PRINT_SPACE
11742      _OUT << "\"pBindings\": " << std::endl;
11743      if (obj->pBindings) {
11744          PRINT_SPACE
11745          _OUT << "[" << std::endl;
11746          for (unsigned int i = 0; i < obj->bindingCount; i++) {
11747            if (i+1 == obj->bindingCount)
11748                print_VkDescriptorSetLayoutBinding(obj->pBindings[i], "pBindings", 0);
11749            else
11750                print_VkDescriptorSetLayoutBinding(obj->pBindings[i], "pBindings", 1);
11751          }
11752          PRINT_SPACE
11753          _OUT << "]" << std::endl;
11754     }
11755      else
11756      {
11757          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
11758      }
11759 
11760      INDENT(-4);
11761      PRINT_SPACE
11762      if (commaNeeded)
11763          _OUT << "}," << std::endl;
11764      else
11765          _OUT << "}" << std::endl;
11766 }
11767 
print_VkWriteDescriptorSet(VkWriteDescriptorSet obj,const std::string & s,bool commaNeeded=true)11768 static void print_VkWriteDescriptorSet(VkWriteDescriptorSet obj, const std::string& s, bool commaNeeded=true) {
11769      PRINT_SPACE
11770      _OUT << "{" << std::endl;
11771      INDENT(4);
11772 
11773      print_VkStructureType(obj.sType, "sType", 1);
11774 
11775       if (obj.pNext) {
11776          dumpPNextChain(obj.pNext);
11777       } else {
11778          PRINT_SPACE
11779          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11780      }
11781 
11782      // CTS : required value
11783      PRINT_SPACE    _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11784 
11785      print_uint32_t(obj.dstBinding, "dstBinding", 1);
11786 
11787      print_uint32_t(obj.dstArrayElement, "dstArrayElement", 1);
11788 
11789      print_uint32_t(obj.descriptorCount, "descriptorCount", 1);
11790 
11791      print_VkDescriptorType(obj.descriptorType, "descriptorType", 1);
11792 
11793      PRINT_SPACE
11794      _OUT << "\"pImageInfo\": " << std::endl;
11795      if (obj.pImageInfo) {
11796          PRINT_SPACE
11797          _OUT << "[" << std::endl;
11798          for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11799            if (i+1 == obj.descriptorCount)
11800                print_VkDescriptorImageInfo(obj.pImageInfo[i], "pImageInfo", 0);
11801            else
11802                print_VkDescriptorImageInfo(obj.pImageInfo[i], "pImageInfo", 1);
11803          }
11804          PRINT_SPACE
11805          _OUT << "]," << std::endl;
11806     }
11807      else
11808      {
11809          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11810      }
11811 
11812      PRINT_SPACE
11813      _OUT << "\"pBufferInfo\": " << std::endl;
11814      if (obj.pBufferInfo) {
11815          PRINT_SPACE
11816          _OUT << "[" << std::endl;
11817          for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11818            if (i+1 == obj.descriptorCount)
11819                print_VkDescriptorBufferInfo(obj.pBufferInfo[i], "pBufferInfo", 0);
11820            else
11821                print_VkDescriptorBufferInfo(obj.pBufferInfo[i], "pBufferInfo", 1);
11822          }
11823          PRINT_SPACE
11824          _OUT << "]," << std::endl;
11825     }
11826      else
11827      {
11828          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11829      }
11830 
11831      PRINT_SPACE
11832      _OUT << "\"pTexelBufferView\":" << std::endl;
11833      PRINT_SPACE
11834      if (obj.pTexelBufferView) {
11835        _OUT << "[" << std::endl;
11836        for (unsigned int i = 0; i < obj.descriptorCount; i++) {
11837            std:: stringstream tmp;
11838            tmp << "pTexelBufferView" << "_" << i;
11839            bool isCommaNeeded = (i+1) != obj.descriptorCount;
11840            print_VkBufferView(obj.pTexelBufferView[i], tmp.str(), isCommaNeeded);
11841        }
11842        PRINT_SPACE
11843        _OUT << "]" << "" << std::endl;
11844      } else {
11845        _OUT << "\"NULL\"" << "" << std::endl;
11846      }
11847 
11848      INDENT(-4);
11849      PRINT_SPACE
11850      if (commaNeeded)
11851          _OUT << "}," << std::endl;
11852      else
11853          _OUT << "}" << std::endl;
11854 }
print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj,const std::string & s,bool commaNeeded=true)11855 static void print_VkWriteDescriptorSet(const VkWriteDescriptorSet * obj, const std::string& s, bool commaNeeded=true) {
11856      PRINT_SPACE
11857      _OUT << "{" << std::endl;
11858      INDENT(4);
11859 
11860      print_VkStructureType(obj->sType, "sType", 1);
11861 
11862       if (obj->pNext) {
11863          dumpPNextChain(obj->pNext);
11864       } else {
11865          PRINT_SPACE
11866          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
11867      }
11868 
11869      // CTS : required value
11870      PRINT_SPACE    _OUT << "\"" << "dstSet" << "\"" << " : " << "\"" << "\"," << std::endl;
11871 
11872      print_uint32_t(obj->dstBinding, "dstBinding", 1);
11873 
11874      print_uint32_t(obj->dstArrayElement, "dstArrayElement", 1);
11875 
11876      print_uint32_t(obj->descriptorCount, "descriptorCount", 1);
11877 
11878      print_VkDescriptorType(obj->descriptorType, "descriptorType", 1);
11879 
11880      PRINT_SPACE
11881      _OUT << "\"pImageInfo\": " << std::endl;
11882      if (obj->pImageInfo) {
11883          PRINT_SPACE
11884          _OUT << "[" << std::endl;
11885          for (unsigned int i = 0; i < obj->descriptorCount; i++) {
11886            if (i+1 == obj->descriptorCount)
11887                print_VkDescriptorImageInfo(obj->pImageInfo[i], "pImageInfo", 0);
11888            else
11889                print_VkDescriptorImageInfo(obj->pImageInfo[i], "pImageInfo", 1);
11890          }
11891          PRINT_SPACE
11892          _OUT << "]," << std::endl;
11893     }
11894      else
11895      {
11896          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11897      }
11898 
11899      PRINT_SPACE
11900      _OUT << "\"pBufferInfo\": " << std::endl;
11901      if (obj->pBufferInfo) {
11902          PRINT_SPACE
11903          _OUT << "[" << std::endl;
11904          for (unsigned int i = 0; i < obj->descriptorCount; i++) {
11905            if (i+1 == obj->descriptorCount)
11906                print_VkDescriptorBufferInfo(obj->pBufferInfo[i], "pBufferInfo", 0);
11907            else
11908                print_VkDescriptorBufferInfo(obj->pBufferInfo[i], "pBufferInfo", 1);
11909          }
11910          PRINT_SPACE
11911          _OUT << "]," << std::endl;
11912     }
11913      else
11914      {
11915          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
11916      }
11917 
11918      PRINT_SPACE
11919      _OUT << "\"pTexelBufferView\":" << std::endl;
11920      PRINT_SPACE
11921      if (obj->pTexelBufferView) {
11922        _OUT << "[" << std::endl;
11923        for (unsigned int i = 0; i < obj->descriptorCount; i++) {
11924            std:: stringstream tmp;
11925            tmp << "pTexelBufferView" << "_" << i;
11926            bool isCommaNeeded = (i+1) != obj->descriptorCount;
11927            print_VkBufferView(obj->pTexelBufferView[i], tmp.str(), isCommaNeeded);
11928        }
11929        PRINT_SPACE
11930        _OUT << "]" << "" << std::endl;
11931      } else {
11932        _OUT << "\"NULL\"" << "" << std::endl;
11933      }
11934 
11935      INDENT(-4);
11936      PRINT_SPACE
11937      if (commaNeeded)
11938          _OUT << "}," << std::endl;
11939      else
11940          _OUT << "}" << std::endl;
11941 }
11942 
print_VkAttachmentDescription(VkAttachmentDescription obj,const std::string & s,bool commaNeeded=true)11943 static void print_VkAttachmentDescription(VkAttachmentDescription obj, const std::string& s, bool commaNeeded=true) {
11944      PRINT_SPACE
11945      _OUT << "{" << std::endl;
11946      INDENT(4);
11947 
11948      print_VkAttachmentDescriptionFlags(obj.flags, "flags", 1);
11949 
11950      print_VkFormat(obj.format, "format", 1);
11951 
11952      print_VkSampleCountFlagBits(obj.samples, "samples", 1);
11953 
11954      print_VkAttachmentLoadOp(obj.loadOp, "loadOp", 1);
11955 
11956      print_VkAttachmentStoreOp(obj.storeOp, "storeOp", 1);
11957 
11958      print_VkAttachmentLoadOp(obj.stencilLoadOp, "stencilLoadOp", 1);
11959 
11960      print_VkAttachmentStoreOp(obj.stencilStoreOp, "stencilStoreOp", 1);
11961 
11962      print_VkImageLayout(obj.initialLayout, "initialLayout", 1);
11963 
11964      print_VkImageLayout(obj.finalLayout, "finalLayout", 0);
11965 
11966      INDENT(-4);
11967      PRINT_SPACE
11968      if (commaNeeded)
11969          _OUT << "}," << std::endl;
11970      else
11971          _OUT << "}" << std::endl;
11972 }
print_VkAttachmentDescription(const VkAttachmentDescription * obj,const std::string & s,bool commaNeeded=true)11973 static void print_VkAttachmentDescription(const VkAttachmentDescription * obj, const std::string& s, bool commaNeeded=true) {
11974      PRINT_SPACE
11975      _OUT << "{" << std::endl;
11976      INDENT(4);
11977 
11978      print_VkAttachmentDescriptionFlags(obj->flags, "flags", 1);
11979 
11980      print_VkFormat(obj->format, "format", 1);
11981 
11982      print_VkSampleCountFlagBits(obj->samples, "samples", 1);
11983 
11984      print_VkAttachmentLoadOp(obj->loadOp, "loadOp", 1);
11985 
11986      print_VkAttachmentStoreOp(obj->storeOp, "storeOp", 1);
11987 
11988      print_VkAttachmentLoadOp(obj->stencilLoadOp, "stencilLoadOp", 1);
11989 
11990      print_VkAttachmentStoreOp(obj->stencilStoreOp, "stencilStoreOp", 1);
11991 
11992      print_VkImageLayout(obj->initialLayout, "initialLayout", 1);
11993 
11994      print_VkImageLayout(obj->finalLayout, "finalLayout", 0);
11995 
11996      INDENT(-4);
11997      PRINT_SPACE
11998      if (commaNeeded)
11999          _OUT << "}," << std::endl;
12000      else
12001          _OUT << "}" << std::endl;
12002 }
12003 
print_VkAttachmentReference(VkAttachmentReference obj,const std::string & s,bool commaNeeded=true)12004 static void print_VkAttachmentReference(VkAttachmentReference obj, const std::string& s, bool commaNeeded=true) {
12005      PRINT_SPACE
12006      _OUT << "{" << std::endl;
12007      INDENT(4);
12008 
12009      print_uint32_t(obj.attachment, "attachment", 1);
12010 
12011      print_VkImageLayout(obj.layout, "layout", 0);
12012 
12013      INDENT(-4);
12014      PRINT_SPACE
12015      if (commaNeeded)
12016          _OUT << "}," << std::endl;
12017      else
12018          _OUT << "}" << std::endl;
12019 }
print_VkAttachmentReference(const VkAttachmentReference * obj,const std::string & s,bool commaNeeded=true)12020 static void print_VkAttachmentReference(const VkAttachmentReference * obj, const std::string& s, bool commaNeeded=true) {
12021      PRINT_SPACE
12022      _OUT << "{" << std::endl;
12023      INDENT(4);
12024 
12025      print_uint32_t(obj->attachment, "attachment", 1);
12026 
12027      print_VkImageLayout(obj->layout, "layout", 0);
12028 
12029      INDENT(-4);
12030      PRINT_SPACE
12031      if (commaNeeded)
12032          _OUT << "}," << std::endl;
12033      else
12034          _OUT << "}" << std::endl;
12035 }
12036 
print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj,const std::string & s,bool commaNeeded=true)12037 static void print_VkFramebufferCreateInfo(VkFramebufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
12038      PRINT_SPACE
12039      _OUT << "{" << std::endl;
12040      INDENT(4);
12041 
12042      print_VkStructureType(obj.sType, "sType", 1);
12043 
12044       if (obj.pNext) {
12045          dumpPNextChain(obj.pNext);
12046       } else {
12047          PRINT_SPACE
12048          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12049      }
12050 
12051      print_VkFramebufferCreateFlags(obj.flags, "flags", 1);
12052 
12053      // CTS : required value
12054      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
12055 
12056      print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
12057 
12058      PRINT_SPACE
12059      _OUT << "\"pAttachments\":" << std::endl;
12060      PRINT_SPACE
12061      if (obj.pAttachments) {
12062        _OUT << "[" << std::endl;
12063        for (unsigned int i = 0; i < obj.attachmentCount; i++) {
12064            std:: stringstream tmp;
12065            tmp << "pAttachments" << "_" << i;
12066            bool isCommaNeeded = (i+1) != obj.attachmentCount;
12067            print_VkImageView(obj.pAttachments[i], tmp.str(), isCommaNeeded);
12068        }
12069        PRINT_SPACE
12070        _OUT << "]" << "," << std::endl;
12071      } else {
12072        _OUT << "\"NULL\"" << "," << std::endl;
12073      }
12074 
12075      print_uint32_t(obj.width, "width", 1);
12076 
12077      print_uint32_t(obj.height, "height", 1);
12078 
12079      print_uint32_t(obj.layers, "layers", 0);
12080 
12081      INDENT(-4);
12082      PRINT_SPACE
12083      if (commaNeeded)
12084          _OUT << "}," << std::endl;
12085      else
12086          _OUT << "}" << std::endl;
12087 }
print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)12088 static void print_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
12089      PRINT_SPACE
12090      _OUT << "{" << std::endl;
12091      INDENT(4);
12092 
12093      print_VkStructureType(obj->sType, "sType", 1);
12094 
12095       if (obj->pNext) {
12096          dumpPNextChain(obj->pNext);
12097       } else {
12098          PRINT_SPACE
12099          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12100      }
12101 
12102      print_VkFramebufferCreateFlags(obj->flags, "flags", 1);
12103 
12104      // CTS : required value
12105      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj->renderPass.getInternal() << "," << std::endl;
12106 
12107      print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
12108 
12109      PRINT_SPACE
12110      _OUT << "\"pAttachments\":" << std::endl;
12111      PRINT_SPACE
12112      if (obj->pAttachments) {
12113        _OUT << "[" << std::endl;
12114        for (unsigned int i = 0; i < obj->attachmentCount; i++) {
12115            std:: stringstream tmp;
12116            tmp << "pAttachments" << "_" << i;
12117            bool isCommaNeeded = (i+1) != obj->attachmentCount;
12118            print_VkImageView(obj->pAttachments[i], tmp.str(), isCommaNeeded);
12119        }
12120        PRINT_SPACE
12121        _OUT << "]" << "," << std::endl;
12122      } else {
12123        _OUT << "\"NULL\"" << "," << std::endl;
12124      }
12125 
12126      print_uint32_t(obj->width, "width", 1);
12127 
12128      print_uint32_t(obj->height, "height", 1);
12129 
12130      print_uint32_t(obj->layers, "layers", 0);
12131 
12132      INDENT(-4);
12133      PRINT_SPACE
12134      if (commaNeeded)
12135          _OUT << "}," << std::endl;
12136      else
12137          _OUT << "}" << std::endl;
12138 }
12139 
print_VkSubpassDescription(VkSubpassDescription obj,const std::string & s,bool commaNeeded=true)12140 static void print_VkSubpassDescription(VkSubpassDescription obj, const std::string& s, bool commaNeeded=true) {
12141      PRINT_SPACE
12142      _OUT << "{" << std::endl;
12143      INDENT(4);
12144 
12145      print_VkSubpassDescriptionFlags(obj.flags, "flags", 1);
12146 
12147      print_VkPipelineBindPoint(obj.pipelineBindPoint, "pipelineBindPoint", 1);
12148 
12149      print_uint32_t(obj.inputAttachmentCount, "inputAttachmentCount", 1);
12150 
12151      PRINT_SPACE
12152      _OUT << "\"pInputAttachments\": " << std::endl;
12153      if (obj.pInputAttachments) {
12154          PRINT_SPACE
12155          _OUT << "[" << std::endl;
12156          for (unsigned int i = 0; i < obj.inputAttachmentCount; i++) {
12157            if (i+1 == obj.inputAttachmentCount)
12158                print_VkAttachmentReference(obj.pInputAttachments[i], "pInputAttachments", 0);
12159            else
12160                print_VkAttachmentReference(obj.pInputAttachments[i], "pInputAttachments", 1);
12161          }
12162          PRINT_SPACE
12163          _OUT << "]," << std::endl;
12164     }
12165      else
12166      {
12167          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12168      }
12169 
12170      print_uint32_t(obj.colorAttachmentCount, "colorAttachmentCount", 1);
12171 
12172      PRINT_SPACE
12173      _OUT << "\"pColorAttachments\": " << std::endl;
12174      if (obj.pColorAttachments) {
12175          PRINT_SPACE
12176          _OUT << "[" << std::endl;
12177          for (unsigned int i = 0; i < obj.colorAttachmentCount; i++) {
12178            if (i+1 == obj.colorAttachmentCount)
12179                print_VkAttachmentReference(obj.pColorAttachments[i], "pColorAttachments", 0);
12180            else
12181                print_VkAttachmentReference(obj.pColorAttachments[i], "pColorAttachments", 1);
12182          }
12183          PRINT_SPACE
12184          _OUT << "]," << std::endl;
12185     }
12186      else
12187      {
12188          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12189      }
12190 
12191      PRINT_SPACE
12192      _OUT << "\"pResolveAttachments\": " << std::endl;
12193      if (obj.pResolveAttachments) {
12194          PRINT_SPACE
12195          _OUT << "[" << std::endl;
12196          for (unsigned int i = 0; i < obj.colorAttachmentCount; i++) {
12197            if (i+1 == obj.colorAttachmentCount)
12198                print_VkAttachmentReference(obj.pResolveAttachments[i], "pResolveAttachments", 0);
12199            else
12200                print_VkAttachmentReference(obj.pResolveAttachments[i], "pResolveAttachments", 1);
12201          }
12202          PRINT_SPACE
12203          _OUT << "]," << std::endl;
12204     }
12205      else
12206      {
12207          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12208      }
12209 
12210      PRINT_SPACE
12211      _OUT << "\"pDepthStencilAttachment\": " << std::endl;
12212      if (obj.pDepthStencilAttachment) {
12213            print_VkAttachmentReference(obj.pDepthStencilAttachment, "pDepthStencilAttachment", 1);
12214      }
12215      else
12216      {
12217          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12218      }
12219 
12220      print_uint32_t(obj.preserveAttachmentCount, "preserveAttachmentCount", 1);
12221 
12222      PRINT_SPACE
12223      _OUT << "\"pPreserveAttachments\":" << std::endl;
12224      PRINT_SPACE
12225      if (obj.pPreserveAttachments) {
12226        _OUT << "[" << std::endl;
12227        for (unsigned int i = 0; i < obj.preserveAttachmentCount; i++) {
12228            bool isCommaNeeded = (i+1) != obj.preserveAttachmentCount;
12229            print_uint32_t(obj.pPreserveAttachments[i], "", isCommaNeeded);
12230        }
12231        PRINT_SPACE
12232        _OUT << "]" << "" << std::endl;
12233      } else {
12234        _OUT << "\"NULL\"" << "" << std::endl;
12235      }
12236 
12237      INDENT(-4);
12238      PRINT_SPACE
12239      if (commaNeeded)
12240          _OUT << "}," << std::endl;
12241      else
12242          _OUT << "}" << std::endl;
12243 }
print_VkSubpassDescription(const VkSubpassDescription * obj,const std::string & s,bool commaNeeded=true)12244 static void print_VkSubpassDescription(const VkSubpassDescription * obj, const std::string& s, bool commaNeeded=true) {
12245      PRINT_SPACE
12246      _OUT << "{" << std::endl;
12247      INDENT(4);
12248 
12249      print_VkSubpassDescriptionFlags(obj->flags, "flags", 1);
12250 
12251      print_VkPipelineBindPoint(obj->pipelineBindPoint, "pipelineBindPoint", 1);
12252 
12253      print_uint32_t(obj->inputAttachmentCount, "inputAttachmentCount", 1);
12254 
12255      PRINT_SPACE
12256      _OUT << "\"pInputAttachments\": " << std::endl;
12257      if (obj->pInputAttachments) {
12258          PRINT_SPACE
12259          _OUT << "[" << std::endl;
12260          for (unsigned int i = 0; i < obj->inputAttachmentCount; i++) {
12261            if (i+1 == obj->inputAttachmentCount)
12262                print_VkAttachmentReference(obj->pInputAttachments[i], "pInputAttachments", 0);
12263            else
12264                print_VkAttachmentReference(obj->pInputAttachments[i], "pInputAttachments", 1);
12265          }
12266          PRINT_SPACE
12267          _OUT << "]," << std::endl;
12268     }
12269      else
12270      {
12271          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12272      }
12273 
12274      print_uint32_t(obj->colorAttachmentCount, "colorAttachmentCount", 1);
12275 
12276      PRINT_SPACE
12277      _OUT << "\"pColorAttachments\": " << std::endl;
12278      if (obj->pColorAttachments) {
12279          PRINT_SPACE
12280          _OUT << "[" << std::endl;
12281          for (unsigned int i = 0; i < obj->colorAttachmentCount; i++) {
12282            if (i+1 == obj->colorAttachmentCount)
12283                print_VkAttachmentReference(obj->pColorAttachments[i], "pColorAttachments", 0);
12284            else
12285                print_VkAttachmentReference(obj->pColorAttachments[i], "pColorAttachments", 1);
12286          }
12287          PRINT_SPACE
12288          _OUT << "]," << std::endl;
12289     }
12290      else
12291      {
12292          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12293      }
12294 
12295      PRINT_SPACE
12296      _OUT << "\"pResolveAttachments\": " << std::endl;
12297      if (obj->pResolveAttachments) {
12298          PRINT_SPACE
12299          _OUT << "[" << std::endl;
12300          for (unsigned int i = 0; i < obj->colorAttachmentCount; i++) {
12301            if (i+1 == obj->colorAttachmentCount)
12302                print_VkAttachmentReference(obj->pResolveAttachments[i], "pResolveAttachments", 0);
12303            else
12304                print_VkAttachmentReference(obj->pResolveAttachments[i], "pResolveAttachments", 1);
12305          }
12306          PRINT_SPACE
12307          _OUT << "]," << std::endl;
12308     }
12309      else
12310      {
12311          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12312      }
12313 
12314      PRINT_SPACE
12315      _OUT << "\"pDepthStencilAttachment\": " << std::endl;
12316      if (obj->pDepthStencilAttachment) {
12317            print_VkAttachmentReference(obj->pDepthStencilAttachment, "pDepthStencilAttachment", 1);
12318      }
12319      else
12320      {
12321          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12322      }
12323 
12324      print_uint32_t(obj->preserveAttachmentCount, "preserveAttachmentCount", 1);
12325 
12326      PRINT_SPACE
12327      _OUT << "\"pPreserveAttachments\":" << std::endl;
12328      PRINT_SPACE
12329      if (obj->pPreserveAttachments) {
12330        _OUT << "[" << std::endl;
12331        for (unsigned int i = 0; i < obj->preserveAttachmentCount; i++) {
12332            bool isCommaNeeded = (i+1) != obj->preserveAttachmentCount;
12333            print_uint32_t(obj->pPreserveAttachments[i], "", isCommaNeeded);
12334        }
12335        PRINT_SPACE
12336        _OUT << "]" << "" << std::endl;
12337      } else {
12338        _OUT << "\"NULL\"" << "" << std::endl;
12339      }
12340 
12341      INDENT(-4);
12342      PRINT_SPACE
12343      if (commaNeeded)
12344          _OUT << "}," << std::endl;
12345      else
12346          _OUT << "}" << std::endl;
12347 }
12348 
print_VkSubpassDependency(VkSubpassDependency obj,const std::string & s,bool commaNeeded=true)12349 static void print_VkSubpassDependency(VkSubpassDependency obj, const std::string& s, bool commaNeeded=true) {
12350      PRINT_SPACE
12351      _OUT << "{" << std::endl;
12352      INDENT(4);
12353 
12354      print_uint32_t(obj.srcSubpass, "srcSubpass", 1);
12355 
12356      print_uint32_t(obj.dstSubpass, "dstSubpass", 1);
12357 
12358      print_VkPipelineStageFlags(obj.srcStageMask, "srcStageMask", 1);
12359 
12360      print_VkPipelineStageFlags(obj.dstStageMask, "dstStageMask", 1);
12361 
12362      print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
12363 
12364      print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
12365 
12366      print_VkDependencyFlags(obj.dependencyFlags, "dependencyFlags", 0);
12367 
12368      INDENT(-4);
12369      PRINT_SPACE
12370      if (commaNeeded)
12371          _OUT << "}," << std::endl;
12372      else
12373          _OUT << "}" << std::endl;
12374 }
print_VkSubpassDependency(const VkSubpassDependency * obj,const std::string & s,bool commaNeeded=true)12375 static void print_VkSubpassDependency(const VkSubpassDependency * obj, const std::string& s, bool commaNeeded=true) {
12376      PRINT_SPACE
12377      _OUT << "{" << std::endl;
12378      INDENT(4);
12379 
12380      print_uint32_t(obj->srcSubpass, "srcSubpass", 1);
12381 
12382      print_uint32_t(obj->dstSubpass, "dstSubpass", 1);
12383 
12384      print_VkPipelineStageFlags(obj->srcStageMask, "srcStageMask", 1);
12385 
12386      print_VkPipelineStageFlags(obj->dstStageMask, "dstStageMask", 1);
12387 
12388      print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
12389 
12390      print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
12391 
12392      print_VkDependencyFlags(obj->dependencyFlags, "dependencyFlags", 0);
12393 
12394      INDENT(-4);
12395      PRINT_SPACE
12396      if (commaNeeded)
12397          _OUT << "}," << std::endl;
12398      else
12399          _OUT << "}" << std::endl;
12400 }
12401 
print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj,const std::string & s,bool commaNeeded=true)12402 static void print_VkRenderPassCreateInfo(VkRenderPassCreateInfo obj, const std::string& s, bool commaNeeded=true) {
12403      PRINT_SPACE
12404      _OUT << "{" << std::endl;
12405      INDENT(4);
12406 
12407      print_VkStructureType(obj.sType, "sType", 1);
12408 
12409       if (obj.pNext) {
12410          dumpPNextChain(obj.pNext);
12411       } else {
12412          PRINT_SPACE
12413          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12414      }
12415 
12416      print_VkRenderPassCreateFlags(obj.flags, "flags", 1);
12417 
12418      print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
12419 
12420      PRINT_SPACE
12421      _OUT << "\"pAttachments\": " << std::endl;
12422      if (obj.pAttachments) {
12423          PRINT_SPACE
12424          _OUT << "[" << std::endl;
12425          for (unsigned int i = 0; i < obj.attachmentCount; i++) {
12426            if (i+1 == obj.attachmentCount)
12427                print_VkAttachmentDescription(obj.pAttachments[i], "pAttachments", 0);
12428            else
12429                print_VkAttachmentDescription(obj.pAttachments[i], "pAttachments", 1);
12430          }
12431          PRINT_SPACE
12432          _OUT << "]," << std::endl;
12433     }
12434      else
12435      {
12436          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12437      }
12438 
12439      print_uint32_t(obj.subpassCount, "subpassCount", 1);
12440 
12441      PRINT_SPACE
12442      _OUT << "\"pSubpasses\": " << std::endl;
12443      if (obj.pSubpasses) {
12444          PRINT_SPACE
12445          _OUT << "[" << std::endl;
12446          for (unsigned int i = 0; i < obj.subpassCount; i++) {
12447            if (i+1 == obj.subpassCount)
12448                print_VkSubpassDescription(obj.pSubpasses[i], "pSubpasses", 0);
12449            else
12450                print_VkSubpassDescription(obj.pSubpasses[i], "pSubpasses", 1);
12451          }
12452          PRINT_SPACE
12453          _OUT << "]," << std::endl;
12454     }
12455      else
12456      {
12457          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12458      }
12459 
12460      print_uint32_t(obj.dependencyCount, "dependencyCount", 1);
12461 
12462      PRINT_SPACE
12463      _OUT << "\"pDependencies\": " << std::endl;
12464      if (obj.pDependencies) {
12465          PRINT_SPACE
12466          _OUT << "[" << std::endl;
12467          for (unsigned int i = 0; i < obj.dependencyCount; i++) {
12468            if (i+1 == obj.dependencyCount)
12469                print_VkSubpassDependency(obj.pDependencies[i], "pDependencies", 0);
12470            else
12471                print_VkSubpassDependency(obj.pDependencies[i], "pDependencies", 1);
12472          }
12473          PRINT_SPACE
12474          _OUT << "]" << std::endl;
12475     }
12476      else
12477      {
12478          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
12479      }
12480 
12481      INDENT(-4);
12482      PRINT_SPACE
12483      if (commaNeeded)
12484          _OUT << "}," << std::endl;
12485      else
12486          _OUT << "}" << std::endl;
12487 }
print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj,const std::string & s,bool commaNeeded=true)12488 static void print_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
12489      PRINT_SPACE
12490      _OUT << "{" << std::endl;
12491      INDENT(4);
12492 
12493      print_VkStructureType(obj->sType, "sType", 1);
12494 
12495       if (obj->pNext) {
12496          dumpPNextChain(obj->pNext);
12497       } else {
12498          PRINT_SPACE
12499          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12500      }
12501 
12502      print_VkRenderPassCreateFlags(obj->flags, "flags", 1);
12503 
12504      print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
12505 
12506      PRINT_SPACE
12507      _OUT << "\"pAttachments\": " << std::endl;
12508      if (obj->pAttachments) {
12509          PRINT_SPACE
12510          _OUT << "[" << std::endl;
12511          for (unsigned int i = 0; i < obj->attachmentCount; i++) {
12512            if (i+1 == obj->attachmentCount)
12513                print_VkAttachmentDescription(obj->pAttachments[i], "pAttachments", 0);
12514            else
12515                print_VkAttachmentDescription(obj->pAttachments[i], "pAttachments", 1);
12516          }
12517          PRINT_SPACE
12518          _OUT << "]," << std::endl;
12519     }
12520      else
12521      {
12522          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12523      }
12524 
12525      print_uint32_t(obj->subpassCount, "subpassCount", 1);
12526 
12527      PRINT_SPACE
12528      _OUT << "\"pSubpasses\": " << std::endl;
12529      if (obj->pSubpasses) {
12530          PRINT_SPACE
12531          _OUT << "[" << std::endl;
12532          for (unsigned int i = 0; i < obj->subpassCount; i++) {
12533            if (i+1 == obj->subpassCount)
12534                print_VkSubpassDescription(obj->pSubpasses[i], "pSubpasses", 0);
12535            else
12536                print_VkSubpassDescription(obj->pSubpasses[i], "pSubpasses", 1);
12537          }
12538          PRINT_SPACE
12539          _OUT << "]," << std::endl;
12540     }
12541      else
12542      {
12543          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
12544      }
12545 
12546      print_uint32_t(obj->dependencyCount, "dependencyCount", 1);
12547 
12548      PRINT_SPACE
12549      _OUT << "\"pDependencies\": " << std::endl;
12550      if (obj->pDependencies) {
12551          PRINT_SPACE
12552          _OUT << "[" << std::endl;
12553          for (unsigned int i = 0; i < obj->dependencyCount; i++) {
12554            if (i+1 == obj->dependencyCount)
12555                print_VkSubpassDependency(obj->pDependencies[i], "pDependencies", 0);
12556            else
12557                print_VkSubpassDependency(obj->pDependencies[i], "pDependencies", 1);
12558          }
12559          PRINT_SPACE
12560          _OUT << "]" << std::endl;
12561     }
12562      else
12563      {
12564          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
12565      }
12566 
12567      INDENT(-4);
12568      PRINT_SPACE
12569      if (commaNeeded)
12570          _OUT << "}," << std::endl;
12571      else
12572          _OUT << "}" << std::endl;
12573 }
12574 
print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj,const std::string & s,bool commaNeeded=true)12575 static void print_VkCommandPoolCreateInfo(VkCommandPoolCreateInfo obj, const std::string& s, bool commaNeeded=true) {
12576      PRINT_SPACE
12577      _OUT << "{" << std::endl;
12578      INDENT(4);
12579 
12580      print_VkStructureType(obj.sType, "sType", 1);
12581 
12582       if (obj.pNext) {
12583          dumpPNextChain(obj.pNext);
12584       } else {
12585          PRINT_SPACE
12586          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12587      }
12588 
12589      print_VkCommandPoolCreateFlags(obj.flags, "flags", 1);
12590 
12591      print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 0);
12592 
12593      INDENT(-4);
12594      PRINT_SPACE
12595      if (commaNeeded)
12596          _OUT << "}," << std::endl;
12597      else
12598          _OUT << "}" << std::endl;
12599 }
print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj,const std::string & s,bool commaNeeded=true)12600 static void print_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
12601      PRINT_SPACE
12602      _OUT << "{" << std::endl;
12603      INDENT(4);
12604 
12605      print_VkStructureType(obj->sType, "sType", 1);
12606 
12607       if (obj->pNext) {
12608          dumpPNextChain(obj->pNext);
12609       } else {
12610          PRINT_SPACE
12611          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12612      }
12613 
12614      print_VkCommandPoolCreateFlags(obj->flags, "flags", 1);
12615 
12616      print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 0);
12617 
12618      INDENT(-4);
12619      PRINT_SPACE
12620      if (commaNeeded)
12621          _OUT << "}," << std::endl;
12622      else
12623          _OUT << "}" << std::endl;
12624 }
12625 
print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj,const std::string & s,bool commaNeeded=true)12626 static void print_VkCommandBufferAllocateInfo(VkCommandBufferAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
12627      PRINT_SPACE
12628      _OUT << "{" << std::endl;
12629      INDENT(4);
12630 
12631      print_VkStructureType(obj.sType, "sType", 1);
12632 
12633       if (obj.pNext) {
12634          dumpPNextChain(obj.pNext);
12635       } else {
12636          PRINT_SPACE
12637          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12638      }
12639 
12640      // CTS : required value
12641      PRINT_SPACE    _OUT << "\"" << "commandPool" << "\"" << " : " << "\"" << "\"," << std::endl;
12642 
12643      print_VkCommandBufferLevel(obj.level, "level", 1);
12644 
12645      print_uint32_t(obj.commandBufferCount, "commandBufferCount", 0);
12646 
12647      INDENT(-4);
12648      PRINT_SPACE
12649      if (commaNeeded)
12650          _OUT << "}," << std::endl;
12651      else
12652          _OUT << "}" << std::endl;
12653 }
print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj,const std::string & s,bool commaNeeded=true)12654 static void print_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
12655      PRINT_SPACE
12656      _OUT << "{" << std::endl;
12657      INDENT(4);
12658 
12659      print_VkStructureType(obj->sType, "sType", 1);
12660 
12661       if (obj->pNext) {
12662          dumpPNextChain(obj->pNext);
12663       } else {
12664          PRINT_SPACE
12665          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12666      }
12667 
12668      // CTS : required value
12669      PRINT_SPACE    _OUT << "\"" << "commandPool" << "\"" << " : " << "\"" << "\"," << std::endl;
12670 
12671      print_VkCommandBufferLevel(obj->level, "level", 1);
12672 
12673      print_uint32_t(obj->commandBufferCount, "commandBufferCount", 0);
12674 
12675      INDENT(-4);
12676      PRINT_SPACE
12677      if (commaNeeded)
12678          _OUT << "}," << std::endl;
12679      else
12680          _OUT << "}" << std::endl;
12681 }
12682 
print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj,const std::string & s,bool commaNeeded=true)12683 static void print_VkCommandBufferInheritanceInfo(VkCommandBufferInheritanceInfo obj, const std::string& s, bool commaNeeded=true) {
12684      PRINT_SPACE
12685      _OUT << "{" << std::endl;
12686      INDENT(4);
12687 
12688      print_VkStructureType(obj.sType, "sType", 1);
12689 
12690       if (obj.pNext) {
12691          dumpPNextChain(obj.pNext);
12692       } else {
12693          PRINT_SPACE
12694          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12695      }
12696 
12697      // CTS : required value
12698      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
12699 
12700      print_uint32_t(obj.subpass, "subpass", 1);
12701 
12702      // CTS : required value
12703      PRINT_SPACE    _OUT << "\"" << "framebuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
12704 
12705      print_VkBool32(obj.occlusionQueryEnable, "occlusionQueryEnable", 1);
12706 
12707      print_VkQueryControlFlags(obj.queryFlags, "queryFlags", 1);
12708 
12709      print_VkQueryPipelineStatisticFlags(obj.pipelineStatistics, "pipelineStatistics", 0);
12710 
12711      INDENT(-4);
12712      PRINT_SPACE
12713      if (commaNeeded)
12714          _OUT << "}," << std::endl;
12715      else
12716          _OUT << "}" << std::endl;
12717 }
print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj,const std::string & s,bool commaNeeded=true)12718 static void print_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * obj, const std::string& s, bool commaNeeded=true) {
12719      PRINT_SPACE
12720      _OUT << "{" << std::endl;
12721      INDENT(4);
12722 
12723      print_VkStructureType(obj->sType, "sType", 1);
12724 
12725       if (obj->pNext) {
12726          dumpPNextChain(obj->pNext);
12727       } else {
12728          PRINT_SPACE
12729          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12730      }
12731 
12732      // CTS : required value
12733      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj->renderPass.getInternal() << "," << std::endl;
12734 
12735      print_uint32_t(obj->subpass, "subpass", 1);
12736 
12737      // CTS : required value
12738      PRINT_SPACE    _OUT << "\"" << "framebuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
12739 
12740      print_VkBool32(obj->occlusionQueryEnable, "occlusionQueryEnable", 1);
12741 
12742      print_VkQueryControlFlags(obj->queryFlags, "queryFlags", 1);
12743 
12744      print_VkQueryPipelineStatisticFlags(obj->pipelineStatistics, "pipelineStatistics", 0);
12745 
12746      INDENT(-4);
12747      PRINT_SPACE
12748      if (commaNeeded)
12749          _OUT << "}," << std::endl;
12750      else
12751          _OUT << "}" << std::endl;
12752 }
12753 
print_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo obj,const std::string & s,bool commaNeeded=true)12754 static void print_VkCommandBufferBeginInfo(VkCommandBufferBeginInfo obj, const std::string& s, bool commaNeeded=true) {
12755      PRINT_SPACE
12756      _OUT << "{" << std::endl;
12757      INDENT(4);
12758 
12759      print_VkStructureType(obj.sType, "sType", 1);
12760 
12761       if (obj.pNext) {
12762          dumpPNextChain(obj.pNext);
12763       } else {
12764          PRINT_SPACE
12765          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12766      }
12767 
12768      print_VkCommandBufferUsageFlags(obj.flags, "flags", 1);
12769 
12770      PRINT_SPACE
12771      _OUT << "\"pInheritanceInfo\": " << std::endl;
12772      if (obj.pInheritanceInfo) {
12773            print_VkCommandBufferInheritanceInfo(obj.pInheritanceInfo, "pInheritanceInfo", 0);
12774      }
12775      else
12776      {
12777          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
12778      }
12779 
12780      INDENT(-4);
12781      PRINT_SPACE
12782      if (commaNeeded)
12783          _OUT << "}," << std::endl;
12784      else
12785          _OUT << "}" << std::endl;
12786 }
print_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * obj,const std::string & s,bool commaNeeded=true)12787 static void print_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
12788      PRINT_SPACE
12789      _OUT << "{" << std::endl;
12790      INDENT(4);
12791 
12792      print_VkStructureType(obj->sType, "sType", 1);
12793 
12794       if (obj->pNext) {
12795          dumpPNextChain(obj->pNext);
12796       } else {
12797          PRINT_SPACE
12798          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
12799      }
12800 
12801      print_VkCommandBufferUsageFlags(obj->flags, "flags", 1);
12802 
12803      PRINT_SPACE
12804      _OUT << "\"pInheritanceInfo\": " << std::endl;
12805      if (obj->pInheritanceInfo) {
12806            print_VkCommandBufferInheritanceInfo(obj->pInheritanceInfo, "pInheritanceInfo", 0);
12807      }
12808      else
12809      {
12810          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
12811      }
12812 
12813      INDENT(-4);
12814      PRINT_SPACE
12815      if (commaNeeded)
12816          _OUT << "}," << std::endl;
12817      else
12818          _OUT << "}" << std::endl;
12819 }
12820 
print_VkBufferCopy(VkBufferCopy obj,const std::string & s,bool commaNeeded=true)12821 static void print_VkBufferCopy(VkBufferCopy obj, const std::string& s, bool commaNeeded=true) {
12822      PRINT_SPACE
12823      _OUT << "{" << std::endl;
12824      INDENT(4);
12825 
12826      print_VkDeviceSize(obj.srcOffset, "srcOffset", 1);
12827 
12828      print_VkDeviceSize(obj.dstOffset, "dstOffset", 1);
12829 
12830      print_VkDeviceSize(obj.size, "size", 0);
12831 
12832      INDENT(-4);
12833      PRINT_SPACE
12834      if (commaNeeded)
12835          _OUT << "}," << std::endl;
12836      else
12837          _OUT << "}" << std::endl;
12838 }
print_VkBufferCopy(const VkBufferCopy * obj,const std::string & s,bool commaNeeded=true)12839 static void print_VkBufferCopy(const VkBufferCopy * obj, const std::string& s, bool commaNeeded=true) {
12840      PRINT_SPACE
12841      _OUT << "{" << std::endl;
12842      INDENT(4);
12843 
12844      print_VkDeviceSize(obj->srcOffset, "srcOffset", 1);
12845 
12846      print_VkDeviceSize(obj->dstOffset, "dstOffset", 1);
12847 
12848      print_VkDeviceSize(obj->size, "size", 0);
12849 
12850      INDENT(-4);
12851      PRINT_SPACE
12852      if (commaNeeded)
12853          _OUT << "}," << std::endl;
12854      else
12855          _OUT << "}" << std::endl;
12856 }
12857 
print_VkImageSubresourceLayers(VkImageSubresourceLayers obj,const std::string & s,bool commaNeeded=true)12858 static void print_VkImageSubresourceLayers(VkImageSubresourceLayers obj, const std::string& s, bool commaNeeded=true) {
12859      PRINT_SPACE
12860      _OUT << "{" << std::endl;
12861      INDENT(4);
12862 
12863      print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
12864 
12865      print_uint32_t(obj.mipLevel, "mipLevel", 1);
12866 
12867      print_uint32_t(obj.baseArrayLayer, "baseArrayLayer", 1);
12868 
12869      print_uint32_t(obj.layerCount, "layerCount", 0);
12870 
12871      INDENT(-4);
12872      PRINT_SPACE
12873      if (commaNeeded)
12874          _OUT << "}," << std::endl;
12875      else
12876          _OUT << "}" << std::endl;
12877 }
print_VkImageSubresourceLayers(const VkImageSubresourceLayers * obj,const std::string & s,bool commaNeeded=true)12878 static void print_VkImageSubresourceLayers(const VkImageSubresourceLayers * obj, const std::string& s, bool commaNeeded=true) {
12879      PRINT_SPACE
12880      _OUT << "{" << std::endl;
12881      INDENT(4);
12882 
12883      print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
12884 
12885      print_uint32_t(obj->mipLevel, "mipLevel", 1);
12886 
12887      print_uint32_t(obj->baseArrayLayer, "baseArrayLayer", 1);
12888 
12889      print_uint32_t(obj->layerCount, "layerCount", 0);
12890 
12891      INDENT(-4);
12892      PRINT_SPACE
12893      if (commaNeeded)
12894          _OUT << "}," << std::endl;
12895      else
12896          _OUT << "}" << std::endl;
12897 }
12898 
print_VkBufferImageCopy(VkBufferImageCopy obj,const std::string & s,bool commaNeeded=true)12899 static void print_VkBufferImageCopy(VkBufferImageCopy obj, const std::string& s, bool commaNeeded=true) {
12900      PRINT_SPACE
12901      _OUT << "{" << std::endl;
12902      INDENT(4);
12903 
12904      print_VkDeviceSize(obj.bufferOffset, "bufferOffset", 1);
12905 
12906      print_uint32_t(obj.bufferRowLength, "bufferRowLength", 1);
12907 
12908      print_uint32_t(obj.bufferImageHeight, "bufferImageHeight", 1);
12909 
12910      PRINT_SPACE
12911      _OUT << "\"imageSubresource\": " << std::endl;
12912      {
12913            print_VkImageSubresourceLayers(obj.imageSubresource, "imageSubresource", 1);
12914      }
12915 
12916      PRINT_SPACE
12917      _OUT << "\"imageOffset\": " << std::endl;
12918      {
12919            print_VkOffset3D(obj.imageOffset, "imageOffset", 1);
12920      }
12921 
12922      PRINT_SPACE
12923      _OUT << "\"imageExtent\": " << std::endl;
12924      {
12925            print_VkExtent3D(obj.imageExtent, "imageExtent", 0);
12926      }
12927 
12928      INDENT(-4);
12929      PRINT_SPACE
12930      if (commaNeeded)
12931          _OUT << "}," << std::endl;
12932      else
12933          _OUT << "}" << std::endl;
12934 }
print_VkBufferImageCopy(const VkBufferImageCopy * obj,const std::string & s,bool commaNeeded=true)12935 static void print_VkBufferImageCopy(const VkBufferImageCopy * obj, const std::string& s, bool commaNeeded=true) {
12936      PRINT_SPACE
12937      _OUT << "{" << std::endl;
12938      INDENT(4);
12939 
12940      print_VkDeviceSize(obj->bufferOffset, "bufferOffset", 1);
12941 
12942      print_uint32_t(obj->bufferRowLength, "bufferRowLength", 1);
12943 
12944      print_uint32_t(obj->bufferImageHeight, "bufferImageHeight", 1);
12945 
12946      PRINT_SPACE
12947      _OUT << "\"imageSubresource\": " << std::endl;
12948      {
12949            print_VkImageSubresourceLayers(obj->imageSubresource, "imageSubresource", 1);
12950      }
12951 
12952      PRINT_SPACE
12953      _OUT << "\"imageOffset\": " << std::endl;
12954      {
12955            print_VkOffset3D(obj->imageOffset, "imageOffset", 1);
12956      }
12957 
12958      PRINT_SPACE
12959      _OUT << "\"imageExtent\": " << std::endl;
12960      {
12961            print_VkExtent3D(obj->imageExtent, "imageExtent", 0);
12962      }
12963 
12964      INDENT(-4);
12965      PRINT_SPACE
12966      if (commaNeeded)
12967          _OUT << "}," << std::endl;
12968      else
12969          _OUT << "}" << std::endl;
12970 }
12971 
print_VkClearColorValue(VkClearColorValue obj,const std::string & s,bool commaNeeded=true)12972 static void print_VkClearColorValue(VkClearColorValue obj, const std::string& s, bool commaNeeded=true) {
12973      PRINT_SPACE
12974      _OUT << "{" << std::endl;
12975      INDENT(4);
12976 
12977      PRINT_SPACE
12978      _OUT << "\"float32\":" << std::endl;
12979      PRINT_SPACE
12980        _OUT << "[" << std::endl;
12981        for (unsigned int i = 0; i < 4; i++) {
12982            bool isCommaNeeded = (i+1) != 4;
12983            print_float(obj.float32[i], "", isCommaNeeded);
12984        }
12985        PRINT_SPACE
12986        _OUT << "]" << "," << std::endl;
12987 
12988      PRINT_SPACE
12989      _OUT << "\"int32\":" << std::endl;
12990      PRINT_SPACE
12991        _OUT << "[" << std::endl;
12992        for (unsigned int i = 0; i < 4; i++) {
12993            bool isCommaNeeded = (i+1) != 4;
12994            print_int32_t(obj.int32[i], "", isCommaNeeded);
12995        }
12996        PRINT_SPACE
12997        _OUT << "]" << "," << std::endl;
12998 
12999      PRINT_SPACE
13000      _OUT << "\"uint32\":" << std::endl;
13001      PRINT_SPACE
13002        _OUT << "[" << std::endl;
13003        for (unsigned int i = 0; i < 4; i++) {
13004            bool isCommaNeeded = (i+1) != 4;
13005            print_uint32_t(obj.uint32[i], "", isCommaNeeded);
13006        }
13007        PRINT_SPACE
13008        _OUT << "]" << "" << std::endl;
13009 
13010      INDENT(-4);
13011      PRINT_SPACE
13012      if (commaNeeded)
13013          _OUT << "}," << std::endl;
13014      else
13015          _OUT << "}" << std::endl;
13016 }
print_VkClearColorValue(const VkClearColorValue * obj,const std::string & s,bool commaNeeded=true)13017 static void print_VkClearColorValue(const VkClearColorValue * obj, const std::string& s, bool commaNeeded=true) {
13018      PRINT_SPACE
13019      _OUT << "{" << std::endl;
13020      INDENT(4);
13021 
13022      PRINT_SPACE
13023      _OUT << "\"float32\":" << std::endl;
13024      PRINT_SPACE
13025        _OUT << "[" << std::endl;
13026        for (unsigned int i = 0; i < 4; i++) {
13027            bool isCommaNeeded = (i+1) != 4;
13028            print_float(obj->float32[i], "", isCommaNeeded);
13029        }
13030        PRINT_SPACE
13031        _OUT << "]" << "," << std::endl;
13032 
13033      PRINT_SPACE
13034      _OUT << "\"int32\":" << std::endl;
13035      PRINT_SPACE
13036        _OUT << "[" << std::endl;
13037        for (unsigned int i = 0; i < 4; i++) {
13038            bool isCommaNeeded = (i+1) != 4;
13039            print_int32_t(obj->int32[i], "", isCommaNeeded);
13040        }
13041        PRINT_SPACE
13042        _OUT << "]" << "," << std::endl;
13043 
13044      PRINT_SPACE
13045      _OUT << "\"uint32\":" << std::endl;
13046      PRINT_SPACE
13047        _OUT << "[" << std::endl;
13048        for (unsigned int i = 0; i < 4; i++) {
13049            bool isCommaNeeded = (i+1) != 4;
13050            print_uint32_t(obj->uint32[i], "", isCommaNeeded);
13051        }
13052        PRINT_SPACE
13053        _OUT << "]" << "" << std::endl;
13054 
13055      INDENT(-4);
13056      PRINT_SPACE
13057      if (commaNeeded)
13058          _OUT << "}," << std::endl;
13059      else
13060          _OUT << "}" << std::endl;
13061 }
13062 
print_VkClearDepthStencilValue(VkClearDepthStencilValue obj,const std::string & s,bool commaNeeded=true)13063 static void print_VkClearDepthStencilValue(VkClearDepthStencilValue obj, const std::string& s, bool commaNeeded=true) {
13064      PRINT_SPACE
13065      _OUT << "{" << std::endl;
13066      INDENT(4);
13067 
13068      print_float(obj.depth, "depth", 1);
13069 
13070      print_uint32_t(obj.stencil, "stencil", 0);
13071 
13072      INDENT(-4);
13073      PRINT_SPACE
13074      if (commaNeeded)
13075          _OUT << "}," << std::endl;
13076      else
13077          _OUT << "}" << std::endl;
13078 }
print_VkClearDepthStencilValue(const VkClearDepthStencilValue * obj,const std::string & s,bool commaNeeded=true)13079 static void print_VkClearDepthStencilValue(const VkClearDepthStencilValue * obj, const std::string& s, bool commaNeeded=true) {
13080      PRINT_SPACE
13081      _OUT << "{" << std::endl;
13082      INDENT(4);
13083 
13084      print_float(obj->depth, "depth", 1);
13085 
13086      print_uint32_t(obj->stencil, "stencil", 0);
13087 
13088      INDENT(-4);
13089      PRINT_SPACE
13090      if (commaNeeded)
13091          _OUT << "}," << std::endl;
13092      else
13093          _OUT << "}" << std::endl;
13094 }
13095 
print_VkClearValue(VkClearValue obj,const std::string & s,bool commaNeeded=true)13096 static void print_VkClearValue(VkClearValue obj, const std::string& s, bool commaNeeded=true) {
13097      PRINT_SPACE
13098      _OUT << "{" << std::endl;
13099      INDENT(4);
13100 
13101      print_VkClearColorValue(obj.color, "color", 1);
13102 
13103      PRINT_SPACE
13104      _OUT << "\"depthStencil\": " << std::endl;
13105      {
13106            print_VkClearDepthStencilValue(obj.depthStencil, "depthStencil", 0);
13107      }
13108 
13109      INDENT(-4);
13110      PRINT_SPACE
13111      if (commaNeeded)
13112          _OUT << "}," << std::endl;
13113      else
13114          _OUT << "}" << std::endl;
13115 }
print_VkClearValue(const VkClearValue * obj,const std::string & s,bool commaNeeded=true)13116 static void print_VkClearValue(const VkClearValue * obj, const std::string& s, bool commaNeeded=true) {
13117      PRINT_SPACE
13118      _OUT << "{" << std::endl;
13119      INDENT(4);
13120 
13121      print_VkClearColorValue(obj->color, "color", 1);
13122 
13123      PRINT_SPACE
13124      _OUT << "\"depthStencil\": " << std::endl;
13125      {
13126            print_VkClearDepthStencilValue(obj->depthStencil, "depthStencil", 0);
13127      }
13128 
13129      INDENT(-4);
13130      PRINT_SPACE
13131      if (commaNeeded)
13132          _OUT << "}," << std::endl;
13133      else
13134          _OUT << "}" << std::endl;
13135 }
13136 
print_VkClearAttachment(VkClearAttachment obj,const std::string & s,bool commaNeeded=true)13137 static void print_VkClearAttachment(VkClearAttachment obj, const std::string& s, bool commaNeeded=true) {
13138      PRINT_SPACE
13139      _OUT << "{" << std::endl;
13140      INDENT(4);
13141 
13142      print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 1);
13143 
13144      print_uint32_t(obj.colorAttachment, "colorAttachment", 1);
13145 
13146      print_VkClearValue(obj.clearValue, "clearValue", 0);
13147 
13148      INDENT(-4);
13149      PRINT_SPACE
13150      if (commaNeeded)
13151          _OUT << "}," << std::endl;
13152      else
13153          _OUT << "}" << std::endl;
13154 }
print_VkClearAttachment(const VkClearAttachment * obj,const std::string & s,bool commaNeeded=true)13155 static void print_VkClearAttachment(const VkClearAttachment * obj, const std::string& s, bool commaNeeded=true) {
13156      PRINT_SPACE
13157      _OUT << "{" << std::endl;
13158      INDENT(4);
13159 
13160      print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 1);
13161 
13162      print_uint32_t(obj->colorAttachment, "colorAttachment", 1);
13163 
13164      print_VkClearValue(obj->clearValue, "clearValue", 0);
13165 
13166      INDENT(-4);
13167      PRINT_SPACE
13168      if (commaNeeded)
13169          _OUT << "}," << std::endl;
13170      else
13171          _OUT << "}" << std::endl;
13172 }
13173 
print_VkClearRect(VkClearRect obj,const std::string & s,bool commaNeeded=true)13174 static void print_VkClearRect(VkClearRect obj, const std::string& s, bool commaNeeded=true) {
13175      PRINT_SPACE
13176      _OUT << "{" << std::endl;
13177      INDENT(4);
13178 
13179      PRINT_SPACE
13180      _OUT << "\"rect\": " << std::endl;
13181      {
13182            print_VkRect2D(obj.rect, "rect", 1);
13183      }
13184 
13185      print_uint32_t(obj.baseArrayLayer, "baseArrayLayer", 1);
13186 
13187      print_uint32_t(obj.layerCount, "layerCount", 0);
13188 
13189      INDENT(-4);
13190      PRINT_SPACE
13191      if (commaNeeded)
13192          _OUT << "}," << std::endl;
13193      else
13194          _OUT << "}" << std::endl;
13195 }
print_VkClearRect(const VkClearRect * obj,const std::string & s,bool commaNeeded=true)13196 static void print_VkClearRect(const VkClearRect * obj, const std::string& s, bool commaNeeded=true) {
13197      PRINT_SPACE
13198      _OUT << "{" << std::endl;
13199      INDENT(4);
13200 
13201      PRINT_SPACE
13202      _OUT << "\"rect\": " << std::endl;
13203      {
13204            print_VkRect2D(obj->rect, "rect", 1);
13205      }
13206 
13207      print_uint32_t(obj->baseArrayLayer, "baseArrayLayer", 1);
13208 
13209      print_uint32_t(obj->layerCount, "layerCount", 0);
13210 
13211      INDENT(-4);
13212      PRINT_SPACE
13213      if (commaNeeded)
13214          _OUT << "}," << std::endl;
13215      else
13216          _OUT << "}" << std::endl;
13217 }
13218 
print_VkImageBlit(VkImageBlit obj,const std::string & s,bool commaNeeded=true)13219 static void print_VkImageBlit(VkImageBlit obj, const std::string& s, bool commaNeeded=true) {
13220      PRINT_SPACE
13221      _OUT << "{" << std::endl;
13222      INDENT(4);
13223 
13224      PRINT_SPACE
13225      _OUT << "\"srcSubresource\": " << std::endl;
13226      {
13227            print_VkImageSubresourceLayers(obj.srcSubresource, "srcSubresource", 1);
13228      }
13229 
13230      PRINT_SPACE
13231      _OUT << "\"srcOffsets\":" << std::endl;
13232      PRINT_SPACE
13233        _OUT << "[" << std::endl;
13234        for (unsigned int i = 0; i < 2; i++) {
13235            bool isCommaNeeded = (i+1) != 2;
13236            print_VkOffset3D(obj.srcOffsets[i], "", isCommaNeeded);
13237        }
13238        PRINT_SPACE
13239        _OUT << "]" << "," << std::endl;
13240 
13241      PRINT_SPACE
13242      _OUT << "\"dstSubresource\": " << std::endl;
13243      {
13244            print_VkImageSubresourceLayers(obj.dstSubresource, "dstSubresource", 1);
13245      }
13246 
13247      PRINT_SPACE
13248      _OUT << "\"dstOffsets\":" << std::endl;
13249      PRINT_SPACE
13250        _OUT << "[" << std::endl;
13251        for (unsigned int i = 0; i < 2; i++) {
13252            bool isCommaNeeded = (i+1) != 2;
13253            print_VkOffset3D(obj.dstOffsets[i], "", isCommaNeeded);
13254        }
13255        PRINT_SPACE
13256        _OUT << "]" << "" << std::endl;
13257 
13258      INDENT(-4);
13259      PRINT_SPACE
13260      if (commaNeeded)
13261          _OUT << "}," << std::endl;
13262      else
13263          _OUT << "}" << std::endl;
13264 }
print_VkImageBlit(const VkImageBlit * obj,const std::string & s,bool commaNeeded=true)13265 static void print_VkImageBlit(const VkImageBlit * obj, const std::string& s, bool commaNeeded=true) {
13266      PRINT_SPACE
13267      _OUT << "{" << std::endl;
13268      INDENT(4);
13269 
13270      PRINT_SPACE
13271      _OUT << "\"srcSubresource\": " << std::endl;
13272      {
13273            print_VkImageSubresourceLayers(obj->srcSubresource, "srcSubresource", 1);
13274      }
13275 
13276      PRINT_SPACE
13277      _OUT << "\"srcOffsets\":" << std::endl;
13278      PRINT_SPACE
13279        _OUT << "[" << std::endl;
13280        for (unsigned int i = 0; i < 2; i++) {
13281            bool isCommaNeeded = (i+1) != 2;
13282            print_VkOffset3D(obj->srcOffsets[i], "", isCommaNeeded);
13283        }
13284        PRINT_SPACE
13285        _OUT << "]" << "," << std::endl;
13286 
13287      PRINT_SPACE
13288      _OUT << "\"dstSubresource\": " << std::endl;
13289      {
13290            print_VkImageSubresourceLayers(obj->dstSubresource, "dstSubresource", 1);
13291      }
13292 
13293      PRINT_SPACE
13294      _OUT << "\"dstOffsets\":" << std::endl;
13295      PRINT_SPACE
13296        _OUT << "[" << std::endl;
13297        for (unsigned int i = 0; i < 2; i++) {
13298            bool isCommaNeeded = (i+1) != 2;
13299            print_VkOffset3D(obj->dstOffsets[i], "", isCommaNeeded);
13300        }
13301        PRINT_SPACE
13302        _OUT << "]" << "" << std::endl;
13303 
13304      INDENT(-4);
13305      PRINT_SPACE
13306      if (commaNeeded)
13307          _OUT << "}," << std::endl;
13308      else
13309          _OUT << "}" << std::endl;
13310 }
13311 
print_VkImageCopy(VkImageCopy obj,const std::string & s,bool commaNeeded=true)13312 static void print_VkImageCopy(VkImageCopy obj, const std::string& s, bool commaNeeded=true) {
13313      PRINT_SPACE
13314      _OUT << "{" << std::endl;
13315      INDENT(4);
13316 
13317      PRINT_SPACE
13318      _OUT << "\"srcSubresource\": " << std::endl;
13319      {
13320            print_VkImageSubresourceLayers(obj.srcSubresource, "srcSubresource", 1);
13321      }
13322 
13323      PRINT_SPACE
13324      _OUT << "\"srcOffset\": " << std::endl;
13325      {
13326            print_VkOffset3D(obj.srcOffset, "srcOffset", 1);
13327      }
13328 
13329      PRINT_SPACE
13330      _OUT << "\"dstSubresource\": " << std::endl;
13331      {
13332            print_VkImageSubresourceLayers(obj.dstSubresource, "dstSubresource", 1);
13333      }
13334 
13335      PRINT_SPACE
13336      _OUT << "\"dstOffset\": " << std::endl;
13337      {
13338            print_VkOffset3D(obj.dstOffset, "dstOffset", 1);
13339      }
13340 
13341      PRINT_SPACE
13342      _OUT << "\"extent\": " << std::endl;
13343      {
13344            print_VkExtent3D(obj.extent, "extent", 0);
13345      }
13346 
13347      INDENT(-4);
13348      PRINT_SPACE
13349      if (commaNeeded)
13350          _OUT << "}," << std::endl;
13351      else
13352          _OUT << "}" << std::endl;
13353 }
print_VkImageCopy(const VkImageCopy * obj,const std::string & s,bool commaNeeded=true)13354 static void print_VkImageCopy(const VkImageCopy * obj, const std::string& s, bool commaNeeded=true) {
13355      PRINT_SPACE
13356      _OUT << "{" << std::endl;
13357      INDENT(4);
13358 
13359      PRINT_SPACE
13360      _OUT << "\"srcSubresource\": " << std::endl;
13361      {
13362            print_VkImageSubresourceLayers(obj->srcSubresource, "srcSubresource", 1);
13363      }
13364 
13365      PRINT_SPACE
13366      _OUT << "\"srcOffset\": " << std::endl;
13367      {
13368            print_VkOffset3D(obj->srcOffset, "srcOffset", 1);
13369      }
13370 
13371      PRINT_SPACE
13372      _OUT << "\"dstSubresource\": " << std::endl;
13373      {
13374            print_VkImageSubresourceLayers(obj->dstSubresource, "dstSubresource", 1);
13375      }
13376 
13377      PRINT_SPACE
13378      _OUT << "\"dstOffset\": " << std::endl;
13379      {
13380            print_VkOffset3D(obj->dstOffset, "dstOffset", 1);
13381      }
13382 
13383      PRINT_SPACE
13384      _OUT << "\"extent\": " << std::endl;
13385      {
13386            print_VkExtent3D(obj->extent, "extent", 0);
13387      }
13388 
13389      INDENT(-4);
13390      PRINT_SPACE
13391      if (commaNeeded)
13392          _OUT << "}," << std::endl;
13393      else
13394          _OUT << "}" << std::endl;
13395 }
13396 
print_VkImageResolve(VkImageResolve obj,const std::string & s,bool commaNeeded=true)13397 static void print_VkImageResolve(VkImageResolve obj, const std::string& s, bool commaNeeded=true) {
13398      PRINT_SPACE
13399      _OUT << "{" << std::endl;
13400      INDENT(4);
13401 
13402      PRINT_SPACE
13403      _OUT << "\"srcSubresource\": " << std::endl;
13404      {
13405            print_VkImageSubresourceLayers(obj.srcSubresource, "srcSubresource", 1);
13406      }
13407 
13408      PRINT_SPACE
13409      _OUT << "\"srcOffset\": " << std::endl;
13410      {
13411            print_VkOffset3D(obj.srcOffset, "srcOffset", 1);
13412      }
13413 
13414      PRINT_SPACE
13415      _OUT << "\"dstSubresource\": " << std::endl;
13416      {
13417            print_VkImageSubresourceLayers(obj.dstSubresource, "dstSubresource", 1);
13418      }
13419 
13420      PRINT_SPACE
13421      _OUT << "\"dstOffset\": " << std::endl;
13422      {
13423            print_VkOffset3D(obj.dstOffset, "dstOffset", 1);
13424      }
13425 
13426      PRINT_SPACE
13427      _OUT << "\"extent\": " << std::endl;
13428      {
13429            print_VkExtent3D(obj.extent, "extent", 0);
13430      }
13431 
13432      INDENT(-4);
13433      PRINT_SPACE
13434      if (commaNeeded)
13435          _OUT << "}," << std::endl;
13436      else
13437          _OUT << "}" << std::endl;
13438 }
print_VkImageResolve(const VkImageResolve * obj,const std::string & s,bool commaNeeded=true)13439 static void print_VkImageResolve(const VkImageResolve * obj, const std::string& s, bool commaNeeded=true) {
13440      PRINT_SPACE
13441      _OUT << "{" << std::endl;
13442      INDENT(4);
13443 
13444      PRINT_SPACE
13445      _OUT << "\"srcSubresource\": " << std::endl;
13446      {
13447            print_VkImageSubresourceLayers(obj->srcSubresource, "srcSubresource", 1);
13448      }
13449 
13450      PRINT_SPACE
13451      _OUT << "\"srcOffset\": " << std::endl;
13452      {
13453            print_VkOffset3D(obj->srcOffset, "srcOffset", 1);
13454      }
13455 
13456      PRINT_SPACE
13457      _OUT << "\"dstSubresource\": " << std::endl;
13458      {
13459            print_VkImageSubresourceLayers(obj->dstSubresource, "dstSubresource", 1);
13460      }
13461 
13462      PRINT_SPACE
13463      _OUT << "\"dstOffset\": " << std::endl;
13464      {
13465            print_VkOffset3D(obj->dstOffset, "dstOffset", 1);
13466      }
13467 
13468      PRINT_SPACE
13469      _OUT << "\"extent\": " << std::endl;
13470      {
13471            print_VkExtent3D(obj->extent, "extent", 0);
13472      }
13473 
13474      INDENT(-4);
13475      PRINT_SPACE
13476      if (commaNeeded)
13477          _OUT << "}," << std::endl;
13478      else
13479          _OUT << "}" << std::endl;
13480 }
13481 
print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj,const std::string & s,bool commaNeeded=true)13482 static void print_VkRenderPassBeginInfo(VkRenderPassBeginInfo obj, const std::string& s, bool commaNeeded=true) {
13483      PRINT_SPACE
13484      _OUT << "{" << std::endl;
13485      INDENT(4);
13486 
13487      print_VkStructureType(obj.sType, "sType", 1);
13488 
13489       if (obj.pNext) {
13490          dumpPNextChain(obj.pNext);
13491       } else {
13492          PRINT_SPACE
13493          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
13494      }
13495 
13496      // CTS : required value
13497      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj.renderPass.getInternal() << "," << std::endl;
13498 
13499      // CTS : required value
13500      PRINT_SPACE    _OUT << "\"" << "framebuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
13501 
13502      PRINT_SPACE
13503      _OUT << "\"renderArea\": " << std::endl;
13504      {
13505            print_VkRect2D(obj.renderArea, "renderArea", 1);
13506      }
13507 
13508      print_uint32_t(obj.clearValueCount, "clearValueCount", 1);
13509 
13510      PRINT_SPACE
13511      _OUT << "\"pClearValues\":" << std::endl;
13512      PRINT_SPACE
13513      if (obj.pClearValues) {
13514        _OUT << "[" << std::endl;
13515        for (unsigned int i = 0; i < obj.clearValueCount; i++) {
13516            bool isCommaNeeded = (i+1) != obj.clearValueCount;
13517            print_VkClearValue(obj.pClearValues[i], "", isCommaNeeded);
13518        }
13519        PRINT_SPACE
13520        _OUT << "]" << "" << std::endl;
13521      } else {
13522        _OUT << "\"NULL\"" << "" << std::endl;
13523      }
13524 
13525      INDENT(-4);
13526      PRINT_SPACE
13527      if (commaNeeded)
13528          _OUT << "}," << std::endl;
13529      else
13530          _OUT << "}" << std::endl;
13531 }
print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj,const std::string & s,bool commaNeeded=true)13532 static void print_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
13533      PRINT_SPACE
13534      _OUT << "{" << std::endl;
13535      INDENT(4);
13536 
13537      print_VkStructureType(obj->sType, "sType", 1);
13538 
13539       if (obj->pNext) {
13540          dumpPNextChain(obj->pNext);
13541       } else {
13542          PRINT_SPACE
13543          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
13544      }
13545 
13546      // CTS : required value
13547      PRINT_SPACE    _OUT << "\"" << "renderPass" << "\"" << " : " << obj->renderPass.getInternal() << "," << std::endl;
13548 
13549      // CTS : required value
13550      PRINT_SPACE    _OUT << "\"" << "framebuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
13551 
13552      PRINT_SPACE
13553      _OUT << "\"renderArea\": " << std::endl;
13554      {
13555            print_VkRect2D(obj->renderArea, "renderArea", 1);
13556      }
13557 
13558      print_uint32_t(obj->clearValueCount, "clearValueCount", 1);
13559 
13560      PRINT_SPACE
13561      _OUT << "\"pClearValues\":" << std::endl;
13562      PRINT_SPACE
13563      if (obj->pClearValues) {
13564        _OUT << "[" << std::endl;
13565        for (unsigned int i = 0; i < obj->clearValueCount; i++) {
13566            bool isCommaNeeded = (i+1) != obj->clearValueCount;
13567            print_VkClearValue(obj->pClearValues[i], "", isCommaNeeded);
13568        }
13569        PRINT_SPACE
13570        _OUT << "]" << "" << std::endl;
13571      } else {
13572        _OUT << "\"NULL\"" << "" << std::endl;
13573      }
13574 
13575      INDENT(-4);
13576      PRINT_SPACE
13577      if (commaNeeded)
13578          _OUT << "}," << std::endl;
13579      else
13580          _OUT << "}" << std::endl;
13581 }
13582 
print_VkSamplerYcbcrConversion(VkSamplerYcbcrConversion obj,const std::string & str,bool commaNeeded=true)13583 static void print_VkSamplerYcbcrConversion(VkSamplerYcbcrConversion obj, const std::string& str, bool commaNeeded=true) {
13584      PRINT_SPACE
13585      if (commaNeeded)
13586          _OUT << "\"" << str << "\"" << "," << std::endl;
13587      else
13588          _OUT << "\"" << str << "\"" << std::endl;
13589 }
print_VkSamplerYcbcrConversion(const VkSamplerYcbcrConversion * obj,const std::string & str,bool commaNeeded=true)13590 static void print_VkSamplerYcbcrConversion(const VkSamplerYcbcrConversion * obj, const std::string& str, bool commaNeeded=true) {
13591      PRINT_SPACE
13592      if (commaNeeded)
13593          _OUT << "\"" << str << "\"" << "," << std::endl;
13594      else
13595          _OUT << "\"" << str << "\"" << std::endl;
13596 }
13597 
13598 static std::map<deUint64, std::string> VkSubgroupFeatureFlagBits_map = {
13599     std::make_pair(1ULL << 0, "VK_SUBGROUP_FEATURE_BASIC_BIT"),
13600     std::make_pair(1ULL << 1, "VK_SUBGROUP_FEATURE_VOTE_BIT"),
13601     std::make_pair(1ULL << 2, "VK_SUBGROUP_FEATURE_ARITHMETIC_BIT"),
13602     std::make_pair(1ULL << 3, "VK_SUBGROUP_FEATURE_BALLOT_BIT"),
13603     std::make_pair(1ULL << 4, "VK_SUBGROUP_FEATURE_SHUFFLE_BIT"),
13604     std::make_pair(1ULL << 5, "VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT"),
13605     std::make_pair(1ULL << 6, "VK_SUBGROUP_FEATURE_CLUSTERED_BIT"),
13606     std::make_pair(1ULL << 7, "VK_SUBGROUP_FEATURE_QUAD_BIT"),
13607     std::make_pair(1ULL << 8, "VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV"),
13608 };
print_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)13609 static void print_VkSubgroupFeatureFlagBits(VkSubgroupFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
13610      PRINT_SPACE
13611      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13612      if (commaNeeded)
13613          _OUT << "\"" <<  VkSubgroupFeatureFlagBits_map[obj] << "\"," << std::endl;
13614      else
13615          _OUT << "\"" << VkSubgroupFeatureFlagBits_map[obj] << "\"" << std::endl;
13616 }
print_VkSubgroupFeatureFlagBits(const VkSubgroupFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)13617 static void print_VkSubgroupFeatureFlagBits(const VkSubgroupFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13618      PRINT_SPACE
13619      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13620      if (commaNeeded)
13621          _OUT << "\"" <<  VkSubgroupFeatureFlagBits_map[*obj] << "\"," << std::endl;
13622      else
13623          _OUT << "\"" << VkSubgroupFeatureFlagBits_map[*obj] << "\"" << std::endl;
13624 }
13625 
13626 static std::map<deUint64, std::string> VkPeerMemoryFeatureFlagBits_map = {
13627     std::make_pair(1ULL << 0, "VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT"),
13628     std::make_pair(1ULL << 1, "VK_PEER_MEMORY_FEATURE_COPY_DST_BIT"),
13629     std::make_pair(1ULL << 2, "VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT"),
13630     std::make_pair(1ULL << 3, "VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT"),
13631 };
print_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)13632 static void print_VkPeerMemoryFeatureFlagBits(VkPeerMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
13633      PRINT_SPACE
13634      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13635      if (commaNeeded)
13636          _OUT << "\"" <<  VkPeerMemoryFeatureFlagBits_map[obj] << "\"," << std::endl;
13637      else
13638          _OUT << "\"" << VkPeerMemoryFeatureFlagBits_map[obj] << "\"" << std::endl;
13639 }
print_VkPeerMemoryFeatureFlagBits(const VkPeerMemoryFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)13640 static void print_VkPeerMemoryFeatureFlagBits(const VkPeerMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13641      PRINT_SPACE
13642      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13643      if (commaNeeded)
13644          _OUT << "\"" <<  VkPeerMemoryFeatureFlagBits_map[*obj] << "\"," << std::endl;
13645      else
13646          _OUT << "\"" << VkPeerMemoryFeatureFlagBits_map[*obj] << "\"" << std::endl;
13647 }
13648 
13649 static std::map<deUint64, std::string> VkMemoryAllocateFlagBits_map = {
13650     std::make_pair(1ULL << 0, "VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT"),
13651     std::make_pair(1ULL << 1, "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT"),
13652     std::make_pair(1ULL << 2, "VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT"),
13653 };
print_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits obj,const std::string & str,bool commaNeeded=true)13654 static void print_VkMemoryAllocateFlagBits(VkMemoryAllocateFlagBits obj, const std::string& str, bool commaNeeded=true) {
13655      PRINT_SPACE
13656      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13657      if (commaNeeded)
13658          _OUT << "\"" <<  VkMemoryAllocateFlagBits_map[obj] << "\"," << std::endl;
13659      else
13660          _OUT << "\"" << VkMemoryAllocateFlagBits_map[obj] << "\"" << std::endl;
13661 }
print_VkMemoryAllocateFlagBits(const VkMemoryAllocateFlagBits * obj,const std::string & str,bool commaNeeded=true)13662 static void print_VkMemoryAllocateFlagBits(const VkMemoryAllocateFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13663      PRINT_SPACE
13664      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13665      if (commaNeeded)
13666          _OUT << "\"" <<  VkMemoryAllocateFlagBits_map[*obj] << "\"," << std::endl;
13667      else
13668          _OUT << "\"" << VkMemoryAllocateFlagBits_map[*obj] << "\"" << std::endl;
13669 }
13670 
13671 static std::map<deUint64, std::string> VkPointClippingBehavior_map = {
13672     std::make_pair(0, "VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES"),
13673     std::make_pair(1, "VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY"),
13674 };
print_VkPointClippingBehavior(VkPointClippingBehavior obj,const std::string & str,bool commaNeeded=true)13675 static void print_VkPointClippingBehavior(VkPointClippingBehavior obj, const std::string& str, bool commaNeeded=true) {
13676      PRINT_SPACE
13677      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13678      if (commaNeeded)
13679          _OUT << "\"" <<  VkPointClippingBehavior_map[obj] << "\"," << std::endl;
13680      else
13681          _OUT << "\"" << VkPointClippingBehavior_map[obj] << "\"" << std::endl;
13682 }
print_VkPointClippingBehavior(const VkPointClippingBehavior * obj,const std::string & str,bool commaNeeded=true)13683 static void print_VkPointClippingBehavior(const VkPointClippingBehavior * obj, const std::string& str, bool commaNeeded=true) {
13684      PRINT_SPACE
13685      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13686      if (commaNeeded)
13687          _OUT << "\"" <<  VkPointClippingBehavior_map[*obj] << "\"," << std::endl;
13688      else
13689          _OUT << "\"" << VkPointClippingBehavior_map[*obj] << "\"" << std::endl;
13690 }
13691 
13692 static std::map<deUint64, std::string> VkTessellationDomainOrigin_map = {
13693     std::make_pair(0, "VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT"),
13694     std::make_pair(1, "VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT"),
13695 };
print_VkTessellationDomainOrigin(VkTessellationDomainOrigin obj,const std::string & str,bool commaNeeded=true)13696 static void print_VkTessellationDomainOrigin(VkTessellationDomainOrigin obj, const std::string& str, bool commaNeeded=true) {
13697      PRINT_SPACE
13698      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13699      if (commaNeeded)
13700          _OUT << "\"" <<  VkTessellationDomainOrigin_map[obj] << "\"," << std::endl;
13701      else
13702          _OUT << "\"" << VkTessellationDomainOrigin_map[obj] << "\"" << std::endl;
13703 }
print_VkTessellationDomainOrigin(const VkTessellationDomainOrigin * obj,const std::string & str,bool commaNeeded=true)13704 static void print_VkTessellationDomainOrigin(const VkTessellationDomainOrigin * obj, const std::string& str, bool commaNeeded=true) {
13705      PRINT_SPACE
13706      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13707      if (commaNeeded)
13708          _OUT << "\"" <<  VkTessellationDomainOrigin_map[*obj] << "\"," << std::endl;
13709      else
13710          _OUT << "\"" << VkTessellationDomainOrigin_map[*obj] << "\"" << std::endl;
13711 }
13712 
13713 static std::map<deUint64, std::string> VkSamplerYcbcrModelConversion_map = {
13714     std::make_pair(0, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY"),
13715     std::make_pair(1, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY"),
13716     std::make_pair(2, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709"),
13717     std::make_pair(3, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601"),
13718     std::make_pair(4, "VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020"),
13719 };
print_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion obj,const std::string & str,bool commaNeeded=true)13720 static void print_VkSamplerYcbcrModelConversion(VkSamplerYcbcrModelConversion obj, const std::string& str, bool commaNeeded=true) {
13721      PRINT_SPACE
13722      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13723      if (commaNeeded)
13724          _OUT << "\"" <<  VkSamplerYcbcrModelConversion_map[obj] << "\"," << std::endl;
13725      else
13726          _OUT << "\"" << VkSamplerYcbcrModelConversion_map[obj] << "\"" << std::endl;
13727 }
print_VkSamplerYcbcrModelConversion(const VkSamplerYcbcrModelConversion * obj,const std::string & str,bool commaNeeded=true)13728 static void print_VkSamplerYcbcrModelConversion(const VkSamplerYcbcrModelConversion * obj, const std::string& str, bool commaNeeded=true) {
13729      PRINT_SPACE
13730      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13731      if (commaNeeded)
13732          _OUT << "\"" <<  VkSamplerYcbcrModelConversion_map[*obj] << "\"," << std::endl;
13733      else
13734          _OUT << "\"" << VkSamplerYcbcrModelConversion_map[*obj] << "\"" << std::endl;
13735 }
13736 
13737 static std::map<deUint64, std::string> VkSamplerYcbcrRange_map = {
13738     std::make_pair(0, "VK_SAMPLER_YCBCR_RANGE_ITU_FULL"),
13739     std::make_pair(1, "VK_SAMPLER_YCBCR_RANGE_ITU_NARROW"),
13740 };
print_VkSamplerYcbcrRange(VkSamplerYcbcrRange obj,const std::string & str,bool commaNeeded=true)13741 static void print_VkSamplerYcbcrRange(VkSamplerYcbcrRange obj, const std::string& str, bool commaNeeded=true) {
13742      PRINT_SPACE
13743      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13744      if (commaNeeded)
13745          _OUT << "\"" <<  VkSamplerYcbcrRange_map[obj] << "\"," << std::endl;
13746      else
13747          _OUT << "\"" << VkSamplerYcbcrRange_map[obj] << "\"" << std::endl;
13748 }
print_VkSamplerYcbcrRange(const VkSamplerYcbcrRange * obj,const std::string & str,bool commaNeeded=true)13749 static void print_VkSamplerYcbcrRange(const VkSamplerYcbcrRange * obj, const std::string& str, bool commaNeeded=true) {
13750      PRINT_SPACE
13751      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13752      if (commaNeeded)
13753          _OUT << "\"" <<  VkSamplerYcbcrRange_map[*obj] << "\"," << std::endl;
13754      else
13755          _OUT << "\"" << VkSamplerYcbcrRange_map[*obj] << "\"" << std::endl;
13756 }
13757 
13758 static std::map<deUint64, std::string> VkChromaLocation_map = {
13759     std::make_pair(0, "VK_CHROMA_LOCATION_COSITED_EVEN"),
13760     std::make_pair(1, "VK_CHROMA_LOCATION_MIDPOINT"),
13761 };
print_VkChromaLocation(VkChromaLocation obj,const std::string & str,bool commaNeeded=true)13762 static void print_VkChromaLocation(VkChromaLocation obj, const std::string& str, bool commaNeeded=true) {
13763      PRINT_SPACE
13764      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13765      if (commaNeeded)
13766          _OUT << "\"" <<  VkChromaLocation_map[obj] << "\"," << std::endl;
13767      else
13768          _OUT << "\"" << VkChromaLocation_map[obj] << "\"" << std::endl;
13769 }
print_VkChromaLocation(const VkChromaLocation * obj,const std::string & str,bool commaNeeded=true)13770 static void print_VkChromaLocation(const VkChromaLocation * obj, const std::string& str, bool commaNeeded=true) {
13771      PRINT_SPACE
13772      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13773      if (commaNeeded)
13774          _OUT << "\"" <<  VkChromaLocation_map[*obj] << "\"," << std::endl;
13775      else
13776          _OUT << "\"" << VkChromaLocation_map[*obj] << "\"" << std::endl;
13777 }
13778 
13779 static std::map<deUint64, std::string> VkExternalMemoryHandleTypeFlagBits_map = {
13780     std::make_pair(1ULL << 0, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT"),
13781     std::make_pair(1ULL << 1, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT"),
13782     std::make_pair(1ULL << 2, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"),
13783     std::make_pair(1ULL << 3, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT"),
13784     std::make_pair(1ULL << 4, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT"),
13785     std::make_pair(1ULL << 5, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT"),
13786     std::make_pair(1ULL << 6, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT"),
13787     std::make_pair(1ULL << 9, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT"),
13788     std::make_pair(1ULL << 10, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID"),
13789     std::make_pair(1ULL << 7, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT"),
13790     std::make_pair(1ULL << 8, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT"),
13791     std::make_pair(1ULL << 11, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA"),
13792     std::make_pair(1ULL << 12, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV"),
13793     std::make_pair(1ULL << 13, "VK_EXTERNAL_MEMORY_HANDLE_TYPE_SCI_BUF_BIT_NV"),
13794 };
print_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits obj,const std::string & str,bool commaNeeded=true)13795 static void print_VkExternalMemoryHandleTypeFlagBits(VkExternalMemoryHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true) {
13796      PRINT_SPACE
13797      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13798      if (commaNeeded)
13799          _OUT << "\"" <<  VkExternalMemoryHandleTypeFlagBits_map[obj] << "\"," << std::endl;
13800      else
13801          _OUT << "\"" << VkExternalMemoryHandleTypeFlagBits_map[obj] << "\"" << std::endl;
13802 }
print_VkExternalMemoryHandleTypeFlagBits(const VkExternalMemoryHandleTypeFlagBits * obj,const std::string & str,bool commaNeeded=true)13803 static void print_VkExternalMemoryHandleTypeFlagBits(const VkExternalMemoryHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13804      PRINT_SPACE
13805      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13806      if (commaNeeded)
13807          _OUT << "\"" <<  VkExternalMemoryHandleTypeFlagBits_map[*obj] << "\"," << std::endl;
13808      else
13809          _OUT << "\"" << VkExternalMemoryHandleTypeFlagBits_map[*obj] << "\"" << std::endl;
13810 }
13811 
13812 static std::map<deUint64, std::string> VkExternalMemoryFeatureFlagBits_map = {
13813     std::make_pair(1ULL << 0, "VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT"),
13814     std::make_pair(1ULL << 1, "VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT"),
13815     std::make_pair(1ULL << 2, "VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT"),
13816 };
print_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)13817 static void print_VkExternalMemoryFeatureFlagBits(VkExternalMemoryFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
13818      PRINT_SPACE
13819      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13820      if (commaNeeded)
13821          _OUT << "\"" <<  VkExternalMemoryFeatureFlagBits_map[obj] << "\"," << std::endl;
13822      else
13823          _OUT << "\"" << VkExternalMemoryFeatureFlagBits_map[obj] << "\"" << std::endl;
13824 }
print_VkExternalMemoryFeatureFlagBits(const VkExternalMemoryFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)13825 static void print_VkExternalMemoryFeatureFlagBits(const VkExternalMemoryFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13826      PRINT_SPACE
13827      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13828      if (commaNeeded)
13829          _OUT << "\"" <<  VkExternalMemoryFeatureFlagBits_map[*obj] << "\"," << std::endl;
13830      else
13831          _OUT << "\"" << VkExternalMemoryFeatureFlagBits_map[*obj] << "\"" << std::endl;
13832 }
13833 
13834 static std::map<deUint64, std::string> VkExternalFenceHandleTypeFlagBits_map = {
13835     std::make_pair(1ULL << 0, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT"),
13836     std::make_pair(1ULL << 1, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT"),
13837     std::make_pair(1ULL << 2, "VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"),
13838     std::make_pair(1ULL << 3, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT"),
13839     std::make_pair(1ULL << 4, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV"),
13840     std::make_pair(1ULL << 5, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV"),
13841     std::make_pair(1ULL << 4, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV"),
13842     std::make_pair(1ULL << 5, "VK_EXTERNAL_FENCE_HANDLE_TYPE_SCI_SYNC_FENCE_BIT_NV"),
13843 };
print_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits obj,const std::string & str,bool commaNeeded=true)13844 static void print_VkExternalFenceHandleTypeFlagBits(VkExternalFenceHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true) {
13845      PRINT_SPACE
13846      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13847      if (commaNeeded)
13848          _OUT << "\"" <<  VkExternalFenceHandleTypeFlagBits_map[obj] << "\"," << std::endl;
13849      else
13850          _OUT << "\"" << VkExternalFenceHandleTypeFlagBits_map[obj] << "\"" << std::endl;
13851 }
print_VkExternalFenceHandleTypeFlagBits(const VkExternalFenceHandleTypeFlagBits * obj,const std::string & str,bool commaNeeded=true)13852 static void print_VkExternalFenceHandleTypeFlagBits(const VkExternalFenceHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13853      PRINT_SPACE
13854      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13855      if (commaNeeded)
13856          _OUT << "\"" <<  VkExternalFenceHandleTypeFlagBits_map[*obj] << "\"," << std::endl;
13857      else
13858          _OUT << "\"" << VkExternalFenceHandleTypeFlagBits_map[*obj] << "\"" << std::endl;
13859 }
13860 
13861 static std::map<deUint64, std::string> VkExternalFenceFeatureFlagBits_map = {
13862     std::make_pair(1ULL << 0, "VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT"),
13863     std::make_pair(1ULL << 1, "VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT"),
13864 };
print_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)13865 static void print_VkExternalFenceFeatureFlagBits(VkExternalFenceFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
13866      PRINT_SPACE
13867      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13868      if (commaNeeded)
13869          _OUT << "\"" <<  VkExternalFenceFeatureFlagBits_map[obj] << "\"," << std::endl;
13870      else
13871          _OUT << "\"" << VkExternalFenceFeatureFlagBits_map[obj] << "\"" << std::endl;
13872 }
print_VkExternalFenceFeatureFlagBits(const VkExternalFenceFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)13873 static void print_VkExternalFenceFeatureFlagBits(const VkExternalFenceFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13874      PRINT_SPACE
13875      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13876      if (commaNeeded)
13877          _OUT << "\"" <<  VkExternalFenceFeatureFlagBits_map[*obj] << "\"," << std::endl;
13878      else
13879          _OUT << "\"" << VkExternalFenceFeatureFlagBits_map[*obj] << "\"" << std::endl;
13880 }
13881 
13882 static std::map<deUint64, std::string> VkFenceImportFlagBits_map = {
13883     std::make_pair(1ULL << 0, "VK_FENCE_IMPORT_TEMPORARY_BIT"),
13884 };
print_VkFenceImportFlagBits(VkFenceImportFlagBits obj,const std::string & str,bool commaNeeded=true)13885 static void print_VkFenceImportFlagBits(VkFenceImportFlagBits obj, const std::string& str, bool commaNeeded=true) {
13886      PRINT_SPACE
13887      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13888      if (commaNeeded)
13889          _OUT << "\"" <<  VkFenceImportFlagBits_map[obj] << "\"," << std::endl;
13890      else
13891          _OUT << "\"" << VkFenceImportFlagBits_map[obj] << "\"" << std::endl;
13892 }
print_VkFenceImportFlagBits(const VkFenceImportFlagBits * obj,const std::string & str,bool commaNeeded=true)13893 static void print_VkFenceImportFlagBits(const VkFenceImportFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13894      PRINT_SPACE
13895      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13896      if (commaNeeded)
13897          _OUT << "\"" <<  VkFenceImportFlagBits_map[*obj] << "\"," << std::endl;
13898      else
13899          _OUT << "\"" << VkFenceImportFlagBits_map[*obj] << "\"" << std::endl;
13900 }
13901 
13902 static std::map<deUint64, std::string> VkSemaphoreImportFlagBits_map = {
13903     std::make_pair(1ULL << 0, "VK_SEMAPHORE_IMPORT_TEMPORARY_BIT"),
13904 };
print_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits obj,const std::string & str,bool commaNeeded=true)13905 static void print_VkSemaphoreImportFlagBits(VkSemaphoreImportFlagBits obj, const std::string& str, bool commaNeeded=true) {
13906      PRINT_SPACE
13907      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13908      if (commaNeeded)
13909          _OUT << "\"" <<  VkSemaphoreImportFlagBits_map[obj] << "\"," << std::endl;
13910      else
13911          _OUT << "\"" << VkSemaphoreImportFlagBits_map[obj] << "\"" << std::endl;
13912 }
print_VkSemaphoreImportFlagBits(const VkSemaphoreImportFlagBits * obj,const std::string & str,bool commaNeeded=true)13913 static void print_VkSemaphoreImportFlagBits(const VkSemaphoreImportFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13914      PRINT_SPACE
13915      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13916      if (commaNeeded)
13917          _OUT << "\"" <<  VkSemaphoreImportFlagBits_map[*obj] << "\"," << std::endl;
13918      else
13919          _OUT << "\"" << VkSemaphoreImportFlagBits_map[*obj] << "\"" << std::endl;
13920 }
13921 
13922 static std::map<deUint64, std::string> VkExternalSemaphoreHandleTypeFlagBits_map = {
13923     std::make_pair(1ULL << 0, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT"),
13924     std::make_pair(1ULL << 1, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT"),
13925     std::make_pair(1ULL << 2, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT"),
13926     std::make_pair(1ULL << 3, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT"),
13927     std::make_pair(1ULL << 4, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT"),
13928     std::make_pair(1ULL << 7, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA"),
13929     std::make_pair(1ULL << 5, "VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SCI_SYNC_OBJ_BIT_NV"),
13930 };
print_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits obj,const std::string & str,bool commaNeeded=true)13931 static void print_VkExternalSemaphoreHandleTypeFlagBits(VkExternalSemaphoreHandleTypeFlagBits obj, const std::string& str, bool commaNeeded=true) {
13932      PRINT_SPACE
13933      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13934      if (commaNeeded)
13935          _OUT << "\"" <<  VkExternalSemaphoreHandleTypeFlagBits_map[obj] << "\"," << std::endl;
13936      else
13937          _OUT << "\"" << VkExternalSemaphoreHandleTypeFlagBits_map[obj] << "\"" << std::endl;
13938 }
print_VkExternalSemaphoreHandleTypeFlagBits(const VkExternalSemaphoreHandleTypeFlagBits * obj,const std::string & str,bool commaNeeded=true)13939 static void print_VkExternalSemaphoreHandleTypeFlagBits(const VkExternalSemaphoreHandleTypeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13940      PRINT_SPACE
13941      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13942      if (commaNeeded)
13943          _OUT << "\"" <<  VkExternalSemaphoreHandleTypeFlagBits_map[*obj] << "\"," << std::endl;
13944      else
13945          _OUT << "\"" << VkExternalSemaphoreHandleTypeFlagBits_map[*obj] << "\"" << std::endl;
13946 }
13947 
13948 static std::map<deUint64, std::string> VkExternalSemaphoreFeatureFlagBits_map = {
13949     std::make_pair(1ULL << 0, "VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT"),
13950     std::make_pair(1ULL << 1, "VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT"),
13951 };
print_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits obj,const std::string & str,bool commaNeeded=true)13952 static void print_VkExternalSemaphoreFeatureFlagBits(VkExternalSemaphoreFeatureFlagBits obj, const std::string& str, bool commaNeeded=true) {
13953      PRINT_SPACE
13954      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13955      if (commaNeeded)
13956          _OUT << "\"" <<  VkExternalSemaphoreFeatureFlagBits_map[obj] << "\"," << std::endl;
13957      else
13958          _OUT << "\"" << VkExternalSemaphoreFeatureFlagBits_map[obj] << "\"" << std::endl;
13959 }
print_VkExternalSemaphoreFeatureFlagBits(const VkExternalSemaphoreFeatureFlagBits * obj,const std::string & str,bool commaNeeded=true)13960 static void print_VkExternalSemaphoreFeatureFlagBits(const VkExternalSemaphoreFeatureFlagBits * obj, const std::string& str, bool commaNeeded=true) {
13961      PRINT_SPACE
13962      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13963      if (commaNeeded)
13964          _OUT << "\"" <<  VkExternalSemaphoreFeatureFlagBits_map[*obj] << "\"," << std::endl;
13965      else
13966          _OUT << "\"" << VkExternalSemaphoreFeatureFlagBits_map[*obj] << "\"" << std::endl;
13967 }
13968 
print_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags obj,const std::string & str,bool commaNeeded=true)13969 static void print_VkSubgroupFeatureFlags(VkSubgroupFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
13970      PRINT_SPACE
13971      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13972      const int max_bits = 64; // We don't expect the number to be larger.
13973      std::bitset<max_bits> b(obj);
13974      _OUT << "\"";
13975      if (obj == 0) _OUT << "0";
13976      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
13977          if (b[i] == 1) {
13978              bitCount++;
13979              if (bitCount < b.count())
13980                  _OUT << VkSubgroupFeatureFlagBits_map[1ULL<<i] << " | ";
13981              else
13982                  _OUT << VkSubgroupFeatureFlagBits_map[1ULL<<i];
13983          }
13984      }
13985      if (commaNeeded)
13986        _OUT << "\"" << ",";
13987      else
13988        _OUT << "\""<< "";
13989      _OUT << std::endl;
13990 }
print_VkSubgroupFeatureFlags(const VkSubgroupFeatureFlags * obj,const std::string & str,bool commaNeeded=true)13991 static void print_VkSubgroupFeatureFlags(const VkSubgroupFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
13992      PRINT_SPACE
13993      if (str != "") _OUT << "\"" << str << "\"" << " : ";
13994      const int max_bits = 64; // We don't expect the number to be larger.
13995      std::bitset<max_bits> b(obj);
13996      _OUT << "\"";
13997      if (obj == 0) _OUT << "0";
13998      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
13999          if (b[i] == 1) {
14000              bitCount++;
14001              if (bitCount < b.count())
14002                  _OUT << VkSubgroupFeatureFlagBits_map[1ULL<<i] << " | ";
14003              else
14004                  _OUT << VkSubgroupFeatureFlagBits_map[1ULL<<i];
14005          }
14006      }
14007      if (commaNeeded)
14008        _OUT << "\"" << ",";
14009      else
14010        _OUT << "\""<< "";
14011      _OUT << std::endl;
14012 }
14013 
print_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags obj,const std::string & str,bool commaNeeded=true)14014 static void print_VkPeerMemoryFeatureFlags(VkPeerMemoryFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
14015      PRINT_SPACE
14016      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14017      const int max_bits = 64; // We don't expect the number to be larger.
14018      std::bitset<max_bits> b(obj);
14019      _OUT << "\"";
14020      if (obj == 0) _OUT << "0";
14021      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14022          if (b[i] == 1) {
14023              bitCount++;
14024              if (bitCount < b.count())
14025                  _OUT << VkPeerMemoryFeatureFlagBits_map[1ULL<<i] << " | ";
14026              else
14027                  _OUT << VkPeerMemoryFeatureFlagBits_map[1ULL<<i];
14028          }
14029      }
14030      if (commaNeeded)
14031        _OUT << "\"" << ",";
14032      else
14033        _OUT << "\""<< "";
14034      _OUT << std::endl;
14035 }
print_VkPeerMemoryFeatureFlags(const VkPeerMemoryFeatureFlags * obj,const std::string & str,bool commaNeeded=true)14036 static void print_VkPeerMemoryFeatureFlags(const VkPeerMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
14037      PRINT_SPACE
14038      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14039      const int max_bits = 64; // We don't expect the number to be larger.
14040      std::bitset<max_bits> b(obj);
14041      _OUT << "\"";
14042      if (obj == 0) _OUT << "0";
14043      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14044          if (b[i] == 1) {
14045              bitCount++;
14046              if (bitCount < b.count())
14047                  _OUT << VkPeerMemoryFeatureFlagBits_map[1ULL<<i] << " | ";
14048              else
14049                  _OUT << VkPeerMemoryFeatureFlagBits_map[1ULL<<i];
14050          }
14051      }
14052      if (commaNeeded)
14053        _OUT << "\"" << ",";
14054      else
14055        _OUT << "\""<< "";
14056      _OUT << std::endl;
14057 }
14058 
print_VkMemoryAllocateFlags(VkMemoryAllocateFlags obj,const std::string & str,bool commaNeeded=true)14059 static void print_VkMemoryAllocateFlags(VkMemoryAllocateFlags obj, const std::string& str, bool commaNeeded=true) {
14060      PRINT_SPACE
14061      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14062      const int max_bits = 64; // We don't expect the number to be larger.
14063      std::bitset<max_bits> b(obj);
14064      _OUT << "\"";
14065      if (obj == 0) _OUT << "0";
14066      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14067          if (b[i] == 1) {
14068              bitCount++;
14069              if (bitCount < b.count())
14070                  _OUT << VkMemoryAllocateFlagBits_map[1ULL<<i] << " | ";
14071              else
14072                  _OUT << VkMemoryAllocateFlagBits_map[1ULL<<i];
14073          }
14074      }
14075      if (commaNeeded)
14076        _OUT << "\"" << ",";
14077      else
14078        _OUT << "\""<< "";
14079      _OUT << std::endl;
14080 }
print_VkMemoryAllocateFlags(const VkMemoryAllocateFlags * obj,const std::string & str,bool commaNeeded=true)14081 static void print_VkMemoryAllocateFlags(const VkMemoryAllocateFlags * obj, const std::string& str, bool commaNeeded=true) {
14082      PRINT_SPACE
14083      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14084      const int max_bits = 64; // We don't expect the number to be larger.
14085      std::bitset<max_bits> b(obj);
14086      _OUT << "\"";
14087      if (obj == 0) _OUT << "0";
14088      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14089          if (b[i] == 1) {
14090              bitCount++;
14091              if (bitCount < b.count())
14092                  _OUT << VkMemoryAllocateFlagBits_map[1ULL<<i] << " | ";
14093              else
14094                  _OUT << VkMemoryAllocateFlagBits_map[1ULL<<i];
14095          }
14096      }
14097      if (commaNeeded)
14098        _OUT << "\"" << ",";
14099      else
14100        _OUT << "\""<< "";
14101      _OUT << std::endl;
14102 }
14103 
print_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags obj,const std::string & str,bool commaNeeded=true)14104 static void print_VkExternalMemoryHandleTypeFlags(VkExternalMemoryHandleTypeFlags obj, const std::string& str, bool commaNeeded=true) {
14105      PRINT_SPACE
14106      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14107      const int max_bits = 64; // We don't expect the number to be larger.
14108      std::bitset<max_bits> b(obj);
14109      _OUT << "\"";
14110      if (obj == 0) _OUT << "0";
14111      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14112          if (b[i] == 1) {
14113              bitCount++;
14114              if (bitCount < b.count())
14115                  _OUT << VkExternalMemoryHandleTypeFlagBits_map[1ULL<<i] << " | ";
14116              else
14117                  _OUT << VkExternalMemoryHandleTypeFlagBits_map[1ULL<<i];
14118          }
14119      }
14120      if (commaNeeded)
14121        _OUT << "\"" << ",";
14122      else
14123        _OUT << "\""<< "";
14124      _OUT << std::endl;
14125 }
print_VkExternalMemoryHandleTypeFlags(const VkExternalMemoryHandleTypeFlags * obj,const std::string & str,bool commaNeeded=true)14126 static void print_VkExternalMemoryHandleTypeFlags(const VkExternalMemoryHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true) {
14127      PRINT_SPACE
14128      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14129      const int max_bits = 64; // We don't expect the number to be larger.
14130      std::bitset<max_bits> b(obj);
14131      _OUT << "\"";
14132      if (obj == 0) _OUT << "0";
14133      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14134          if (b[i] == 1) {
14135              bitCount++;
14136              if (bitCount < b.count())
14137                  _OUT << VkExternalMemoryHandleTypeFlagBits_map[1ULL<<i] << " | ";
14138              else
14139                  _OUT << VkExternalMemoryHandleTypeFlagBits_map[1ULL<<i];
14140          }
14141      }
14142      if (commaNeeded)
14143        _OUT << "\"" << ",";
14144      else
14145        _OUT << "\""<< "";
14146      _OUT << std::endl;
14147 }
14148 
print_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags obj,const std::string & str,bool commaNeeded=true)14149 static void print_VkExternalMemoryFeatureFlags(VkExternalMemoryFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
14150      PRINT_SPACE
14151      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14152      const int max_bits = 64; // We don't expect the number to be larger.
14153      std::bitset<max_bits> b(obj);
14154      _OUT << "\"";
14155      if (obj == 0) _OUT << "0";
14156      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14157          if (b[i] == 1) {
14158              bitCount++;
14159              if (bitCount < b.count())
14160                  _OUT << VkExternalMemoryFeatureFlagBits_map[1ULL<<i] << " | ";
14161              else
14162                  _OUT << VkExternalMemoryFeatureFlagBits_map[1ULL<<i];
14163          }
14164      }
14165      if (commaNeeded)
14166        _OUT << "\"" << ",";
14167      else
14168        _OUT << "\""<< "";
14169      _OUT << std::endl;
14170 }
print_VkExternalMemoryFeatureFlags(const VkExternalMemoryFeatureFlags * obj,const std::string & str,bool commaNeeded=true)14171 static void print_VkExternalMemoryFeatureFlags(const VkExternalMemoryFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
14172      PRINT_SPACE
14173      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14174      const int max_bits = 64; // We don't expect the number to be larger.
14175      std::bitset<max_bits> b(obj);
14176      _OUT << "\"";
14177      if (obj == 0) _OUT << "0";
14178      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14179          if (b[i] == 1) {
14180              bitCount++;
14181              if (bitCount < b.count())
14182                  _OUT << VkExternalMemoryFeatureFlagBits_map[1ULL<<i] << " | ";
14183              else
14184                  _OUT << VkExternalMemoryFeatureFlagBits_map[1ULL<<i];
14185          }
14186      }
14187      if (commaNeeded)
14188        _OUT << "\"" << ",";
14189      else
14190        _OUT << "\""<< "";
14191      _OUT << std::endl;
14192 }
14193 
print_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags obj,const std::string & str,bool commaNeeded=true)14194 static void print_VkExternalFenceHandleTypeFlags(VkExternalFenceHandleTypeFlags obj, const std::string& str, bool commaNeeded=true) {
14195      PRINT_SPACE
14196      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14197      const int max_bits = 64; // We don't expect the number to be larger.
14198      std::bitset<max_bits> b(obj);
14199      _OUT << "\"";
14200      if (obj == 0) _OUT << "0";
14201      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14202          if (b[i] == 1) {
14203              bitCount++;
14204              if (bitCount < b.count())
14205                  _OUT << VkExternalFenceHandleTypeFlagBits_map[1ULL<<i] << " | ";
14206              else
14207                  _OUT << VkExternalFenceHandleTypeFlagBits_map[1ULL<<i];
14208          }
14209      }
14210      if (commaNeeded)
14211        _OUT << "\"" << ",";
14212      else
14213        _OUT << "\""<< "";
14214      _OUT << std::endl;
14215 }
print_VkExternalFenceHandleTypeFlags(const VkExternalFenceHandleTypeFlags * obj,const std::string & str,bool commaNeeded=true)14216 static void print_VkExternalFenceHandleTypeFlags(const VkExternalFenceHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true) {
14217      PRINT_SPACE
14218      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14219      const int max_bits = 64; // We don't expect the number to be larger.
14220      std::bitset<max_bits> b(obj);
14221      _OUT << "\"";
14222      if (obj == 0) _OUT << "0";
14223      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14224          if (b[i] == 1) {
14225              bitCount++;
14226              if (bitCount < b.count())
14227                  _OUT << VkExternalFenceHandleTypeFlagBits_map[1ULL<<i] << " | ";
14228              else
14229                  _OUT << VkExternalFenceHandleTypeFlagBits_map[1ULL<<i];
14230          }
14231      }
14232      if (commaNeeded)
14233        _OUT << "\"" << ",";
14234      else
14235        _OUT << "\""<< "";
14236      _OUT << std::endl;
14237 }
14238 
print_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags obj,const std::string & str,bool commaNeeded=true)14239 static void print_VkExternalFenceFeatureFlags(VkExternalFenceFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
14240      PRINT_SPACE
14241      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14242      const int max_bits = 64; // We don't expect the number to be larger.
14243      std::bitset<max_bits> b(obj);
14244      _OUT << "\"";
14245      if (obj == 0) _OUT << "0";
14246      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14247          if (b[i] == 1) {
14248              bitCount++;
14249              if (bitCount < b.count())
14250                  _OUT << VkExternalFenceFeatureFlagBits_map[1ULL<<i] << " | ";
14251              else
14252                  _OUT << VkExternalFenceFeatureFlagBits_map[1ULL<<i];
14253          }
14254      }
14255      if (commaNeeded)
14256        _OUT << "\"" << ",";
14257      else
14258        _OUT << "\""<< "";
14259      _OUT << std::endl;
14260 }
print_VkExternalFenceFeatureFlags(const VkExternalFenceFeatureFlags * obj,const std::string & str,bool commaNeeded=true)14261 static void print_VkExternalFenceFeatureFlags(const VkExternalFenceFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
14262      PRINT_SPACE
14263      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14264      const int max_bits = 64; // We don't expect the number to be larger.
14265      std::bitset<max_bits> b(obj);
14266      _OUT << "\"";
14267      if (obj == 0) _OUT << "0";
14268      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14269          if (b[i] == 1) {
14270              bitCount++;
14271              if (bitCount < b.count())
14272                  _OUT << VkExternalFenceFeatureFlagBits_map[1ULL<<i] << " | ";
14273              else
14274                  _OUT << VkExternalFenceFeatureFlagBits_map[1ULL<<i];
14275          }
14276      }
14277      if (commaNeeded)
14278        _OUT << "\"" << ",";
14279      else
14280        _OUT << "\""<< "";
14281      _OUT << std::endl;
14282 }
14283 
print_VkFenceImportFlags(VkFenceImportFlags obj,const std::string & str,bool commaNeeded=true)14284 static void print_VkFenceImportFlags(VkFenceImportFlags obj, const std::string& str, bool commaNeeded=true) {
14285      PRINT_SPACE
14286      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14287      const int max_bits = 64; // We don't expect the number to be larger.
14288      std::bitset<max_bits> b(obj);
14289      _OUT << "\"";
14290      if (obj == 0) _OUT << "0";
14291      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14292          if (b[i] == 1) {
14293              bitCount++;
14294              if (bitCount < b.count())
14295                  _OUT << VkFenceImportFlagBits_map[1ULL<<i] << " | ";
14296              else
14297                  _OUT << VkFenceImportFlagBits_map[1ULL<<i];
14298          }
14299      }
14300      if (commaNeeded)
14301        _OUT << "\"" << ",";
14302      else
14303        _OUT << "\""<< "";
14304      _OUT << std::endl;
14305 }
print_VkFenceImportFlags(const VkFenceImportFlags * obj,const std::string & str,bool commaNeeded=true)14306 static void print_VkFenceImportFlags(const VkFenceImportFlags * obj, const std::string& str, bool commaNeeded=true) {
14307      PRINT_SPACE
14308      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14309      const int max_bits = 64; // We don't expect the number to be larger.
14310      std::bitset<max_bits> b(obj);
14311      _OUT << "\"";
14312      if (obj == 0) _OUT << "0";
14313      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14314          if (b[i] == 1) {
14315              bitCount++;
14316              if (bitCount < b.count())
14317                  _OUT << VkFenceImportFlagBits_map[1ULL<<i] << " | ";
14318              else
14319                  _OUT << VkFenceImportFlagBits_map[1ULL<<i];
14320          }
14321      }
14322      if (commaNeeded)
14323        _OUT << "\"" << ",";
14324      else
14325        _OUT << "\""<< "";
14326      _OUT << std::endl;
14327 }
14328 
print_VkSemaphoreImportFlags(VkSemaphoreImportFlags obj,const std::string & str,bool commaNeeded=true)14329 static void print_VkSemaphoreImportFlags(VkSemaphoreImportFlags obj, const std::string& str, bool commaNeeded=true) {
14330      PRINT_SPACE
14331      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14332      const int max_bits = 64; // We don't expect the number to be larger.
14333      std::bitset<max_bits> b(obj);
14334      _OUT << "\"";
14335      if (obj == 0) _OUT << "0";
14336      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14337          if (b[i] == 1) {
14338              bitCount++;
14339              if (bitCount < b.count())
14340                  _OUT << VkSemaphoreImportFlagBits_map[1ULL<<i] << " | ";
14341              else
14342                  _OUT << VkSemaphoreImportFlagBits_map[1ULL<<i];
14343          }
14344      }
14345      if (commaNeeded)
14346        _OUT << "\"" << ",";
14347      else
14348        _OUT << "\""<< "";
14349      _OUT << std::endl;
14350 }
print_VkSemaphoreImportFlags(const VkSemaphoreImportFlags * obj,const std::string & str,bool commaNeeded=true)14351 static void print_VkSemaphoreImportFlags(const VkSemaphoreImportFlags * obj, const std::string& str, bool commaNeeded=true) {
14352      PRINT_SPACE
14353      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14354      const int max_bits = 64; // We don't expect the number to be larger.
14355      std::bitset<max_bits> b(obj);
14356      _OUT << "\"";
14357      if (obj == 0) _OUT << "0";
14358      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14359          if (b[i] == 1) {
14360              bitCount++;
14361              if (bitCount < b.count())
14362                  _OUT << VkSemaphoreImportFlagBits_map[1ULL<<i] << " | ";
14363              else
14364                  _OUT << VkSemaphoreImportFlagBits_map[1ULL<<i];
14365          }
14366      }
14367      if (commaNeeded)
14368        _OUT << "\"" << ",";
14369      else
14370        _OUT << "\""<< "";
14371      _OUT << std::endl;
14372 }
14373 
print_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags obj,const std::string & str,bool commaNeeded=true)14374 static void print_VkExternalSemaphoreHandleTypeFlags(VkExternalSemaphoreHandleTypeFlags obj, const std::string& str, bool commaNeeded=true) {
14375      PRINT_SPACE
14376      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14377      const int max_bits = 64; // We don't expect the number to be larger.
14378      std::bitset<max_bits> b(obj);
14379      _OUT << "\"";
14380      if (obj == 0) _OUT << "0";
14381      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14382          if (b[i] == 1) {
14383              bitCount++;
14384              if (bitCount < b.count())
14385                  _OUT << VkExternalSemaphoreHandleTypeFlagBits_map[1ULL<<i] << " | ";
14386              else
14387                  _OUT << VkExternalSemaphoreHandleTypeFlagBits_map[1ULL<<i];
14388          }
14389      }
14390      if (commaNeeded)
14391        _OUT << "\"" << ",";
14392      else
14393        _OUT << "\""<< "";
14394      _OUT << std::endl;
14395 }
print_VkExternalSemaphoreHandleTypeFlags(const VkExternalSemaphoreHandleTypeFlags * obj,const std::string & str,bool commaNeeded=true)14396 static void print_VkExternalSemaphoreHandleTypeFlags(const VkExternalSemaphoreHandleTypeFlags * obj, const std::string& str, bool commaNeeded=true) {
14397      PRINT_SPACE
14398      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14399      const int max_bits = 64; // We don't expect the number to be larger.
14400      std::bitset<max_bits> b(obj);
14401      _OUT << "\"";
14402      if (obj == 0) _OUT << "0";
14403      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14404          if (b[i] == 1) {
14405              bitCount++;
14406              if (bitCount < b.count())
14407                  _OUT << VkExternalSemaphoreHandleTypeFlagBits_map[1ULL<<i] << " | ";
14408              else
14409                  _OUT << VkExternalSemaphoreHandleTypeFlagBits_map[1ULL<<i];
14410          }
14411      }
14412      if (commaNeeded)
14413        _OUT << "\"" << ",";
14414      else
14415        _OUT << "\""<< "";
14416      _OUT << std::endl;
14417 }
14418 
print_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags obj,const std::string & str,bool commaNeeded=true)14419 static void print_VkExternalSemaphoreFeatureFlags(VkExternalSemaphoreFeatureFlags obj, const std::string& str, bool commaNeeded=true) {
14420      PRINT_SPACE
14421      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14422      const int max_bits = 64; // We don't expect the number to be larger.
14423      std::bitset<max_bits> b(obj);
14424      _OUT << "\"";
14425      if (obj == 0) _OUT << "0";
14426      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14427          if (b[i] == 1) {
14428              bitCount++;
14429              if (bitCount < b.count())
14430                  _OUT << VkExternalSemaphoreFeatureFlagBits_map[1ULL<<i] << " | ";
14431              else
14432                  _OUT << VkExternalSemaphoreFeatureFlagBits_map[1ULL<<i];
14433          }
14434      }
14435      if (commaNeeded)
14436        _OUT << "\"" << ",";
14437      else
14438        _OUT << "\""<< "";
14439      _OUT << std::endl;
14440 }
print_VkExternalSemaphoreFeatureFlags(const VkExternalSemaphoreFeatureFlags * obj,const std::string & str,bool commaNeeded=true)14441 static void print_VkExternalSemaphoreFeatureFlags(const VkExternalSemaphoreFeatureFlags * obj, const std::string& str, bool commaNeeded=true) {
14442      PRINT_SPACE
14443      if (str != "") _OUT << "\"" << str << "\"" << " : ";
14444      const int max_bits = 64; // We don't expect the number to be larger.
14445      std::bitset<max_bits> b(obj);
14446      _OUT << "\"";
14447      if (obj == 0) _OUT << "0";
14448      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
14449          if (b[i] == 1) {
14450              bitCount++;
14451              if (bitCount < b.count())
14452                  _OUT << VkExternalSemaphoreFeatureFlagBits_map[1ULL<<i] << " | ";
14453              else
14454                  _OUT << VkExternalSemaphoreFeatureFlagBits_map[1ULL<<i];
14455          }
14456      }
14457      if (commaNeeded)
14458        _OUT << "\"" << ",";
14459      else
14460        _OUT << "\""<< "";
14461      _OUT << std::endl;
14462 }
14463 
print_VkPhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupProperties obj,const std::string & s,bool commaNeeded=true)14464 static void print_VkPhysicalDeviceSubgroupProperties(VkPhysicalDeviceSubgroupProperties obj, const std::string& s, bool commaNeeded=true) {
14465      PRINT_SPACE
14466      _OUT << "{" << std::endl;
14467      INDENT(4);
14468 
14469      print_VkStructureType(obj.sType, "sType", 1);
14470 
14471       if (obj.pNext) {
14472          dumpPNextChain(obj.pNext);
14473       } else {
14474          PRINT_SPACE
14475          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14476      }
14477 
14478      print_uint32_t(obj.subgroupSize, "subgroupSize", 1);
14479 
14480      print_VkShaderStageFlags(obj.supportedStages, "supportedStages", 1);
14481 
14482      print_VkSubgroupFeatureFlags(obj.supportedOperations, "supportedOperations", 1);
14483 
14484      print_VkBool32(obj.quadOperationsInAllStages, "quadOperationsInAllStages", 0);
14485 
14486      INDENT(-4);
14487      PRINT_SPACE
14488      if (commaNeeded)
14489          _OUT << "}," << std::endl;
14490      else
14491          _OUT << "}" << std::endl;
14492 }
print_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties * obj,const std::string & s,bool commaNeeded=true)14493 static void print_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties * obj, const std::string& s, bool commaNeeded=true) {
14494      PRINT_SPACE
14495      _OUT << "{" << std::endl;
14496      INDENT(4);
14497 
14498      print_VkStructureType(obj->sType, "sType", 1);
14499 
14500       if (obj->pNext) {
14501          dumpPNextChain(obj->pNext);
14502       } else {
14503          PRINT_SPACE
14504          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14505      }
14506 
14507      print_uint32_t(obj->subgroupSize, "subgroupSize", 1);
14508 
14509      print_VkShaderStageFlags(obj->supportedStages, "supportedStages", 1);
14510 
14511      print_VkSubgroupFeatureFlags(obj->supportedOperations, "supportedOperations", 1);
14512 
14513      print_VkBool32(obj->quadOperationsInAllStages, "quadOperationsInAllStages", 0);
14514 
14515      INDENT(-4);
14516      PRINT_SPACE
14517      if (commaNeeded)
14518          _OUT << "}," << std::endl;
14519      else
14520          _OUT << "}" << std::endl;
14521 }
14522 
print_VkBindBufferMemoryInfo(VkBindBufferMemoryInfo obj,const std::string & s,bool commaNeeded=true)14523 static void print_VkBindBufferMemoryInfo(VkBindBufferMemoryInfo obj, const std::string& s, bool commaNeeded=true) {
14524      PRINT_SPACE
14525      _OUT << "{" << std::endl;
14526      INDENT(4);
14527 
14528      print_VkStructureType(obj.sType, "sType", 1);
14529 
14530       if (obj.pNext) {
14531          dumpPNextChain(obj.pNext);
14532       } else {
14533          PRINT_SPACE
14534          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14535      }
14536 
14537      // CTS : required value
14538      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
14539 
14540      // CTS : required value
14541      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
14542 
14543      print_VkDeviceSize(obj.memoryOffset, "memoryOffset", 0);
14544 
14545      INDENT(-4);
14546      PRINT_SPACE
14547      if (commaNeeded)
14548          _OUT << "}," << std::endl;
14549      else
14550          _OUT << "}" << std::endl;
14551 }
print_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * obj,const std::string & s,bool commaNeeded=true)14552 static void print_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * obj, const std::string& s, bool commaNeeded=true) {
14553      PRINT_SPACE
14554      _OUT << "{" << std::endl;
14555      INDENT(4);
14556 
14557      print_VkStructureType(obj->sType, "sType", 1);
14558 
14559       if (obj->pNext) {
14560          dumpPNextChain(obj->pNext);
14561       } else {
14562          PRINT_SPACE
14563          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14564      }
14565 
14566      // CTS : required value
14567      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
14568 
14569      // CTS : required value
14570      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
14571 
14572      print_VkDeviceSize(obj->memoryOffset, "memoryOffset", 0);
14573 
14574      INDENT(-4);
14575      PRINT_SPACE
14576      if (commaNeeded)
14577          _OUT << "}," << std::endl;
14578      else
14579          _OUT << "}" << std::endl;
14580 }
14581 
print_VkBindImageMemoryInfo(VkBindImageMemoryInfo obj,const std::string & s,bool commaNeeded=true)14582 static void print_VkBindImageMemoryInfo(VkBindImageMemoryInfo obj, const std::string& s, bool commaNeeded=true) {
14583      PRINT_SPACE
14584      _OUT << "{" << std::endl;
14585      INDENT(4);
14586 
14587      print_VkStructureType(obj.sType, "sType", 1);
14588 
14589       if (obj.pNext) {
14590          dumpPNextChain(obj.pNext);
14591       } else {
14592          PRINT_SPACE
14593          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14594      }
14595 
14596      // CTS : required value
14597      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
14598 
14599      // CTS : required value
14600      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
14601 
14602      print_VkDeviceSize(obj.memoryOffset, "memoryOffset", 0);
14603 
14604      INDENT(-4);
14605      PRINT_SPACE
14606      if (commaNeeded)
14607          _OUT << "}," << std::endl;
14608      else
14609          _OUT << "}" << std::endl;
14610 }
print_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * obj,const std::string & s,bool commaNeeded=true)14611 static void print_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * obj, const std::string& s, bool commaNeeded=true) {
14612      PRINT_SPACE
14613      _OUT << "{" << std::endl;
14614      INDENT(4);
14615 
14616      print_VkStructureType(obj->sType, "sType", 1);
14617 
14618       if (obj->pNext) {
14619          dumpPNextChain(obj->pNext);
14620       } else {
14621          PRINT_SPACE
14622          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14623      }
14624 
14625      // CTS : required value
14626      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
14627 
14628      // CTS : required value
14629      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
14630 
14631      print_VkDeviceSize(obj->memoryOffset, "memoryOffset", 0);
14632 
14633      INDENT(-4);
14634      PRINT_SPACE
14635      if (commaNeeded)
14636          _OUT << "}," << std::endl;
14637      else
14638          _OUT << "}" << std::endl;
14639 }
14640 
print_VkPhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStorageFeatures obj,const std::string & s,bool commaNeeded=true)14641 static void print_VkPhysicalDevice16BitStorageFeatures(VkPhysicalDevice16BitStorageFeatures obj, const std::string& s, bool commaNeeded=true) {
14642      PRINT_SPACE
14643      _OUT << "{" << std::endl;
14644      INDENT(4);
14645 
14646      print_VkStructureType(obj.sType, "sType", 1);
14647 
14648       if (obj.pNext) {
14649          dumpPNextChain(obj.pNext);
14650       } else {
14651          PRINT_SPACE
14652          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14653      }
14654 
14655      print_VkBool32(obj.storageBuffer16BitAccess, "storageBuffer16BitAccess", 1);
14656 
14657      print_VkBool32(obj.uniformAndStorageBuffer16BitAccess, "uniformAndStorageBuffer16BitAccess", 1);
14658 
14659      print_VkBool32(obj.storagePushConstant16, "storagePushConstant16", 1);
14660 
14661      print_VkBool32(obj.storageInputOutput16, "storageInputOutput16", 0);
14662 
14663      INDENT(-4);
14664      PRINT_SPACE
14665      if (commaNeeded)
14666          _OUT << "}," << std::endl;
14667      else
14668          _OUT << "}" << std::endl;
14669 }
print_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures * obj,const std::string & s,bool commaNeeded=true)14670 static void print_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures * obj, const std::string& s, bool commaNeeded=true) {
14671      PRINT_SPACE
14672      _OUT << "{" << std::endl;
14673      INDENT(4);
14674 
14675      print_VkStructureType(obj->sType, "sType", 1);
14676 
14677       if (obj->pNext) {
14678          dumpPNextChain(obj->pNext);
14679       } else {
14680          PRINT_SPACE
14681          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14682      }
14683 
14684      print_VkBool32(obj->storageBuffer16BitAccess, "storageBuffer16BitAccess", 1);
14685 
14686      print_VkBool32(obj->uniformAndStorageBuffer16BitAccess, "uniformAndStorageBuffer16BitAccess", 1);
14687 
14688      print_VkBool32(obj->storagePushConstant16, "storagePushConstant16", 1);
14689 
14690      print_VkBool32(obj->storageInputOutput16, "storageInputOutput16", 0);
14691 
14692      INDENT(-4);
14693      PRINT_SPACE
14694      if (commaNeeded)
14695          _OUT << "}," << std::endl;
14696      else
14697          _OUT << "}" << std::endl;
14698 }
14699 
print_VkMemoryDedicatedRequirements(VkMemoryDedicatedRequirements obj,const std::string & s,bool commaNeeded=true)14700 static void print_VkMemoryDedicatedRequirements(VkMemoryDedicatedRequirements obj, const std::string& s, bool commaNeeded=true) {
14701      PRINT_SPACE
14702      _OUT << "{" << std::endl;
14703      INDENT(4);
14704 
14705      print_VkStructureType(obj.sType, "sType", 1);
14706 
14707       if (obj.pNext) {
14708          dumpPNextChain(obj.pNext);
14709       } else {
14710          PRINT_SPACE
14711          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14712      }
14713 
14714      print_VkBool32(obj.prefersDedicatedAllocation, "prefersDedicatedAllocation", 1);
14715 
14716      print_VkBool32(obj.requiresDedicatedAllocation, "requiresDedicatedAllocation", 0);
14717 
14718      INDENT(-4);
14719      PRINT_SPACE
14720      if (commaNeeded)
14721          _OUT << "}," << std::endl;
14722      else
14723          _OUT << "}" << std::endl;
14724 }
print_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements * obj,const std::string & s,bool commaNeeded=true)14725 static void print_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements * obj, const std::string& s, bool commaNeeded=true) {
14726      PRINT_SPACE
14727      _OUT << "{" << std::endl;
14728      INDENT(4);
14729 
14730      print_VkStructureType(obj->sType, "sType", 1);
14731 
14732       if (obj->pNext) {
14733          dumpPNextChain(obj->pNext);
14734       } else {
14735          PRINT_SPACE
14736          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14737      }
14738 
14739      print_VkBool32(obj->prefersDedicatedAllocation, "prefersDedicatedAllocation", 1);
14740 
14741      print_VkBool32(obj->requiresDedicatedAllocation, "requiresDedicatedAllocation", 0);
14742 
14743      INDENT(-4);
14744      PRINT_SPACE
14745      if (commaNeeded)
14746          _OUT << "}," << std::endl;
14747      else
14748          _OUT << "}" << std::endl;
14749 }
14750 
print_VkMemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo obj,const std::string & s,bool commaNeeded=true)14751 static void print_VkMemoryDedicatedAllocateInfo(VkMemoryDedicatedAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
14752      PRINT_SPACE
14753      _OUT << "{" << std::endl;
14754      INDENT(4);
14755 
14756      print_VkStructureType(obj.sType, "sType", 1);
14757 
14758       if (obj.pNext) {
14759          dumpPNextChain(obj.pNext);
14760       } else {
14761          PRINT_SPACE
14762          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14763      }
14764 
14765      // CTS : required value
14766      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
14767 
14768      // CTS : required value
14769      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"" << std::endl;
14770 
14771      INDENT(-4);
14772      PRINT_SPACE
14773      if (commaNeeded)
14774          _OUT << "}," << std::endl;
14775      else
14776          _OUT << "}" << std::endl;
14777 }
print_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo * obj,const std::string & s,bool commaNeeded=true)14778 static void print_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
14779      PRINT_SPACE
14780      _OUT << "{" << std::endl;
14781      INDENT(4);
14782 
14783      print_VkStructureType(obj->sType, "sType", 1);
14784 
14785       if (obj->pNext) {
14786          dumpPNextChain(obj->pNext);
14787       } else {
14788          PRINT_SPACE
14789          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14790      }
14791 
14792      // CTS : required value
14793      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
14794 
14795      // CTS : required value
14796      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"" << std::endl;
14797 
14798      INDENT(-4);
14799      PRINT_SPACE
14800      if (commaNeeded)
14801          _OUT << "}," << std::endl;
14802      else
14803          _OUT << "}" << std::endl;
14804 }
14805 
print_VkMemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo obj,const std::string & s,bool commaNeeded=true)14806 static void print_VkMemoryAllocateFlagsInfo(VkMemoryAllocateFlagsInfo obj, const std::string& s, bool commaNeeded=true) {
14807      PRINT_SPACE
14808      _OUT << "{" << std::endl;
14809      INDENT(4);
14810 
14811      print_VkStructureType(obj.sType, "sType", 1);
14812 
14813       if (obj.pNext) {
14814          dumpPNextChain(obj.pNext);
14815       } else {
14816          PRINT_SPACE
14817          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14818      }
14819 
14820      print_VkMemoryAllocateFlags(obj.flags, "flags", 1);
14821 
14822      print_uint32_t(obj.deviceMask, "deviceMask", 0);
14823 
14824      INDENT(-4);
14825      PRINT_SPACE
14826      if (commaNeeded)
14827          _OUT << "}," << std::endl;
14828      else
14829          _OUT << "}" << std::endl;
14830 }
print_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * obj,const std::string & s,bool commaNeeded=true)14831 static void print_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * obj, const std::string& s, bool commaNeeded=true) {
14832      PRINT_SPACE
14833      _OUT << "{" << std::endl;
14834      INDENT(4);
14835 
14836      print_VkStructureType(obj->sType, "sType", 1);
14837 
14838       if (obj->pNext) {
14839          dumpPNextChain(obj->pNext);
14840       } else {
14841          PRINT_SPACE
14842          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14843      }
14844 
14845      print_VkMemoryAllocateFlags(obj->flags, "flags", 1);
14846 
14847      print_uint32_t(obj->deviceMask, "deviceMask", 0);
14848 
14849      INDENT(-4);
14850      PRINT_SPACE
14851      if (commaNeeded)
14852          _OUT << "}," << std::endl;
14853      else
14854          _OUT << "}" << std::endl;
14855 }
14856 
print_VkDeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginInfo obj,const std::string & s,bool commaNeeded=true)14857 static void print_VkDeviceGroupRenderPassBeginInfo(VkDeviceGroupRenderPassBeginInfo obj, const std::string& s, bool commaNeeded=true) {
14858      PRINT_SPACE
14859      _OUT << "{" << std::endl;
14860      INDENT(4);
14861 
14862      print_VkStructureType(obj.sType, "sType", 1);
14863 
14864       if (obj.pNext) {
14865          dumpPNextChain(obj.pNext);
14866       } else {
14867          PRINT_SPACE
14868          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14869      }
14870 
14871      print_uint32_t(obj.deviceMask, "deviceMask", 1);
14872 
14873      print_uint32_t(obj.deviceRenderAreaCount, "deviceRenderAreaCount", 1);
14874 
14875      PRINT_SPACE
14876      _OUT << "\"pDeviceRenderAreas\": " << std::endl;
14877      if (obj.pDeviceRenderAreas) {
14878          PRINT_SPACE
14879          _OUT << "[" << std::endl;
14880          for (unsigned int i = 0; i < obj.deviceRenderAreaCount; i++) {
14881            if (i+1 == obj.deviceRenderAreaCount)
14882                print_VkRect2D(obj.pDeviceRenderAreas[i], "pDeviceRenderAreas", 0);
14883            else
14884                print_VkRect2D(obj.pDeviceRenderAreas[i], "pDeviceRenderAreas", 1);
14885          }
14886          PRINT_SPACE
14887          _OUT << "]" << std::endl;
14888     }
14889      else
14890      {
14891          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
14892      }
14893 
14894      INDENT(-4);
14895      PRINT_SPACE
14896      if (commaNeeded)
14897          _OUT << "}," << std::endl;
14898      else
14899          _OUT << "}" << std::endl;
14900 }
print_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo * obj,const std::string & s,bool commaNeeded=true)14901 static void print_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
14902      PRINT_SPACE
14903      _OUT << "{" << std::endl;
14904      INDENT(4);
14905 
14906      print_VkStructureType(obj->sType, "sType", 1);
14907 
14908       if (obj->pNext) {
14909          dumpPNextChain(obj->pNext);
14910       } else {
14911          PRINT_SPACE
14912          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14913      }
14914 
14915      print_uint32_t(obj->deviceMask, "deviceMask", 1);
14916 
14917      print_uint32_t(obj->deviceRenderAreaCount, "deviceRenderAreaCount", 1);
14918 
14919      PRINT_SPACE
14920      _OUT << "\"pDeviceRenderAreas\": " << std::endl;
14921      if (obj->pDeviceRenderAreas) {
14922          PRINT_SPACE
14923          _OUT << "[" << std::endl;
14924          for (unsigned int i = 0; i < obj->deviceRenderAreaCount; i++) {
14925            if (i+1 == obj->deviceRenderAreaCount)
14926                print_VkRect2D(obj->pDeviceRenderAreas[i], "pDeviceRenderAreas", 0);
14927            else
14928                print_VkRect2D(obj->pDeviceRenderAreas[i], "pDeviceRenderAreas", 1);
14929          }
14930          PRINT_SPACE
14931          _OUT << "]" << std::endl;
14932     }
14933      else
14934      {
14935          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
14936      }
14937 
14938      INDENT(-4);
14939      PRINT_SPACE
14940      if (commaNeeded)
14941          _OUT << "}," << std::endl;
14942      else
14943          _OUT << "}" << std::endl;
14944 }
14945 
print_VkDeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBufferBeginInfo obj,const std::string & s,bool commaNeeded=true)14946 static void print_VkDeviceGroupCommandBufferBeginInfo(VkDeviceGroupCommandBufferBeginInfo obj, const std::string& s, bool commaNeeded=true) {
14947      PRINT_SPACE
14948      _OUT << "{" << std::endl;
14949      INDENT(4);
14950 
14951      print_VkStructureType(obj.sType, "sType", 1);
14952 
14953       if (obj.pNext) {
14954          dumpPNextChain(obj.pNext);
14955       } else {
14956          PRINT_SPACE
14957          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14958      }
14959 
14960      print_uint32_t(obj.deviceMask, "deviceMask", 0);
14961 
14962      INDENT(-4);
14963      PRINT_SPACE
14964      if (commaNeeded)
14965          _OUT << "}," << std::endl;
14966      else
14967          _OUT << "}" << std::endl;
14968 }
print_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo * obj,const std::string & s,bool commaNeeded=true)14969 static void print_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
14970      PRINT_SPACE
14971      _OUT << "{" << std::endl;
14972      INDENT(4);
14973 
14974      print_VkStructureType(obj->sType, "sType", 1);
14975 
14976       if (obj->pNext) {
14977          dumpPNextChain(obj->pNext);
14978       } else {
14979          PRINT_SPACE
14980          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
14981      }
14982 
14983      print_uint32_t(obj->deviceMask, "deviceMask", 0);
14984 
14985      INDENT(-4);
14986      PRINT_SPACE
14987      if (commaNeeded)
14988          _OUT << "}," << std::endl;
14989      else
14990          _OUT << "}" << std::endl;
14991 }
14992 
print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj,const std::string & s,bool commaNeeded=true)14993 static void print_VkDeviceGroupSubmitInfo(VkDeviceGroupSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
14994      PRINT_SPACE
14995      _OUT << "{" << std::endl;
14996      INDENT(4);
14997 
14998      print_VkStructureType(obj.sType, "sType", 1);
14999 
15000       if (obj.pNext) {
15001          dumpPNextChain(obj.pNext);
15002       } else {
15003          PRINT_SPACE
15004          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15005      }
15006 
15007      print_uint32_t(obj.waitSemaphoreCount, "waitSemaphoreCount", 1);
15008 
15009      PRINT_SPACE
15010      _OUT << "\"pWaitSemaphoreDeviceIndices\":" << std::endl;
15011      PRINT_SPACE
15012      if (obj.pWaitSemaphoreDeviceIndices) {
15013        _OUT << "[" << std::endl;
15014        for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
15015            bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
15016            print_uint32_t(obj.pWaitSemaphoreDeviceIndices[i], "", isCommaNeeded);
15017        }
15018        PRINT_SPACE
15019        _OUT << "]" << "," << std::endl;
15020      } else {
15021        _OUT << "\"NULL\"" << "," << std::endl;
15022      }
15023 
15024      print_uint32_t(obj.commandBufferCount, "commandBufferCount", 1);
15025 
15026      PRINT_SPACE
15027      _OUT << "\"pCommandBufferDeviceMasks\":" << std::endl;
15028      PRINT_SPACE
15029      if (obj.pCommandBufferDeviceMasks) {
15030        _OUT << "[" << std::endl;
15031        for (unsigned int i = 0; i < obj.commandBufferCount; i++) {
15032            bool isCommaNeeded = (i+1) != obj.commandBufferCount;
15033            print_uint32_t(obj.pCommandBufferDeviceMasks[i], "", isCommaNeeded);
15034        }
15035        PRINT_SPACE
15036        _OUT << "]" << "," << std::endl;
15037      } else {
15038        _OUT << "\"NULL\"" << "," << std::endl;
15039      }
15040 
15041      print_uint32_t(obj.signalSemaphoreCount, "signalSemaphoreCount", 1);
15042 
15043      PRINT_SPACE
15044      _OUT << "\"pSignalSemaphoreDeviceIndices\":" << std::endl;
15045      PRINT_SPACE
15046      if (obj.pSignalSemaphoreDeviceIndices) {
15047        _OUT << "[" << std::endl;
15048        for (unsigned int i = 0; i < obj.signalSemaphoreCount; i++) {
15049            bool isCommaNeeded = (i+1) != obj.signalSemaphoreCount;
15050            print_uint32_t(obj.pSignalSemaphoreDeviceIndices[i], "", isCommaNeeded);
15051        }
15052        PRINT_SPACE
15053        _OUT << "]" << "" << std::endl;
15054      } else {
15055        _OUT << "\"NULL\"" << "" << std::endl;
15056      }
15057 
15058      INDENT(-4);
15059      PRINT_SPACE
15060      if (commaNeeded)
15061          _OUT << "}," << std::endl;
15062      else
15063          _OUT << "}" << std::endl;
15064 }
print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj,const std::string & s,bool commaNeeded=true)15065 static void print_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
15066      PRINT_SPACE
15067      _OUT << "{" << std::endl;
15068      INDENT(4);
15069 
15070      print_VkStructureType(obj->sType, "sType", 1);
15071 
15072       if (obj->pNext) {
15073          dumpPNextChain(obj->pNext);
15074       } else {
15075          PRINT_SPACE
15076          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15077      }
15078 
15079      print_uint32_t(obj->waitSemaphoreCount, "waitSemaphoreCount", 1);
15080 
15081      PRINT_SPACE
15082      _OUT << "\"pWaitSemaphoreDeviceIndices\":" << std::endl;
15083      PRINT_SPACE
15084      if (obj->pWaitSemaphoreDeviceIndices) {
15085        _OUT << "[" << std::endl;
15086        for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
15087            bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
15088            print_uint32_t(obj->pWaitSemaphoreDeviceIndices[i], "", isCommaNeeded);
15089        }
15090        PRINT_SPACE
15091        _OUT << "]" << "," << std::endl;
15092      } else {
15093        _OUT << "\"NULL\"" << "," << std::endl;
15094      }
15095 
15096      print_uint32_t(obj->commandBufferCount, "commandBufferCount", 1);
15097 
15098      PRINT_SPACE
15099      _OUT << "\"pCommandBufferDeviceMasks\":" << std::endl;
15100      PRINT_SPACE
15101      if (obj->pCommandBufferDeviceMasks) {
15102        _OUT << "[" << std::endl;
15103        for (unsigned int i = 0; i < obj->commandBufferCount; i++) {
15104            bool isCommaNeeded = (i+1) != obj->commandBufferCount;
15105            print_uint32_t(obj->pCommandBufferDeviceMasks[i], "", isCommaNeeded);
15106        }
15107        PRINT_SPACE
15108        _OUT << "]" << "," << std::endl;
15109      } else {
15110        _OUT << "\"NULL\"" << "," << std::endl;
15111      }
15112 
15113      print_uint32_t(obj->signalSemaphoreCount, "signalSemaphoreCount", 1);
15114 
15115      PRINT_SPACE
15116      _OUT << "\"pSignalSemaphoreDeviceIndices\":" << std::endl;
15117      PRINT_SPACE
15118      if (obj->pSignalSemaphoreDeviceIndices) {
15119        _OUT << "[" << std::endl;
15120        for (unsigned int i = 0; i < obj->signalSemaphoreCount; i++) {
15121            bool isCommaNeeded = (i+1) != obj->signalSemaphoreCount;
15122            print_uint32_t(obj->pSignalSemaphoreDeviceIndices[i], "", isCommaNeeded);
15123        }
15124        PRINT_SPACE
15125        _OUT << "]" << "" << std::endl;
15126      } else {
15127        _OUT << "\"NULL\"" << "" << std::endl;
15128      }
15129 
15130      INDENT(-4);
15131      PRINT_SPACE
15132      if (commaNeeded)
15133          _OUT << "}," << std::endl;
15134      else
15135          _OUT << "}" << std::endl;
15136 }
15137 
print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGroupInfo obj,const std::string & s,bool commaNeeded=true)15138 static void print_VkBindBufferMemoryDeviceGroupInfo(VkBindBufferMemoryDeviceGroupInfo obj, const std::string& s, bool commaNeeded=true) {
15139      PRINT_SPACE
15140      _OUT << "{" << std::endl;
15141      INDENT(4);
15142 
15143      print_VkStructureType(obj.sType, "sType", 1);
15144 
15145       if (obj.pNext) {
15146          dumpPNextChain(obj.pNext);
15147       } else {
15148          PRINT_SPACE
15149          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15150      }
15151 
15152      print_uint32_t(obj.deviceIndexCount, "deviceIndexCount", 1);
15153 
15154      PRINT_SPACE
15155      _OUT << "\"pDeviceIndices\":" << std::endl;
15156      PRINT_SPACE
15157      if (obj.pDeviceIndices) {
15158        _OUT << "[" << std::endl;
15159        for (unsigned int i = 0; i < obj.deviceIndexCount; i++) {
15160            bool isCommaNeeded = (i+1) != obj.deviceIndexCount;
15161            print_uint32_t(obj.pDeviceIndices[i], "", isCommaNeeded);
15162        }
15163        PRINT_SPACE
15164        _OUT << "]" << "" << std::endl;
15165      } else {
15166        _OUT << "\"NULL\"" << "" << std::endl;
15167      }
15168 
15169      INDENT(-4);
15170      PRINT_SPACE
15171      if (commaNeeded)
15172          _OUT << "}," << std::endl;
15173      else
15174          _OUT << "}" << std::endl;
15175 }
print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo * obj,const std::string & s,bool commaNeeded=true)15176 static void print_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo * obj, const std::string& s, bool commaNeeded=true) {
15177      PRINT_SPACE
15178      _OUT << "{" << std::endl;
15179      INDENT(4);
15180 
15181      print_VkStructureType(obj->sType, "sType", 1);
15182 
15183       if (obj->pNext) {
15184          dumpPNextChain(obj->pNext);
15185       } else {
15186          PRINT_SPACE
15187          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15188      }
15189 
15190      print_uint32_t(obj->deviceIndexCount, "deviceIndexCount", 1);
15191 
15192      PRINT_SPACE
15193      _OUT << "\"pDeviceIndices\":" << std::endl;
15194      PRINT_SPACE
15195      if (obj->pDeviceIndices) {
15196        _OUT << "[" << std::endl;
15197        for (unsigned int i = 0; i < obj->deviceIndexCount; i++) {
15198            bool isCommaNeeded = (i+1) != obj->deviceIndexCount;
15199            print_uint32_t(obj->pDeviceIndices[i], "", isCommaNeeded);
15200        }
15201        PRINT_SPACE
15202        _OUT << "]" << "" << std::endl;
15203      } else {
15204        _OUT << "\"NULL\"" << "" << std::endl;
15205      }
15206 
15207      INDENT(-4);
15208      PRINT_SPACE
15209      if (commaNeeded)
15210          _OUT << "}," << std::endl;
15211      else
15212          _OUT << "}" << std::endl;
15213 }
15214 
print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupInfo obj,const std::string & s,bool commaNeeded=true)15215 static void print_VkBindImageMemoryDeviceGroupInfo(VkBindImageMemoryDeviceGroupInfo obj, const std::string& s, bool commaNeeded=true) {
15216      PRINT_SPACE
15217      _OUT << "{" << std::endl;
15218      INDENT(4);
15219 
15220      print_VkStructureType(obj.sType, "sType", 1);
15221 
15222       if (obj.pNext) {
15223          dumpPNextChain(obj.pNext);
15224       } else {
15225          PRINT_SPACE
15226          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15227      }
15228 
15229      print_uint32_t(obj.deviceIndexCount, "deviceIndexCount", 1);
15230 
15231      PRINT_SPACE
15232      _OUT << "\"pDeviceIndices\":" << std::endl;
15233      PRINT_SPACE
15234      if (obj.pDeviceIndices) {
15235        _OUT << "[" << std::endl;
15236        for (unsigned int i = 0; i < obj.deviceIndexCount; i++) {
15237            bool isCommaNeeded = (i+1) != obj.deviceIndexCount;
15238            print_uint32_t(obj.pDeviceIndices[i], "", isCommaNeeded);
15239        }
15240        PRINT_SPACE
15241        _OUT << "]" << "," << std::endl;
15242      } else {
15243        _OUT << "\"NULL\"" << "," << std::endl;
15244      }
15245 
15246      print_uint32_t(obj.splitInstanceBindRegionCount, "splitInstanceBindRegionCount", 1);
15247 
15248      PRINT_SPACE
15249      _OUT << "\"pSplitInstanceBindRegions\": " << std::endl;
15250      if (obj.pSplitInstanceBindRegions) {
15251          PRINT_SPACE
15252          _OUT << "[" << std::endl;
15253          for (unsigned int i = 0; i < obj.splitInstanceBindRegionCount; i++) {
15254            if (i+1 == obj.splitInstanceBindRegionCount)
15255                print_VkRect2D(obj.pSplitInstanceBindRegions[i], "pSplitInstanceBindRegions", 0);
15256            else
15257                print_VkRect2D(obj.pSplitInstanceBindRegions[i], "pSplitInstanceBindRegions", 1);
15258          }
15259          PRINT_SPACE
15260          _OUT << "]" << std::endl;
15261     }
15262      else
15263      {
15264          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
15265      }
15266 
15267      INDENT(-4);
15268      PRINT_SPACE
15269      if (commaNeeded)
15270          _OUT << "}," << std::endl;
15271      else
15272          _OUT << "}" << std::endl;
15273 }
print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo * obj,const std::string & s,bool commaNeeded=true)15274 static void print_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo * obj, const std::string& s, bool commaNeeded=true) {
15275      PRINT_SPACE
15276      _OUT << "{" << std::endl;
15277      INDENT(4);
15278 
15279      print_VkStructureType(obj->sType, "sType", 1);
15280 
15281       if (obj->pNext) {
15282          dumpPNextChain(obj->pNext);
15283       } else {
15284          PRINT_SPACE
15285          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15286      }
15287 
15288      print_uint32_t(obj->deviceIndexCount, "deviceIndexCount", 1);
15289 
15290      PRINT_SPACE
15291      _OUT << "\"pDeviceIndices\":" << std::endl;
15292      PRINT_SPACE
15293      if (obj->pDeviceIndices) {
15294        _OUT << "[" << std::endl;
15295        for (unsigned int i = 0; i < obj->deviceIndexCount; i++) {
15296            bool isCommaNeeded = (i+1) != obj->deviceIndexCount;
15297            print_uint32_t(obj->pDeviceIndices[i], "", isCommaNeeded);
15298        }
15299        PRINT_SPACE
15300        _OUT << "]" << "," << std::endl;
15301      } else {
15302        _OUT << "\"NULL\"" << "," << std::endl;
15303      }
15304 
15305      print_uint32_t(obj->splitInstanceBindRegionCount, "splitInstanceBindRegionCount", 1);
15306 
15307      PRINT_SPACE
15308      _OUT << "\"pSplitInstanceBindRegions\": " << std::endl;
15309      if (obj->pSplitInstanceBindRegions) {
15310          PRINT_SPACE
15311          _OUT << "[" << std::endl;
15312          for (unsigned int i = 0; i < obj->splitInstanceBindRegionCount; i++) {
15313            if (i+1 == obj->splitInstanceBindRegionCount)
15314                print_VkRect2D(obj->pSplitInstanceBindRegions[i], "pSplitInstanceBindRegions", 0);
15315            else
15316                print_VkRect2D(obj->pSplitInstanceBindRegions[i], "pSplitInstanceBindRegions", 1);
15317          }
15318          PRINT_SPACE
15319          _OUT << "]" << std::endl;
15320     }
15321      else
15322      {
15323          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
15324      }
15325 
15326      INDENT(-4);
15327      PRINT_SPACE
15328      if (commaNeeded)
15329          _OUT << "}," << std::endl;
15330      else
15331          _OUT << "}" << std::endl;
15332 }
15333 
print_VkPhysicalDeviceGroupProperties(VkPhysicalDeviceGroupProperties obj,const std::string & s,bool commaNeeded=true)15334 static void print_VkPhysicalDeviceGroupProperties(VkPhysicalDeviceGroupProperties obj, const std::string& s, bool commaNeeded=true) {
15335      PRINT_SPACE
15336      _OUT << "{" << std::endl;
15337      INDENT(4);
15338 
15339      print_VkStructureType(obj.sType, "sType", 1);
15340 
15341       if (obj.pNext) {
15342          dumpPNextChain(obj.pNext);
15343       } else {
15344          PRINT_SPACE
15345          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15346      }
15347 
15348      print_uint32_t(obj.physicalDeviceCount, "physicalDeviceCount", 1);
15349 
15350      PRINT_SPACE
15351      _OUT << "\"physicalDevices\":" << std::endl;
15352      PRINT_SPACE
15353        _OUT << "[" << std::endl;
15354        for (unsigned int i = 0; i < VK_MAX_DEVICE_GROUP_SIZE; i++) {
15355            std:: stringstream tmp;
15356            tmp << "physicalDevices" << "_" << i;
15357            bool isCommaNeeded = (i+1) != VK_MAX_DEVICE_GROUP_SIZE;
15358            print_VkPhysicalDevice(obj.physicalDevices[i], tmp.str(), isCommaNeeded);
15359        }
15360        PRINT_SPACE
15361        _OUT << "]" << "," << std::endl;
15362 
15363      print_VkBool32(obj.subsetAllocation, "subsetAllocation", 0);
15364 
15365      INDENT(-4);
15366      PRINT_SPACE
15367      if (commaNeeded)
15368          _OUT << "}," << std::endl;
15369      else
15370          _OUT << "}" << std::endl;
15371 }
print_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties * obj,const std::string & s,bool commaNeeded=true)15372 static void print_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties * obj, const std::string& s, bool commaNeeded=true) {
15373      PRINT_SPACE
15374      _OUT << "{" << std::endl;
15375      INDENT(4);
15376 
15377      print_VkStructureType(obj->sType, "sType", 1);
15378 
15379       if (obj->pNext) {
15380          dumpPNextChain(obj->pNext);
15381       } else {
15382          PRINT_SPACE
15383          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15384      }
15385 
15386      print_uint32_t(obj->physicalDeviceCount, "physicalDeviceCount", 1);
15387 
15388      PRINT_SPACE
15389      _OUT << "\"physicalDevices\":" << std::endl;
15390      PRINT_SPACE
15391        _OUT << "[" << std::endl;
15392        for (unsigned int i = 0; i < VK_MAX_DEVICE_GROUP_SIZE; i++) {
15393            std:: stringstream tmp;
15394            tmp << "physicalDevices" << "_" << i;
15395            bool isCommaNeeded = (i+1) != VK_MAX_DEVICE_GROUP_SIZE;
15396            print_VkPhysicalDevice(obj->physicalDevices[i], tmp.str(), isCommaNeeded);
15397        }
15398        PRINT_SPACE
15399        _OUT << "]" << "," << std::endl;
15400 
15401      print_VkBool32(obj->subsetAllocation, "subsetAllocation", 0);
15402 
15403      INDENT(-4);
15404      PRINT_SPACE
15405      if (commaNeeded)
15406          _OUT << "}," << std::endl;
15407      else
15408          _OUT << "}" << std::endl;
15409 }
15410 
print_VkDeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo obj,const std::string & s,bool commaNeeded=true)15411 static void print_VkDeviceGroupDeviceCreateInfo(VkDeviceGroupDeviceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
15412      PRINT_SPACE
15413      _OUT << "{" << std::endl;
15414      INDENT(4);
15415 
15416      print_VkStructureType(obj.sType, "sType", 1);
15417 
15418       if (obj.pNext) {
15419          dumpPNextChain(obj.pNext);
15420       } else {
15421          PRINT_SPACE
15422          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15423      }
15424 
15425      print_uint32_t(obj.physicalDeviceCount, "physicalDeviceCount", 1);
15426 
15427      PRINT_SPACE
15428      _OUT << "\"pPhysicalDevices\":" << std::endl;
15429      PRINT_SPACE
15430      if (obj.pPhysicalDevices) {
15431        _OUT << "[" << std::endl;
15432        for (unsigned int i = 0; i < obj.physicalDeviceCount; i++) {
15433            std:: stringstream tmp;
15434            tmp << "pPhysicalDevices" << "_" << i;
15435            bool isCommaNeeded = (i+1) != obj.physicalDeviceCount;
15436            print_VkPhysicalDevice(obj.pPhysicalDevices[i], tmp.str(), isCommaNeeded);
15437        }
15438        PRINT_SPACE
15439        _OUT << "]" << "" << std::endl;
15440      } else {
15441        _OUT << "\"NULL\"" << "" << std::endl;
15442      }
15443 
15444      INDENT(-4);
15445      PRINT_SPACE
15446      if (commaNeeded)
15447          _OUT << "}," << std::endl;
15448      else
15449          _OUT << "}" << std::endl;
15450 }
print_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo * obj,const std::string & s,bool commaNeeded=true)15451 static void print_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
15452      PRINT_SPACE
15453      _OUT << "{" << std::endl;
15454      INDENT(4);
15455 
15456      print_VkStructureType(obj->sType, "sType", 1);
15457 
15458       if (obj->pNext) {
15459          dumpPNextChain(obj->pNext);
15460       } else {
15461          PRINT_SPACE
15462          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15463      }
15464 
15465      print_uint32_t(obj->physicalDeviceCount, "physicalDeviceCount", 1);
15466 
15467      PRINT_SPACE
15468      _OUT << "\"pPhysicalDevices\":" << std::endl;
15469      PRINT_SPACE
15470      if (obj->pPhysicalDevices) {
15471        _OUT << "[" << std::endl;
15472        for (unsigned int i = 0; i < obj->physicalDeviceCount; i++) {
15473            std:: stringstream tmp;
15474            tmp << "pPhysicalDevices" << "_" << i;
15475            bool isCommaNeeded = (i+1) != obj->physicalDeviceCount;
15476            print_VkPhysicalDevice(obj->pPhysicalDevices[i], tmp.str(), isCommaNeeded);
15477        }
15478        PRINT_SPACE
15479        _OUT << "]" << "" << std::endl;
15480      } else {
15481        _OUT << "\"NULL\"" << "" << std::endl;
15482      }
15483 
15484      INDENT(-4);
15485      PRINT_SPACE
15486      if (commaNeeded)
15487          _OUT << "}," << std::endl;
15488      else
15489          _OUT << "}" << std::endl;
15490 }
15491 
print_VkBufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo2 obj,const std::string & s,bool commaNeeded=true)15492 static void print_VkBufferMemoryRequirementsInfo2(VkBufferMemoryRequirementsInfo2 obj, const std::string& s, bool commaNeeded=true) {
15493      PRINT_SPACE
15494      _OUT << "{" << std::endl;
15495      INDENT(4);
15496 
15497      print_VkStructureType(obj.sType, "sType", 1);
15498 
15499       if (obj.pNext) {
15500          dumpPNextChain(obj.pNext);
15501       } else {
15502          PRINT_SPACE
15503          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15504      }
15505 
15506      // CTS : required value
15507      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"" << std::endl;
15508 
15509      INDENT(-4);
15510      PRINT_SPACE
15511      if (commaNeeded)
15512          _OUT << "}," << std::endl;
15513      else
15514          _OUT << "}" << std::endl;
15515 }
print_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2 * obj,const std::string & s,bool commaNeeded=true)15516 static void print_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2 * obj, const std::string& s, bool commaNeeded=true) {
15517      PRINT_SPACE
15518      _OUT << "{" << std::endl;
15519      INDENT(4);
15520 
15521      print_VkStructureType(obj->sType, "sType", 1);
15522 
15523       if (obj->pNext) {
15524          dumpPNextChain(obj->pNext);
15525       } else {
15526          PRINT_SPACE
15527          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15528      }
15529 
15530      // CTS : required value
15531      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"" << std::endl;
15532 
15533      INDENT(-4);
15534      PRINT_SPACE
15535      if (commaNeeded)
15536          _OUT << "}," << std::endl;
15537      else
15538          _OUT << "}" << std::endl;
15539 }
15540 
print_VkImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2 obj,const std::string & s,bool commaNeeded=true)15541 static void print_VkImageMemoryRequirementsInfo2(VkImageMemoryRequirementsInfo2 obj, const std::string& s, bool commaNeeded=true) {
15542      PRINT_SPACE
15543      _OUT << "{" << std::endl;
15544      INDENT(4);
15545 
15546      print_VkStructureType(obj.sType, "sType", 1);
15547 
15548       if (obj.pNext) {
15549          dumpPNextChain(obj.pNext);
15550       } else {
15551          PRINT_SPACE
15552          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15553      }
15554 
15555      // CTS : required value
15556      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"" << std::endl;
15557 
15558      INDENT(-4);
15559      PRINT_SPACE
15560      if (commaNeeded)
15561          _OUT << "}," << std::endl;
15562      else
15563          _OUT << "}" << std::endl;
15564 }
print_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2 * obj,const std::string & s,bool commaNeeded=true)15565 static void print_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2 * obj, const std::string& s, bool commaNeeded=true) {
15566      PRINT_SPACE
15567      _OUT << "{" << std::endl;
15568      INDENT(4);
15569 
15570      print_VkStructureType(obj->sType, "sType", 1);
15571 
15572       if (obj->pNext) {
15573          dumpPNextChain(obj->pNext);
15574       } else {
15575          PRINT_SPACE
15576          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15577      }
15578 
15579      // CTS : required value
15580      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"" << std::endl;
15581 
15582      INDENT(-4);
15583      PRINT_SPACE
15584      if (commaNeeded)
15585          _OUT << "}," << std::endl;
15586      else
15587          _OUT << "}" << std::endl;
15588 }
15589 
print_VkMemoryRequirements2(VkMemoryRequirements2 obj,const std::string & s,bool commaNeeded=true)15590 static void print_VkMemoryRequirements2(VkMemoryRequirements2 obj, const std::string& s, bool commaNeeded=true) {
15591      PRINT_SPACE
15592      _OUT << "{" << std::endl;
15593      INDENT(4);
15594 
15595      print_VkStructureType(obj.sType, "sType", 1);
15596 
15597       if (obj.pNext) {
15598          dumpPNextChain(obj.pNext);
15599       } else {
15600          PRINT_SPACE
15601          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15602      }
15603 
15604      PRINT_SPACE
15605      _OUT << "\"memoryRequirements\": " << std::endl;
15606      {
15607            print_VkMemoryRequirements(obj.memoryRequirements, "memoryRequirements", 0);
15608      }
15609 
15610      INDENT(-4);
15611      PRINT_SPACE
15612      if (commaNeeded)
15613          _OUT << "}," << std::endl;
15614      else
15615          _OUT << "}" << std::endl;
15616 }
print_VkMemoryRequirements2(const VkMemoryRequirements2 * obj,const std::string & s,bool commaNeeded=true)15617 static void print_VkMemoryRequirements2(const VkMemoryRequirements2 * obj, const std::string& s, bool commaNeeded=true) {
15618      PRINT_SPACE
15619      _OUT << "{" << std::endl;
15620      INDENT(4);
15621 
15622      print_VkStructureType(obj->sType, "sType", 1);
15623 
15624       if (obj->pNext) {
15625          dumpPNextChain(obj->pNext);
15626       } else {
15627          PRINT_SPACE
15628          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15629      }
15630 
15631      PRINT_SPACE
15632      _OUT << "\"memoryRequirements\": " << std::endl;
15633      {
15634            print_VkMemoryRequirements(obj->memoryRequirements, "memoryRequirements", 0);
15635      }
15636 
15637      INDENT(-4);
15638      PRINT_SPACE
15639      if (commaNeeded)
15640          _OUT << "}," << std::endl;
15641      else
15642          _OUT << "}" << std::endl;
15643 }
15644 
print_VkPhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 obj,const std::string & s,bool commaNeeded=true)15645 static void print_VkPhysicalDeviceFeatures2(VkPhysicalDeviceFeatures2 obj, const std::string& s, bool commaNeeded=true) {
15646      PRINT_SPACE
15647      _OUT << "{" << std::endl;
15648      INDENT(4);
15649 
15650      print_VkStructureType(obj.sType, "sType", 1);
15651 
15652       if (obj.pNext) {
15653          dumpPNextChain(obj.pNext);
15654       } else {
15655          PRINT_SPACE
15656          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15657      }
15658 
15659      PRINT_SPACE
15660      _OUT << "\"features\": " << std::endl;
15661      {
15662            print_VkPhysicalDeviceFeatures(obj.features, "features", 0);
15663      }
15664 
15665      INDENT(-4);
15666      PRINT_SPACE
15667      if (commaNeeded)
15668          _OUT << "}," << std::endl;
15669      else
15670          _OUT << "}" << std::endl;
15671 }
print_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * obj,const std::string & s,bool commaNeeded=true)15672 static void print_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * obj, const std::string& s, bool commaNeeded=true) {
15673      PRINT_SPACE
15674      _OUT << "{" << std::endl;
15675      INDENT(4);
15676 
15677      print_VkStructureType(obj->sType, "sType", 1);
15678 
15679       if (obj->pNext) {
15680          dumpPNextChain(obj->pNext);
15681       } else {
15682          PRINT_SPACE
15683          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15684      }
15685 
15686      PRINT_SPACE
15687      _OUT << "\"features\": " << std::endl;
15688      {
15689            print_VkPhysicalDeviceFeatures(obj->features, "features", 0);
15690      }
15691 
15692      INDENT(-4);
15693      PRINT_SPACE
15694      if (commaNeeded)
15695          _OUT << "}," << std::endl;
15696      else
15697          _OUT << "}" << std::endl;
15698 }
15699 
print_VkPhysicalDeviceProperties2(VkPhysicalDeviceProperties2 obj,const std::string & s,bool commaNeeded=true)15700 static void print_VkPhysicalDeviceProperties2(VkPhysicalDeviceProperties2 obj, const std::string& s, bool commaNeeded=true) {
15701      PRINT_SPACE
15702      _OUT << "{" << std::endl;
15703      INDENT(4);
15704 
15705      print_VkStructureType(obj.sType, "sType", 1);
15706 
15707       if (obj.pNext) {
15708          dumpPNextChain(obj.pNext);
15709       } else {
15710          PRINT_SPACE
15711          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15712      }
15713 
15714      PRINT_SPACE
15715      _OUT << "\"properties\": " << std::endl;
15716      {
15717            print_VkPhysicalDeviceProperties(obj.properties, "properties", 0);
15718      }
15719 
15720      INDENT(-4);
15721      PRINT_SPACE
15722      if (commaNeeded)
15723          _OUT << "}," << std::endl;
15724      else
15725          _OUT << "}" << std::endl;
15726 }
print_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2 * obj,const std::string & s,bool commaNeeded=true)15727 static void print_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2 * obj, const std::string& s, bool commaNeeded=true) {
15728      PRINT_SPACE
15729      _OUT << "{" << std::endl;
15730      INDENT(4);
15731 
15732      print_VkStructureType(obj->sType, "sType", 1);
15733 
15734       if (obj->pNext) {
15735          dumpPNextChain(obj->pNext);
15736       } else {
15737          PRINT_SPACE
15738          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15739      }
15740 
15741      PRINT_SPACE
15742      _OUT << "\"properties\": " << std::endl;
15743      {
15744            print_VkPhysicalDeviceProperties(obj->properties, "properties", 0);
15745      }
15746 
15747      INDENT(-4);
15748      PRINT_SPACE
15749      if (commaNeeded)
15750          _OUT << "}," << std::endl;
15751      else
15752          _OUT << "}" << std::endl;
15753 }
15754 
print_VkFormatProperties2(VkFormatProperties2 obj,const std::string & s,bool commaNeeded=true)15755 static void print_VkFormatProperties2(VkFormatProperties2 obj, const std::string& s, bool commaNeeded=true) {
15756      PRINT_SPACE
15757      _OUT << "{" << std::endl;
15758      INDENT(4);
15759 
15760      print_VkStructureType(obj.sType, "sType", 1);
15761 
15762       if (obj.pNext) {
15763          dumpPNextChain(obj.pNext);
15764       } else {
15765          PRINT_SPACE
15766          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15767      }
15768 
15769      PRINT_SPACE
15770      _OUT << "\"formatProperties\": " << std::endl;
15771      {
15772            print_VkFormatProperties(obj.formatProperties, "formatProperties", 0);
15773      }
15774 
15775      INDENT(-4);
15776      PRINT_SPACE
15777      if (commaNeeded)
15778          _OUT << "}," << std::endl;
15779      else
15780          _OUT << "}" << std::endl;
15781 }
print_VkFormatProperties2(const VkFormatProperties2 * obj,const std::string & s,bool commaNeeded=true)15782 static void print_VkFormatProperties2(const VkFormatProperties2 * obj, const std::string& s, bool commaNeeded=true) {
15783      PRINT_SPACE
15784      _OUT << "{" << std::endl;
15785      INDENT(4);
15786 
15787      print_VkStructureType(obj->sType, "sType", 1);
15788 
15789       if (obj->pNext) {
15790          dumpPNextChain(obj->pNext);
15791       } else {
15792          PRINT_SPACE
15793          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15794      }
15795 
15796      PRINT_SPACE
15797      _OUT << "\"formatProperties\": " << std::endl;
15798      {
15799            print_VkFormatProperties(obj->formatProperties, "formatProperties", 0);
15800      }
15801 
15802      INDENT(-4);
15803      PRINT_SPACE
15804      if (commaNeeded)
15805          _OUT << "}," << std::endl;
15806      else
15807          _OUT << "}" << std::endl;
15808 }
15809 
print_VkImageFormatProperties2(VkImageFormatProperties2 obj,const std::string & s,bool commaNeeded=true)15810 static void print_VkImageFormatProperties2(VkImageFormatProperties2 obj, const std::string& s, bool commaNeeded=true) {
15811      PRINT_SPACE
15812      _OUT << "{" << std::endl;
15813      INDENT(4);
15814 
15815      print_VkStructureType(obj.sType, "sType", 1);
15816 
15817       if (obj.pNext) {
15818          dumpPNextChain(obj.pNext);
15819       } else {
15820          PRINT_SPACE
15821          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15822      }
15823 
15824      PRINT_SPACE
15825      _OUT << "\"imageFormatProperties\": " << std::endl;
15826      {
15827            print_VkImageFormatProperties(obj.imageFormatProperties, "imageFormatProperties", 0);
15828      }
15829 
15830      INDENT(-4);
15831      PRINT_SPACE
15832      if (commaNeeded)
15833          _OUT << "}," << std::endl;
15834      else
15835          _OUT << "}" << std::endl;
15836 }
print_VkImageFormatProperties2(const VkImageFormatProperties2 * obj,const std::string & s,bool commaNeeded=true)15837 static void print_VkImageFormatProperties2(const VkImageFormatProperties2 * obj, const std::string& s, bool commaNeeded=true) {
15838      PRINT_SPACE
15839      _OUT << "{" << std::endl;
15840      INDENT(4);
15841 
15842      print_VkStructureType(obj->sType, "sType", 1);
15843 
15844       if (obj->pNext) {
15845          dumpPNextChain(obj->pNext);
15846       } else {
15847          PRINT_SPACE
15848          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15849      }
15850 
15851      PRINT_SPACE
15852      _OUT << "\"imageFormatProperties\": " << std::endl;
15853      {
15854            print_VkImageFormatProperties(obj->imageFormatProperties, "imageFormatProperties", 0);
15855      }
15856 
15857      INDENT(-4);
15858      PRINT_SPACE
15859      if (commaNeeded)
15860          _OUT << "}," << std::endl;
15861      else
15862          _OUT << "}" << std::endl;
15863 }
15864 
print_VkPhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatInfo2 obj,const std::string & s,bool commaNeeded=true)15865 static void print_VkPhysicalDeviceImageFormatInfo2(VkPhysicalDeviceImageFormatInfo2 obj, const std::string& s, bool commaNeeded=true) {
15866      PRINT_SPACE
15867      _OUT << "{" << std::endl;
15868      INDENT(4);
15869 
15870      print_VkStructureType(obj.sType, "sType", 1);
15871 
15872       if (obj.pNext) {
15873          dumpPNextChain(obj.pNext);
15874       } else {
15875          PRINT_SPACE
15876          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15877      }
15878 
15879      print_VkFormat(obj.format, "format", 1);
15880 
15881      print_VkImageType(obj.type, "type", 1);
15882 
15883      print_VkImageTiling(obj.tiling, "tiling", 1);
15884 
15885      print_VkImageUsageFlags(obj.usage, "usage", 1);
15886 
15887      print_VkImageCreateFlags(obj.flags, "flags", 0);
15888 
15889      INDENT(-4);
15890      PRINT_SPACE
15891      if (commaNeeded)
15892          _OUT << "}," << std::endl;
15893      else
15894          _OUT << "}" << std::endl;
15895 }
print_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2 * obj,const std::string & s,bool commaNeeded=true)15896 static void print_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2 * obj, const std::string& s, bool commaNeeded=true) {
15897      PRINT_SPACE
15898      _OUT << "{" << std::endl;
15899      INDENT(4);
15900 
15901      print_VkStructureType(obj->sType, "sType", 1);
15902 
15903       if (obj->pNext) {
15904          dumpPNextChain(obj->pNext);
15905       } else {
15906          PRINT_SPACE
15907          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15908      }
15909 
15910      print_VkFormat(obj->format, "format", 1);
15911 
15912      print_VkImageType(obj->type, "type", 1);
15913 
15914      print_VkImageTiling(obj->tiling, "tiling", 1);
15915 
15916      print_VkImageUsageFlags(obj->usage, "usage", 1);
15917 
15918      print_VkImageCreateFlags(obj->flags, "flags", 0);
15919 
15920      INDENT(-4);
15921      PRINT_SPACE
15922      if (commaNeeded)
15923          _OUT << "}," << std::endl;
15924      else
15925          _OUT << "}" << std::endl;
15926 }
15927 
print_VkQueueFamilyProperties2(VkQueueFamilyProperties2 obj,const std::string & s,bool commaNeeded=true)15928 static void print_VkQueueFamilyProperties2(VkQueueFamilyProperties2 obj, const std::string& s, bool commaNeeded=true) {
15929      PRINT_SPACE
15930      _OUT << "{" << std::endl;
15931      INDENT(4);
15932 
15933      print_VkStructureType(obj.sType, "sType", 1);
15934 
15935       if (obj.pNext) {
15936          dumpPNextChain(obj.pNext);
15937       } else {
15938          PRINT_SPACE
15939          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15940      }
15941 
15942      PRINT_SPACE
15943      _OUT << "\"queueFamilyProperties\": " << std::endl;
15944      {
15945            print_VkQueueFamilyProperties(obj.queueFamilyProperties, "queueFamilyProperties", 0);
15946      }
15947 
15948      INDENT(-4);
15949      PRINT_SPACE
15950      if (commaNeeded)
15951          _OUT << "}," << std::endl;
15952      else
15953          _OUT << "}" << std::endl;
15954 }
print_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * obj,const std::string & s,bool commaNeeded=true)15955 static void print_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * obj, const std::string& s, bool commaNeeded=true) {
15956      PRINT_SPACE
15957      _OUT << "{" << std::endl;
15958      INDENT(4);
15959 
15960      print_VkStructureType(obj->sType, "sType", 1);
15961 
15962       if (obj->pNext) {
15963          dumpPNextChain(obj->pNext);
15964       } else {
15965          PRINT_SPACE
15966          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15967      }
15968 
15969      PRINT_SPACE
15970      _OUT << "\"queueFamilyProperties\": " << std::endl;
15971      {
15972            print_VkQueueFamilyProperties(obj->queueFamilyProperties, "queueFamilyProperties", 0);
15973      }
15974 
15975      INDENT(-4);
15976      PRINT_SPACE
15977      if (commaNeeded)
15978          _OUT << "}," << std::endl;
15979      else
15980          _OUT << "}" << std::endl;
15981 }
15982 
print_VkPhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProperties2 obj,const std::string & s,bool commaNeeded=true)15983 static void print_VkPhysicalDeviceMemoryProperties2(VkPhysicalDeviceMemoryProperties2 obj, const std::string& s, bool commaNeeded=true) {
15984      PRINT_SPACE
15985      _OUT << "{" << std::endl;
15986      INDENT(4);
15987 
15988      print_VkStructureType(obj.sType, "sType", 1);
15989 
15990       if (obj.pNext) {
15991          dumpPNextChain(obj.pNext);
15992       } else {
15993          PRINT_SPACE
15994          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
15995      }
15996 
15997      PRINT_SPACE
15998      _OUT << "\"memoryProperties\": " << std::endl;
15999      {
16000            print_VkPhysicalDeviceMemoryProperties(obj.memoryProperties, "memoryProperties", 0);
16001      }
16002 
16003      INDENT(-4);
16004      PRINT_SPACE
16005      if (commaNeeded)
16006          _OUT << "}," << std::endl;
16007      else
16008          _OUT << "}" << std::endl;
16009 }
print_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2 * obj,const std::string & s,bool commaNeeded=true)16010 static void print_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2 * obj, const std::string& s, bool commaNeeded=true) {
16011      PRINT_SPACE
16012      _OUT << "{" << std::endl;
16013      INDENT(4);
16014 
16015      print_VkStructureType(obj->sType, "sType", 1);
16016 
16017       if (obj->pNext) {
16018          dumpPNextChain(obj->pNext);
16019       } else {
16020          PRINT_SPACE
16021          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16022      }
16023 
16024      PRINT_SPACE
16025      _OUT << "\"memoryProperties\": " << std::endl;
16026      {
16027            print_VkPhysicalDeviceMemoryProperties(obj->memoryProperties, "memoryProperties", 0);
16028      }
16029 
16030      INDENT(-4);
16031      PRINT_SPACE
16032      if (commaNeeded)
16033          _OUT << "}," << std::endl;
16034      else
16035          _OUT << "}" << std::endl;
16036 }
16037 
print_VkPhysicalDevicePointClippingProperties(VkPhysicalDevicePointClippingProperties obj,const std::string & s,bool commaNeeded=true)16038 static void print_VkPhysicalDevicePointClippingProperties(VkPhysicalDevicePointClippingProperties obj, const std::string& s, bool commaNeeded=true) {
16039      PRINT_SPACE
16040      _OUT << "{" << std::endl;
16041      INDENT(4);
16042 
16043      print_VkStructureType(obj.sType, "sType", 1);
16044 
16045       if (obj.pNext) {
16046          dumpPNextChain(obj.pNext);
16047       } else {
16048          PRINT_SPACE
16049          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16050      }
16051 
16052      print_VkPointClippingBehavior(obj.pointClippingBehavior, "pointClippingBehavior", 0);
16053 
16054      INDENT(-4);
16055      PRINT_SPACE
16056      if (commaNeeded)
16057          _OUT << "}," << std::endl;
16058      else
16059          _OUT << "}" << std::endl;
16060 }
print_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevicePointClippingProperties * obj,const std::string & s,bool commaNeeded=true)16061 static void print_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevicePointClippingProperties * obj, const std::string& s, bool commaNeeded=true) {
16062      PRINT_SPACE
16063      _OUT << "{" << std::endl;
16064      INDENT(4);
16065 
16066      print_VkStructureType(obj->sType, "sType", 1);
16067 
16068       if (obj->pNext) {
16069          dumpPNextChain(obj->pNext);
16070       } else {
16071          PRINT_SPACE
16072          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16073      }
16074 
16075      print_VkPointClippingBehavior(obj->pointClippingBehavior, "pointClippingBehavior", 0);
16076 
16077      INDENT(-4);
16078      PRINT_SPACE
16079      if (commaNeeded)
16080          _OUT << "}," << std::endl;
16081      else
16082          _OUT << "}" << std::endl;
16083 }
16084 
print_VkInputAttachmentAspectReference(VkInputAttachmentAspectReference obj,const std::string & s,bool commaNeeded=true)16085 static void print_VkInputAttachmentAspectReference(VkInputAttachmentAspectReference obj, const std::string& s, bool commaNeeded=true) {
16086      PRINT_SPACE
16087      _OUT << "{" << std::endl;
16088      INDENT(4);
16089 
16090      print_uint32_t(obj.subpass, "subpass", 1);
16091 
16092      print_uint32_t(obj.inputAttachmentIndex, "inputAttachmentIndex", 1);
16093 
16094      print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 0);
16095 
16096      INDENT(-4);
16097      PRINT_SPACE
16098      if (commaNeeded)
16099          _OUT << "}," << std::endl;
16100      else
16101          _OUT << "}" << std::endl;
16102 }
print_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference * obj,const std::string & s,bool commaNeeded=true)16103 static void print_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference * obj, const std::string& s, bool commaNeeded=true) {
16104      PRINT_SPACE
16105      _OUT << "{" << std::endl;
16106      INDENT(4);
16107 
16108      print_uint32_t(obj->subpass, "subpass", 1);
16109 
16110      print_uint32_t(obj->inputAttachmentIndex, "inputAttachmentIndex", 1);
16111 
16112      print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 0);
16113 
16114      INDENT(-4);
16115      PRINT_SPACE
16116      if (commaNeeded)
16117          _OUT << "}," << std::endl;
16118      else
16119          _OUT << "}" << std::endl;
16120 }
16121 
print_VkRenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputAttachmentAspectCreateInfo obj,const std::string & s,bool commaNeeded=true)16122 static void print_VkRenderPassInputAttachmentAspectCreateInfo(VkRenderPassInputAttachmentAspectCreateInfo obj, const std::string& s, bool commaNeeded=true) {
16123      PRINT_SPACE
16124      _OUT << "{" << std::endl;
16125      INDENT(4);
16126 
16127      print_VkStructureType(obj.sType, "sType", 1);
16128 
16129       if (obj.pNext) {
16130          dumpPNextChain(obj.pNext);
16131       } else {
16132          PRINT_SPACE
16133          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16134      }
16135 
16136      print_uint32_t(obj.aspectReferenceCount, "aspectReferenceCount", 1);
16137 
16138      PRINT_SPACE
16139      _OUT << "\"pAspectReferences\": " << std::endl;
16140      if (obj.pAspectReferences) {
16141          PRINT_SPACE
16142          _OUT << "[" << std::endl;
16143          for (unsigned int i = 0; i < obj.aspectReferenceCount; i++) {
16144            if (i+1 == obj.aspectReferenceCount)
16145                print_VkInputAttachmentAspectReference(obj.pAspectReferences[i], "pAspectReferences", 0);
16146            else
16147                print_VkInputAttachmentAspectReference(obj.pAspectReferences[i], "pAspectReferences", 1);
16148          }
16149          PRINT_SPACE
16150          _OUT << "]" << std::endl;
16151     }
16152      else
16153      {
16154          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
16155      }
16156 
16157      INDENT(-4);
16158      PRINT_SPACE
16159      if (commaNeeded)
16160          _OUT << "}," << std::endl;
16161      else
16162          _OUT << "}" << std::endl;
16163 }
print_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPassInputAttachmentAspectCreateInfo * obj,const std::string & s,bool commaNeeded=true)16164 static void print_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPassInputAttachmentAspectCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
16165      PRINT_SPACE
16166      _OUT << "{" << std::endl;
16167      INDENT(4);
16168 
16169      print_VkStructureType(obj->sType, "sType", 1);
16170 
16171       if (obj->pNext) {
16172          dumpPNextChain(obj->pNext);
16173       } else {
16174          PRINT_SPACE
16175          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16176      }
16177 
16178      print_uint32_t(obj->aspectReferenceCount, "aspectReferenceCount", 1);
16179 
16180      PRINT_SPACE
16181      _OUT << "\"pAspectReferences\": " << std::endl;
16182      if (obj->pAspectReferences) {
16183          PRINT_SPACE
16184          _OUT << "[" << std::endl;
16185          for (unsigned int i = 0; i < obj->aspectReferenceCount; i++) {
16186            if (i+1 == obj->aspectReferenceCount)
16187                print_VkInputAttachmentAspectReference(obj->pAspectReferences[i], "pAspectReferences", 0);
16188            else
16189                print_VkInputAttachmentAspectReference(obj->pAspectReferences[i], "pAspectReferences", 1);
16190          }
16191          PRINT_SPACE
16192          _OUT << "]" << std::endl;
16193     }
16194      else
16195      {
16196          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
16197      }
16198 
16199      INDENT(-4);
16200      PRINT_SPACE
16201      if (commaNeeded)
16202          _OUT << "}," << std::endl;
16203      else
16204          _OUT << "}" << std::endl;
16205 }
16206 
print_VkImageViewUsageCreateInfo(VkImageViewUsageCreateInfo obj,const std::string & s,bool commaNeeded=true)16207 static void print_VkImageViewUsageCreateInfo(VkImageViewUsageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
16208      PRINT_SPACE
16209      _OUT << "{" << std::endl;
16210      INDENT(4);
16211 
16212      print_VkStructureType(obj.sType, "sType", 1);
16213 
16214       if (obj.pNext) {
16215          dumpPNextChain(obj.pNext);
16216       } else {
16217          PRINT_SPACE
16218          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16219      }
16220 
16221      print_VkImageUsageFlags(obj.usage, "usage", 0);
16222 
16223      INDENT(-4);
16224      PRINT_SPACE
16225      if (commaNeeded)
16226          _OUT << "}," << std::endl;
16227      else
16228          _OUT << "}" << std::endl;
16229 }
print_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo * obj,const std::string & s,bool commaNeeded=true)16230 static void print_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
16231      PRINT_SPACE
16232      _OUT << "{" << std::endl;
16233      INDENT(4);
16234 
16235      print_VkStructureType(obj->sType, "sType", 1);
16236 
16237       if (obj->pNext) {
16238          dumpPNextChain(obj->pNext);
16239       } else {
16240          PRINT_SPACE
16241          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16242      }
16243 
16244      print_VkImageUsageFlags(obj->usage, "usage", 0);
16245 
16246      INDENT(-4);
16247      PRINT_SPACE
16248      if (commaNeeded)
16249          _OUT << "}," << std::endl;
16250      else
16251          _OUT << "}" << std::endl;
16252 }
16253 
print_VkPipelineTessellationDomainOriginStateCreateInfo(VkPipelineTessellationDomainOriginStateCreateInfo obj,const std::string & s,bool commaNeeded=true)16254 static void print_VkPipelineTessellationDomainOriginStateCreateInfo(VkPipelineTessellationDomainOriginStateCreateInfo obj, const std::string& s, bool commaNeeded=true) {
16255      PRINT_SPACE
16256      _OUT << "{" << std::endl;
16257      INDENT(4);
16258 
16259      print_VkStructureType(obj.sType, "sType", 1);
16260 
16261       if (obj.pNext) {
16262          dumpPNextChain(obj.pNext);
16263       } else {
16264          PRINT_SPACE
16265          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16266      }
16267 
16268      print_VkTessellationDomainOrigin(obj.domainOrigin, "domainOrigin", 0);
16269 
16270      INDENT(-4);
16271      PRINT_SPACE
16272      if (commaNeeded)
16273          _OUT << "}," << std::endl;
16274      else
16275          _OUT << "}" << std::endl;
16276 }
print_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipelineTessellationDomainOriginStateCreateInfo * obj,const std::string & s,bool commaNeeded=true)16277 static void print_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipelineTessellationDomainOriginStateCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
16278      PRINT_SPACE
16279      _OUT << "{" << std::endl;
16280      INDENT(4);
16281 
16282      print_VkStructureType(obj->sType, "sType", 1);
16283 
16284       if (obj->pNext) {
16285          dumpPNextChain(obj->pNext);
16286       } else {
16287          PRINT_SPACE
16288          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16289      }
16290 
16291      print_VkTessellationDomainOrigin(obj->domainOrigin, "domainOrigin", 0);
16292 
16293      INDENT(-4);
16294      PRINT_SPACE
16295      if (commaNeeded)
16296          _OUT << "}," << std::endl;
16297      else
16298          _OUT << "}" << std::endl;
16299 }
16300 
print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInfo obj,const std::string & s,bool commaNeeded=true)16301 static void print_VkRenderPassMultiviewCreateInfo(VkRenderPassMultiviewCreateInfo obj, const std::string& s, bool commaNeeded=true) {
16302      PRINT_SPACE
16303      _OUT << "{" << std::endl;
16304      INDENT(4);
16305 
16306      print_VkStructureType(obj.sType, "sType", 1);
16307 
16308       if (obj.pNext) {
16309          dumpPNextChain(obj.pNext);
16310       } else {
16311          PRINT_SPACE
16312          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16313      }
16314 
16315      print_uint32_t(obj.subpassCount, "subpassCount", 1);
16316 
16317      PRINT_SPACE
16318      _OUT << "\"pViewMasks\":" << std::endl;
16319      PRINT_SPACE
16320      if (obj.pViewMasks) {
16321        _OUT << "[" << std::endl;
16322        for (unsigned int i = 0; i < obj.subpassCount; i++) {
16323            bool isCommaNeeded = (i+1) != obj.subpassCount;
16324            print_uint32_t(obj.pViewMasks[i], "", isCommaNeeded);
16325        }
16326        PRINT_SPACE
16327        _OUT << "]" << "," << std::endl;
16328      } else {
16329        _OUT << "\"NULL\"" << "," << std::endl;
16330      }
16331 
16332      print_uint32_t(obj.dependencyCount, "dependencyCount", 1);
16333 
16334      PRINT_SPACE
16335      _OUT << "\"pViewOffsets\":" << std::endl;
16336      PRINT_SPACE
16337      if (obj.pViewOffsets) {
16338        _OUT << "[" << std::endl;
16339        for (unsigned int i = 0; i < obj.dependencyCount; i++) {
16340            bool isCommaNeeded = (i+1) != obj.dependencyCount;
16341            print_int32_t(obj.pViewOffsets[i], "", isCommaNeeded);
16342        }
16343        PRINT_SPACE
16344        _OUT << "]" << "," << std::endl;
16345      } else {
16346        _OUT << "\"NULL\"" << "," << std::endl;
16347      }
16348 
16349      print_uint32_t(obj.correlationMaskCount, "correlationMaskCount", 1);
16350 
16351      PRINT_SPACE
16352      _OUT << "\"pCorrelationMasks\":" << std::endl;
16353      PRINT_SPACE
16354      if (obj.pCorrelationMasks) {
16355        _OUT << "[" << std::endl;
16356        for (unsigned int i = 0; i < obj.correlationMaskCount; i++) {
16357            bool isCommaNeeded = (i+1) != obj.correlationMaskCount;
16358            print_uint32_t(obj.pCorrelationMasks[i], "", isCommaNeeded);
16359        }
16360        PRINT_SPACE
16361        _OUT << "]" << "" << std::endl;
16362      } else {
16363        _OUT << "\"NULL\"" << "" << std::endl;
16364      }
16365 
16366      INDENT(-4);
16367      PRINT_SPACE
16368      if (commaNeeded)
16369          _OUT << "}," << std::endl;
16370      else
16371          _OUT << "}" << std::endl;
16372 }
print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo * obj,const std::string & s,bool commaNeeded=true)16373 static void print_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
16374      PRINT_SPACE
16375      _OUT << "{" << std::endl;
16376      INDENT(4);
16377 
16378      print_VkStructureType(obj->sType, "sType", 1);
16379 
16380       if (obj->pNext) {
16381          dumpPNextChain(obj->pNext);
16382       } else {
16383          PRINT_SPACE
16384          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16385      }
16386 
16387      print_uint32_t(obj->subpassCount, "subpassCount", 1);
16388 
16389      PRINT_SPACE
16390      _OUT << "\"pViewMasks\":" << std::endl;
16391      PRINT_SPACE
16392      if (obj->pViewMasks) {
16393        _OUT << "[" << std::endl;
16394        for (unsigned int i = 0; i < obj->subpassCount; i++) {
16395            bool isCommaNeeded = (i+1) != obj->subpassCount;
16396            print_uint32_t(obj->pViewMasks[i], "", isCommaNeeded);
16397        }
16398        PRINT_SPACE
16399        _OUT << "]" << "," << std::endl;
16400      } else {
16401        _OUT << "\"NULL\"" << "," << std::endl;
16402      }
16403 
16404      print_uint32_t(obj->dependencyCount, "dependencyCount", 1);
16405 
16406      PRINT_SPACE
16407      _OUT << "\"pViewOffsets\":" << std::endl;
16408      PRINT_SPACE
16409      if (obj->pViewOffsets) {
16410        _OUT << "[" << std::endl;
16411        for (unsigned int i = 0; i < obj->dependencyCount; i++) {
16412            bool isCommaNeeded = (i+1) != obj->dependencyCount;
16413            print_int32_t(obj->pViewOffsets[i], "", isCommaNeeded);
16414        }
16415        PRINT_SPACE
16416        _OUT << "]" << "," << std::endl;
16417      } else {
16418        _OUT << "\"NULL\"" << "," << std::endl;
16419      }
16420 
16421      print_uint32_t(obj->correlationMaskCount, "correlationMaskCount", 1);
16422 
16423      PRINT_SPACE
16424      _OUT << "\"pCorrelationMasks\":" << std::endl;
16425      PRINT_SPACE
16426      if (obj->pCorrelationMasks) {
16427        _OUT << "[" << std::endl;
16428        for (unsigned int i = 0; i < obj->correlationMaskCount; i++) {
16429            bool isCommaNeeded = (i+1) != obj->correlationMaskCount;
16430            print_uint32_t(obj->pCorrelationMasks[i], "", isCommaNeeded);
16431        }
16432        PRINT_SPACE
16433        _OUT << "]" << "" << std::endl;
16434      } else {
16435        _OUT << "\"NULL\"" << "" << std::endl;
16436      }
16437 
16438      INDENT(-4);
16439      PRINT_SPACE
16440      if (commaNeeded)
16441          _OUT << "}," << std::endl;
16442      else
16443          _OUT << "}" << std::endl;
16444 }
16445 
print_VkPhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFeatures obj,const std::string & s,bool commaNeeded=true)16446 static void print_VkPhysicalDeviceMultiviewFeatures(VkPhysicalDeviceMultiviewFeatures obj, const std::string& s, bool commaNeeded=true) {
16447      PRINT_SPACE
16448      _OUT << "{" << std::endl;
16449      INDENT(4);
16450 
16451      print_VkStructureType(obj.sType, "sType", 1);
16452 
16453       if (obj.pNext) {
16454          dumpPNextChain(obj.pNext);
16455       } else {
16456          PRINT_SPACE
16457          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16458      }
16459 
16460      print_VkBool32(obj.multiview, "multiview", 1);
16461 
16462      print_VkBool32(obj.multiviewGeometryShader, "multiviewGeometryShader", 1);
16463 
16464      print_VkBool32(obj.multiviewTessellationShader, "multiviewTessellationShader", 0);
16465 
16466      INDENT(-4);
16467      PRINT_SPACE
16468      if (commaNeeded)
16469          _OUT << "}," << std::endl;
16470      else
16471          _OUT << "}" << std::endl;
16472 }
print_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures * obj,const std::string & s,bool commaNeeded=true)16473 static void print_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures * obj, const std::string& s, bool commaNeeded=true) {
16474      PRINT_SPACE
16475      _OUT << "{" << std::endl;
16476      INDENT(4);
16477 
16478      print_VkStructureType(obj->sType, "sType", 1);
16479 
16480       if (obj->pNext) {
16481          dumpPNextChain(obj->pNext);
16482       } else {
16483          PRINT_SPACE
16484          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16485      }
16486 
16487      print_VkBool32(obj->multiview, "multiview", 1);
16488 
16489      print_VkBool32(obj->multiviewGeometryShader, "multiviewGeometryShader", 1);
16490 
16491      print_VkBool32(obj->multiviewTessellationShader, "multiviewTessellationShader", 0);
16492 
16493      INDENT(-4);
16494      PRINT_SPACE
16495      if (commaNeeded)
16496          _OUT << "}," << std::endl;
16497      else
16498          _OUT << "}" << std::endl;
16499 }
16500 
print_VkPhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewProperties obj,const std::string & s,bool commaNeeded=true)16501 static void print_VkPhysicalDeviceMultiviewProperties(VkPhysicalDeviceMultiviewProperties obj, const std::string& s, bool commaNeeded=true) {
16502      PRINT_SPACE
16503      _OUT << "{" << std::endl;
16504      INDENT(4);
16505 
16506      print_VkStructureType(obj.sType, "sType", 1);
16507 
16508       if (obj.pNext) {
16509          dumpPNextChain(obj.pNext);
16510       } else {
16511          PRINT_SPACE
16512          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16513      }
16514 
16515      print_uint32_t(obj.maxMultiviewViewCount, "maxMultiviewViewCount", 1);
16516 
16517      print_uint32_t(obj.maxMultiviewInstanceIndex, "maxMultiviewInstanceIndex", 0);
16518 
16519      INDENT(-4);
16520      PRINT_SPACE
16521      if (commaNeeded)
16522          _OUT << "}," << std::endl;
16523      else
16524          _OUT << "}" << std::endl;
16525 }
print_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties * obj,const std::string & s,bool commaNeeded=true)16526 static void print_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties * obj, const std::string& s, bool commaNeeded=true) {
16527      PRINT_SPACE
16528      _OUT << "{" << std::endl;
16529      INDENT(4);
16530 
16531      print_VkStructureType(obj->sType, "sType", 1);
16532 
16533       if (obj->pNext) {
16534          dumpPNextChain(obj->pNext);
16535       } else {
16536          PRINT_SPACE
16537          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16538      }
16539 
16540      print_uint32_t(obj->maxMultiviewViewCount, "maxMultiviewViewCount", 1);
16541 
16542      print_uint32_t(obj->maxMultiviewInstanceIndex, "maxMultiviewInstanceIndex", 0);
16543 
16544      INDENT(-4);
16545      PRINT_SPACE
16546      if (commaNeeded)
16547          _OUT << "}," << std::endl;
16548      else
16549          _OUT << "}" << std::endl;
16550 }
16551 
print_VkPhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVariablePointersFeatures obj,const std::string & s,bool commaNeeded=true)16552 static void print_VkPhysicalDeviceVariablePointersFeatures(VkPhysicalDeviceVariablePointersFeatures obj, const std::string& s, bool commaNeeded=true) {
16553      PRINT_SPACE
16554      _OUT << "{" << std::endl;
16555      INDENT(4);
16556 
16557      print_VkStructureType(obj.sType, "sType", 1);
16558 
16559       if (obj.pNext) {
16560          dumpPNextChain(obj.pNext);
16561       } else {
16562          PRINT_SPACE
16563          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16564      }
16565 
16566      print_VkBool32(obj.variablePointersStorageBuffer, "variablePointersStorageBuffer", 1);
16567 
16568      print_VkBool32(obj.variablePointers, "variablePointers", 0);
16569 
16570      INDENT(-4);
16571      PRINT_SPACE
16572      if (commaNeeded)
16573          _OUT << "}," << std::endl;
16574      else
16575          _OUT << "}" << std::endl;
16576 }
print_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDeviceVariablePointersFeatures * obj,const std::string & s,bool commaNeeded=true)16577 static void print_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDeviceVariablePointersFeatures * obj, const std::string& s, bool commaNeeded=true) {
16578      PRINT_SPACE
16579      _OUT << "{" << std::endl;
16580      INDENT(4);
16581 
16582      print_VkStructureType(obj->sType, "sType", 1);
16583 
16584       if (obj->pNext) {
16585          dumpPNextChain(obj->pNext);
16586       } else {
16587          PRINT_SPACE
16588          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16589      }
16590 
16591      print_VkBool32(obj->variablePointersStorageBuffer, "variablePointersStorageBuffer", 1);
16592 
16593      print_VkBool32(obj->variablePointers, "variablePointers", 0);
16594 
16595      INDENT(-4);
16596      PRINT_SPACE
16597      if (commaNeeded)
16598          _OUT << "}," << std::endl;
16599      else
16600          _OUT << "}" << std::endl;
16601 }
16602 
16603 typedef VkPhysicalDeviceVariablePointersFeatures VkPhysicalDeviceVariablePointerFeatures;
16604 
print_VkPhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtectedMemoryFeatures obj,const std::string & s,bool commaNeeded=true)16605 static void print_VkPhysicalDeviceProtectedMemoryFeatures(VkPhysicalDeviceProtectedMemoryFeatures obj, const std::string& s, bool commaNeeded=true) {
16606      PRINT_SPACE
16607      _OUT << "{" << std::endl;
16608      INDENT(4);
16609 
16610      print_VkStructureType(obj.sType, "sType", 1);
16611 
16612       if (obj.pNext) {
16613          dumpPNextChain(obj.pNext);
16614       } else {
16615          PRINT_SPACE
16616          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16617      }
16618 
16619      print_VkBool32(obj.protectedMemory, "protectedMemory", 0);
16620 
16621      INDENT(-4);
16622      PRINT_SPACE
16623      if (commaNeeded)
16624          _OUT << "}," << std::endl;
16625      else
16626          _OUT << "}" << std::endl;
16627 }
print_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDeviceProtectedMemoryFeatures * obj,const std::string & s,bool commaNeeded=true)16628 static void print_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDeviceProtectedMemoryFeatures * obj, const std::string& s, bool commaNeeded=true) {
16629      PRINT_SPACE
16630      _OUT << "{" << std::endl;
16631      INDENT(4);
16632 
16633      print_VkStructureType(obj->sType, "sType", 1);
16634 
16635       if (obj->pNext) {
16636          dumpPNextChain(obj->pNext);
16637       } else {
16638          PRINT_SPACE
16639          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16640      }
16641 
16642      print_VkBool32(obj->protectedMemory, "protectedMemory", 0);
16643 
16644      INDENT(-4);
16645      PRINT_SPACE
16646      if (commaNeeded)
16647          _OUT << "}," << std::endl;
16648      else
16649          _OUT << "}" << std::endl;
16650 }
16651 
print_VkPhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProtectedMemoryProperties obj,const std::string & s,bool commaNeeded=true)16652 static void print_VkPhysicalDeviceProtectedMemoryProperties(VkPhysicalDeviceProtectedMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
16653      PRINT_SPACE
16654      _OUT << "{" << std::endl;
16655      INDENT(4);
16656 
16657      print_VkStructureType(obj.sType, "sType", 1);
16658 
16659       if (obj.pNext) {
16660          dumpPNextChain(obj.pNext);
16661       } else {
16662          PRINT_SPACE
16663          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16664      }
16665 
16666      print_VkBool32(obj.protectedNoFault, "protectedNoFault", 0);
16667 
16668      INDENT(-4);
16669      PRINT_SPACE
16670      if (commaNeeded)
16671          _OUT << "}," << std::endl;
16672      else
16673          _OUT << "}" << std::endl;
16674 }
print_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDeviceProtectedMemoryProperties * obj,const std::string & s,bool commaNeeded=true)16675 static void print_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDeviceProtectedMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
16676      PRINT_SPACE
16677      _OUT << "{" << std::endl;
16678      INDENT(4);
16679 
16680      print_VkStructureType(obj->sType, "sType", 1);
16681 
16682       if (obj->pNext) {
16683          dumpPNextChain(obj->pNext);
16684       } else {
16685          PRINT_SPACE
16686          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16687      }
16688 
16689      print_VkBool32(obj->protectedNoFault, "protectedNoFault", 0);
16690 
16691      INDENT(-4);
16692      PRINT_SPACE
16693      if (commaNeeded)
16694          _OUT << "}," << std::endl;
16695      else
16696          _OUT << "}" << std::endl;
16697 }
16698 
print_VkDeviceQueueInfo2(VkDeviceQueueInfo2 obj,const std::string & s,bool commaNeeded=true)16699 static void print_VkDeviceQueueInfo2(VkDeviceQueueInfo2 obj, const std::string& s, bool commaNeeded=true) {
16700      PRINT_SPACE
16701      _OUT << "{" << std::endl;
16702      INDENT(4);
16703 
16704      print_VkStructureType(obj.sType, "sType", 1);
16705 
16706       if (obj.pNext) {
16707          dumpPNextChain(obj.pNext);
16708       } else {
16709          PRINT_SPACE
16710          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16711      }
16712 
16713      print_VkDeviceQueueCreateFlags(obj.flags, "flags", 1);
16714 
16715      print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 1);
16716 
16717      print_uint32_t(obj.queueIndex, "queueIndex", 0);
16718 
16719      INDENT(-4);
16720      PRINT_SPACE
16721      if (commaNeeded)
16722          _OUT << "}," << std::endl;
16723      else
16724          _OUT << "}" << std::endl;
16725 }
print_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * obj,const std::string & s,bool commaNeeded=true)16726 static void print_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * obj, const std::string& s, bool commaNeeded=true) {
16727      PRINT_SPACE
16728      _OUT << "{" << std::endl;
16729      INDENT(4);
16730 
16731      print_VkStructureType(obj->sType, "sType", 1);
16732 
16733       if (obj->pNext) {
16734          dumpPNextChain(obj->pNext);
16735       } else {
16736          PRINT_SPACE
16737          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16738      }
16739 
16740      print_VkDeviceQueueCreateFlags(obj->flags, "flags", 1);
16741 
16742      print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 1);
16743 
16744      print_uint32_t(obj->queueIndex, "queueIndex", 0);
16745 
16746      INDENT(-4);
16747      PRINT_SPACE
16748      if (commaNeeded)
16749          _OUT << "}," << std::endl;
16750      else
16751          _OUT << "}" << std::endl;
16752 }
16753 
print_VkProtectedSubmitInfo(VkProtectedSubmitInfo obj,const std::string & s,bool commaNeeded=true)16754 static void print_VkProtectedSubmitInfo(VkProtectedSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
16755      PRINT_SPACE
16756      _OUT << "{" << std::endl;
16757      INDENT(4);
16758 
16759      print_VkStructureType(obj.sType, "sType", 1);
16760 
16761       if (obj.pNext) {
16762          dumpPNextChain(obj.pNext);
16763       } else {
16764          PRINT_SPACE
16765          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16766      }
16767 
16768      print_VkBool32(obj.protectedSubmit, "protectedSubmit", 0);
16769 
16770      INDENT(-4);
16771      PRINT_SPACE
16772      if (commaNeeded)
16773          _OUT << "}," << std::endl;
16774      else
16775          _OUT << "}" << std::endl;
16776 }
print_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * obj,const std::string & s,bool commaNeeded=true)16777 static void print_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
16778      PRINT_SPACE
16779      _OUT << "{" << std::endl;
16780      INDENT(4);
16781 
16782      print_VkStructureType(obj->sType, "sType", 1);
16783 
16784       if (obj->pNext) {
16785          dumpPNextChain(obj->pNext);
16786       } else {
16787          PRINT_SPACE
16788          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16789      }
16790 
16791      print_VkBool32(obj->protectedSubmit, "protectedSubmit", 0);
16792 
16793      INDENT(-4);
16794      PRINT_SPACE
16795      if (commaNeeded)
16796          _OUT << "}," << std::endl;
16797      else
16798          _OUT << "}" << std::endl;
16799 }
16800 
print_VkSamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCreateInfo obj,const std::string & s,bool commaNeeded=true)16801 static void print_VkSamplerYcbcrConversionCreateInfo(VkSamplerYcbcrConversionCreateInfo obj, const std::string& s, bool commaNeeded=true) {
16802      PRINT_SPACE
16803      _OUT << "{" << std::endl;
16804      INDENT(4);
16805 
16806      print_VkStructureType(obj.sType, "sType", 1);
16807 
16808       if (obj.pNext) {
16809          dumpPNextChain(obj.pNext);
16810       } else {
16811          PRINT_SPACE
16812          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16813      }
16814 
16815      print_VkFormat(obj.format, "format", 1);
16816 
16817      print_VkSamplerYcbcrModelConversion(obj.ycbcrModel, "ycbcrModel", 1);
16818 
16819      print_VkSamplerYcbcrRange(obj.ycbcrRange, "ycbcrRange", 1);
16820 
16821      PRINT_SPACE
16822      _OUT << "\"components\": " << std::endl;
16823      {
16824            print_VkComponentMapping(obj.components, "components", 1);
16825      }
16826 
16827      print_VkChromaLocation(obj.xChromaOffset, "xChromaOffset", 1);
16828 
16829      print_VkChromaLocation(obj.yChromaOffset, "yChromaOffset", 1);
16830 
16831      print_VkFilter(obj.chromaFilter, "chromaFilter", 1);
16832 
16833      print_VkBool32(obj.forceExplicitReconstruction, "forceExplicitReconstruction", 0);
16834 
16835      INDENT(-4);
16836      PRINT_SPACE
16837      if (commaNeeded)
16838          _OUT << "}," << std::endl;
16839      else
16840          _OUT << "}" << std::endl;
16841 }
print_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo * obj,const std::string & s,bool commaNeeded=true)16842 static void print_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
16843      PRINT_SPACE
16844      _OUT << "{" << std::endl;
16845      INDENT(4);
16846 
16847      print_VkStructureType(obj->sType, "sType", 1);
16848 
16849       if (obj->pNext) {
16850          dumpPNextChain(obj->pNext);
16851       } else {
16852          PRINT_SPACE
16853          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16854      }
16855 
16856      print_VkFormat(obj->format, "format", 1);
16857 
16858      print_VkSamplerYcbcrModelConversion(obj->ycbcrModel, "ycbcrModel", 1);
16859 
16860      print_VkSamplerYcbcrRange(obj->ycbcrRange, "ycbcrRange", 1);
16861 
16862      PRINT_SPACE
16863      _OUT << "\"components\": " << std::endl;
16864      {
16865            print_VkComponentMapping(obj->components, "components", 1);
16866      }
16867 
16868      print_VkChromaLocation(obj->xChromaOffset, "xChromaOffset", 1);
16869 
16870      print_VkChromaLocation(obj->yChromaOffset, "yChromaOffset", 1);
16871 
16872      print_VkFilter(obj->chromaFilter, "chromaFilter", 1);
16873 
16874      print_VkBool32(obj->forceExplicitReconstruction, "forceExplicitReconstruction", 0);
16875 
16876      INDENT(-4);
16877      PRINT_SPACE
16878      if (commaNeeded)
16879          _OUT << "}," << std::endl;
16880      else
16881          _OUT << "}" << std::endl;
16882 }
16883 
print_VkSamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo obj,const std::string & s,bool commaNeeded=true)16884 static void print_VkSamplerYcbcrConversionInfo(VkSamplerYcbcrConversionInfo obj, const std::string& s, bool commaNeeded=true) {
16885      PRINT_SPACE
16886      _OUT << "{" << std::endl;
16887      INDENT(4);
16888 
16889      print_VkStructureType(obj.sType, "sType", 1);
16890 
16891       if (obj.pNext) {
16892          dumpPNextChain(obj.pNext);
16893       } else {
16894          PRINT_SPACE
16895          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16896      }
16897 
16898      // CTS : required value
16899      PRINT_SPACE    _OUT << "\"" << "conversion" << "\"" << " : " << obj.conversion.getInternal() << std::endl;
16900 
16901      INDENT(-4);
16902      PRINT_SPACE
16903      if (commaNeeded)
16904          _OUT << "}," << std::endl;
16905      else
16906          _OUT << "}" << std::endl;
16907 }
print_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo * obj,const std::string & s,bool commaNeeded=true)16908 static void print_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo * obj, const std::string& s, bool commaNeeded=true) {
16909      PRINT_SPACE
16910      _OUT << "{" << std::endl;
16911      INDENT(4);
16912 
16913      print_VkStructureType(obj->sType, "sType", 1);
16914 
16915       if (obj->pNext) {
16916          dumpPNextChain(obj->pNext);
16917       } else {
16918          PRINT_SPACE
16919          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16920      }
16921 
16922      // CTS : required value
16923      PRINT_SPACE    _OUT << "\"" << "conversion" << "\"" << " : " << obj->conversion.getInternal() << std::endl;
16924 
16925      INDENT(-4);
16926      PRINT_SPACE
16927      if (commaNeeded)
16928          _OUT << "}," << std::endl;
16929      else
16930          _OUT << "}" << std::endl;
16931 }
16932 
print_VkBindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo obj,const std::string & s,bool commaNeeded=true)16933 static void print_VkBindImagePlaneMemoryInfo(VkBindImagePlaneMemoryInfo obj, const std::string& s, bool commaNeeded=true) {
16934      PRINT_SPACE
16935      _OUT << "{" << std::endl;
16936      INDENT(4);
16937 
16938      print_VkStructureType(obj.sType, "sType", 1);
16939 
16940       if (obj.pNext) {
16941          dumpPNextChain(obj.pNext);
16942       } else {
16943          PRINT_SPACE
16944          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16945      }
16946 
16947      print_VkImageAspectFlagBits(obj.planeAspect, "planeAspect", 0);
16948 
16949      INDENT(-4);
16950      PRINT_SPACE
16951      if (commaNeeded)
16952          _OUT << "}," << std::endl;
16953      else
16954          _OUT << "}" << std::endl;
16955 }
print_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo * obj,const std::string & s,bool commaNeeded=true)16956 static void print_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo * obj, const std::string& s, bool commaNeeded=true) {
16957      PRINT_SPACE
16958      _OUT << "{" << std::endl;
16959      INDENT(4);
16960 
16961      print_VkStructureType(obj->sType, "sType", 1);
16962 
16963       if (obj->pNext) {
16964          dumpPNextChain(obj->pNext);
16965       } else {
16966          PRINT_SPACE
16967          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16968      }
16969 
16970      print_VkImageAspectFlagBits(obj->planeAspect, "planeAspect", 0);
16971 
16972      INDENT(-4);
16973      PRINT_SPACE
16974      if (commaNeeded)
16975          _OUT << "}," << std::endl;
16976      else
16977          _OUT << "}" << std::endl;
16978 }
16979 
print_VkImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequirementsInfo obj,const std::string & s,bool commaNeeded=true)16980 static void print_VkImagePlaneMemoryRequirementsInfo(VkImagePlaneMemoryRequirementsInfo obj, const std::string& s, bool commaNeeded=true) {
16981      PRINT_SPACE
16982      _OUT << "{" << std::endl;
16983      INDENT(4);
16984 
16985      print_VkStructureType(obj.sType, "sType", 1);
16986 
16987       if (obj.pNext) {
16988          dumpPNextChain(obj.pNext);
16989       } else {
16990          PRINT_SPACE
16991          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
16992      }
16993 
16994      print_VkImageAspectFlagBits(obj.planeAspect, "planeAspect", 0);
16995 
16996      INDENT(-4);
16997      PRINT_SPACE
16998      if (commaNeeded)
16999          _OUT << "}," << std::endl;
17000      else
17001          _OUT << "}" << std::endl;
17002 }
print_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo * obj,const std::string & s,bool commaNeeded=true)17003 static void print_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo * obj, const std::string& s, bool commaNeeded=true) {
17004      PRINT_SPACE
17005      _OUT << "{" << std::endl;
17006      INDENT(4);
17007 
17008      print_VkStructureType(obj->sType, "sType", 1);
17009 
17010       if (obj->pNext) {
17011          dumpPNextChain(obj->pNext);
17012       } else {
17013          PRINT_SPACE
17014          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17015      }
17016 
17017      print_VkImageAspectFlagBits(obj->planeAspect, "planeAspect", 0);
17018 
17019      INDENT(-4);
17020      PRINT_SPACE
17021      if (commaNeeded)
17022          _OUT << "}," << std::endl;
17023      else
17024          _OUT << "}" << std::endl;
17025 }
17026 
print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDeviceSamplerYcbcrConversionFeatures obj,const std::string & s,bool commaNeeded=true)17027 static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(VkPhysicalDeviceSamplerYcbcrConversionFeatures obj, const std::string& s, bool commaNeeded=true) {
17028      PRINT_SPACE
17029      _OUT << "{" << std::endl;
17030      INDENT(4);
17031 
17032      print_VkStructureType(obj.sType, "sType", 1);
17033 
17034       if (obj.pNext) {
17035          dumpPNextChain(obj.pNext);
17036       } else {
17037          PRINT_SPACE
17038          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17039      }
17040 
17041      print_VkBool32(obj.samplerYcbcrConversion, "samplerYcbcrConversion", 0);
17042 
17043      INDENT(-4);
17044      PRINT_SPACE
17045      if (commaNeeded)
17046          _OUT << "}," << std::endl;
17047      else
17048          _OUT << "}" << std::endl;
17049 }
print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysicalDeviceSamplerYcbcrConversionFeatures * obj,const std::string & s,bool commaNeeded=true)17050 static void print_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysicalDeviceSamplerYcbcrConversionFeatures * obj, const std::string& s, bool commaNeeded=true) {
17051      PRINT_SPACE
17052      _OUT << "{" << std::endl;
17053      INDENT(4);
17054 
17055      print_VkStructureType(obj->sType, "sType", 1);
17056 
17057       if (obj->pNext) {
17058          dumpPNextChain(obj->pNext);
17059       } else {
17060          PRINT_SPACE
17061          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17062      }
17063 
17064      print_VkBool32(obj->samplerYcbcrConversion, "samplerYcbcrConversion", 0);
17065 
17066      INDENT(-4);
17067      PRINT_SPACE
17068      if (commaNeeded)
17069          _OUT << "}," << std::endl;
17070      else
17071          _OUT << "}" << std::endl;
17072 }
17073 
print_VkSamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrConversionImageFormatProperties obj,const std::string & s,bool commaNeeded=true)17074 static void print_VkSamplerYcbcrConversionImageFormatProperties(VkSamplerYcbcrConversionImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
17075      PRINT_SPACE
17076      _OUT << "{" << std::endl;
17077      INDENT(4);
17078 
17079      print_VkStructureType(obj.sType, "sType", 1);
17080 
17081       if (obj.pNext) {
17082          dumpPNextChain(obj.pNext);
17083       } else {
17084          PRINT_SPACE
17085          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17086      }
17087 
17088      print_uint32_t(obj.combinedImageSamplerDescriptorCount, "combinedImageSamplerDescriptorCount", 0);
17089 
17090      INDENT(-4);
17091      PRINT_SPACE
17092      if (commaNeeded)
17093          _OUT << "}," << std::endl;
17094      else
17095          _OUT << "}" << std::endl;
17096 }
print_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerYcbcrConversionImageFormatProperties * obj,const std::string & s,bool commaNeeded=true)17097 static void print_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerYcbcrConversionImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
17098      PRINT_SPACE
17099      _OUT << "{" << std::endl;
17100      INDENT(4);
17101 
17102      print_VkStructureType(obj->sType, "sType", 1);
17103 
17104       if (obj->pNext) {
17105          dumpPNextChain(obj->pNext);
17106       } else {
17107          PRINT_SPACE
17108          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17109      }
17110 
17111      print_uint32_t(obj->combinedImageSamplerDescriptorCount, "combinedImageSamplerDescriptorCount", 0);
17112 
17113      INDENT(-4);
17114      PRINT_SPACE
17115      if (commaNeeded)
17116          _OUT << "}," << std::endl;
17117      else
17118          _OUT << "}" << std::endl;
17119 }
17120 
print_VkExternalMemoryProperties(VkExternalMemoryProperties obj,const std::string & s,bool commaNeeded=true)17121 static void print_VkExternalMemoryProperties(VkExternalMemoryProperties obj, const std::string& s, bool commaNeeded=true) {
17122      PRINT_SPACE
17123      _OUT << "{" << std::endl;
17124      INDENT(4);
17125 
17126      print_VkExternalMemoryFeatureFlags(obj.externalMemoryFeatures, "externalMemoryFeatures", 1);
17127 
17128      print_VkExternalMemoryHandleTypeFlags(obj.exportFromImportedHandleTypes, "exportFromImportedHandleTypes", 1);
17129 
17130      print_VkExternalMemoryHandleTypeFlags(obj.compatibleHandleTypes, "compatibleHandleTypes", 0);
17131 
17132      INDENT(-4);
17133      PRINT_SPACE
17134      if (commaNeeded)
17135          _OUT << "}," << std::endl;
17136      else
17137          _OUT << "}" << std::endl;
17138 }
print_VkExternalMemoryProperties(const VkExternalMemoryProperties * obj,const std::string & s,bool commaNeeded=true)17139 static void print_VkExternalMemoryProperties(const VkExternalMemoryProperties * obj, const std::string& s, bool commaNeeded=true) {
17140      PRINT_SPACE
17141      _OUT << "{" << std::endl;
17142      INDENT(4);
17143 
17144      print_VkExternalMemoryFeatureFlags(obj->externalMemoryFeatures, "externalMemoryFeatures", 1);
17145 
17146      print_VkExternalMemoryHandleTypeFlags(obj->exportFromImportedHandleTypes, "exportFromImportedHandleTypes", 1);
17147 
17148      print_VkExternalMemoryHandleTypeFlags(obj->compatibleHandleTypes, "compatibleHandleTypes", 0);
17149 
17150      INDENT(-4);
17151      PRINT_SPACE
17152      if (commaNeeded)
17153          _OUT << "}," << std::endl;
17154      else
17155          _OUT << "}" << std::endl;
17156 }
17157 
print_VkPhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExternalImageFormatInfo obj,const std::string & s,bool commaNeeded=true)17158 static void print_VkPhysicalDeviceExternalImageFormatInfo(VkPhysicalDeviceExternalImageFormatInfo obj, const std::string& s, bool commaNeeded=true) {
17159      PRINT_SPACE
17160      _OUT << "{" << std::endl;
17161      INDENT(4);
17162 
17163      print_VkStructureType(obj.sType, "sType", 1);
17164 
17165       if (obj.pNext) {
17166          dumpPNextChain(obj.pNext);
17167       } else {
17168          PRINT_SPACE
17169          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17170      }
17171 
17172      print_VkExternalMemoryHandleTypeFlagBits(obj.handleType, "handleType", 0);
17173 
17174      INDENT(-4);
17175      PRINT_SPACE
17176      if (commaNeeded)
17177          _OUT << "}," << std::endl;
17178      else
17179          _OUT << "}" << std::endl;
17180 }
print_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDeviceExternalImageFormatInfo * obj,const std::string & s,bool commaNeeded=true)17181 static void print_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDeviceExternalImageFormatInfo * obj, const std::string& s, bool commaNeeded=true) {
17182      PRINT_SPACE
17183      _OUT << "{" << std::endl;
17184      INDENT(4);
17185 
17186      print_VkStructureType(obj->sType, "sType", 1);
17187 
17188       if (obj->pNext) {
17189          dumpPNextChain(obj->pNext);
17190       } else {
17191          PRINT_SPACE
17192          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17193      }
17194 
17195      print_VkExternalMemoryHandleTypeFlagBits(obj->handleType, "handleType", 0);
17196 
17197      INDENT(-4);
17198      PRINT_SPACE
17199      if (commaNeeded)
17200          _OUT << "}," << std::endl;
17201      else
17202          _OUT << "}" << std::endl;
17203 }
17204 
print_VkExternalImageFormatProperties(VkExternalImageFormatProperties obj,const std::string & s,bool commaNeeded=true)17205 static void print_VkExternalImageFormatProperties(VkExternalImageFormatProperties obj, const std::string& s, bool commaNeeded=true) {
17206      PRINT_SPACE
17207      _OUT << "{" << std::endl;
17208      INDENT(4);
17209 
17210      print_VkStructureType(obj.sType, "sType", 1);
17211 
17212       if (obj.pNext) {
17213          dumpPNextChain(obj.pNext);
17214       } else {
17215          PRINT_SPACE
17216          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17217      }
17218 
17219      PRINT_SPACE
17220      _OUT << "\"externalMemoryProperties\": " << std::endl;
17221      {
17222            print_VkExternalMemoryProperties(obj.externalMemoryProperties, "externalMemoryProperties", 0);
17223      }
17224 
17225      INDENT(-4);
17226      PRINT_SPACE
17227      if (commaNeeded)
17228          _OUT << "}," << std::endl;
17229      else
17230          _OUT << "}" << std::endl;
17231 }
print_VkExternalImageFormatProperties(const VkExternalImageFormatProperties * obj,const std::string & s,bool commaNeeded=true)17232 static void print_VkExternalImageFormatProperties(const VkExternalImageFormatProperties * obj, const std::string& s, bool commaNeeded=true) {
17233      PRINT_SPACE
17234      _OUT << "{" << std::endl;
17235      INDENT(4);
17236 
17237      print_VkStructureType(obj->sType, "sType", 1);
17238 
17239       if (obj->pNext) {
17240          dumpPNextChain(obj->pNext);
17241       } else {
17242          PRINT_SPACE
17243          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17244      }
17245 
17246      PRINT_SPACE
17247      _OUT << "\"externalMemoryProperties\": " << std::endl;
17248      {
17249            print_VkExternalMemoryProperties(obj->externalMemoryProperties, "externalMemoryProperties", 0);
17250      }
17251 
17252      INDENT(-4);
17253      PRINT_SPACE
17254      if (commaNeeded)
17255          _OUT << "}," << std::endl;
17256      else
17257          _OUT << "}" << std::endl;
17258 }
17259 
print_VkPhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBufferInfo obj,const std::string & s,bool commaNeeded=true)17260 static void print_VkPhysicalDeviceExternalBufferInfo(VkPhysicalDeviceExternalBufferInfo obj, const std::string& s, bool commaNeeded=true) {
17261      PRINT_SPACE
17262      _OUT << "{" << std::endl;
17263      INDENT(4);
17264 
17265      print_VkStructureType(obj.sType, "sType", 1);
17266 
17267       if (obj.pNext) {
17268          dumpPNextChain(obj.pNext);
17269       } else {
17270          PRINT_SPACE
17271          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17272      }
17273 
17274      print_VkBufferCreateFlags(obj.flags, "flags", 1);
17275 
17276      print_VkBufferUsageFlags(obj.usage, "usage", 1);
17277 
17278      print_VkExternalMemoryHandleTypeFlagBits(obj.handleType, "handleType", 0);
17279 
17280      INDENT(-4);
17281      PRINT_SPACE
17282      if (commaNeeded)
17283          _OUT << "}," << std::endl;
17284      else
17285          _OUT << "}" << std::endl;
17286 }
print_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo * obj,const std::string & s,bool commaNeeded=true)17287 static void print_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo * obj, const std::string& s, bool commaNeeded=true) {
17288      PRINT_SPACE
17289      _OUT << "{" << std::endl;
17290      INDENT(4);
17291 
17292      print_VkStructureType(obj->sType, "sType", 1);
17293 
17294       if (obj->pNext) {
17295          dumpPNextChain(obj->pNext);
17296       } else {
17297          PRINT_SPACE
17298          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17299      }
17300 
17301      print_VkBufferCreateFlags(obj->flags, "flags", 1);
17302 
17303      print_VkBufferUsageFlags(obj->usage, "usage", 1);
17304 
17305      print_VkExternalMemoryHandleTypeFlagBits(obj->handleType, "handleType", 0);
17306 
17307      INDENT(-4);
17308      PRINT_SPACE
17309      if (commaNeeded)
17310          _OUT << "}," << std::endl;
17311      else
17312          _OUT << "}" << std::endl;
17313 }
17314 
print_VkExternalBufferProperties(VkExternalBufferProperties obj,const std::string & s,bool commaNeeded=true)17315 static void print_VkExternalBufferProperties(VkExternalBufferProperties obj, const std::string& s, bool commaNeeded=true) {
17316      PRINT_SPACE
17317      _OUT << "{" << std::endl;
17318      INDENT(4);
17319 
17320      print_VkStructureType(obj.sType, "sType", 1);
17321 
17322       if (obj.pNext) {
17323          dumpPNextChain(obj.pNext);
17324       } else {
17325          PRINT_SPACE
17326          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17327      }
17328 
17329      PRINT_SPACE
17330      _OUT << "\"externalMemoryProperties\": " << std::endl;
17331      {
17332            print_VkExternalMemoryProperties(obj.externalMemoryProperties, "externalMemoryProperties", 0);
17333      }
17334 
17335      INDENT(-4);
17336      PRINT_SPACE
17337      if (commaNeeded)
17338          _OUT << "}," << std::endl;
17339      else
17340          _OUT << "}" << std::endl;
17341 }
print_VkExternalBufferProperties(const VkExternalBufferProperties * obj,const std::string & s,bool commaNeeded=true)17342 static void print_VkExternalBufferProperties(const VkExternalBufferProperties * obj, const std::string& s, bool commaNeeded=true) {
17343      PRINT_SPACE
17344      _OUT << "{" << std::endl;
17345      INDENT(4);
17346 
17347      print_VkStructureType(obj->sType, "sType", 1);
17348 
17349       if (obj->pNext) {
17350          dumpPNextChain(obj->pNext);
17351       } else {
17352          PRINT_SPACE
17353          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17354      }
17355 
17356      PRINT_SPACE
17357      _OUT << "\"externalMemoryProperties\": " << std::endl;
17358      {
17359            print_VkExternalMemoryProperties(obj->externalMemoryProperties, "externalMemoryProperties", 0);
17360      }
17361 
17362      INDENT(-4);
17363      PRINT_SPACE
17364      if (commaNeeded)
17365          _OUT << "}," << std::endl;
17366      else
17367          _OUT << "}" << std::endl;
17368 }
17369 
print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj,const std::string & s,bool commaNeeded=true)17370 static void print_VkPhysicalDeviceIDProperties(VkPhysicalDeviceIDProperties obj, const std::string& s, bool commaNeeded=true) {
17371      PRINT_SPACE
17372      _OUT << "{" << std::endl;
17373      INDENT(4);
17374 
17375      print_VkStructureType(obj.sType, "sType", 1);
17376 
17377       if (obj.pNext) {
17378          dumpPNextChain(obj.pNext);
17379       } else {
17380          PRINT_SPACE
17381          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17382      }
17383 
17384      PRINT_SPACE
17385      _OUT << "\"deviceUUID\":" << std::endl;
17386      PRINT_SPACE
17387        _OUT << "[" << std::endl;
17388        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
17389            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
17390            print_uint8_t(obj.deviceUUID[i], "", isCommaNeeded);
17391        }
17392        PRINT_SPACE
17393        _OUT << "]" << "," << std::endl;
17394 
17395      PRINT_SPACE
17396      _OUT << "\"driverUUID\":" << std::endl;
17397      PRINT_SPACE
17398        _OUT << "[" << std::endl;
17399        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
17400            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
17401            print_uint8_t(obj.driverUUID[i], "", isCommaNeeded);
17402        }
17403        PRINT_SPACE
17404        _OUT << "]" << "," << std::endl;
17405 
17406      PRINT_SPACE
17407      _OUT << "\"deviceLUID\":" << std::endl;
17408      PRINT_SPACE
17409        _OUT << "[" << std::endl;
17410        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
17411            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
17412            print_uint8_t(obj.deviceLUID[i], "", isCommaNeeded);
17413        }
17414        PRINT_SPACE
17415        _OUT << "]" << "," << std::endl;
17416 
17417      print_uint32_t(obj.deviceNodeMask, "deviceNodeMask", 1);
17418 
17419      print_VkBool32(obj.deviceLUIDValid, "deviceLUIDValid", 0);
17420 
17421      INDENT(-4);
17422      PRINT_SPACE
17423      if (commaNeeded)
17424          _OUT << "}," << std::endl;
17425      else
17426          _OUT << "}" << std::endl;
17427 }
print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties * obj,const std::string & s,bool commaNeeded=true)17428 static void print_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties * obj, const std::string& s, bool commaNeeded=true) {
17429      PRINT_SPACE
17430      _OUT << "{" << std::endl;
17431      INDENT(4);
17432 
17433      print_VkStructureType(obj->sType, "sType", 1);
17434 
17435       if (obj->pNext) {
17436          dumpPNextChain(obj->pNext);
17437       } else {
17438          PRINT_SPACE
17439          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17440      }
17441 
17442      PRINT_SPACE
17443      _OUT << "\"deviceUUID\":" << std::endl;
17444      PRINT_SPACE
17445        _OUT << "[" << std::endl;
17446        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
17447            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
17448            print_uint8_t(obj->deviceUUID[i], "", isCommaNeeded);
17449        }
17450        PRINT_SPACE
17451        _OUT << "]" << "," << std::endl;
17452 
17453      PRINT_SPACE
17454      _OUT << "\"driverUUID\":" << std::endl;
17455      PRINT_SPACE
17456        _OUT << "[" << std::endl;
17457        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
17458            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
17459            print_uint8_t(obj->driverUUID[i], "", isCommaNeeded);
17460        }
17461        PRINT_SPACE
17462        _OUT << "]" << "," << std::endl;
17463 
17464      PRINT_SPACE
17465      _OUT << "\"deviceLUID\":" << std::endl;
17466      PRINT_SPACE
17467        _OUT << "[" << std::endl;
17468        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
17469            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
17470            print_uint8_t(obj->deviceLUID[i], "", isCommaNeeded);
17471        }
17472        PRINT_SPACE
17473        _OUT << "]" << "," << std::endl;
17474 
17475      print_uint32_t(obj->deviceNodeMask, "deviceNodeMask", 1);
17476 
17477      print_VkBool32(obj->deviceLUIDValid, "deviceLUIDValid", 0);
17478 
17479      INDENT(-4);
17480      PRINT_SPACE
17481      if (commaNeeded)
17482          _OUT << "}," << std::endl;
17483      else
17484          _OUT << "}" << std::endl;
17485 }
17486 
print_VkExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInfo obj,const std::string & s,bool commaNeeded=true)17487 static void print_VkExternalMemoryImageCreateInfo(VkExternalMemoryImageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
17488      PRINT_SPACE
17489      _OUT << "{" << std::endl;
17490      INDENT(4);
17491 
17492      print_VkStructureType(obj.sType, "sType", 1);
17493 
17494       if (obj.pNext) {
17495          dumpPNextChain(obj.pNext);
17496       } else {
17497          PRINT_SPACE
17498          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17499      }
17500 
17501      print_VkExternalMemoryHandleTypeFlags(obj.handleTypes, "handleTypes", 0);
17502 
17503      INDENT(-4);
17504      PRINT_SPACE
17505      if (commaNeeded)
17506          _OUT << "}," << std::endl;
17507      else
17508          _OUT << "}" << std::endl;
17509 }
print_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo * obj,const std::string & s,bool commaNeeded=true)17510 static void print_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
17511      PRINT_SPACE
17512      _OUT << "{" << std::endl;
17513      INDENT(4);
17514 
17515      print_VkStructureType(obj->sType, "sType", 1);
17516 
17517       if (obj->pNext) {
17518          dumpPNextChain(obj->pNext);
17519       } else {
17520          PRINT_SPACE
17521          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17522      }
17523 
17524      print_VkExternalMemoryHandleTypeFlags(obj->handleTypes, "handleTypes", 0);
17525 
17526      INDENT(-4);
17527      PRINT_SPACE
17528      if (commaNeeded)
17529          _OUT << "}," << std::endl;
17530      else
17531          _OUT << "}" << std::endl;
17532 }
17533 
print_VkExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateInfo obj,const std::string & s,bool commaNeeded=true)17534 static void print_VkExternalMemoryBufferCreateInfo(VkExternalMemoryBufferCreateInfo obj, const std::string& s, bool commaNeeded=true) {
17535      PRINT_SPACE
17536      _OUT << "{" << std::endl;
17537      INDENT(4);
17538 
17539      print_VkStructureType(obj.sType, "sType", 1);
17540 
17541       if (obj.pNext) {
17542          dumpPNextChain(obj.pNext);
17543       } else {
17544          PRINT_SPACE
17545          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17546      }
17547 
17548      print_VkExternalMemoryHandleTypeFlags(obj.handleTypes, "handleTypes", 0);
17549 
17550      INDENT(-4);
17551      PRINT_SPACE
17552      if (commaNeeded)
17553          _OUT << "}," << std::endl;
17554      else
17555          _OUT << "}" << std::endl;
17556 }
print_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo * obj,const std::string & s,bool commaNeeded=true)17557 static void print_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
17558      PRINT_SPACE
17559      _OUT << "{" << std::endl;
17560      INDENT(4);
17561 
17562      print_VkStructureType(obj->sType, "sType", 1);
17563 
17564       if (obj->pNext) {
17565          dumpPNextChain(obj->pNext);
17566       } else {
17567          PRINT_SPACE
17568          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17569      }
17570 
17571      print_VkExternalMemoryHandleTypeFlags(obj->handleTypes, "handleTypes", 0);
17572 
17573      INDENT(-4);
17574      PRINT_SPACE
17575      if (commaNeeded)
17576          _OUT << "}," << std::endl;
17577      else
17578          _OUT << "}" << std::endl;
17579 }
17580 
print_VkExportMemoryAllocateInfo(VkExportMemoryAllocateInfo obj,const std::string & s,bool commaNeeded=true)17581 static void print_VkExportMemoryAllocateInfo(VkExportMemoryAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
17582      PRINT_SPACE
17583      _OUT << "{" << std::endl;
17584      INDENT(4);
17585 
17586      print_VkStructureType(obj.sType, "sType", 1);
17587 
17588       if (obj.pNext) {
17589          dumpPNextChain(obj.pNext);
17590       } else {
17591          PRINT_SPACE
17592          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17593      }
17594 
17595      print_VkExternalMemoryHandleTypeFlags(obj.handleTypes, "handleTypes", 0);
17596 
17597      INDENT(-4);
17598      PRINT_SPACE
17599      if (commaNeeded)
17600          _OUT << "}," << std::endl;
17601      else
17602          _OUT << "}" << std::endl;
17603 }
print_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo * obj,const std::string & s,bool commaNeeded=true)17604 static void print_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
17605      PRINT_SPACE
17606      _OUT << "{" << std::endl;
17607      INDENT(4);
17608 
17609      print_VkStructureType(obj->sType, "sType", 1);
17610 
17611       if (obj->pNext) {
17612          dumpPNextChain(obj->pNext);
17613       } else {
17614          PRINT_SPACE
17615          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17616      }
17617 
17618      print_VkExternalMemoryHandleTypeFlags(obj->handleTypes, "handleTypes", 0);
17619 
17620      INDENT(-4);
17621      PRINT_SPACE
17622      if (commaNeeded)
17623          _OUT << "}," << std::endl;
17624      else
17625          _OUT << "}" << std::endl;
17626 }
17627 
print_VkPhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenceInfo obj,const std::string & s,bool commaNeeded=true)17628 static void print_VkPhysicalDeviceExternalFenceInfo(VkPhysicalDeviceExternalFenceInfo obj, const std::string& s, bool commaNeeded=true) {
17629      PRINT_SPACE
17630      _OUT << "{" << std::endl;
17631      INDENT(4);
17632 
17633      print_VkStructureType(obj.sType, "sType", 1);
17634 
17635       if (obj.pNext) {
17636          dumpPNextChain(obj.pNext);
17637       } else {
17638          PRINT_SPACE
17639          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17640      }
17641 
17642      print_VkExternalFenceHandleTypeFlagBits(obj.handleType, "handleType", 0);
17643 
17644      INDENT(-4);
17645      PRINT_SPACE
17646      if (commaNeeded)
17647          _OUT << "}," << std::endl;
17648      else
17649          _OUT << "}" << std::endl;
17650 }
print_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo * obj,const std::string & s,bool commaNeeded=true)17651 static void print_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo * obj, const std::string& s, bool commaNeeded=true) {
17652      PRINT_SPACE
17653      _OUT << "{" << std::endl;
17654      INDENT(4);
17655 
17656      print_VkStructureType(obj->sType, "sType", 1);
17657 
17658       if (obj->pNext) {
17659          dumpPNextChain(obj->pNext);
17660       } else {
17661          PRINT_SPACE
17662          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17663      }
17664 
17665      print_VkExternalFenceHandleTypeFlagBits(obj->handleType, "handleType", 0);
17666 
17667      INDENT(-4);
17668      PRINT_SPACE
17669      if (commaNeeded)
17670          _OUT << "}," << std::endl;
17671      else
17672          _OUT << "}" << std::endl;
17673 }
17674 
print_VkExternalFenceProperties(VkExternalFenceProperties obj,const std::string & s,bool commaNeeded=true)17675 static void print_VkExternalFenceProperties(VkExternalFenceProperties obj, const std::string& s, bool commaNeeded=true) {
17676      PRINT_SPACE
17677      _OUT << "{" << std::endl;
17678      INDENT(4);
17679 
17680      print_VkStructureType(obj.sType, "sType", 1);
17681 
17682       if (obj.pNext) {
17683          dumpPNextChain(obj.pNext);
17684       } else {
17685          PRINT_SPACE
17686          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17687      }
17688 
17689      print_VkExternalFenceHandleTypeFlags(obj.exportFromImportedHandleTypes, "exportFromImportedHandleTypes", 1);
17690 
17691      print_VkExternalFenceHandleTypeFlags(obj.compatibleHandleTypes, "compatibleHandleTypes", 1);
17692 
17693      print_VkExternalFenceFeatureFlags(obj.externalFenceFeatures, "externalFenceFeatures", 0);
17694 
17695      INDENT(-4);
17696      PRINT_SPACE
17697      if (commaNeeded)
17698          _OUT << "}," << std::endl;
17699      else
17700          _OUT << "}" << std::endl;
17701 }
print_VkExternalFenceProperties(const VkExternalFenceProperties * obj,const std::string & s,bool commaNeeded=true)17702 static void print_VkExternalFenceProperties(const VkExternalFenceProperties * obj, const std::string& s, bool commaNeeded=true) {
17703      PRINT_SPACE
17704      _OUT << "{" << std::endl;
17705      INDENT(4);
17706 
17707      print_VkStructureType(obj->sType, "sType", 1);
17708 
17709       if (obj->pNext) {
17710          dumpPNextChain(obj->pNext);
17711       } else {
17712          PRINT_SPACE
17713          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17714      }
17715 
17716      print_VkExternalFenceHandleTypeFlags(obj->exportFromImportedHandleTypes, "exportFromImportedHandleTypes", 1);
17717 
17718      print_VkExternalFenceHandleTypeFlags(obj->compatibleHandleTypes, "compatibleHandleTypes", 1);
17719 
17720      print_VkExternalFenceFeatureFlags(obj->externalFenceFeatures, "externalFenceFeatures", 0);
17721 
17722      INDENT(-4);
17723      PRINT_SPACE
17724      if (commaNeeded)
17725          _OUT << "}," << std::endl;
17726      else
17727          _OUT << "}" << std::endl;
17728 }
17729 
print_VkExportFenceCreateInfo(VkExportFenceCreateInfo obj,const std::string & s,bool commaNeeded=true)17730 static void print_VkExportFenceCreateInfo(VkExportFenceCreateInfo obj, const std::string& s, bool commaNeeded=true) {
17731      PRINT_SPACE
17732      _OUT << "{" << std::endl;
17733      INDENT(4);
17734 
17735      print_VkStructureType(obj.sType, "sType", 1);
17736 
17737       if (obj.pNext) {
17738          dumpPNextChain(obj.pNext);
17739       } else {
17740          PRINT_SPACE
17741          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17742      }
17743 
17744      print_VkExternalFenceHandleTypeFlags(obj.handleTypes, "handleTypes", 0);
17745 
17746      INDENT(-4);
17747      PRINT_SPACE
17748      if (commaNeeded)
17749          _OUT << "}," << std::endl;
17750      else
17751          _OUT << "}" << std::endl;
17752 }
print_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * obj,const std::string & s,bool commaNeeded=true)17753 static void print_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
17754      PRINT_SPACE
17755      _OUT << "{" << std::endl;
17756      INDENT(4);
17757 
17758      print_VkStructureType(obj->sType, "sType", 1);
17759 
17760       if (obj->pNext) {
17761          dumpPNextChain(obj->pNext);
17762       } else {
17763          PRINT_SPACE
17764          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17765      }
17766 
17767      print_VkExternalFenceHandleTypeFlags(obj->handleTypes, "handleTypes", 0);
17768 
17769      INDENT(-4);
17770      PRINT_SPACE
17771      if (commaNeeded)
17772          _OUT << "}," << std::endl;
17773      else
17774          _OUT << "}" << std::endl;
17775 }
17776 
print_VkExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo obj,const std::string & s,bool commaNeeded=true)17777 static void print_VkExportSemaphoreCreateInfo(VkExportSemaphoreCreateInfo obj, const std::string& s, bool commaNeeded=true) {
17778      PRINT_SPACE
17779      _OUT << "{" << std::endl;
17780      INDENT(4);
17781 
17782      print_VkStructureType(obj.sType, "sType", 1);
17783 
17784       if (obj.pNext) {
17785          dumpPNextChain(obj.pNext);
17786       } else {
17787          PRINT_SPACE
17788          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17789      }
17790 
17791      print_VkExternalSemaphoreHandleTypeFlags(obj.handleTypes, "handleTypes", 0);
17792 
17793      INDENT(-4);
17794      PRINT_SPACE
17795      if (commaNeeded)
17796          _OUT << "}," << std::endl;
17797      else
17798          _OUT << "}" << std::endl;
17799 }
print_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo * obj,const std::string & s,bool commaNeeded=true)17800 static void print_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
17801      PRINT_SPACE
17802      _OUT << "{" << std::endl;
17803      INDENT(4);
17804 
17805      print_VkStructureType(obj->sType, "sType", 1);
17806 
17807       if (obj->pNext) {
17808          dumpPNextChain(obj->pNext);
17809       } else {
17810          PRINT_SPACE
17811          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17812      }
17813 
17814      print_VkExternalSemaphoreHandleTypeFlags(obj->handleTypes, "handleTypes", 0);
17815 
17816      INDENT(-4);
17817      PRINT_SPACE
17818      if (commaNeeded)
17819          _OUT << "}," << std::endl;
17820      else
17821          _OUT << "}" << std::endl;
17822 }
17823 
print_VkPhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternalSemaphoreInfo obj,const std::string & s,bool commaNeeded=true)17824 static void print_VkPhysicalDeviceExternalSemaphoreInfo(VkPhysicalDeviceExternalSemaphoreInfo obj, const std::string& s, bool commaNeeded=true) {
17825      PRINT_SPACE
17826      _OUT << "{" << std::endl;
17827      INDENT(4);
17828 
17829      print_VkStructureType(obj.sType, "sType", 1);
17830 
17831       if (obj.pNext) {
17832          dumpPNextChain(obj.pNext);
17833       } else {
17834          PRINT_SPACE
17835          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17836      }
17837 
17838      print_VkExternalSemaphoreHandleTypeFlagBits(obj.handleType, "handleType", 0);
17839 
17840      INDENT(-4);
17841      PRINT_SPACE
17842      if (commaNeeded)
17843          _OUT << "}," << std::endl;
17844      else
17845          _OUT << "}" << std::endl;
17846 }
print_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceExternalSemaphoreInfo * obj,const std::string & s,bool commaNeeded=true)17847 static void print_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceExternalSemaphoreInfo * obj, const std::string& s, bool commaNeeded=true) {
17848      PRINT_SPACE
17849      _OUT << "{" << std::endl;
17850      INDENT(4);
17851 
17852      print_VkStructureType(obj->sType, "sType", 1);
17853 
17854       if (obj->pNext) {
17855          dumpPNextChain(obj->pNext);
17856       } else {
17857          PRINT_SPACE
17858          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17859      }
17860 
17861      print_VkExternalSemaphoreHandleTypeFlagBits(obj->handleType, "handleType", 0);
17862 
17863      INDENT(-4);
17864      PRINT_SPACE
17865      if (commaNeeded)
17866          _OUT << "}," << std::endl;
17867      else
17868          _OUT << "}" << std::endl;
17869 }
17870 
print_VkExternalSemaphoreProperties(VkExternalSemaphoreProperties obj,const std::string & s,bool commaNeeded=true)17871 static void print_VkExternalSemaphoreProperties(VkExternalSemaphoreProperties obj, const std::string& s, bool commaNeeded=true) {
17872      PRINT_SPACE
17873      _OUT << "{" << std::endl;
17874      INDENT(4);
17875 
17876      print_VkStructureType(obj.sType, "sType", 1);
17877 
17878       if (obj.pNext) {
17879          dumpPNextChain(obj.pNext);
17880       } else {
17881          PRINT_SPACE
17882          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17883      }
17884 
17885      print_VkExternalSemaphoreHandleTypeFlags(obj.exportFromImportedHandleTypes, "exportFromImportedHandleTypes", 1);
17886 
17887      print_VkExternalSemaphoreHandleTypeFlags(obj.compatibleHandleTypes, "compatibleHandleTypes", 1);
17888 
17889      print_VkExternalSemaphoreFeatureFlags(obj.externalSemaphoreFeatures, "externalSemaphoreFeatures", 0);
17890 
17891      INDENT(-4);
17892      PRINT_SPACE
17893      if (commaNeeded)
17894          _OUT << "}," << std::endl;
17895      else
17896          _OUT << "}" << std::endl;
17897 }
print_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties * obj,const std::string & s,bool commaNeeded=true)17898 static void print_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties * obj, const std::string& s, bool commaNeeded=true) {
17899      PRINT_SPACE
17900      _OUT << "{" << std::endl;
17901      INDENT(4);
17902 
17903      print_VkStructureType(obj->sType, "sType", 1);
17904 
17905       if (obj->pNext) {
17906          dumpPNextChain(obj->pNext);
17907       } else {
17908          PRINT_SPACE
17909          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17910      }
17911 
17912      print_VkExternalSemaphoreHandleTypeFlags(obj->exportFromImportedHandleTypes, "exportFromImportedHandleTypes", 1);
17913 
17914      print_VkExternalSemaphoreHandleTypeFlags(obj->compatibleHandleTypes, "compatibleHandleTypes", 1);
17915 
17916      print_VkExternalSemaphoreFeatureFlags(obj->externalSemaphoreFeatures, "externalSemaphoreFeatures", 0);
17917 
17918      INDENT(-4);
17919      PRINT_SPACE
17920      if (commaNeeded)
17921          _OUT << "}," << std::endl;
17922      else
17923          _OUT << "}" << std::endl;
17924 }
17925 
print_VkPhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMaintenance3Properties obj,const std::string & s,bool commaNeeded=true)17926 static void print_VkPhysicalDeviceMaintenance3Properties(VkPhysicalDeviceMaintenance3Properties obj, const std::string& s, bool commaNeeded=true) {
17927      PRINT_SPACE
17928      _OUT << "{" << std::endl;
17929      INDENT(4);
17930 
17931      print_VkStructureType(obj.sType, "sType", 1);
17932 
17933       if (obj.pNext) {
17934          dumpPNextChain(obj.pNext);
17935       } else {
17936          PRINT_SPACE
17937          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17938      }
17939 
17940      print_uint32_t(obj.maxPerSetDescriptors, "maxPerSetDescriptors", 1);
17941 
17942      print_VkDeviceSize(obj.maxMemoryAllocationSize, "maxMemoryAllocationSize", 0);
17943 
17944      INDENT(-4);
17945      PRINT_SPACE
17946      if (commaNeeded)
17947          _OUT << "}," << std::endl;
17948      else
17949          _OUT << "}" << std::endl;
17950 }
print_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceMaintenance3Properties * obj,const std::string & s,bool commaNeeded=true)17951 static void print_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceMaintenance3Properties * obj, const std::string& s, bool commaNeeded=true) {
17952      PRINT_SPACE
17953      _OUT << "{" << std::endl;
17954      INDENT(4);
17955 
17956      print_VkStructureType(obj->sType, "sType", 1);
17957 
17958       if (obj->pNext) {
17959          dumpPNextChain(obj->pNext);
17960       } else {
17961          PRINT_SPACE
17962          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17963      }
17964 
17965      print_uint32_t(obj->maxPerSetDescriptors, "maxPerSetDescriptors", 1);
17966 
17967      print_VkDeviceSize(obj->maxMemoryAllocationSize, "maxMemoryAllocationSize", 0);
17968 
17969      INDENT(-4);
17970      PRINT_SPACE
17971      if (commaNeeded)
17972          _OUT << "}," << std::endl;
17973      else
17974          _OUT << "}" << std::endl;
17975 }
17976 
print_VkDescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport obj,const std::string & s,bool commaNeeded=true)17977 static void print_VkDescriptorSetLayoutSupport(VkDescriptorSetLayoutSupport obj, const std::string& s, bool commaNeeded=true) {
17978      PRINT_SPACE
17979      _OUT << "{" << std::endl;
17980      INDENT(4);
17981 
17982      print_VkStructureType(obj.sType, "sType", 1);
17983 
17984       if (obj.pNext) {
17985          dumpPNextChain(obj.pNext);
17986       } else {
17987          PRINT_SPACE
17988          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
17989      }
17990 
17991      print_VkBool32(obj.supported, "supported", 0);
17992 
17993      INDENT(-4);
17994      PRINT_SPACE
17995      if (commaNeeded)
17996          _OUT << "}," << std::endl;
17997      else
17998          _OUT << "}" << std::endl;
17999 }
print_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport * obj,const std::string & s,bool commaNeeded=true)18000 static void print_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport * obj, const std::string& s, bool commaNeeded=true) {
18001      PRINT_SPACE
18002      _OUT << "{" << std::endl;
18003      INDENT(4);
18004 
18005      print_VkStructureType(obj->sType, "sType", 1);
18006 
18007       if (obj->pNext) {
18008          dumpPNextChain(obj->pNext);
18009       } else {
18010          PRINT_SPACE
18011          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18012      }
18013 
18014      print_VkBool32(obj->supported, "supported", 0);
18015 
18016      INDENT(-4);
18017      PRINT_SPACE
18018      if (commaNeeded)
18019          _OUT << "}," << std::endl;
18020      else
18021          _OUT << "}" << std::endl;
18022 }
18023 
print_VkPhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceShaderDrawParametersFeatures obj,const std::string & s,bool commaNeeded=true)18024 static void print_VkPhysicalDeviceShaderDrawParametersFeatures(VkPhysicalDeviceShaderDrawParametersFeatures obj, const std::string& s, bool commaNeeded=true) {
18025      PRINT_SPACE
18026      _OUT << "{" << std::endl;
18027      INDENT(4);
18028 
18029      print_VkStructureType(obj.sType, "sType", 1);
18030 
18031       if (obj.pNext) {
18032          dumpPNextChain(obj.pNext);
18033       } else {
18034          PRINT_SPACE
18035          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18036      }
18037 
18038      print_VkBool32(obj.shaderDrawParameters, "shaderDrawParameters", 0);
18039 
18040      INDENT(-4);
18041      PRINT_SPACE
18042      if (commaNeeded)
18043          _OUT << "}," << std::endl;
18044      else
18045          _OUT << "}" << std::endl;
18046 }
print_VkPhysicalDeviceShaderDrawParametersFeatures(const VkPhysicalDeviceShaderDrawParametersFeatures * obj,const std::string & s,bool commaNeeded=true)18047 static void print_VkPhysicalDeviceShaderDrawParametersFeatures(const VkPhysicalDeviceShaderDrawParametersFeatures * obj, const std::string& s, bool commaNeeded=true) {
18048      PRINT_SPACE
18049      _OUT << "{" << std::endl;
18050      INDENT(4);
18051 
18052      print_VkStructureType(obj->sType, "sType", 1);
18053 
18054       if (obj->pNext) {
18055          dumpPNextChain(obj->pNext);
18056       } else {
18057          PRINT_SPACE
18058          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18059      }
18060 
18061      print_VkBool32(obj->shaderDrawParameters, "shaderDrawParameters", 0);
18062 
18063      INDENT(-4);
18064      PRINT_SPACE
18065      if (commaNeeded)
18066          _OUT << "}," << std::endl;
18067      else
18068          _OUT << "}" << std::endl;
18069 }
18070 
18071 typedef VkPhysicalDeviceShaderDrawParametersFeatures VkPhysicalDeviceShaderDrawParameterFeatures;
18072 
18073 static std::map<deUint64, std::string> VkDriverId_map = {
18074     std::make_pair(1, "VK_DRIVER_ID_AMD_PROPRIETARY"),
18075     std::make_pair(2, "VK_DRIVER_ID_AMD_OPEN_SOURCE"),
18076     std::make_pair(3, "VK_DRIVER_ID_MESA_RADV"),
18077     std::make_pair(4, "VK_DRIVER_ID_NVIDIA_PROPRIETARY"),
18078     std::make_pair(5, "VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS"),
18079     std::make_pair(6, "VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA"),
18080     std::make_pair(7, "VK_DRIVER_ID_IMAGINATION_PROPRIETARY"),
18081     std::make_pair(8, "VK_DRIVER_ID_QUALCOMM_PROPRIETARY"),
18082     std::make_pair(9, "VK_DRIVER_ID_ARM_PROPRIETARY"),
18083     std::make_pair(10, "VK_DRIVER_ID_GOOGLE_SWIFTSHADER"),
18084     std::make_pair(11, "VK_DRIVER_ID_GGP_PROPRIETARY"),
18085     std::make_pair(12, "VK_DRIVER_ID_BROADCOM_PROPRIETARY"),
18086     std::make_pair(13, "VK_DRIVER_ID_MESA_LLVMPIPE"),
18087     std::make_pair(14, "VK_DRIVER_ID_MOLTENVK"),
18088     std::make_pair(15, "VK_DRIVER_ID_COREAVI_PROPRIETARY"),
18089     std::make_pair(16, "VK_DRIVER_ID_JUICE_PROPRIETARY"),
18090     std::make_pair(17, "VK_DRIVER_ID_VERISILICON_PROPRIETARY"),
18091     std::make_pair(18, "VK_DRIVER_ID_MESA_TURNIP"),
18092     std::make_pair(19, "VK_DRIVER_ID_MESA_V3DV"),
18093     std::make_pair(20, "VK_DRIVER_ID_MESA_PANVK"),
18094     std::make_pair(21, "VK_DRIVER_ID_SAMSUNG_PROPRIETARY"),
18095 };
print_VkDriverId(VkDriverId obj,const std::string & str,bool commaNeeded=true)18096 static void print_VkDriverId(VkDriverId obj, const std::string& str, bool commaNeeded=true) {
18097      PRINT_SPACE
18098      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18099      if (commaNeeded)
18100          _OUT << "\"" <<  VkDriverId_map[obj] << "\"," << std::endl;
18101      else
18102          _OUT << "\"" << VkDriverId_map[obj] << "\"" << std::endl;
18103 }
print_VkDriverId(const VkDriverId * obj,const std::string & str,bool commaNeeded=true)18104 static void print_VkDriverId(const VkDriverId * obj, const std::string& str, bool commaNeeded=true) {
18105      PRINT_SPACE
18106      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18107      if (commaNeeded)
18108          _OUT << "\"" <<  VkDriverId_map[*obj] << "\"," << std::endl;
18109      else
18110          _OUT << "\"" << VkDriverId_map[*obj] << "\"" << std::endl;
18111 }
18112 
18113 static std::map<deUint64, std::string> VkShaderFloatControlsIndependence_map = {
18114     std::make_pair(0, "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY"),
18115     std::make_pair(1, "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL"),
18116     std::make_pair(2, "VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE"),
18117 };
print_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence obj,const std::string & str,bool commaNeeded=true)18118 static void print_VkShaderFloatControlsIndependence(VkShaderFloatControlsIndependence obj, const std::string& str, bool commaNeeded=true) {
18119      PRINT_SPACE
18120      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18121      if (commaNeeded)
18122          _OUT << "\"" <<  VkShaderFloatControlsIndependence_map[obj] << "\"," << std::endl;
18123      else
18124          _OUT << "\"" << VkShaderFloatControlsIndependence_map[obj] << "\"" << std::endl;
18125 }
print_VkShaderFloatControlsIndependence(const VkShaderFloatControlsIndependence * obj,const std::string & str,bool commaNeeded=true)18126 static void print_VkShaderFloatControlsIndependence(const VkShaderFloatControlsIndependence * obj, const std::string& str, bool commaNeeded=true) {
18127      PRINT_SPACE
18128      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18129      if (commaNeeded)
18130          _OUT << "\"" <<  VkShaderFloatControlsIndependence_map[*obj] << "\"," << std::endl;
18131      else
18132          _OUT << "\"" << VkShaderFloatControlsIndependence_map[*obj] << "\"" << std::endl;
18133 }
18134 
18135 static std::map<deUint64, std::string> VkResolveModeFlagBits_map = {
18136     std::make_pair(0, "VK_RESOLVE_MODE_NONE"),
18137     std::make_pair(1ULL << 0, "VK_RESOLVE_MODE_SAMPLE_ZERO_BIT"),
18138     std::make_pair(1ULL << 1, "VK_RESOLVE_MODE_AVERAGE_BIT"),
18139     std::make_pair(1ULL << 2, "VK_RESOLVE_MODE_MIN_BIT"),
18140     std::make_pair(1ULL << 3, "VK_RESOLVE_MODE_MAX_BIT"),
18141 };
print_VkResolveModeFlagBits(VkResolveModeFlagBits obj,const std::string & str,bool commaNeeded=true)18142 static void print_VkResolveModeFlagBits(VkResolveModeFlagBits obj, const std::string& str, bool commaNeeded=true) {
18143      PRINT_SPACE
18144      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18145      if (commaNeeded)
18146          _OUT << "\"" <<  VkResolveModeFlagBits_map[obj] << "\"," << std::endl;
18147      else
18148          _OUT << "\"" << VkResolveModeFlagBits_map[obj] << "\"" << std::endl;
18149 }
print_VkResolveModeFlagBits(const VkResolveModeFlagBits * obj,const std::string & str,bool commaNeeded=true)18150 static void print_VkResolveModeFlagBits(const VkResolveModeFlagBits * obj, const std::string& str, bool commaNeeded=true) {
18151      PRINT_SPACE
18152      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18153      if (commaNeeded)
18154          _OUT << "\"" <<  VkResolveModeFlagBits_map[*obj] << "\"," << std::endl;
18155      else
18156          _OUT << "\"" << VkResolveModeFlagBits_map[*obj] << "\"" << std::endl;
18157 }
18158 
18159 static std::map<deUint64, std::string> VkDescriptorBindingFlagBits_map = {
18160     std::make_pair(1ULL << 0, "VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT"),
18161     std::make_pair(1ULL << 1, "VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT"),
18162     std::make_pair(1ULL << 2, "VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT"),
18163     std::make_pair(1ULL << 3, "VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT"),
18164     std::make_pair(1ULL << 4, "VK_DESCRIPTOR_BINDING_RESERVED_4_BIT_QCOM"),
18165 };
print_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits obj,const std::string & str,bool commaNeeded=true)18166 static void print_VkDescriptorBindingFlagBits(VkDescriptorBindingFlagBits obj, const std::string& str, bool commaNeeded=true) {
18167      PRINT_SPACE
18168      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18169      if (commaNeeded)
18170          _OUT << "\"" <<  VkDescriptorBindingFlagBits_map[obj] << "\"," << std::endl;
18171      else
18172          _OUT << "\"" << VkDescriptorBindingFlagBits_map[obj] << "\"" << std::endl;
18173 }
print_VkDescriptorBindingFlagBits(const VkDescriptorBindingFlagBits * obj,const std::string & str,bool commaNeeded=true)18174 static void print_VkDescriptorBindingFlagBits(const VkDescriptorBindingFlagBits * obj, const std::string& str, bool commaNeeded=true) {
18175      PRINT_SPACE
18176      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18177      if (commaNeeded)
18178          _OUT << "\"" <<  VkDescriptorBindingFlagBits_map[*obj] << "\"," << std::endl;
18179      else
18180          _OUT << "\"" << VkDescriptorBindingFlagBits_map[*obj] << "\"" << std::endl;
18181 }
18182 
18183 static std::map<deUint64, std::string> VkSamplerReductionMode_map = {
18184     std::make_pair(0, "VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE"),
18185     std::make_pair(1, "VK_SAMPLER_REDUCTION_MODE_MIN"),
18186     std::make_pair(2, "VK_SAMPLER_REDUCTION_MODE_MAX"),
18187 };
print_VkSamplerReductionMode(VkSamplerReductionMode obj,const std::string & str,bool commaNeeded=true)18188 static void print_VkSamplerReductionMode(VkSamplerReductionMode obj, const std::string& str, bool commaNeeded=true) {
18189      PRINT_SPACE
18190      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18191      if (commaNeeded)
18192          _OUT << "\"" <<  VkSamplerReductionMode_map[obj] << "\"," << std::endl;
18193      else
18194          _OUT << "\"" << VkSamplerReductionMode_map[obj] << "\"" << std::endl;
18195 }
print_VkSamplerReductionMode(const VkSamplerReductionMode * obj,const std::string & str,bool commaNeeded=true)18196 static void print_VkSamplerReductionMode(const VkSamplerReductionMode * obj, const std::string& str, bool commaNeeded=true) {
18197      PRINT_SPACE
18198      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18199      if (commaNeeded)
18200          _OUT << "\"" <<  VkSamplerReductionMode_map[*obj] << "\"," << std::endl;
18201      else
18202          _OUT << "\"" << VkSamplerReductionMode_map[*obj] << "\"" << std::endl;
18203 }
18204 
18205 static std::map<deUint64, std::string> VkSemaphoreType_map = {
18206     std::make_pair(0, "VK_SEMAPHORE_TYPE_BINARY"),
18207     std::make_pair(1, "VK_SEMAPHORE_TYPE_TIMELINE"),
18208 };
print_VkSemaphoreType(VkSemaphoreType obj,const std::string & str,bool commaNeeded=true)18209 static void print_VkSemaphoreType(VkSemaphoreType obj, const std::string& str, bool commaNeeded=true) {
18210      PRINT_SPACE
18211      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18212      if (commaNeeded)
18213          _OUT << "\"" <<  VkSemaphoreType_map[obj] << "\"," << std::endl;
18214      else
18215          _OUT << "\"" << VkSemaphoreType_map[obj] << "\"" << std::endl;
18216 }
print_VkSemaphoreType(const VkSemaphoreType * obj,const std::string & str,bool commaNeeded=true)18217 static void print_VkSemaphoreType(const VkSemaphoreType * obj, const std::string& str, bool commaNeeded=true) {
18218      PRINT_SPACE
18219      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18220      if (commaNeeded)
18221          _OUT << "\"" <<  VkSemaphoreType_map[*obj] << "\"," << std::endl;
18222      else
18223          _OUT << "\"" << VkSemaphoreType_map[*obj] << "\"" << std::endl;
18224 }
18225 
18226 static std::map<deUint64, std::string> VkSemaphoreWaitFlagBits_map = {
18227     std::make_pair(1ULL << 0, "VK_SEMAPHORE_WAIT_ANY_BIT"),
18228 };
print_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits obj,const std::string & str,bool commaNeeded=true)18229 static void print_VkSemaphoreWaitFlagBits(VkSemaphoreWaitFlagBits obj, const std::string& str, bool commaNeeded=true) {
18230      PRINT_SPACE
18231      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18232      if (commaNeeded)
18233          _OUT << "\"" <<  VkSemaphoreWaitFlagBits_map[obj] << "\"," << std::endl;
18234      else
18235          _OUT << "\"" << VkSemaphoreWaitFlagBits_map[obj] << "\"" << std::endl;
18236 }
print_VkSemaphoreWaitFlagBits(const VkSemaphoreWaitFlagBits * obj,const std::string & str,bool commaNeeded=true)18237 static void print_VkSemaphoreWaitFlagBits(const VkSemaphoreWaitFlagBits * obj, const std::string& str, bool commaNeeded=true) {
18238      PRINT_SPACE
18239      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18240      if (commaNeeded)
18241          _OUT << "\"" <<  VkSemaphoreWaitFlagBits_map[*obj] << "\"," << std::endl;
18242      else
18243          _OUT << "\"" << VkSemaphoreWaitFlagBits_map[*obj] << "\"" << std::endl;
18244 }
18245 
print_VkResolveModeFlags(VkResolveModeFlags obj,const std::string & str,bool commaNeeded=true)18246 static void print_VkResolveModeFlags(VkResolveModeFlags obj, const std::string& str, bool commaNeeded=true) {
18247      PRINT_SPACE
18248      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18249      const int max_bits = 64; // We don't expect the number to be larger.
18250      std::bitset<max_bits> b(obj);
18251      _OUT << "\"";
18252      if (obj == 0) _OUT << "0";
18253      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
18254          if (b[i] == 1) {
18255              bitCount++;
18256              if (bitCount < b.count())
18257                  _OUT << VkResolveModeFlagBits_map[1ULL<<i] << " | ";
18258              else
18259                  _OUT << VkResolveModeFlagBits_map[1ULL<<i];
18260          }
18261      }
18262      if (commaNeeded)
18263        _OUT << "\"" << ",";
18264      else
18265        _OUT << "\""<< "";
18266      _OUT << std::endl;
18267 }
print_VkResolveModeFlags(const VkResolveModeFlags * obj,const std::string & str,bool commaNeeded=true)18268 static void print_VkResolveModeFlags(const VkResolveModeFlags * obj, const std::string& str, bool commaNeeded=true) {
18269      PRINT_SPACE
18270      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18271      const int max_bits = 64; // We don't expect the number to be larger.
18272      std::bitset<max_bits> b(obj);
18273      _OUT << "\"";
18274      if (obj == 0) _OUT << "0";
18275      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
18276          if (b[i] == 1) {
18277              bitCount++;
18278              if (bitCount < b.count())
18279                  _OUT << VkResolveModeFlagBits_map[1ULL<<i] << " | ";
18280              else
18281                  _OUT << VkResolveModeFlagBits_map[1ULL<<i];
18282          }
18283      }
18284      if (commaNeeded)
18285        _OUT << "\"" << ",";
18286      else
18287        _OUT << "\""<< "";
18288      _OUT << std::endl;
18289 }
18290 
print_VkDescriptorBindingFlags(VkDescriptorBindingFlags obj,const std::string & str,bool commaNeeded=true)18291 static void print_VkDescriptorBindingFlags(VkDescriptorBindingFlags obj, const std::string& str, bool commaNeeded=true) {
18292      PRINT_SPACE
18293      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18294      const int max_bits = 64; // We don't expect the number to be larger.
18295      std::bitset<max_bits> b(obj);
18296      _OUT << "\"";
18297      if (obj == 0) _OUT << "0";
18298      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
18299          if (b[i] == 1) {
18300              bitCount++;
18301              if (bitCount < b.count())
18302                  _OUT << VkDescriptorBindingFlagBits_map[1ULL<<i] << " | ";
18303              else
18304                  _OUT << VkDescriptorBindingFlagBits_map[1ULL<<i];
18305          }
18306      }
18307      if (commaNeeded)
18308        _OUT << "\"" << ",";
18309      else
18310        _OUT << "\""<< "";
18311      _OUT << std::endl;
18312 }
print_VkDescriptorBindingFlags(const VkDescriptorBindingFlags * obj,const std::string & str,bool commaNeeded=true)18313 static void print_VkDescriptorBindingFlags(const VkDescriptorBindingFlags * obj, const std::string& str, bool commaNeeded=true) {
18314      PRINT_SPACE
18315      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18316      const int max_bits = 64; // We don't expect the number to be larger.
18317      std::bitset<max_bits> b(obj);
18318      _OUT << "\"";
18319      if (obj == 0) _OUT << "0";
18320      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
18321          if (b[i] == 1) {
18322              bitCount++;
18323              if (bitCount < b.count())
18324                  _OUT << VkDescriptorBindingFlagBits_map[1ULL<<i] << " | ";
18325              else
18326                  _OUT << VkDescriptorBindingFlagBits_map[1ULL<<i];
18327          }
18328      }
18329      if (commaNeeded)
18330        _OUT << "\"" << ",";
18331      else
18332        _OUT << "\""<< "";
18333      _OUT << std::endl;
18334 }
18335 
print_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags obj,const std::string & str,bool commaNeeded=true)18336 static void print_VkSemaphoreWaitFlags(VkSemaphoreWaitFlags obj, const std::string& str, bool commaNeeded=true) {
18337      PRINT_SPACE
18338      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18339      const int max_bits = 64; // We don't expect the number to be larger.
18340      std::bitset<max_bits> b(obj);
18341      _OUT << "\"";
18342      if (obj == 0) _OUT << "0";
18343      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
18344          if (b[i] == 1) {
18345              bitCount++;
18346              if (bitCount < b.count())
18347                  _OUT << VkSemaphoreWaitFlagBits_map[1ULL<<i] << " | ";
18348              else
18349                  _OUT << VkSemaphoreWaitFlagBits_map[1ULL<<i];
18350          }
18351      }
18352      if (commaNeeded)
18353        _OUT << "\"" << ",";
18354      else
18355        _OUT << "\""<< "";
18356      _OUT << std::endl;
18357 }
print_VkSemaphoreWaitFlags(const VkSemaphoreWaitFlags * obj,const std::string & str,bool commaNeeded=true)18358 static void print_VkSemaphoreWaitFlags(const VkSemaphoreWaitFlags * obj, const std::string& str, bool commaNeeded=true) {
18359      PRINT_SPACE
18360      if (str != "") _OUT << "\"" << str << "\"" << " : ";
18361      const int max_bits = 64; // We don't expect the number to be larger.
18362      std::bitset<max_bits> b(obj);
18363      _OUT << "\"";
18364      if (obj == 0) _OUT << "0";
18365      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
18366          if (b[i] == 1) {
18367              bitCount++;
18368              if (bitCount < b.count())
18369                  _OUT << VkSemaphoreWaitFlagBits_map[1ULL<<i] << " | ";
18370              else
18371                  _OUT << VkSemaphoreWaitFlagBits_map[1ULL<<i];
18372          }
18373      }
18374      if (commaNeeded)
18375        _OUT << "\"" << ",";
18376      else
18377        _OUT << "\""<< "";
18378      _OUT << std::endl;
18379 }
18380 
print_VkPhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Features obj,const std::string & s,bool commaNeeded=true)18381 static void print_VkPhysicalDeviceVulkan11Features(VkPhysicalDeviceVulkan11Features obj, const std::string& s, bool commaNeeded=true) {
18382      PRINT_SPACE
18383      _OUT << "{" << std::endl;
18384      INDENT(4);
18385 
18386      print_VkStructureType(obj.sType, "sType", 1);
18387 
18388       if (obj.pNext) {
18389          dumpPNextChain(obj.pNext);
18390       } else {
18391          PRINT_SPACE
18392          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18393      }
18394 
18395      print_VkBool32(obj.storageBuffer16BitAccess, "storageBuffer16BitAccess", 1);
18396 
18397      print_VkBool32(obj.uniformAndStorageBuffer16BitAccess, "uniformAndStorageBuffer16BitAccess", 1);
18398 
18399      print_VkBool32(obj.storagePushConstant16, "storagePushConstant16", 1);
18400 
18401      print_VkBool32(obj.storageInputOutput16, "storageInputOutput16", 1);
18402 
18403      print_VkBool32(obj.multiview, "multiview", 1);
18404 
18405      print_VkBool32(obj.multiviewGeometryShader, "multiviewGeometryShader", 1);
18406 
18407      print_VkBool32(obj.multiviewTessellationShader, "multiviewTessellationShader", 1);
18408 
18409      print_VkBool32(obj.variablePointersStorageBuffer, "variablePointersStorageBuffer", 1);
18410 
18411      print_VkBool32(obj.variablePointers, "variablePointers", 1);
18412 
18413      print_VkBool32(obj.protectedMemory, "protectedMemory", 1);
18414 
18415      print_VkBool32(obj.samplerYcbcrConversion, "samplerYcbcrConversion", 1);
18416 
18417      print_VkBool32(obj.shaderDrawParameters, "shaderDrawParameters", 0);
18418 
18419      INDENT(-4);
18420      PRINT_SPACE
18421      if (commaNeeded)
18422          _OUT << "}," << std::endl;
18423      else
18424          _OUT << "}" << std::endl;
18425 }
print_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features * obj,const std::string & s,bool commaNeeded=true)18426 static void print_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features * obj, const std::string& s, bool commaNeeded=true) {
18427      PRINT_SPACE
18428      _OUT << "{" << std::endl;
18429      INDENT(4);
18430 
18431      print_VkStructureType(obj->sType, "sType", 1);
18432 
18433       if (obj->pNext) {
18434          dumpPNextChain(obj->pNext);
18435       } else {
18436          PRINT_SPACE
18437          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18438      }
18439 
18440      print_VkBool32(obj->storageBuffer16BitAccess, "storageBuffer16BitAccess", 1);
18441 
18442      print_VkBool32(obj->uniformAndStorageBuffer16BitAccess, "uniformAndStorageBuffer16BitAccess", 1);
18443 
18444      print_VkBool32(obj->storagePushConstant16, "storagePushConstant16", 1);
18445 
18446      print_VkBool32(obj->storageInputOutput16, "storageInputOutput16", 1);
18447 
18448      print_VkBool32(obj->multiview, "multiview", 1);
18449 
18450      print_VkBool32(obj->multiviewGeometryShader, "multiviewGeometryShader", 1);
18451 
18452      print_VkBool32(obj->multiviewTessellationShader, "multiviewTessellationShader", 1);
18453 
18454      print_VkBool32(obj->variablePointersStorageBuffer, "variablePointersStorageBuffer", 1);
18455 
18456      print_VkBool32(obj->variablePointers, "variablePointers", 1);
18457 
18458      print_VkBool32(obj->protectedMemory, "protectedMemory", 1);
18459 
18460      print_VkBool32(obj->samplerYcbcrConversion, "samplerYcbcrConversion", 1);
18461 
18462      print_VkBool32(obj->shaderDrawParameters, "shaderDrawParameters", 0);
18463 
18464      INDENT(-4);
18465      PRINT_SPACE
18466      if (commaNeeded)
18467          _OUT << "}," << std::endl;
18468      else
18469          _OUT << "}" << std::endl;
18470 }
18471 
print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Properties obj,const std::string & s,bool commaNeeded=true)18472 static void print_VkPhysicalDeviceVulkan11Properties(VkPhysicalDeviceVulkan11Properties obj, const std::string& s, bool commaNeeded=true) {
18473      PRINT_SPACE
18474      _OUT << "{" << std::endl;
18475      INDENT(4);
18476 
18477      print_VkStructureType(obj.sType, "sType", 1);
18478 
18479       if (obj.pNext) {
18480          dumpPNextChain(obj.pNext);
18481       } else {
18482          PRINT_SPACE
18483          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18484      }
18485 
18486      PRINT_SPACE
18487      _OUT << "\"deviceUUID\":" << std::endl;
18488      PRINT_SPACE
18489        _OUT << "[" << std::endl;
18490        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
18491            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
18492            print_uint8_t(obj.deviceUUID[i], "", isCommaNeeded);
18493        }
18494        PRINT_SPACE
18495        _OUT << "]" << "," << std::endl;
18496 
18497      PRINT_SPACE
18498      _OUT << "\"driverUUID\":" << std::endl;
18499      PRINT_SPACE
18500        _OUT << "[" << std::endl;
18501        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
18502            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
18503            print_uint8_t(obj.driverUUID[i], "", isCommaNeeded);
18504        }
18505        PRINT_SPACE
18506        _OUT << "]" << "," << std::endl;
18507 
18508      PRINT_SPACE
18509      _OUT << "\"deviceLUID\":" << std::endl;
18510      PRINT_SPACE
18511        _OUT << "[" << std::endl;
18512        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
18513            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
18514            print_uint8_t(obj.deviceLUID[i], "", isCommaNeeded);
18515        }
18516        PRINT_SPACE
18517        _OUT << "]" << "," << std::endl;
18518 
18519      print_uint32_t(obj.deviceNodeMask, "deviceNodeMask", 1);
18520 
18521      print_VkBool32(obj.deviceLUIDValid, "deviceLUIDValid", 1);
18522 
18523      print_uint32_t(obj.subgroupSize, "subgroupSize", 1);
18524 
18525      print_VkShaderStageFlags(obj.subgroupSupportedStages, "subgroupSupportedStages", 1);
18526 
18527      print_VkSubgroupFeatureFlags(obj.subgroupSupportedOperations, "subgroupSupportedOperations", 1);
18528 
18529      print_VkBool32(obj.subgroupQuadOperationsInAllStages, "subgroupQuadOperationsInAllStages", 1);
18530 
18531      print_VkPointClippingBehavior(obj.pointClippingBehavior, "pointClippingBehavior", 1);
18532 
18533      print_uint32_t(obj.maxMultiviewViewCount, "maxMultiviewViewCount", 1);
18534 
18535      print_uint32_t(obj.maxMultiviewInstanceIndex, "maxMultiviewInstanceIndex", 1);
18536 
18537      print_VkBool32(obj.protectedNoFault, "protectedNoFault", 1);
18538 
18539      print_uint32_t(obj.maxPerSetDescriptors, "maxPerSetDescriptors", 1);
18540 
18541      print_VkDeviceSize(obj.maxMemoryAllocationSize, "maxMemoryAllocationSize", 0);
18542 
18543      INDENT(-4);
18544      PRINT_SPACE
18545      if (commaNeeded)
18546          _OUT << "}," << std::endl;
18547      else
18548          _OUT << "}" << std::endl;
18549 }
print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties * obj,const std::string & s,bool commaNeeded=true)18550 static void print_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties * obj, const std::string& s, bool commaNeeded=true) {
18551      PRINT_SPACE
18552      _OUT << "{" << std::endl;
18553      INDENT(4);
18554 
18555      print_VkStructureType(obj->sType, "sType", 1);
18556 
18557       if (obj->pNext) {
18558          dumpPNextChain(obj->pNext);
18559       } else {
18560          PRINT_SPACE
18561          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18562      }
18563 
18564      PRINT_SPACE
18565      _OUT << "\"deviceUUID\":" << std::endl;
18566      PRINT_SPACE
18567        _OUT << "[" << std::endl;
18568        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
18569            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
18570            print_uint8_t(obj->deviceUUID[i], "", isCommaNeeded);
18571        }
18572        PRINT_SPACE
18573        _OUT << "]" << "," << std::endl;
18574 
18575      PRINT_SPACE
18576      _OUT << "\"driverUUID\":" << std::endl;
18577      PRINT_SPACE
18578        _OUT << "[" << std::endl;
18579        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
18580            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
18581            print_uint8_t(obj->driverUUID[i], "", isCommaNeeded);
18582        }
18583        PRINT_SPACE
18584        _OUT << "]" << "," << std::endl;
18585 
18586      PRINT_SPACE
18587      _OUT << "\"deviceLUID\":" << std::endl;
18588      PRINT_SPACE
18589        _OUT << "[" << std::endl;
18590        for (unsigned int i = 0; i < VK_LUID_SIZE; i++) {
18591            bool isCommaNeeded = (i+1) != VK_LUID_SIZE;
18592            print_uint8_t(obj->deviceLUID[i], "", isCommaNeeded);
18593        }
18594        PRINT_SPACE
18595        _OUT << "]" << "," << std::endl;
18596 
18597      print_uint32_t(obj->deviceNodeMask, "deviceNodeMask", 1);
18598 
18599      print_VkBool32(obj->deviceLUIDValid, "deviceLUIDValid", 1);
18600 
18601      print_uint32_t(obj->subgroupSize, "subgroupSize", 1);
18602 
18603      print_VkShaderStageFlags(obj->subgroupSupportedStages, "subgroupSupportedStages", 1);
18604 
18605      print_VkSubgroupFeatureFlags(obj->subgroupSupportedOperations, "subgroupSupportedOperations", 1);
18606 
18607      print_VkBool32(obj->subgroupQuadOperationsInAllStages, "subgroupQuadOperationsInAllStages", 1);
18608 
18609      print_VkPointClippingBehavior(obj->pointClippingBehavior, "pointClippingBehavior", 1);
18610 
18611      print_uint32_t(obj->maxMultiviewViewCount, "maxMultiviewViewCount", 1);
18612 
18613      print_uint32_t(obj->maxMultiviewInstanceIndex, "maxMultiviewInstanceIndex", 1);
18614 
18615      print_VkBool32(obj->protectedNoFault, "protectedNoFault", 1);
18616 
18617      print_uint32_t(obj->maxPerSetDescriptors, "maxPerSetDescriptors", 1);
18618 
18619      print_VkDeviceSize(obj->maxMemoryAllocationSize, "maxMemoryAllocationSize", 0);
18620 
18621      INDENT(-4);
18622      PRINT_SPACE
18623      if (commaNeeded)
18624          _OUT << "}," << std::endl;
18625      else
18626          _OUT << "}" << std::endl;
18627 }
18628 
print_VkPhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Features obj,const std::string & s,bool commaNeeded=true)18629 static void print_VkPhysicalDeviceVulkan12Features(VkPhysicalDeviceVulkan12Features obj, const std::string& s, bool commaNeeded=true) {
18630      PRINT_SPACE
18631      _OUT << "{" << std::endl;
18632      INDENT(4);
18633 
18634      print_VkStructureType(obj.sType, "sType", 1);
18635 
18636       if (obj.pNext) {
18637          dumpPNextChain(obj.pNext);
18638       } else {
18639          PRINT_SPACE
18640          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18641      }
18642 
18643      print_VkBool32(obj.samplerMirrorClampToEdge, "samplerMirrorClampToEdge", 1);
18644 
18645      print_VkBool32(obj.drawIndirectCount, "drawIndirectCount", 1);
18646 
18647      print_VkBool32(obj.storageBuffer8BitAccess, "storageBuffer8BitAccess", 1);
18648 
18649      print_VkBool32(obj.uniformAndStorageBuffer8BitAccess, "uniformAndStorageBuffer8BitAccess", 1);
18650 
18651      print_VkBool32(obj.storagePushConstant8, "storagePushConstant8", 1);
18652 
18653      print_VkBool32(obj.shaderBufferInt64Atomics, "shaderBufferInt64Atomics", 1);
18654 
18655      print_VkBool32(obj.shaderSharedInt64Atomics, "shaderSharedInt64Atomics", 1);
18656 
18657      print_VkBool32(obj.shaderFloat16, "shaderFloat16", 1);
18658 
18659      print_VkBool32(obj.shaderInt8, "shaderInt8", 1);
18660 
18661      print_VkBool32(obj.descriptorIndexing, "descriptorIndexing", 1);
18662 
18663      print_VkBool32(obj.shaderInputAttachmentArrayDynamicIndexing, "shaderInputAttachmentArrayDynamicIndexing", 1);
18664 
18665      print_VkBool32(obj.shaderUniformTexelBufferArrayDynamicIndexing, "shaderUniformTexelBufferArrayDynamicIndexing", 1);
18666 
18667      print_VkBool32(obj.shaderStorageTexelBufferArrayDynamicIndexing, "shaderStorageTexelBufferArrayDynamicIndexing", 1);
18668 
18669      print_VkBool32(obj.shaderUniformBufferArrayNonUniformIndexing, "shaderUniformBufferArrayNonUniformIndexing", 1);
18670 
18671      print_VkBool32(obj.shaderSampledImageArrayNonUniformIndexing, "shaderSampledImageArrayNonUniformIndexing", 1);
18672 
18673      print_VkBool32(obj.shaderStorageBufferArrayNonUniformIndexing, "shaderStorageBufferArrayNonUniformIndexing", 1);
18674 
18675      print_VkBool32(obj.shaderStorageImageArrayNonUniformIndexing, "shaderStorageImageArrayNonUniformIndexing", 1);
18676 
18677      print_VkBool32(obj.shaderInputAttachmentArrayNonUniformIndexing, "shaderInputAttachmentArrayNonUniformIndexing", 1);
18678 
18679      print_VkBool32(obj.shaderUniformTexelBufferArrayNonUniformIndexing, "shaderUniformTexelBufferArrayNonUniformIndexing", 1);
18680 
18681      print_VkBool32(obj.shaderStorageTexelBufferArrayNonUniformIndexing, "shaderStorageTexelBufferArrayNonUniformIndexing", 1);
18682 
18683      print_VkBool32(obj.descriptorBindingUniformBufferUpdateAfterBind, "descriptorBindingUniformBufferUpdateAfterBind", 1);
18684 
18685      print_VkBool32(obj.descriptorBindingSampledImageUpdateAfterBind, "descriptorBindingSampledImageUpdateAfterBind", 1);
18686 
18687      print_VkBool32(obj.descriptorBindingStorageImageUpdateAfterBind, "descriptorBindingStorageImageUpdateAfterBind", 1);
18688 
18689      print_VkBool32(obj.descriptorBindingStorageBufferUpdateAfterBind, "descriptorBindingStorageBufferUpdateAfterBind", 1);
18690 
18691      print_VkBool32(obj.descriptorBindingUniformTexelBufferUpdateAfterBind, "descriptorBindingUniformTexelBufferUpdateAfterBind", 1);
18692 
18693      print_VkBool32(obj.descriptorBindingStorageTexelBufferUpdateAfterBind, "descriptorBindingStorageTexelBufferUpdateAfterBind", 1);
18694 
18695      print_VkBool32(obj.descriptorBindingUpdateUnusedWhilePending, "descriptorBindingUpdateUnusedWhilePending", 1);
18696 
18697      print_VkBool32(obj.descriptorBindingPartiallyBound, "descriptorBindingPartiallyBound", 1);
18698 
18699      print_VkBool32(obj.descriptorBindingVariableDescriptorCount, "descriptorBindingVariableDescriptorCount", 1);
18700 
18701      print_VkBool32(obj.runtimeDescriptorArray, "runtimeDescriptorArray", 1);
18702 
18703      print_VkBool32(obj.samplerFilterMinmax, "samplerFilterMinmax", 1);
18704 
18705      print_VkBool32(obj.scalarBlockLayout, "scalarBlockLayout", 1);
18706 
18707      print_VkBool32(obj.imagelessFramebuffer, "imagelessFramebuffer", 1);
18708 
18709      print_VkBool32(obj.uniformBufferStandardLayout, "uniformBufferStandardLayout", 1);
18710 
18711      print_VkBool32(obj.shaderSubgroupExtendedTypes, "shaderSubgroupExtendedTypes", 1);
18712 
18713      print_VkBool32(obj.separateDepthStencilLayouts, "separateDepthStencilLayouts", 1);
18714 
18715      print_VkBool32(obj.hostQueryReset, "hostQueryReset", 1);
18716 
18717      print_VkBool32(obj.timelineSemaphore, "timelineSemaphore", 1);
18718 
18719      print_VkBool32(obj.bufferDeviceAddress, "bufferDeviceAddress", 1);
18720 
18721      print_VkBool32(obj.bufferDeviceAddressCaptureReplay, "bufferDeviceAddressCaptureReplay", 1);
18722 
18723      print_VkBool32(obj.bufferDeviceAddressMultiDevice, "bufferDeviceAddressMultiDevice", 1);
18724 
18725      print_VkBool32(obj.vulkanMemoryModel, "vulkanMemoryModel", 1);
18726 
18727      print_VkBool32(obj.vulkanMemoryModelDeviceScope, "vulkanMemoryModelDeviceScope", 1);
18728 
18729      print_VkBool32(obj.vulkanMemoryModelAvailabilityVisibilityChains, "vulkanMemoryModelAvailabilityVisibilityChains", 1);
18730 
18731      print_VkBool32(obj.shaderOutputViewportIndex, "shaderOutputViewportIndex", 1);
18732 
18733      print_VkBool32(obj.shaderOutputLayer, "shaderOutputLayer", 1);
18734 
18735      print_VkBool32(obj.subgroupBroadcastDynamicId, "subgroupBroadcastDynamicId", 0);
18736 
18737      INDENT(-4);
18738      PRINT_SPACE
18739      if (commaNeeded)
18740          _OUT << "}," << std::endl;
18741      else
18742          _OUT << "}" << std::endl;
18743 }
print_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features * obj,const std::string & s,bool commaNeeded=true)18744 static void print_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features * obj, const std::string& s, bool commaNeeded=true) {
18745      PRINT_SPACE
18746      _OUT << "{" << std::endl;
18747      INDENT(4);
18748 
18749      print_VkStructureType(obj->sType, "sType", 1);
18750 
18751       if (obj->pNext) {
18752          dumpPNextChain(obj->pNext);
18753       } else {
18754          PRINT_SPACE
18755          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18756      }
18757 
18758      print_VkBool32(obj->samplerMirrorClampToEdge, "samplerMirrorClampToEdge", 1);
18759 
18760      print_VkBool32(obj->drawIndirectCount, "drawIndirectCount", 1);
18761 
18762      print_VkBool32(obj->storageBuffer8BitAccess, "storageBuffer8BitAccess", 1);
18763 
18764      print_VkBool32(obj->uniformAndStorageBuffer8BitAccess, "uniformAndStorageBuffer8BitAccess", 1);
18765 
18766      print_VkBool32(obj->storagePushConstant8, "storagePushConstant8", 1);
18767 
18768      print_VkBool32(obj->shaderBufferInt64Atomics, "shaderBufferInt64Atomics", 1);
18769 
18770      print_VkBool32(obj->shaderSharedInt64Atomics, "shaderSharedInt64Atomics", 1);
18771 
18772      print_VkBool32(obj->shaderFloat16, "shaderFloat16", 1);
18773 
18774      print_VkBool32(obj->shaderInt8, "shaderInt8", 1);
18775 
18776      print_VkBool32(obj->descriptorIndexing, "descriptorIndexing", 1);
18777 
18778      print_VkBool32(obj->shaderInputAttachmentArrayDynamicIndexing, "shaderInputAttachmentArrayDynamicIndexing", 1);
18779 
18780      print_VkBool32(obj->shaderUniformTexelBufferArrayDynamicIndexing, "shaderUniformTexelBufferArrayDynamicIndexing", 1);
18781 
18782      print_VkBool32(obj->shaderStorageTexelBufferArrayDynamicIndexing, "shaderStorageTexelBufferArrayDynamicIndexing", 1);
18783 
18784      print_VkBool32(obj->shaderUniformBufferArrayNonUniformIndexing, "shaderUniformBufferArrayNonUniformIndexing", 1);
18785 
18786      print_VkBool32(obj->shaderSampledImageArrayNonUniformIndexing, "shaderSampledImageArrayNonUniformIndexing", 1);
18787 
18788      print_VkBool32(obj->shaderStorageBufferArrayNonUniformIndexing, "shaderStorageBufferArrayNonUniformIndexing", 1);
18789 
18790      print_VkBool32(obj->shaderStorageImageArrayNonUniformIndexing, "shaderStorageImageArrayNonUniformIndexing", 1);
18791 
18792      print_VkBool32(obj->shaderInputAttachmentArrayNonUniformIndexing, "shaderInputAttachmentArrayNonUniformIndexing", 1);
18793 
18794      print_VkBool32(obj->shaderUniformTexelBufferArrayNonUniformIndexing, "shaderUniformTexelBufferArrayNonUniformIndexing", 1);
18795 
18796      print_VkBool32(obj->shaderStorageTexelBufferArrayNonUniformIndexing, "shaderStorageTexelBufferArrayNonUniformIndexing", 1);
18797 
18798      print_VkBool32(obj->descriptorBindingUniformBufferUpdateAfterBind, "descriptorBindingUniformBufferUpdateAfterBind", 1);
18799 
18800      print_VkBool32(obj->descriptorBindingSampledImageUpdateAfterBind, "descriptorBindingSampledImageUpdateAfterBind", 1);
18801 
18802      print_VkBool32(obj->descriptorBindingStorageImageUpdateAfterBind, "descriptorBindingStorageImageUpdateAfterBind", 1);
18803 
18804      print_VkBool32(obj->descriptorBindingStorageBufferUpdateAfterBind, "descriptorBindingStorageBufferUpdateAfterBind", 1);
18805 
18806      print_VkBool32(obj->descriptorBindingUniformTexelBufferUpdateAfterBind, "descriptorBindingUniformTexelBufferUpdateAfterBind", 1);
18807 
18808      print_VkBool32(obj->descriptorBindingStorageTexelBufferUpdateAfterBind, "descriptorBindingStorageTexelBufferUpdateAfterBind", 1);
18809 
18810      print_VkBool32(obj->descriptorBindingUpdateUnusedWhilePending, "descriptorBindingUpdateUnusedWhilePending", 1);
18811 
18812      print_VkBool32(obj->descriptorBindingPartiallyBound, "descriptorBindingPartiallyBound", 1);
18813 
18814      print_VkBool32(obj->descriptorBindingVariableDescriptorCount, "descriptorBindingVariableDescriptorCount", 1);
18815 
18816      print_VkBool32(obj->runtimeDescriptorArray, "runtimeDescriptorArray", 1);
18817 
18818      print_VkBool32(obj->samplerFilterMinmax, "samplerFilterMinmax", 1);
18819 
18820      print_VkBool32(obj->scalarBlockLayout, "scalarBlockLayout", 1);
18821 
18822      print_VkBool32(obj->imagelessFramebuffer, "imagelessFramebuffer", 1);
18823 
18824      print_VkBool32(obj->uniformBufferStandardLayout, "uniformBufferStandardLayout", 1);
18825 
18826      print_VkBool32(obj->shaderSubgroupExtendedTypes, "shaderSubgroupExtendedTypes", 1);
18827 
18828      print_VkBool32(obj->separateDepthStencilLayouts, "separateDepthStencilLayouts", 1);
18829 
18830      print_VkBool32(obj->hostQueryReset, "hostQueryReset", 1);
18831 
18832      print_VkBool32(obj->timelineSemaphore, "timelineSemaphore", 1);
18833 
18834      print_VkBool32(obj->bufferDeviceAddress, "bufferDeviceAddress", 1);
18835 
18836      print_VkBool32(obj->bufferDeviceAddressCaptureReplay, "bufferDeviceAddressCaptureReplay", 1);
18837 
18838      print_VkBool32(obj->bufferDeviceAddressMultiDevice, "bufferDeviceAddressMultiDevice", 1);
18839 
18840      print_VkBool32(obj->vulkanMemoryModel, "vulkanMemoryModel", 1);
18841 
18842      print_VkBool32(obj->vulkanMemoryModelDeviceScope, "vulkanMemoryModelDeviceScope", 1);
18843 
18844      print_VkBool32(obj->vulkanMemoryModelAvailabilityVisibilityChains, "vulkanMemoryModelAvailabilityVisibilityChains", 1);
18845 
18846      print_VkBool32(obj->shaderOutputViewportIndex, "shaderOutputViewportIndex", 1);
18847 
18848      print_VkBool32(obj->shaderOutputLayer, "shaderOutputLayer", 1);
18849 
18850      print_VkBool32(obj->subgroupBroadcastDynamicId, "subgroupBroadcastDynamicId", 0);
18851 
18852      INDENT(-4);
18853      PRINT_SPACE
18854      if (commaNeeded)
18855          _OUT << "}," << std::endl;
18856      else
18857          _OUT << "}" << std::endl;
18858 }
18859 
print_VkConformanceVersion(VkConformanceVersion obj,const std::string & s,bool commaNeeded=true)18860 static void print_VkConformanceVersion(VkConformanceVersion obj, const std::string& s, bool commaNeeded=true) {
18861      PRINT_SPACE
18862      _OUT << "{" << std::endl;
18863      INDENT(4);
18864 
18865      print_uint8_t(obj.major, "major", 1);
18866 
18867      print_uint8_t(obj.minor, "minor", 1);
18868 
18869      print_uint8_t(obj.subminor, "subminor", 1);
18870 
18871      print_uint8_t(obj.patch, "patch", 0);
18872 
18873      INDENT(-4);
18874      PRINT_SPACE
18875      if (commaNeeded)
18876          _OUT << "}," << std::endl;
18877      else
18878          _OUT << "}" << std::endl;
18879 }
print_VkConformanceVersion(const VkConformanceVersion * obj,const std::string & s,bool commaNeeded=true)18880 static void print_VkConformanceVersion(const VkConformanceVersion * obj, const std::string& s, bool commaNeeded=true) {
18881      PRINT_SPACE
18882      _OUT << "{" << std::endl;
18883      INDENT(4);
18884 
18885      print_uint8_t(obj->major, "major", 1);
18886 
18887      print_uint8_t(obj->minor, "minor", 1);
18888 
18889      print_uint8_t(obj->subminor, "subminor", 1);
18890 
18891      print_uint8_t(obj->patch, "patch", 0);
18892 
18893      INDENT(-4);
18894      PRINT_SPACE
18895      if (commaNeeded)
18896          _OUT << "}," << std::endl;
18897      else
18898          _OUT << "}" << std::endl;
18899 }
18900 
print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Properties obj,const std::string & s,bool commaNeeded=true)18901 static void print_VkPhysicalDeviceVulkan12Properties(VkPhysicalDeviceVulkan12Properties obj, const std::string& s, bool commaNeeded=true) {
18902      PRINT_SPACE
18903      _OUT << "{" << std::endl;
18904      INDENT(4);
18905 
18906      print_VkStructureType(obj.sType, "sType", 1);
18907 
18908       if (obj.pNext) {
18909          dumpPNextChain(obj.pNext);
18910       } else {
18911          PRINT_SPACE
18912          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
18913      }
18914 
18915      print_VkDriverId(obj.driverID, "driverID", 1);
18916 
18917      PRINT_SPACE
18918      _OUT << "\"driverName\":" << std::endl;
18919      PRINT_SPACE
18920        _OUT << "[" << std::endl;
18921        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
18922            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
18923            print_char(obj.driverName[i], "", isCommaNeeded);
18924        }
18925        PRINT_SPACE
18926        _OUT << "]" << "," << std::endl;
18927 
18928      PRINT_SPACE
18929      _OUT << "\"driverInfo\":" << std::endl;
18930      PRINT_SPACE
18931        _OUT << "[" << std::endl;
18932        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
18933            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
18934            print_char(obj.driverInfo[i], "", isCommaNeeded);
18935        }
18936        PRINT_SPACE
18937        _OUT << "]" << "," << std::endl;
18938 
18939      PRINT_SPACE
18940      _OUT << "\"conformanceVersion\": " << std::endl;
18941      {
18942            print_VkConformanceVersion(obj.conformanceVersion, "conformanceVersion", 1);
18943      }
18944 
18945      print_VkShaderFloatControlsIndependence(obj.denormBehaviorIndependence, "denormBehaviorIndependence", 1);
18946 
18947      print_VkShaderFloatControlsIndependence(obj.roundingModeIndependence, "roundingModeIndependence", 1);
18948 
18949      print_VkBool32(obj.shaderSignedZeroInfNanPreserveFloat16, "shaderSignedZeroInfNanPreserveFloat16", 1);
18950 
18951      print_VkBool32(obj.shaderSignedZeroInfNanPreserveFloat32, "shaderSignedZeroInfNanPreserveFloat32", 1);
18952 
18953      print_VkBool32(obj.shaderSignedZeroInfNanPreserveFloat64, "shaderSignedZeroInfNanPreserveFloat64", 1);
18954 
18955      print_VkBool32(obj.shaderDenormPreserveFloat16, "shaderDenormPreserveFloat16", 1);
18956 
18957      print_VkBool32(obj.shaderDenormPreserveFloat32, "shaderDenormPreserveFloat32", 1);
18958 
18959      print_VkBool32(obj.shaderDenormPreserveFloat64, "shaderDenormPreserveFloat64", 1);
18960 
18961      print_VkBool32(obj.shaderDenormFlushToZeroFloat16, "shaderDenormFlushToZeroFloat16", 1);
18962 
18963      print_VkBool32(obj.shaderDenormFlushToZeroFloat32, "shaderDenormFlushToZeroFloat32", 1);
18964 
18965      print_VkBool32(obj.shaderDenormFlushToZeroFloat64, "shaderDenormFlushToZeroFloat64", 1);
18966 
18967      print_VkBool32(obj.shaderRoundingModeRTEFloat16, "shaderRoundingModeRTEFloat16", 1);
18968 
18969      print_VkBool32(obj.shaderRoundingModeRTEFloat32, "shaderRoundingModeRTEFloat32", 1);
18970 
18971      print_VkBool32(obj.shaderRoundingModeRTEFloat64, "shaderRoundingModeRTEFloat64", 1);
18972 
18973      print_VkBool32(obj.shaderRoundingModeRTZFloat16, "shaderRoundingModeRTZFloat16", 1);
18974 
18975      print_VkBool32(obj.shaderRoundingModeRTZFloat32, "shaderRoundingModeRTZFloat32", 1);
18976 
18977      print_VkBool32(obj.shaderRoundingModeRTZFloat64, "shaderRoundingModeRTZFloat64", 1);
18978 
18979      print_uint32_t(obj.maxUpdateAfterBindDescriptorsInAllPools, "maxUpdateAfterBindDescriptorsInAllPools", 1);
18980 
18981      print_VkBool32(obj.shaderUniformBufferArrayNonUniformIndexingNative, "shaderUniformBufferArrayNonUniformIndexingNative", 1);
18982 
18983      print_VkBool32(obj.shaderSampledImageArrayNonUniformIndexingNative, "shaderSampledImageArrayNonUniformIndexingNative", 1);
18984 
18985      print_VkBool32(obj.shaderStorageBufferArrayNonUniformIndexingNative, "shaderStorageBufferArrayNonUniformIndexingNative", 1);
18986 
18987      print_VkBool32(obj.shaderStorageImageArrayNonUniformIndexingNative, "shaderStorageImageArrayNonUniformIndexingNative", 1);
18988 
18989      print_VkBool32(obj.shaderInputAttachmentArrayNonUniformIndexingNative, "shaderInputAttachmentArrayNonUniformIndexingNative", 1);
18990 
18991      print_VkBool32(obj.robustBufferAccessUpdateAfterBind, "robustBufferAccessUpdateAfterBind", 1);
18992 
18993      print_VkBool32(obj.quadDivergentImplicitLod, "quadDivergentImplicitLod", 1);
18994 
18995      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindSamplers, "maxPerStageDescriptorUpdateAfterBindSamplers", 1);
18996 
18997      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindUniformBuffers, "maxPerStageDescriptorUpdateAfterBindUniformBuffers", 1);
18998 
18999      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindStorageBuffers, "maxPerStageDescriptorUpdateAfterBindStorageBuffers", 1);
19000 
19001      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindSampledImages, "maxPerStageDescriptorUpdateAfterBindSampledImages", 1);
19002 
19003      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindStorageImages, "maxPerStageDescriptorUpdateAfterBindStorageImages", 1);
19004 
19005      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindInputAttachments, "maxPerStageDescriptorUpdateAfterBindInputAttachments", 1);
19006 
19007      print_uint32_t(obj.maxPerStageUpdateAfterBindResources, "maxPerStageUpdateAfterBindResources", 1);
19008 
19009      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindSamplers, "maxDescriptorSetUpdateAfterBindSamplers", 1);
19010 
19011      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindUniformBuffers, "maxDescriptorSetUpdateAfterBindUniformBuffers", 1);
19012 
19013      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, "maxDescriptorSetUpdateAfterBindUniformBuffersDynamic", 1);
19014 
19015      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindStorageBuffers, "maxDescriptorSetUpdateAfterBindStorageBuffers", 1);
19016 
19017      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, "maxDescriptorSetUpdateAfterBindStorageBuffersDynamic", 1);
19018 
19019      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindSampledImages, "maxDescriptorSetUpdateAfterBindSampledImages", 1);
19020 
19021      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindStorageImages, "maxDescriptorSetUpdateAfterBindStorageImages", 1);
19022 
19023      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindInputAttachments, "maxDescriptorSetUpdateAfterBindInputAttachments", 1);
19024 
19025      print_VkResolveModeFlags(obj.supportedDepthResolveModes, "supportedDepthResolveModes", 1);
19026 
19027      print_VkResolveModeFlags(obj.supportedStencilResolveModes, "supportedStencilResolveModes", 1);
19028 
19029      print_VkBool32(obj.independentResolveNone, "independentResolveNone", 1);
19030 
19031      print_VkBool32(obj.independentResolve, "independentResolve", 1);
19032 
19033      print_VkBool32(obj.filterMinmaxSingleComponentFormats, "filterMinmaxSingleComponentFormats", 1);
19034 
19035      print_VkBool32(obj.filterMinmaxImageComponentMapping, "filterMinmaxImageComponentMapping", 1);
19036 
19037      print_uint64_t(obj.maxTimelineSemaphoreValueDifference, "maxTimelineSemaphoreValueDifference", 1);
19038 
19039      print_VkSampleCountFlags(obj.framebufferIntegerColorSampleCounts, "framebufferIntegerColorSampleCounts", 0);
19040 
19041      INDENT(-4);
19042      PRINT_SPACE
19043      if (commaNeeded)
19044          _OUT << "}," << std::endl;
19045      else
19046          _OUT << "}" << std::endl;
19047 }
print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties * obj,const std::string & s,bool commaNeeded=true)19048 static void print_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties * obj, const std::string& s, bool commaNeeded=true) {
19049      PRINT_SPACE
19050      _OUT << "{" << std::endl;
19051      INDENT(4);
19052 
19053      print_VkStructureType(obj->sType, "sType", 1);
19054 
19055       if (obj->pNext) {
19056          dumpPNextChain(obj->pNext);
19057       } else {
19058          PRINT_SPACE
19059          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19060      }
19061 
19062      print_VkDriverId(obj->driverID, "driverID", 1);
19063 
19064      PRINT_SPACE
19065      _OUT << "\"driverName\":" << std::endl;
19066      PRINT_SPACE
19067        _OUT << "[" << std::endl;
19068        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
19069            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
19070            print_char(obj->driverName[i], "", isCommaNeeded);
19071        }
19072        PRINT_SPACE
19073        _OUT << "]" << "," << std::endl;
19074 
19075      PRINT_SPACE
19076      _OUT << "\"driverInfo\":" << std::endl;
19077      PRINT_SPACE
19078        _OUT << "[" << std::endl;
19079        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
19080            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
19081            print_char(obj->driverInfo[i], "", isCommaNeeded);
19082        }
19083        PRINT_SPACE
19084        _OUT << "]" << "," << std::endl;
19085 
19086      PRINT_SPACE
19087      _OUT << "\"conformanceVersion\": " << std::endl;
19088      {
19089            print_VkConformanceVersion(obj->conformanceVersion, "conformanceVersion", 1);
19090      }
19091 
19092      print_VkShaderFloatControlsIndependence(obj->denormBehaviorIndependence, "denormBehaviorIndependence", 1);
19093 
19094      print_VkShaderFloatControlsIndependence(obj->roundingModeIndependence, "roundingModeIndependence", 1);
19095 
19096      print_VkBool32(obj->shaderSignedZeroInfNanPreserveFloat16, "shaderSignedZeroInfNanPreserveFloat16", 1);
19097 
19098      print_VkBool32(obj->shaderSignedZeroInfNanPreserveFloat32, "shaderSignedZeroInfNanPreserveFloat32", 1);
19099 
19100      print_VkBool32(obj->shaderSignedZeroInfNanPreserveFloat64, "shaderSignedZeroInfNanPreserveFloat64", 1);
19101 
19102      print_VkBool32(obj->shaderDenormPreserveFloat16, "shaderDenormPreserveFloat16", 1);
19103 
19104      print_VkBool32(obj->shaderDenormPreserveFloat32, "shaderDenormPreserveFloat32", 1);
19105 
19106      print_VkBool32(obj->shaderDenormPreserveFloat64, "shaderDenormPreserveFloat64", 1);
19107 
19108      print_VkBool32(obj->shaderDenormFlushToZeroFloat16, "shaderDenormFlushToZeroFloat16", 1);
19109 
19110      print_VkBool32(obj->shaderDenormFlushToZeroFloat32, "shaderDenormFlushToZeroFloat32", 1);
19111 
19112      print_VkBool32(obj->shaderDenormFlushToZeroFloat64, "shaderDenormFlushToZeroFloat64", 1);
19113 
19114      print_VkBool32(obj->shaderRoundingModeRTEFloat16, "shaderRoundingModeRTEFloat16", 1);
19115 
19116      print_VkBool32(obj->shaderRoundingModeRTEFloat32, "shaderRoundingModeRTEFloat32", 1);
19117 
19118      print_VkBool32(obj->shaderRoundingModeRTEFloat64, "shaderRoundingModeRTEFloat64", 1);
19119 
19120      print_VkBool32(obj->shaderRoundingModeRTZFloat16, "shaderRoundingModeRTZFloat16", 1);
19121 
19122      print_VkBool32(obj->shaderRoundingModeRTZFloat32, "shaderRoundingModeRTZFloat32", 1);
19123 
19124      print_VkBool32(obj->shaderRoundingModeRTZFloat64, "shaderRoundingModeRTZFloat64", 1);
19125 
19126      print_uint32_t(obj->maxUpdateAfterBindDescriptorsInAllPools, "maxUpdateAfterBindDescriptorsInAllPools", 1);
19127 
19128      print_VkBool32(obj->shaderUniformBufferArrayNonUniformIndexingNative, "shaderUniformBufferArrayNonUniformIndexingNative", 1);
19129 
19130      print_VkBool32(obj->shaderSampledImageArrayNonUniformIndexingNative, "shaderSampledImageArrayNonUniformIndexingNative", 1);
19131 
19132      print_VkBool32(obj->shaderStorageBufferArrayNonUniformIndexingNative, "shaderStorageBufferArrayNonUniformIndexingNative", 1);
19133 
19134      print_VkBool32(obj->shaderStorageImageArrayNonUniformIndexingNative, "shaderStorageImageArrayNonUniformIndexingNative", 1);
19135 
19136      print_VkBool32(obj->shaderInputAttachmentArrayNonUniformIndexingNative, "shaderInputAttachmentArrayNonUniformIndexingNative", 1);
19137 
19138      print_VkBool32(obj->robustBufferAccessUpdateAfterBind, "robustBufferAccessUpdateAfterBind", 1);
19139 
19140      print_VkBool32(obj->quadDivergentImplicitLod, "quadDivergentImplicitLod", 1);
19141 
19142      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindSamplers, "maxPerStageDescriptorUpdateAfterBindSamplers", 1);
19143 
19144      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindUniformBuffers, "maxPerStageDescriptorUpdateAfterBindUniformBuffers", 1);
19145 
19146      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindStorageBuffers, "maxPerStageDescriptorUpdateAfterBindStorageBuffers", 1);
19147 
19148      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindSampledImages, "maxPerStageDescriptorUpdateAfterBindSampledImages", 1);
19149 
19150      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindStorageImages, "maxPerStageDescriptorUpdateAfterBindStorageImages", 1);
19151 
19152      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindInputAttachments, "maxPerStageDescriptorUpdateAfterBindInputAttachments", 1);
19153 
19154      print_uint32_t(obj->maxPerStageUpdateAfterBindResources, "maxPerStageUpdateAfterBindResources", 1);
19155 
19156      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindSamplers, "maxDescriptorSetUpdateAfterBindSamplers", 1);
19157 
19158      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindUniformBuffers, "maxDescriptorSetUpdateAfterBindUniformBuffers", 1);
19159 
19160      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, "maxDescriptorSetUpdateAfterBindUniformBuffersDynamic", 1);
19161 
19162      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindStorageBuffers, "maxDescriptorSetUpdateAfterBindStorageBuffers", 1);
19163 
19164      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, "maxDescriptorSetUpdateAfterBindStorageBuffersDynamic", 1);
19165 
19166      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindSampledImages, "maxDescriptorSetUpdateAfterBindSampledImages", 1);
19167 
19168      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindStorageImages, "maxDescriptorSetUpdateAfterBindStorageImages", 1);
19169 
19170      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindInputAttachments, "maxDescriptorSetUpdateAfterBindInputAttachments", 1);
19171 
19172      print_VkResolveModeFlags(obj->supportedDepthResolveModes, "supportedDepthResolveModes", 1);
19173 
19174      print_VkResolveModeFlags(obj->supportedStencilResolveModes, "supportedStencilResolveModes", 1);
19175 
19176      print_VkBool32(obj->independentResolveNone, "independentResolveNone", 1);
19177 
19178      print_VkBool32(obj->independentResolve, "independentResolve", 1);
19179 
19180      print_VkBool32(obj->filterMinmaxSingleComponentFormats, "filterMinmaxSingleComponentFormats", 1);
19181 
19182      print_VkBool32(obj->filterMinmaxImageComponentMapping, "filterMinmaxImageComponentMapping", 1);
19183 
19184      print_uint64_t(obj->maxTimelineSemaphoreValueDifference, "maxTimelineSemaphoreValueDifference", 1);
19185 
19186      print_VkSampleCountFlags(obj->framebufferIntegerColorSampleCounts, "framebufferIntegerColorSampleCounts", 0);
19187 
19188      INDENT(-4);
19189      PRINT_SPACE
19190      if (commaNeeded)
19191          _OUT << "}," << std::endl;
19192      else
19193          _OUT << "}" << std::endl;
19194 }
19195 
print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj,const std::string & s,bool commaNeeded=true)19196 static void print_VkImageFormatListCreateInfo(VkImageFormatListCreateInfo obj, const std::string& s, bool commaNeeded=true) {
19197      PRINT_SPACE
19198      _OUT << "{" << std::endl;
19199      INDENT(4);
19200 
19201      print_VkStructureType(obj.sType, "sType", 1);
19202 
19203       if (obj.pNext) {
19204          dumpPNextChain(obj.pNext);
19205       } else {
19206          PRINT_SPACE
19207          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19208      }
19209 
19210      print_uint32_t(obj.viewFormatCount, "viewFormatCount", 1);
19211 
19212      PRINT_SPACE
19213      _OUT << "\"pViewFormats\":" << std::endl;
19214      PRINT_SPACE
19215      if (obj.pViewFormats) {
19216        _OUT << "[" << std::endl;
19217        for (unsigned int i = 0; i < obj.viewFormatCount; i++) {
19218            bool isCommaNeeded = (i+1) != obj.viewFormatCount;
19219            print_VkFormat(obj.pViewFormats[i], "", isCommaNeeded);
19220        }
19221        PRINT_SPACE
19222        _OUT << "]" << "" << std::endl;
19223      } else {
19224        _OUT << "\"NULL\"" << "" << std::endl;
19225      }
19226 
19227      INDENT(-4);
19228      PRINT_SPACE
19229      if (commaNeeded)
19230          _OUT << "}," << std::endl;
19231      else
19232          _OUT << "}" << std::endl;
19233 }
print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo * obj,const std::string & s,bool commaNeeded=true)19234 static void print_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
19235      PRINT_SPACE
19236      _OUT << "{" << std::endl;
19237      INDENT(4);
19238 
19239      print_VkStructureType(obj->sType, "sType", 1);
19240 
19241       if (obj->pNext) {
19242          dumpPNextChain(obj->pNext);
19243       } else {
19244          PRINT_SPACE
19245          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19246      }
19247 
19248      print_uint32_t(obj->viewFormatCount, "viewFormatCount", 1);
19249 
19250      PRINT_SPACE
19251      _OUT << "\"pViewFormats\":" << std::endl;
19252      PRINT_SPACE
19253      if (obj->pViewFormats) {
19254        _OUT << "[" << std::endl;
19255        for (unsigned int i = 0; i < obj->viewFormatCount; i++) {
19256            bool isCommaNeeded = (i+1) != obj->viewFormatCount;
19257            print_VkFormat(obj->pViewFormats[i], "", isCommaNeeded);
19258        }
19259        PRINT_SPACE
19260        _OUT << "]" << "" << std::endl;
19261      } else {
19262        _OUT << "\"NULL\"" << "" << std::endl;
19263      }
19264 
19265      INDENT(-4);
19266      PRINT_SPACE
19267      if (commaNeeded)
19268          _OUT << "}," << std::endl;
19269      else
19270          _OUT << "}" << std::endl;
19271 }
19272 
print_VkAttachmentDescription2(VkAttachmentDescription2 obj,const std::string & s,bool commaNeeded=true)19273 static void print_VkAttachmentDescription2(VkAttachmentDescription2 obj, const std::string& s, bool commaNeeded=true) {
19274      PRINT_SPACE
19275      _OUT << "{" << std::endl;
19276      INDENT(4);
19277 
19278      print_VkStructureType(obj.sType, "sType", 1);
19279 
19280       if (obj.pNext) {
19281          dumpPNextChain(obj.pNext);
19282       } else {
19283          PRINT_SPACE
19284          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19285      }
19286 
19287      print_VkAttachmentDescriptionFlags(obj.flags, "flags", 1);
19288 
19289      print_VkFormat(obj.format, "format", 1);
19290 
19291      print_VkSampleCountFlagBits(obj.samples, "samples", 1);
19292 
19293      print_VkAttachmentLoadOp(obj.loadOp, "loadOp", 1);
19294 
19295      print_VkAttachmentStoreOp(obj.storeOp, "storeOp", 1);
19296 
19297      print_VkAttachmentLoadOp(obj.stencilLoadOp, "stencilLoadOp", 1);
19298 
19299      print_VkAttachmentStoreOp(obj.stencilStoreOp, "stencilStoreOp", 1);
19300 
19301      print_VkImageLayout(obj.initialLayout, "initialLayout", 1);
19302 
19303      print_VkImageLayout(obj.finalLayout, "finalLayout", 0);
19304 
19305      INDENT(-4);
19306      PRINT_SPACE
19307      if (commaNeeded)
19308          _OUT << "}," << std::endl;
19309      else
19310          _OUT << "}" << std::endl;
19311 }
print_VkAttachmentDescription2(const VkAttachmentDescription2 * obj,const std::string & s,bool commaNeeded=true)19312 static void print_VkAttachmentDescription2(const VkAttachmentDescription2 * obj, const std::string& s, bool commaNeeded=true) {
19313      PRINT_SPACE
19314      _OUT << "{" << std::endl;
19315      INDENT(4);
19316 
19317      print_VkStructureType(obj->sType, "sType", 1);
19318 
19319       if (obj->pNext) {
19320          dumpPNextChain(obj->pNext);
19321       } else {
19322          PRINT_SPACE
19323          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19324      }
19325 
19326      print_VkAttachmentDescriptionFlags(obj->flags, "flags", 1);
19327 
19328      print_VkFormat(obj->format, "format", 1);
19329 
19330      print_VkSampleCountFlagBits(obj->samples, "samples", 1);
19331 
19332      print_VkAttachmentLoadOp(obj->loadOp, "loadOp", 1);
19333 
19334      print_VkAttachmentStoreOp(obj->storeOp, "storeOp", 1);
19335 
19336      print_VkAttachmentLoadOp(obj->stencilLoadOp, "stencilLoadOp", 1);
19337 
19338      print_VkAttachmentStoreOp(obj->stencilStoreOp, "stencilStoreOp", 1);
19339 
19340      print_VkImageLayout(obj->initialLayout, "initialLayout", 1);
19341 
19342      print_VkImageLayout(obj->finalLayout, "finalLayout", 0);
19343 
19344      INDENT(-4);
19345      PRINT_SPACE
19346      if (commaNeeded)
19347          _OUT << "}," << std::endl;
19348      else
19349          _OUT << "}" << std::endl;
19350 }
19351 
print_VkAttachmentReference2(VkAttachmentReference2 obj,const std::string & s,bool commaNeeded=true)19352 static void print_VkAttachmentReference2(VkAttachmentReference2 obj, const std::string& s, bool commaNeeded=true) {
19353      PRINT_SPACE
19354      _OUT << "{" << std::endl;
19355      INDENT(4);
19356 
19357      print_VkStructureType(obj.sType, "sType", 1);
19358 
19359       if (obj.pNext) {
19360          dumpPNextChain(obj.pNext);
19361       } else {
19362          PRINT_SPACE
19363          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19364      }
19365 
19366      print_uint32_t(obj.attachment, "attachment", 1);
19367 
19368      print_VkImageLayout(obj.layout, "layout", 1);
19369 
19370      print_VkImageAspectFlags(obj.aspectMask, "aspectMask", 0);
19371 
19372      INDENT(-4);
19373      PRINT_SPACE
19374      if (commaNeeded)
19375          _OUT << "}," << std::endl;
19376      else
19377          _OUT << "}" << std::endl;
19378 }
print_VkAttachmentReference2(const VkAttachmentReference2 * obj,const std::string & s,bool commaNeeded=true)19379 static void print_VkAttachmentReference2(const VkAttachmentReference2 * obj, const std::string& s, bool commaNeeded=true) {
19380      PRINT_SPACE
19381      _OUT << "{" << std::endl;
19382      INDENT(4);
19383 
19384      print_VkStructureType(obj->sType, "sType", 1);
19385 
19386       if (obj->pNext) {
19387          dumpPNextChain(obj->pNext);
19388       } else {
19389          PRINT_SPACE
19390          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19391      }
19392 
19393      print_uint32_t(obj->attachment, "attachment", 1);
19394 
19395      print_VkImageLayout(obj->layout, "layout", 1);
19396 
19397      print_VkImageAspectFlags(obj->aspectMask, "aspectMask", 0);
19398 
19399      INDENT(-4);
19400      PRINT_SPACE
19401      if (commaNeeded)
19402          _OUT << "}," << std::endl;
19403      else
19404          _OUT << "}" << std::endl;
19405 }
19406 
print_VkSubpassDescription2(VkSubpassDescription2 obj,const std::string & s,bool commaNeeded=true)19407 static void print_VkSubpassDescription2(VkSubpassDescription2 obj, const std::string& s, bool commaNeeded=true) {
19408      PRINT_SPACE
19409      _OUT << "{" << std::endl;
19410      INDENT(4);
19411 
19412      print_VkStructureType(obj.sType, "sType", 1);
19413 
19414       if (obj.pNext) {
19415          dumpPNextChain(obj.pNext);
19416       } else {
19417          PRINT_SPACE
19418          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19419      }
19420 
19421      print_VkSubpassDescriptionFlags(obj.flags, "flags", 1);
19422 
19423      print_VkPipelineBindPoint(obj.pipelineBindPoint, "pipelineBindPoint", 1);
19424 
19425      print_uint32_t(obj.viewMask, "viewMask", 1);
19426 
19427      print_uint32_t(obj.inputAttachmentCount, "inputAttachmentCount", 1);
19428 
19429      PRINT_SPACE
19430      _OUT << "\"pInputAttachments\": " << std::endl;
19431      if (obj.pInputAttachments) {
19432          PRINT_SPACE
19433          _OUT << "[" << std::endl;
19434          for (unsigned int i = 0; i < obj.inputAttachmentCount; i++) {
19435            if (i+1 == obj.inputAttachmentCount)
19436                print_VkAttachmentReference2(obj.pInputAttachments[i], "pInputAttachments", 0);
19437            else
19438                print_VkAttachmentReference2(obj.pInputAttachments[i], "pInputAttachments", 1);
19439          }
19440          PRINT_SPACE
19441          _OUT << "]," << std::endl;
19442     }
19443      else
19444      {
19445          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19446      }
19447 
19448      print_uint32_t(obj.colorAttachmentCount, "colorAttachmentCount", 1);
19449 
19450      PRINT_SPACE
19451      _OUT << "\"pColorAttachments\": " << std::endl;
19452      if (obj.pColorAttachments) {
19453          PRINT_SPACE
19454          _OUT << "[" << std::endl;
19455          for (unsigned int i = 0; i < obj.colorAttachmentCount; i++) {
19456            if (i+1 == obj.colorAttachmentCount)
19457                print_VkAttachmentReference2(obj.pColorAttachments[i], "pColorAttachments", 0);
19458            else
19459                print_VkAttachmentReference2(obj.pColorAttachments[i], "pColorAttachments", 1);
19460          }
19461          PRINT_SPACE
19462          _OUT << "]," << std::endl;
19463     }
19464      else
19465      {
19466          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19467      }
19468 
19469      PRINT_SPACE
19470      _OUT << "\"pResolveAttachments\": " << std::endl;
19471      if (obj.pResolveAttachments) {
19472          PRINT_SPACE
19473          _OUT << "[" << std::endl;
19474          for (unsigned int i = 0; i < obj.colorAttachmentCount; i++) {
19475            if (i+1 == obj.colorAttachmentCount)
19476                print_VkAttachmentReference2(obj.pResolveAttachments[i], "pResolveAttachments", 0);
19477            else
19478                print_VkAttachmentReference2(obj.pResolveAttachments[i], "pResolveAttachments", 1);
19479          }
19480          PRINT_SPACE
19481          _OUT << "]," << std::endl;
19482     }
19483      else
19484      {
19485          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19486      }
19487 
19488      PRINT_SPACE
19489      _OUT << "\"pDepthStencilAttachment\": " << std::endl;
19490      if (obj.pDepthStencilAttachment) {
19491            print_VkAttachmentReference2(obj.pDepthStencilAttachment, "pDepthStencilAttachment", 1);
19492      }
19493      else
19494      {
19495          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19496      }
19497 
19498      print_uint32_t(obj.preserveAttachmentCount, "preserveAttachmentCount", 1);
19499 
19500      PRINT_SPACE
19501      _OUT << "\"pPreserveAttachments\":" << std::endl;
19502      PRINT_SPACE
19503      if (obj.pPreserveAttachments) {
19504        _OUT << "[" << std::endl;
19505        for (unsigned int i = 0; i < obj.preserveAttachmentCount; i++) {
19506            bool isCommaNeeded = (i+1) != obj.preserveAttachmentCount;
19507            print_uint32_t(obj.pPreserveAttachments[i], "", isCommaNeeded);
19508        }
19509        PRINT_SPACE
19510        _OUT << "]" << "" << std::endl;
19511      } else {
19512        _OUT << "\"NULL\"" << "" << std::endl;
19513      }
19514 
19515      INDENT(-4);
19516      PRINT_SPACE
19517      if (commaNeeded)
19518          _OUT << "}," << std::endl;
19519      else
19520          _OUT << "}" << std::endl;
19521 }
print_VkSubpassDescription2(const VkSubpassDescription2 * obj,const std::string & s,bool commaNeeded=true)19522 static void print_VkSubpassDescription2(const VkSubpassDescription2 * obj, const std::string& s, bool commaNeeded=true) {
19523      PRINT_SPACE
19524      _OUT << "{" << std::endl;
19525      INDENT(4);
19526 
19527      print_VkStructureType(obj->sType, "sType", 1);
19528 
19529       if (obj->pNext) {
19530          dumpPNextChain(obj->pNext);
19531       } else {
19532          PRINT_SPACE
19533          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19534      }
19535 
19536      print_VkSubpassDescriptionFlags(obj->flags, "flags", 1);
19537 
19538      print_VkPipelineBindPoint(obj->pipelineBindPoint, "pipelineBindPoint", 1);
19539 
19540      print_uint32_t(obj->viewMask, "viewMask", 1);
19541 
19542      print_uint32_t(obj->inputAttachmentCount, "inputAttachmentCount", 1);
19543 
19544      PRINT_SPACE
19545      _OUT << "\"pInputAttachments\": " << std::endl;
19546      if (obj->pInputAttachments) {
19547          PRINT_SPACE
19548          _OUT << "[" << std::endl;
19549          for (unsigned int i = 0; i < obj->inputAttachmentCount; i++) {
19550            if (i+1 == obj->inputAttachmentCount)
19551                print_VkAttachmentReference2(obj->pInputAttachments[i], "pInputAttachments", 0);
19552            else
19553                print_VkAttachmentReference2(obj->pInputAttachments[i], "pInputAttachments", 1);
19554          }
19555          PRINT_SPACE
19556          _OUT << "]," << std::endl;
19557     }
19558      else
19559      {
19560          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19561      }
19562 
19563      print_uint32_t(obj->colorAttachmentCount, "colorAttachmentCount", 1);
19564 
19565      PRINT_SPACE
19566      _OUT << "\"pColorAttachments\": " << std::endl;
19567      if (obj->pColorAttachments) {
19568          PRINT_SPACE
19569          _OUT << "[" << std::endl;
19570          for (unsigned int i = 0; i < obj->colorAttachmentCount; i++) {
19571            if (i+1 == obj->colorAttachmentCount)
19572                print_VkAttachmentReference2(obj->pColorAttachments[i], "pColorAttachments", 0);
19573            else
19574                print_VkAttachmentReference2(obj->pColorAttachments[i], "pColorAttachments", 1);
19575          }
19576          PRINT_SPACE
19577          _OUT << "]," << std::endl;
19578     }
19579      else
19580      {
19581          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19582      }
19583 
19584      PRINT_SPACE
19585      _OUT << "\"pResolveAttachments\": " << std::endl;
19586      if (obj->pResolveAttachments) {
19587          PRINT_SPACE
19588          _OUT << "[" << std::endl;
19589          for (unsigned int i = 0; i < obj->colorAttachmentCount; i++) {
19590            if (i+1 == obj->colorAttachmentCount)
19591                print_VkAttachmentReference2(obj->pResolveAttachments[i], "pResolveAttachments", 0);
19592            else
19593                print_VkAttachmentReference2(obj->pResolveAttachments[i], "pResolveAttachments", 1);
19594          }
19595          PRINT_SPACE
19596          _OUT << "]," << std::endl;
19597     }
19598      else
19599      {
19600          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19601      }
19602 
19603      PRINT_SPACE
19604      _OUT << "\"pDepthStencilAttachment\": " << std::endl;
19605      if (obj->pDepthStencilAttachment) {
19606            print_VkAttachmentReference2(obj->pDepthStencilAttachment, "pDepthStencilAttachment", 1);
19607      }
19608      else
19609      {
19610          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19611      }
19612 
19613      print_uint32_t(obj->preserveAttachmentCount, "preserveAttachmentCount", 1);
19614 
19615      PRINT_SPACE
19616      _OUT << "\"pPreserveAttachments\":" << std::endl;
19617      PRINT_SPACE
19618      if (obj->pPreserveAttachments) {
19619        _OUT << "[" << std::endl;
19620        for (unsigned int i = 0; i < obj->preserveAttachmentCount; i++) {
19621            bool isCommaNeeded = (i+1) != obj->preserveAttachmentCount;
19622            print_uint32_t(obj->pPreserveAttachments[i], "", isCommaNeeded);
19623        }
19624        PRINT_SPACE
19625        _OUT << "]" << "" << std::endl;
19626      } else {
19627        _OUT << "\"NULL\"" << "" << std::endl;
19628      }
19629 
19630      INDENT(-4);
19631      PRINT_SPACE
19632      if (commaNeeded)
19633          _OUT << "}," << std::endl;
19634      else
19635          _OUT << "}" << std::endl;
19636 }
19637 
print_VkSubpassDependency2(VkSubpassDependency2 obj,const std::string & s,bool commaNeeded=true)19638 static void print_VkSubpassDependency2(VkSubpassDependency2 obj, const std::string& s, bool commaNeeded=true) {
19639      PRINT_SPACE
19640      _OUT << "{" << std::endl;
19641      INDENT(4);
19642 
19643      print_VkStructureType(obj.sType, "sType", 1);
19644 
19645       if (obj.pNext) {
19646          dumpPNextChain(obj.pNext);
19647       } else {
19648          PRINT_SPACE
19649          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19650      }
19651 
19652      print_uint32_t(obj.srcSubpass, "srcSubpass", 1);
19653 
19654      print_uint32_t(obj.dstSubpass, "dstSubpass", 1);
19655 
19656      print_VkPipelineStageFlags(obj.srcStageMask, "srcStageMask", 1);
19657 
19658      print_VkPipelineStageFlags(obj.dstStageMask, "dstStageMask", 1);
19659 
19660      print_VkAccessFlags(obj.srcAccessMask, "srcAccessMask", 1);
19661 
19662      print_VkAccessFlags(obj.dstAccessMask, "dstAccessMask", 1);
19663 
19664      print_VkDependencyFlags(obj.dependencyFlags, "dependencyFlags", 1);
19665 
19666      print_int32_t(obj.viewOffset, "viewOffset", 0);
19667 
19668      INDENT(-4);
19669      PRINT_SPACE
19670      if (commaNeeded)
19671          _OUT << "}," << std::endl;
19672      else
19673          _OUT << "}" << std::endl;
19674 }
print_VkSubpassDependency2(const VkSubpassDependency2 * obj,const std::string & s,bool commaNeeded=true)19675 static void print_VkSubpassDependency2(const VkSubpassDependency2 * obj, const std::string& s, bool commaNeeded=true) {
19676      PRINT_SPACE
19677      _OUT << "{" << std::endl;
19678      INDENT(4);
19679 
19680      print_VkStructureType(obj->sType, "sType", 1);
19681 
19682       if (obj->pNext) {
19683          dumpPNextChain(obj->pNext);
19684       } else {
19685          PRINT_SPACE
19686          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19687      }
19688 
19689      print_uint32_t(obj->srcSubpass, "srcSubpass", 1);
19690 
19691      print_uint32_t(obj->dstSubpass, "dstSubpass", 1);
19692 
19693      print_VkPipelineStageFlags(obj->srcStageMask, "srcStageMask", 1);
19694 
19695      print_VkPipelineStageFlags(obj->dstStageMask, "dstStageMask", 1);
19696 
19697      print_VkAccessFlags(obj->srcAccessMask, "srcAccessMask", 1);
19698 
19699      print_VkAccessFlags(obj->dstAccessMask, "dstAccessMask", 1);
19700 
19701      print_VkDependencyFlags(obj->dependencyFlags, "dependencyFlags", 1);
19702 
19703      print_int32_t(obj->viewOffset, "viewOffset", 0);
19704 
19705      INDENT(-4);
19706      PRINT_SPACE
19707      if (commaNeeded)
19708          _OUT << "}," << std::endl;
19709      else
19710          _OUT << "}" << std::endl;
19711 }
19712 
print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj,const std::string & s,bool commaNeeded=true)19713 static void print_VkRenderPassCreateInfo2(VkRenderPassCreateInfo2 obj, const std::string& s, bool commaNeeded=true) {
19714      PRINT_SPACE
19715      _OUT << "{" << std::endl;
19716      INDENT(4);
19717 
19718      print_VkStructureType(obj.sType, "sType", 1);
19719 
19720       if (obj.pNext) {
19721          dumpPNextChain(obj.pNext);
19722       } else {
19723          PRINT_SPACE
19724          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19725      }
19726 
19727      print_VkRenderPassCreateFlags(obj.flags, "flags", 1);
19728 
19729      print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
19730 
19731      PRINT_SPACE
19732      _OUT << "\"pAttachments\": " << std::endl;
19733      if (obj.pAttachments) {
19734          PRINT_SPACE
19735          _OUT << "[" << std::endl;
19736          for (unsigned int i = 0; i < obj.attachmentCount; i++) {
19737            if (i+1 == obj.attachmentCount)
19738                print_VkAttachmentDescription2(obj.pAttachments[i], "pAttachments", 0);
19739            else
19740                print_VkAttachmentDescription2(obj.pAttachments[i], "pAttachments", 1);
19741          }
19742          PRINT_SPACE
19743          _OUT << "]," << std::endl;
19744     }
19745      else
19746      {
19747          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19748      }
19749 
19750      print_uint32_t(obj.subpassCount, "subpassCount", 1);
19751 
19752      PRINT_SPACE
19753      _OUT << "\"pSubpasses\": " << std::endl;
19754      if (obj.pSubpasses) {
19755          PRINT_SPACE
19756          _OUT << "[" << std::endl;
19757          for (unsigned int i = 0; i < obj.subpassCount; i++) {
19758            if (i+1 == obj.subpassCount)
19759                print_VkSubpassDescription2(obj.pSubpasses[i], "pSubpasses", 0);
19760            else
19761                print_VkSubpassDescription2(obj.pSubpasses[i], "pSubpasses", 1);
19762          }
19763          PRINT_SPACE
19764          _OUT << "]," << std::endl;
19765     }
19766      else
19767      {
19768          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19769      }
19770 
19771      print_uint32_t(obj.dependencyCount, "dependencyCount", 1);
19772 
19773      PRINT_SPACE
19774      _OUT << "\"pDependencies\": " << std::endl;
19775      if (obj.pDependencies) {
19776          PRINT_SPACE
19777          _OUT << "[" << std::endl;
19778          for (unsigned int i = 0; i < obj.dependencyCount; i++) {
19779            if (i+1 == obj.dependencyCount)
19780                print_VkSubpassDependency2(obj.pDependencies[i], "pDependencies", 0);
19781            else
19782                print_VkSubpassDependency2(obj.pDependencies[i], "pDependencies", 1);
19783          }
19784          PRINT_SPACE
19785          _OUT << "]," << std::endl;
19786     }
19787      else
19788      {
19789          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19790      }
19791 
19792      print_uint32_t(obj.correlatedViewMaskCount, "correlatedViewMaskCount", 1);
19793 
19794      PRINT_SPACE
19795      _OUT << "\"pCorrelatedViewMasks\":" << std::endl;
19796      PRINT_SPACE
19797      if (obj.pCorrelatedViewMasks) {
19798        _OUT << "[" << std::endl;
19799        for (unsigned int i = 0; i < obj.correlatedViewMaskCount; i++) {
19800            bool isCommaNeeded = (i+1) != obj.correlatedViewMaskCount;
19801            print_uint32_t(obj.pCorrelatedViewMasks[i], "", isCommaNeeded);
19802        }
19803        PRINT_SPACE
19804        _OUT << "]" << "" << std::endl;
19805      } else {
19806        _OUT << "\"NULL\"" << "" << std::endl;
19807      }
19808 
19809      INDENT(-4);
19810      PRINT_SPACE
19811      if (commaNeeded)
19812          _OUT << "}," << std::endl;
19813      else
19814          _OUT << "}" << std::endl;
19815 }
print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj,const std::string & s,bool commaNeeded=true)19816 static void print_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * obj, const std::string& s, bool commaNeeded=true) {
19817      PRINT_SPACE
19818      _OUT << "{" << std::endl;
19819      INDENT(4);
19820 
19821      print_VkStructureType(obj->sType, "sType", 1);
19822 
19823       if (obj->pNext) {
19824          dumpPNextChain(obj->pNext);
19825       } else {
19826          PRINT_SPACE
19827          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19828      }
19829 
19830      print_VkRenderPassCreateFlags(obj->flags, "flags", 1);
19831 
19832      print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
19833 
19834      PRINT_SPACE
19835      _OUT << "\"pAttachments\": " << std::endl;
19836      if (obj->pAttachments) {
19837          PRINT_SPACE
19838          _OUT << "[" << std::endl;
19839          for (unsigned int i = 0; i < obj->attachmentCount; i++) {
19840            if (i+1 == obj->attachmentCount)
19841                print_VkAttachmentDescription2(obj->pAttachments[i], "pAttachments", 0);
19842            else
19843                print_VkAttachmentDescription2(obj->pAttachments[i], "pAttachments", 1);
19844          }
19845          PRINT_SPACE
19846          _OUT << "]," << std::endl;
19847     }
19848      else
19849      {
19850          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19851      }
19852 
19853      print_uint32_t(obj->subpassCount, "subpassCount", 1);
19854 
19855      PRINT_SPACE
19856      _OUT << "\"pSubpasses\": " << std::endl;
19857      if (obj->pSubpasses) {
19858          PRINT_SPACE
19859          _OUT << "[" << std::endl;
19860          for (unsigned int i = 0; i < obj->subpassCount; i++) {
19861            if (i+1 == obj->subpassCount)
19862                print_VkSubpassDescription2(obj->pSubpasses[i], "pSubpasses", 0);
19863            else
19864                print_VkSubpassDescription2(obj->pSubpasses[i], "pSubpasses", 1);
19865          }
19866          PRINT_SPACE
19867          _OUT << "]," << std::endl;
19868     }
19869      else
19870      {
19871          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19872      }
19873 
19874      print_uint32_t(obj->dependencyCount, "dependencyCount", 1);
19875 
19876      PRINT_SPACE
19877      _OUT << "\"pDependencies\": " << std::endl;
19878      if (obj->pDependencies) {
19879          PRINT_SPACE
19880          _OUT << "[" << std::endl;
19881          for (unsigned int i = 0; i < obj->dependencyCount; i++) {
19882            if (i+1 == obj->dependencyCount)
19883                print_VkSubpassDependency2(obj->pDependencies[i], "pDependencies", 0);
19884            else
19885                print_VkSubpassDependency2(obj->pDependencies[i], "pDependencies", 1);
19886          }
19887          PRINT_SPACE
19888          _OUT << "]," << std::endl;
19889     }
19890      else
19891      {
19892          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
19893      }
19894 
19895      print_uint32_t(obj->correlatedViewMaskCount, "correlatedViewMaskCount", 1);
19896 
19897      PRINT_SPACE
19898      _OUT << "\"pCorrelatedViewMasks\":" << std::endl;
19899      PRINT_SPACE
19900      if (obj->pCorrelatedViewMasks) {
19901        _OUT << "[" << std::endl;
19902        for (unsigned int i = 0; i < obj->correlatedViewMaskCount; i++) {
19903            bool isCommaNeeded = (i+1) != obj->correlatedViewMaskCount;
19904            print_uint32_t(obj->pCorrelatedViewMasks[i], "", isCommaNeeded);
19905        }
19906        PRINT_SPACE
19907        _OUT << "]" << "" << std::endl;
19908      } else {
19909        _OUT << "\"NULL\"" << "" << std::endl;
19910      }
19911 
19912      INDENT(-4);
19913      PRINT_SPACE
19914      if (commaNeeded)
19915          _OUT << "}," << std::endl;
19916      else
19917          _OUT << "}" << std::endl;
19918 }
19919 
print_VkSubpassBeginInfo(VkSubpassBeginInfo obj,const std::string & s,bool commaNeeded=true)19920 static void print_VkSubpassBeginInfo(VkSubpassBeginInfo obj, const std::string& s, bool commaNeeded=true) {
19921      PRINT_SPACE
19922      _OUT << "{" << std::endl;
19923      INDENT(4);
19924 
19925      print_VkStructureType(obj.sType, "sType", 1);
19926 
19927       if (obj.pNext) {
19928          dumpPNextChain(obj.pNext);
19929       } else {
19930          PRINT_SPACE
19931          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19932      }
19933 
19934      print_VkSubpassContents(obj.contents, "contents", 0);
19935 
19936      INDENT(-4);
19937      PRINT_SPACE
19938      if (commaNeeded)
19939          _OUT << "}," << std::endl;
19940      else
19941          _OUT << "}" << std::endl;
19942 }
print_VkSubpassBeginInfo(const VkSubpassBeginInfo * obj,const std::string & s,bool commaNeeded=true)19943 static void print_VkSubpassBeginInfo(const VkSubpassBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
19944      PRINT_SPACE
19945      _OUT << "{" << std::endl;
19946      INDENT(4);
19947 
19948      print_VkStructureType(obj->sType, "sType", 1);
19949 
19950       if (obj->pNext) {
19951          dumpPNextChain(obj->pNext);
19952       } else {
19953          PRINT_SPACE
19954          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19955      }
19956 
19957      print_VkSubpassContents(obj->contents, "contents", 0);
19958 
19959      INDENT(-4);
19960      PRINT_SPACE
19961      if (commaNeeded)
19962          _OUT << "}," << std::endl;
19963      else
19964          _OUT << "}" << std::endl;
19965 }
19966 
print_VkSubpassEndInfo(VkSubpassEndInfo obj,const std::string & s,bool commaNeeded=true)19967 static void print_VkSubpassEndInfo(VkSubpassEndInfo obj, const std::string& s, bool commaNeeded=true) {
19968      PRINT_SPACE
19969      _OUT << "{" << std::endl;
19970      INDENT(4);
19971 
19972      print_VkStructureType(obj.sType, "sType", 1);
19973 
19974       if (obj.pNext) {
19975          dumpPNextChain(obj.pNext);
19976       } else {
19977          PRINT_SPACE
19978          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
19979      }
19980 
19981      INDENT(-4);
19982      PRINT_SPACE
19983      if (commaNeeded)
19984          _OUT << "}," << std::endl;
19985      else
19986          _OUT << "}" << std::endl;
19987 }
print_VkSubpassEndInfo(const VkSubpassEndInfo * obj,const std::string & s,bool commaNeeded=true)19988 static void print_VkSubpassEndInfo(const VkSubpassEndInfo * obj, const std::string& s, bool commaNeeded=true) {
19989      PRINT_SPACE
19990      _OUT << "{" << std::endl;
19991      INDENT(4);
19992 
19993      print_VkStructureType(obj->sType, "sType", 1);
19994 
19995       if (obj->pNext) {
19996          dumpPNextChain(obj->pNext);
19997       } else {
19998          PRINT_SPACE
19999          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20000      }
20001 
20002      INDENT(-4);
20003      PRINT_SPACE
20004      if (commaNeeded)
20005          _OUT << "}," << std::endl;
20006      else
20007          _OUT << "}" << std::endl;
20008 }
20009 
print_VkPhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorageFeatures obj,const std::string & s,bool commaNeeded=true)20010 static void print_VkPhysicalDevice8BitStorageFeatures(VkPhysicalDevice8BitStorageFeatures obj, const std::string& s, bool commaNeeded=true) {
20011      PRINT_SPACE
20012      _OUT << "{" << std::endl;
20013      INDENT(4);
20014 
20015      print_VkStructureType(obj.sType, "sType", 1);
20016 
20017       if (obj.pNext) {
20018          dumpPNextChain(obj.pNext);
20019       } else {
20020          PRINT_SPACE
20021          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20022      }
20023 
20024      print_VkBool32(obj.storageBuffer8BitAccess, "storageBuffer8BitAccess", 1);
20025 
20026      print_VkBool32(obj.uniformAndStorageBuffer8BitAccess, "uniformAndStorageBuffer8BitAccess", 1);
20027 
20028      print_VkBool32(obj.storagePushConstant8, "storagePushConstant8", 0);
20029 
20030      INDENT(-4);
20031      PRINT_SPACE
20032      if (commaNeeded)
20033          _OUT << "}," << std::endl;
20034      else
20035          _OUT << "}" << std::endl;
20036 }
print_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures * obj,const std::string & s,bool commaNeeded=true)20037 static void print_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures * obj, const std::string& s, bool commaNeeded=true) {
20038      PRINT_SPACE
20039      _OUT << "{" << std::endl;
20040      INDENT(4);
20041 
20042      print_VkStructureType(obj->sType, "sType", 1);
20043 
20044       if (obj->pNext) {
20045          dumpPNextChain(obj->pNext);
20046       } else {
20047          PRINT_SPACE
20048          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20049      }
20050 
20051      print_VkBool32(obj->storageBuffer8BitAccess, "storageBuffer8BitAccess", 1);
20052 
20053      print_VkBool32(obj->uniformAndStorageBuffer8BitAccess, "uniformAndStorageBuffer8BitAccess", 1);
20054 
20055      print_VkBool32(obj->storagePushConstant8, "storagePushConstant8", 0);
20056 
20057      INDENT(-4);
20058      PRINT_SPACE
20059      if (commaNeeded)
20060          _OUT << "}," << std::endl;
20061      else
20062          _OUT << "}" << std::endl;
20063 }
20064 
print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverProperties obj,const std::string & s,bool commaNeeded=true)20065 static void print_VkPhysicalDeviceDriverProperties(VkPhysicalDeviceDriverProperties obj, const std::string& s, bool commaNeeded=true) {
20066      PRINT_SPACE
20067      _OUT << "{" << std::endl;
20068      INDENT(4);
20069 
20070      print_VkStructureType(obj.sType, "sType", 1);
20071 
20072       if (obj.pNext) {
20073          dumpPNextChain(obj.pNext);
20074       } else {
20075          PRINT_SPACE
20076          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20077      }
20078 
20079      print_VkDriverId(obj.driverID, "driverID", 1);
20080 
20081      PRINT_SPACE
20082      _OUT << "\"driverName\":" << std::endl;
20083      PRINT_SPACE
20084        _OUT << "[" << std::endl;
20085        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
20086            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
20087            print_char(obj.driverName[i], "", isCommaNeeded);
20088        }
20089        PRINT_SPACE
20090        _OUT << "]" << "," << std::endl;
20091 
20092      PRINT_SPACE
20093      _OUT << "\"driverInfo\":" << std::endl;
20094      PRINT_SPACE
20095        _OUT << "[" << std::endl;
20096        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
20097            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
20098            print_char(obj.driverInfo[i], "", isCommaNeeded);
20099        }
20100        PRINT_SPACE
20101        _OUT << "]" << "," << std::endl;
20102 
20103      PRINT_SPACE
20104      _OUT << "\"conformanceVersion\": " << std::endl;
20105      {
20106            print_VkConformanceVersion(obj.conformanceVersion, "conformanceVersion", 0);
20107      }
20108 
20109      INDENT(-4);
20110      PRINT_SPACE
20111      if (commaNeeded)
20112          _OUT << "}," << std::endl;
20113      else
20114          _OUT << "}" << std::endl;
20115 }
print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties * obj,const std::string & s,bool commaNeeded=true)20116 static void print_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties * obj, const std::string& s, bool commaNeeded=true) {
20117      PRINT_SPACE
20118      _OUT << "{" << std::endl;
20119      INDENT(4);
20120 
20121      print_VkStructureType(obj->sType, "sType", 1);
20122 
20123       if (obj->pNext) {
20124          dumpPNextChain(obj->pNext);
20125       } else {
20126          PRINT_SPACE
20127          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20128      }
20129 
20130      print_VkDriverId(obj->driverID, "driverID", 1);
20131 
20132      PRINT_SPACE
20133      _OUT << "\"driverName\":" << std::endl;
20134      PRINT_SPACE
20135        _OUT << "[" << std::endl;
20136        for (unsigned int i = 0; i < VK_MAX_DRIVER_NAME_SIZE; i++) {
20137            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_NAME_SIZE;
20138            print_char(obj->driverName[i], "", isCommaNeeded);
20139        }
20140        PRINT_SPACE
20141        _OUT << "]" << "," << std::endl;
20142 
20143      PRINT_SPACE
20144      _OUT << "\"driverInfo\":" << std::endl;
20145      PRINT_SPACE
20146        _OUT << "[" << std::endl;
20147        for (unsigned int i = 0; i < VK_MAX_DRIVER_INFO_SIZE; i++) {
20148            bool isCommaNeeded = (i+1) != VK_MAX_DRIVER_INFO_SIZE;
20149            print_char(obj->driverInfo[i], "", isCommaNeeded);
20150        }
20151        PRINT_SPACE
20152        _OUT << "]" << "," << std::endl;
20153 
20154      PRINT_SPACE
20155      _OUT << "\"conformanceVersion\": " << std::endl;
20156      {
20157            print_VkConformanceVersion(obj->conformanceVersion, "conformanceVersion", 0);
20158      }
20159 
20160      INDENT(-4);
20161      PRINT_SPACE
20162      if (commaNeeded)
20163          _OUT << "}," << std::endl;
20164      else
20165          _OUT << "}" << std::endl;
20166 }
20167 
print_VkPhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShaderAtomicInt64Features obj,const std::string & s,bool commaNeeded=true)20168 static void print_VkPhysicalDeviceShaderAtomicInt64Features(VkPhysicalDeviceShaderAtomicInt64Features obj, const std::string& s, bool commaNeeded=true) {
20169      PRINT_SPACE
20170      _OUT << "{" << std::endl;
20171      INDENT(4);
20172 
20173      print_VkStructureType(obj.sType, "sType", 1);
20174 
20175       if (obj.pNext) {
20176          dumpPNextChain(obj.pNext);
20177       } else {
20178          PRINT_SPACE
20179          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20180      }
20181 
20182      print_VkBool32(obj.shaderBufferInt64Atomics, "shaderBufferInt64Atomics", 1);
20183 
20184      print_VkBool32(obj.shaderSharedInt64Atomics, "shaderSharedInt64Atomics", 0);
20185 
20186      INDENT(-4);
20187      PRINT_SPACE
20188      if (commaNeeded)
20189          _OUT << "}," << std::endl;
20190      else
20191          _OUT << "}" << std::endl;
20192 }
print_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDeviceShaderAtomicInt64Features * obj,const std::string & s,bool commaNeeded=true)20193 static void print_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDeviceShaderAtomicInt64Features * obj, const std::string& s, bool commaNeeded=true) {
20194      PRINT_SPACE
20195      _OUT << "{" << std::endl;
20196      INDENT(4);
20197 
20198      print_VkStructureType(obj->sType, "sType", 1);
20199 
20200       if (obj->pNext) {
20201          dumpPNextChain(obj->pNext);
20202       } else {
20203          PRINT_SPACE
20204          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20205      }
20206 
20207      print_VkBool32(obj->shaderBufferInt64Atomics, "shaderBufferInt64Atomics", 1);
20208 
20209      print_VkBool32(obj->shaderSharedInt64Atomics, "shaderSharedInt64Atomics", 0);
20210 
20211      INDENT(-4);
20212      PRINT_SPACE
20213      if (commaNeeded)
20214          _OUT << "}," << std::endl;
20215      else
20216          _OUT << "}" << std::endl;
20217 }
20218 
print_VkPhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShaderFloat16Int8Features obj,const std::string & s,bool commaNeeded=true)20219 static void print_VkPhysicalDeviceShaderFloat16Int8Features(VkPhysicalDeviceShaderFloat16Int8Features obj, const std::string& s, bool commaNeeded=true) {
20220      PRINT_SPACE
20221      _OUT << "{" << std::endl;
20222      INDENT(4);
20223 
20224      print_VkStructureType(obj.sType, "sType", 1);
20225 
20226       if (obj.pNext) {
20227          dumpPNextChain(obj.pNext);
20228       } else {
20229          PRINT_SPACE
20230          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20231      }
20232 
20233      print_VkBool32(obj.shaderFloat16, "shaderFloat16", 1);
20234 
20235      print_VkBool32(obj.shaderInt8, "shaderInt8", 0);
20236 
20237      INDENT(-4);
20238      PRINT_SPACE
20239      if (commaNeeded)
20240          _OUT << "}," << std::endl;
20241      else
20242          _OUT << "}" << std::endl;
20243 }
print_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDeviceShaderFloat16Int8Features * obj,const std::string & s,bool commaNeeded=true)20244 static void print_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDeviceShaderFloat16Int8Features * obj, const std::string& s, bool commaNeeded=true) {
20245      PRINT_SPACE
20246      _OUT << "{" << std::endl;
20247      INDENT(4);
20248 
20249      print_VkStructureType(obj->sType, "sType", 1);
20250 
20251       if (obj->pNext) {
20252          dumpPNextChain(obj->pNext);
20253       } else {
20254          PRINT_SPACE
20255          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20256      }
20257 
20258      print_VkBool32(obj->shaderFloat16, "shaderFloat16", 1);
20259 
20260      print_VkBool32(obj->shaderInt8, "shaderInt8", 0);
20261 
20262      INDENT(-4);
20263      PRINT_SPACE
20264      if (commaNeeded)
20265          _OUT << "}," << std::endl;
20266      else
20267          _OUT << "}" << std::endl;
20268 }
20269 
print_VkPhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatControlsProperties obj,const std::string & s,bool commaNeeded=true)20270 static void print_VkPhysicalDeviceFloatControlsProperties(VkPhysicalDeviceFloatControlsProperties obj, const std::string& s, bool commaNeeded=true) {
20271      PRINT_SPACE
20272      _OUT << "{" << std::endl;
20273      INDENT(4);
20274 
20275      print_VkStructureType(obj.sType, "sType", 1);
20276 
20277       if (obj.pNext) {
20278          dumpPNextChain(obj.pNext);
20279       } else {
20280          PRINT_SPACE
20281          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20282      }
20283 
20284      print_VkShaderFloatControlsIndependence(obj.denormBehaviorIndependence, "denormBehaviorIndependence", 1);
20285 
20286      print_VkShaderFloatControlsIndependence(obj.roundingModeIndependence, "roundingModeIndependence", 1);
20287 
20288      print_VkBool32(obj.shaderSignedZeroInfNanPreserveFloat16, "shaderSignedZeroInfNanPreserveFloat16", 1);
20289 
20290      print_VkBool32(obj.shaderSignedZeroInfNanPreserveFloat32, "shaderSignedZeroInfNanPreserveFloat32", 1);
20291 
20292      print_VkBool32(obj.shaderSignedZeroInfNanPreserveFloat64, "shaderSignedZeroInfNanPreserveFloat64", 1);
20293 
20294      print_VkBool32(obj.shaderDenormPreserveFloat16, "shaderDenormPreserveFloat16", 1);
20295 
20296      print_VkBool32(obj.shaderDenormPreserveFloat32, "shaderDenormPreserveFloat32", 1);
20297 
20298      print_VkBool32(obj.shaderDenormPreserveFloat64, "shaderDenormPreserveFloat64", 1);
20299 
20300      print_VkBool32(obj.shaderDenormFlushToZeroFloat16, "shaderDenormFlushToZeroFloat16", 1);
20301 
20302      print_VkBool32(obj.shaderDenormFlushToZeroFloat32, "shaderDenormFlushToZeroFloat32", 1);
20303 
20304      print_VkBool32(obj.shaderDenormFlushToZeroFloat64, "shaderDenormFlushToZeroFloat64", 1);
20305 
20306      print_VkBool32(obj.shaderRoundingModeRTEFloat16, "shaderRoundingModeRTEFloat16", 1);
20307 
20308      print_VkBool32(obj.shaderRoundingModeRTEFloat32, "shaderRoundingModeRTEFloat32", 1);
20309 
20310      print_VkBool32(obj.shaderRoundingModeRTEFloat64, "shaderRoundingModeRTEFloat64", 1);
20311 
20312      print_VkBool32(obj.shaderRoundingModeRTZFloat16, "shaderRoundingModeRTZFloat16", 1);
20313 
20314      print_VkBool32(obj.shaderRoundingModeRTZFloat32, "shaderRoundingModeRTZFloat32", 1);
20315 
20316      print_VkBool32(obj.shaderRoundingModeRTZFloat64, "shaderRoundingModeRTZFloat64", 0);
20317 
20318      INDENT(-4);
20319      PRINT_SPACE
20320      if (commaNeeded)
20321          _OUT << "}," << std::endl;
20322      else
20323          _OUT << "}" << std::endl;
20324 }
print_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDeviceFloatControlsProperties * obj,const std::string & s,bool commaNeeded=true)20325 static void print_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDeviceFloatControlsProperties * obj, const std::string& s, bool commaNeeded=true) {
20326      PRINT_SPACE
20327      _OUT << "{" << std::endl;
20328      INDENT(4);
20329 
20330      print_VkStructureType(obj->sType, "sType", 1);
20331 
20332       if (obj->pNext) {
20333          dumpPNextChain(obj->pNext);
20334       } else {
20335          PRINT_SPACE
20336          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20337      }
20338 
20339      print_VkShaderFloatControlsIndependence(obj->denormBehaviorIndependence, "denormBehaviorIndependence", 1);
20340 
20341      print_VkShaderFloatControlsIndependence(obj->roundingModeIndependence, "roundingModeIndependence", 1);
20342 
20343      print_VkBool32(obj->shaderSignedZeroInfNanPreserveFloat16, "shaderSignedZeroInfNanPreserveFloat16", 1);
20344 
20345      print_VkBool32(obj->shaderSignedZeroInfNanPreserveFloat32, "shaderSignedZeroInfNanPreserveFloat32", 1);
20346 
20347      print_VkBool32(obj->shaderSignedZeroInfNanPreserveFloat64, "shaderSignedZeroInfNanPreserveFloat64", 1);
20348 
20349      print_VkBool32(obj->shaderDenormPreserveFloat16, "shaderDenormPreserveFloat16", 1);
20350 
20351      print_VkBool32(obj->shaderDenormPreserveFloat32, "shaderDenormPreserveFloat32", 1);
20352 
20353      print_VkBool32(obj->shaderDenormPreserveFloat64, "shaderDenormPreserveFloat64", 1);
20354 
20355      print_VkBool32(obj->shaderDenormFlushToZeroFloat16, "shaderDenormFlushToZeroFloat16", 1);
20356 
20357      print_VkBool32(obj->shaderDenormFlushToZeroFloat32, "shaderDenormFlushToZeroFloat32", 1);
20358 
20359      print_VkBool32(obj->shaderDenormFlushToZeroFloat64, "shaderDenormFlushToZeroFloat64", 1);
20360 
20361      print_VkBool32(obj->shaderRoundingModeRTEFloat16, "shaderRoundingModeRTEFloat16", 1);
20362 
20363      print_VkBool32(obj->shaderRoundingModeRTEFloat32, "shaderRoundingModeRTEFloat32", 1);
20364 
20365      print_VkBool32(obj->shaderRoundingModeRTEFloat64, "shaderRoundingModeRTEFloat64", 1);
20366 
20367      print_VkBool32(obj->shaderRoundingModeRTZFloat16, "shaderRoundingModeRTZFloat16", 1);
20368 
20369      print_VkBool32(obj->shaderRoundingModeRTZFloat32, "shaderRoundingModeRTZFloat32", 1);
20370 
20371      print_VkBool32(obj->shaderRoundingModeRTZFloat64, "shaderRoundingModeRTZFloat64", 0);
20372 
20373      INDENT(-4);
20374      PRINT_SPACE
20375      if (commaNeeded)
20376          _OUT << "}," << std::endl;
20377      else
20378          _OUT << "}" << std::endl;
20379 }
20380 
print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLayoutBindingFlagsCreateInfo obj,const std::string & s,bool commaNeeded=true)20381 static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(VkDescriptorSetLayoutBindingFlagsCreateInfo obj, const std::string& s, bool commaNeeded=true) {
20382      PRINT_SPACE
20383      _OUT << "{" << std::endl;
20384      INDENT(4);
20385 
20386      print_VkStructureType(obj.sType, "sType", 1);
20387 
20388       if (obj.pNext) {
20389          dumpPNextChain(obj.pNext);
20390       } else {
20391          PRINT_SPACE
20392          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20393      }
20394 
20395      print_uint32_t(obj.bindingCount, "bindingCount", 1);
20396 
20397      PRINT_SPACE
20398      _OUT << "\"pBindingFlags\":" << std::endl;
20399      PRINT_SPACE
20400      if (obj.pBindingFlags) {
20401        _OUT << "[" << std::endl;
20402        for (unsigned int i = 0; i < obj.bindingCount; i++) {
20403            bool isCommaNeeded = (i+1) != obj.bindingCount;
20404            print_VkDescriptorBindingFlags(obj.pBindingFlags[i], "", isCommaNeeded);
20405        }
20406        PRINT_SPACE
20407        _OUT << "]" << "" << std::endl;
20408      } else {
20409        _OUT << "\"NULL\"" << "" << std::endl;
20410      }
20411 
20412      INDENT(-4);
20413      PRINT_SPACE
20414      if (commaNeeded)
20415          _OUT << "}," << std::endl;
20416      else
20417          _OUT << "}" << std::endl;
20418 }
print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptorSetLayoutBindingFlagsCreateInfo * obj,const std::string & s,bool commaNeeded=true)20419 static void print_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptorSetLayoutBindingFlagsCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
20420      PRINT_SPACE
20421      _OUT << "{" << std::endl;
20422      INDENT(4);
20423 
20424      print_VkStructureType(obj->sType, "sType", 1);
20425 
20426       if (obj->pNext) {
20427          dumpPNextChain(obj->pNext);
20428       } else {
20429          PRINT_SPACE
20430          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20431      }
20432 
20433      print_uint32_t(obj->bindingCount, "bindingCount", 1);
20434 
20435      PRINT_SPACE
20436      _OUT << "\"pBindingFlags\":" << std::endl;
20437      PRINT_SPACE
20438      if (obj->pBindingFlags) {
20439        _OUT << "[" << std::endl;
20440        for (unsigned int i = 0; i < obj->bindingCount; i++) {
20441            bool isCommaNeeded = (i+1) != obj->bindingCount;
20442            print_VkDescriptorBindingFlags(obj->pBindingFlags[i], "", isCommaNeeded);
20443        }
20444        PRINT_SPACE
20445        _OUT << "]" << "" << std::endl;
20446      } else {
20447        _OUT << "\"NULL\"" << "" << std::endl;
20448      }
20449 
20450      INDENT(-4);
20451      PRINT_SPACE
20452      if (commaNeeded)
20453          _OUT << "}," << std::endl;
20454      else
20455          _OUT << "}" << std::endl;
20456 }
20457 
print_VkPhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDescriptorIndexingFeatures obj,const std::string & s,bool commaNeeded=true)20458 static void print_VkPhysicalDeviceDescriptorIndexingFeatures(VkPhysicalDeviceDescriptorIndexingFeatures obj, const std::string& s, bool commaNeeded=true) {
20459      PRINT_SPACE
20460      _OUT << "{" << std::endl;
20461      INDENT(4);
20462 
20463      print_VkStructureType(obj.sType, "sType", 1);
20464 
20465       if (obj.pNext) {
20466          dumpPNextChain(obj.pNext);
20467       } else {
20468          PRINT_SPACE
20469          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20470      }
20471 
20472      print_VkBool32(obj.shaderInputAttachmentArrayDynamicIndexing, "shaderInputAttachmentArrayDynamicIndexing", 1);
20473 
20474      print_VkBool32(obj.shaderUniformTexelBufferArrayDynamicIndexing, "shaderUniformTexelBufferArrayDynamicIndexing", 1);
20475 
20476      print_VkBool32(obj.shaderStorageTexelBufferArrayDynamicIndexing, "shaderStorageTexelBufferArrayDynamicIndexing", 1);
20477 
20478      print_VkBool32(obj.shaderUniformBufferArrayNonUniformIndexing, "shaderUniformBufferArrayNonUniformIndexing", 1);
20479 
20480      print_VkBool32(obj.shaderSampledImageArrayNonUniformIndexing, "shaderSampledImageArrayNonUniformIndexing", 1);
20481 
20482      print_VkBool32(obj.shaderStorageBufferArrayNonUniformIndexing, "shaderStorageBufferArrayNonUniformIndexing", 1);
20483 
20484      print_VkBool32(obj.shaderStorageImageArrayNonUniformIndexing, "shaderStorageImageArrayNonUniformIndexing", 1);
20485 
20486      print_VkBool32(obj.shaderInputAttachmentArrayNonUniformIndexing, "shaderInputAttachmentArrayNonUniformIndexing", 1);
20487 
20488      print_VkBool32(obj.shaderUniformTexelBufferArrayNonUniformIndexing, "shaderUniformTexelBufferArrayNonUniformIndexing", 1);
20489 
20490      print_VkBool32(obj.shaderStorageTexelBufferArrayNonUniformIndexing, "shaderStorageTexelBufferArrayNonUniformIndexing", 1);
20491 
20492      print_VkBool32(obj.descriptorBindingUniformBufferUpdateAfterBind, "descriptorBindingUniformBufferUpdateAfterBind", 1);
20493 
20494      print_VkBool32(obj.descriptorBindingSampledImageUpdateAfterBind, "descriptorBindingSampledImageUpdateAfterBind", 1);
20495 
20496      print_VkBool32(obj.descriptorBindingStorageImageUpdateAfterBind, "descriptorBindingStorageImageUpdateAfterBind", 1);
20497 
20498      print_VkBool32(obj.descriptorBindingStorageBufferUpdateAfterBind, "descriptorBindingStorageBufferUpdateAfterBind", 1);
20499 
20500      print_VkBool32(obj.descriptorBindingUniformTexelBufferUpdateAfterBind, "descriptorBindingUniformTexelBufferUpdateAfterBind", 1);
20501 
20502      print_VkBool32(obj.descriptorBindingStorageTexelBufferUpdateAfterBind, "descriptorBindingStorageTexelBufferUpdateAfterBind", 1);
20503 
20504      print_VkBool32(obj.descriptorBindingUpdateUnusedWhilePending, "descriptorBindingUpdateUnusedWhilePending", 1);
20505 
20506      print_VkBool32(obj.descriptorBindingPartiallyBound, "descriptorBindingPartiallyBound", 1);
20507 
20508      print_VkBool32(obj.descriptorBindingVariableDescriptorCount, "descriptorBindingVariableDescriptorCount", 1);
20509 
20510      print_VkBool32(obj.runtimeDescriptorArray, "runtimeDescriptorArray", 0);
20511 
20512      INDENT(-4);
20513      PRINT_SPACE
20514      if (commaNeeded)
20515          _OUT << "}," << std::endl;
20516      else
20517          _OUT << "}" << std::endl;
20518 }
print_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDeviceDescriptorIndexingFeatures * obj,const std::string & s,bool commaNeeded=true)20519 static void print_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDeviceDescriptorIndexingFeatures * obj, const std::string& s, bool commaNeeded=true) {
20520      PRINT_SPACE
20521      _OUT << "{" << std::endl;
20522      INDENT(4);
20523 
20524      print_VkStructureType(obj->sType, "sType", 1);
20525 
20526       if (obj->pNext) {
20527          dumpPNextChain(obj->pNext);
20528       } else {
20529          PRINT_SPACE
20530          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20531      }
20532 
20533      print_VkBool32(obj->shaderInputAttachmentArrayDynamicIndexing, "shaderInputAttachmentArrayDynamicIndexing", 1);
20534 
20535      print_VkBool32(obj->shaderUniformTexelBufferArrayDynamicIndexing, "shaderUniformTexelBufferArrayDynamicIndexing", 1);
20536 
20537      print_VkBool32(obj->shaderStorageTexelBufferArrayDynamicIndexing, "shaderStorageTexelBufferArrayDynamicIndexing", 1);
20538 
20539      print_VkBool32(obj->shaderUniformBufferArrayNonUniformIndexing, "shaderUniformBufferArrayNonUniformIndexing", 1);
20540 
20541      print_VkBool32(obj->shaderSampledImageArrayNonUniformIndexing, "shaderSampledImageArrayNonUniformIndexing", 1);
20542 
20543      print_VkBool32(obj->shaderStorageBufferArrayNonUniformIndexing, "shaderStorageBufferArrayNonUniformIndexing", 1);
20544 
20545      print_VkBool32(obj->shaderStorageImageArrayNonUniformIndexing, "shaderStorageImageArrayNonUniformIndexing", 1);
20546 
20547      print_VkBool32(obj->shaderInputAttachmentArrayNonUniformIndexing, "shaderInputAttachmentArrayNonUniformIndexing", 1);
20548 
20549      print_VkBool32(obj->shaderUniformTexelBufferArrayNonUniformIndexing, "shaderUniformTexelBufferArrayNonUniformIndexing", 1);
20550 
20551      print_VkBool32(obj->shaderStorageTexelBufferArrayNonUniformIndexing, "shaderStorageTexelBufferArrayNonUniformIndexing", 1);
20552 
20553      print_VkBool32(obj->descriptorBindingUniformBufferUpdateAfterBind, "descriptorBindingUniformBufferUpdateAfterBind", 1);
20554 
20555      print_VkBool32(obj->descriptorBindingSampledImageUpdateAfterBind, "descriptorBindingSampledImageUpdateAfterBind", 1);
20556 
20557      print_VkBool32(obj->descriptorBindingStorageImageUpdateAfterBind, "descriptorBindingStorageImageUpdateAfterBind", 1);
20558 
20559      print_VkBool32(obj->descriptorBindingStorageBufferUpdateAfterBind, "descriptorBindingStorageBufferUpdateAfterBind", 1);
20560 
20561      print_VkBool32(obj->descriptorBindingUniformTexelBufferUpdateAfterBind, "descriptorBindingUniformTexelBufferUpdateAfterBind", 1);
20562 
20563      print_VkBool32(obj->descriptorBindingStorageTexelBufferUpdateAfterBind, "descriptorBindingStorageTexelBufferUpdateAfterBind", 1);
20564 
20565      print_VkBool32(obj->descriptorBindingUpdateUnusedWhilePending, "descriptorBindingUpdateUnusedWhilePending", 1);
20566 
20567      print_VkBool32(obj->descriptorBindingPartiallyBound, "descriptorBindingPartiallyBound", 1);
20568 
20569      print_VkBool32(obj->descriptorBindingVariableDescriptorCount, "descriptorBindingVariableDescriptorCount", 1);
20570 
20571      print_VkBool32(obj->runtimeDescriptorArray, "runtimeDescriptorArray", 0);
20572 
20573      INDENT(-4);
20574      PRINT_SPACE
20575      if (commaNeeded)
20576          _OUT << "}," << std::endl;
20577      else
20578          _OUT << "}" << std::endl;
20579 }
20580 
print_VkPhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceDescriptorIndexingProperties obj,const std::string & s,bool commaNeeded=true)20581 static void print_VkPhysicalDeviceDescriptorIndexingProperties(VkPhysicalDeviceDescriptorIndexingProperties obj, const std::string& s, bool commaNeeded=true) {
20582      PRINT_SPACE
20583      _OUT << "{" << std::endl;
20584      INDENT(4);
20585 
20586      print_VkStructureType(obj.sType, "sType", 1);
20587 
20588       if (obj.pNext) {
20589          dumpPNextChain(obj.pNext);
20590       } else {
20591          PRINT_SPACE
20592          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20593      }
20594 
20595      print_uint32_t(obj.maxUpdateAfterBindDescriptorsInAllPools, "maxUpdateAfterBindDescriptorsInAllPools", 1);
20596 
20597      print_VkBool32(obj.shaderUniformBufferArrayNonUniformIndexingNative, "shaderUniformBufferArrayNonUniformIndexingNative", 1);
20598 
20599      print_VkBool32(obj.shaderSampledImageArrayNonUniformIndexingNative, "shaderSampledImageArrayNonUniformIndexingNative", 1);
20600 
20601      print_VkBool32(obj.shaderStorageBufferArrayNonUniformIndexingNative, "shaderStorageBufferArrayNonUniformIndexingNative", 1);
20602 
20603      print_VkBool32(obj.shaderStorageImageArrayNonUniformIndexingNative, "shaderStorageImageArrayNonUniformIndexingNative", 1);
20604 
20605      print_VkBool32(obj.shaderInputAttachmentArrayNonUniformIndexingNative, "shaderInputAttachmentArrayNonUniformIndexingNative", 1);
20606 
20607      print_VkBool32(obj.robustBufferAccessUpdateAfterBind, "robustBufferAccessUpdateAfterBind", 1);
20608 
20609      print_VkBool32(obj.quadDivergentImplicitLod, "quadDivergentImplicitLod", 1);
20610 
20611      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindSamplers, "maxPerStageDescriptorUpdateAfterBindSamplers", 1);
20612 
20613      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindUniformBuffers, "maxPerStageDescriptorUpdateAfterBindUniformBuffers", 1);
20614 
20615      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindStorageBuffers, "maxPerStageDescriptorUpdateAfterBindStorageBuffers", 1);
20616 
20617      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindSampledImages, "maxPerStageDescriptorUpdateAfterBindSampledImages", 1);
20618 
20619      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindStorageImages, "maxPerStageDescriptorUpdateAfterBindStorageImages", 1);
20620 
20621      print_uint32_t(obj.maxPerStageDescriptorUpdateAfterBindInputAttachments, "maxPerStageDescriptorUpdateAfterBindInputAttachments", 1);
20622 
20623      print_uint32_t(obj.maxPerStageUpdateAfterBindResources, "maxPerStageUpdateAfterBindResources", 1);
20624 
20625      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindSamplers, "maxDescriptorSetUpdateAfterBindSamplers", 1);
20626 
20627      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindUniformBuffers, "maxDescriptorSetUpdateAfterBindUniformBuffers", 1);
20628 
20629      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, "maxDescriptorSetUpdateAfterBindUniformBuffersDynamic", 1);
20630 
20631      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindStorageBuffers, "maxDescriptorSetUpdateAfterBindStorageBuffers", 1);
20632 
20633      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, "maxDescriptorSetUpdateAfterBindStorageBuffersDynamic", 1);
20634 
20635      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindSampledImages, "maxDescriptorSetUpdateAfterBindSampledImages", 1);
20636 
20637      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindStorageImages, "maxDescriptorSetUpdateAfterBindStorageImages", 1);
20638 
20639      print_uint32_t(obj.maxDescriptorSetUpdateAfterBindInputAttachments, "maxDescriptorSetUpdateAfterBindInputAttachments", 0);
20640 
20641      INDENT(-4);
20642      PRINT_SPACE
20643      if (commaNeeded)
20644          _OUT << "}," << std::endl;
20645      else
20646          _OUT << "}" << std::endl;
20647 }
print_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalDeviceDescriptorIndexingProperties * obj,const std::string & s,bool commaNeeded=true)20648 static void print_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalDeviceDescriptorIndexingProperties * obj, const std::string& s, bool commaNeeded=true) {
20649      PRINT_SPACE
20650      _OUT << "{" << std::endl;
20651      INDENT(4);
20652 
20653      print_VkStructureType(obj->sType, "sType", 1);
20654 
20655       if (obj->pNext) {
20656          dumpPNextChain(obj->pNext);
20657       } else {
20658          PRINT_SPACE
20659          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20660      }
20661 
20662      print_uint32_t(obj->maxUpdateAfterBindDescriptorsInAllPools, "maxUpdateAfterBindDescriptorsInAllPools", 1);
20663 
20664      print_VkBool32(obj->shaderUniformBufferArrayNonUniformIndexingNative, "shaderUniformBufferArrayNonUniformIndexingNative", 1);
20665 
20666      print_VkBool32(obj->shaderSampledImageArrayNonUniformIndexingNative, "shaderSampledImageArrayNonUniformIndexingNative", 1);
20667 
20668      print_VkBool32(obj->shaderStorageBufferArrayNonUniformIndexingNative, "shaderStorageBufferArrayNonUniformIndexingNative", 1);
20669 
20670      print_VkBool32(obj->shaderStorageImageArrayNonUniformIndexingNative, "shaderStorageImageArrayNonUniformIndexingNative", 1);
20671 
20672      print_VkBool32(obj->shaderInputAttachmentArrayNonUniformIndexingNative, "shaderInputAttachmentArrayNonUniformIndexingNative", 1);
20673 
20674      print_VkBool32(obj->robustBufferAccessUpdateAfterBind, "robustBufferAccessUpdateAfterBind", 1);
20675 
20676      print_VkBool32(obj->quadDivergentImplicitLod, "quadDivergentImplicitLod", 1);
20677 
20678      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindSamplers, "maxPerStageDescriptorUpdateAfterBindSamplers", 1);
20679 
20680      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindUniformBuffers, "maxPerStageDescriptorUpdateAfterBindUniformBuffers", 1);
20681 
20682      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindStorageBuffers, "maxPerStageDescriptorUpdateAfterBindStorageBuffers", 1);
20683 
20684      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindSampledImages, "maxPerStageDescriptorUpdateAfterBindSampledImages", 1);
20685 
20686      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindStorageImages, "maxPerStageDescriptorUpdateAfterBindStorageImages", 1);
20687 
20688      print_uint32_t(obj->maxPerStageDescriptorUpdateAfterBindInputAttachments, "maxPerStageDescriptorUpdateAfterBindInputAttachments", 1);
20689 
20690      print_uint32_t(obj->maxPerStageUpdateAfterBindResources, "maxPerStageUpdateAfterBindResources", 1);
20691 
20692      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindSamplers, "maxDescriptorSetUpdateAfterBindSamplers", 1);
20693 
20694      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindUniformBuffers, "maxDescriptorSetUpdateAfterBindUniformBuffers", 1);
20695 
20696      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic, "maxDescriptorSetUpdateAfterBindUniformBuffersDynamic", 1);
20697 
20698      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindStorageBuffers, "maxDescriptorSetUpdateAfterBindStorageBuffers", 1);
20699 
20700      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic, "maxDescriptorSetUpdateAfterBindStorageBuffersDynamic", 1);
20701 
20702      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindSampledImages, "maxDescriptorSetUpdateAfterBindSampledImages", 1);
20703 
20704      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindStorageImages, "maxDescriptorSetUpdateAfterBindStorageImages", 1);
20705 
20706      print_uint32_t(obj->maxDescriptorSetUpdateAfterBindInputAttachments, "maxDescriptorSetUpdateAfterBindInputAttachments", 0);
20707 
20708      INDENT(-4);
20709      PRINT_SPACE
20710      if (commaNeeded)
20711          _OUT << "}," << std::endl;
20712      else
20713          _OUT << "}" << std::endl;
20714 }
20715 
print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescriptorSetVariableDescriptorCountAllocateInfo obj,const std::string & s,bool commaNeeded=true)20716 static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(VkDescriptorSetVariableDescriptorCountAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
20717      PRINT_SPACE
20718      _OUT << "{" << std::endl;
20719      INDENT(4);
20720 
20721      print_VkStructureType(obj.sType, "sType", 1);
20722 
20723       if (obj.pNext) {
20724          dumpPNextChain(obj.pNext);
20725       } else {
20726          PRINT_SPACE
20727          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20728      }
20729 
20730      print_uint32_t(obj.descriptorSetCount, "descriptorSetCount", 1);
20731 
20732      PRINT_SPACE
20733      _OUT << "\"pDescriptorCounts\":" << std::endl;
20734      PRINT_SPACE
20735      if (obj.pDescriptorCounts) {
20736        _OUT << "[" << std::endl;
20737        for (unsigned int i = 0; i < obj.descriptorSetCount; i++) {
20738            bool isCommaNeeded = (i+1) != obj.descriptorSetCount;
20739            print_uint32_t(obj.pDescriptorCounts[i], "", isCommaNeeded);
20740        }
20741        PRINT_SPACE
20742        _OUT << "]" << "" << std::endl;
20743      } else {
20744        _OUT << "\"NULL\"" << "" << std::endl;
20745      }
20746 
20747      INDENT(-4);
20748      PRINT_SPACE
20749      if (commaNeeded)
20750          _OUT << "}," << std::endl;
20751      else
20752          _OUT << "}" << std::endl;
20753 }
print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDescriptorSetVariableDescriptorCountAllocateInfo * obj,const std::string & s,bool commaNeeded=true)20754 static void print_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDescriptorSetVariableDescriptorCountAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
20755      PRINT_SPACE
20756      _OUT << "{" << std::endl;
20757      INDENT(4);
20758 
20759      print_VkStructureType(obj->sType, "sType", 1);
20760 
20761       if (obj->pNext) {
20762          dumpPNextChain(obj->pNext);
20763       } else {
20764          PRINT_SPACE
20765          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20766      }
20767 
20768      print_uint32_t(obj->descriptorSetCount, "descriptorSetCount", 1);
20769 
20770      PRINT_SPACE
20771      _OUT << "\"pDescriptorCounts\":" << std::endl;
20772      PRINT_SPACE
20773      if (obj->pDescriptorCounts) {
20774        _OUT << "[" << std::endl;
20775        for (unsigned int i = 0; i < obj->descriptorSetCount; i++) {
20776            bool isCommaNeeded = (i+1) != obj->descriptorSetCount;
20777            print_uint32_t(obj->pDescriptorCounts[i], "", isCommaNeeded);
20778        }
20779        PRINT_SPACE
20780        _OUT << "]" << "" << std::endl;
20781      } else {
20782        _OUT << "\"NULL\"" << "" << std::endl;
20783      }
20784 
20785      INDENT(-4);
20786      PRINT_SPACE
20787      if (commaNeeded)
20788          _OUT << "}," << std::endl;
20789      else
20790          _OUT << "}" << std::endl;
20791 }
20792 
print_VkDescriptorSetVariableDescriptorCountLayoutSupport(VkDescriptorSetVariableDescriptorCountLayoutSupport obj,const std::string & s,bool commaNeeded=true)20793 static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(VkDescriptorSetVariableDescriptorCountLayoutSupport obj, const std::string& s, bool commaNeeded=true) {
20794      PRINT_SPACE
20795      _OUT << "{" << std::endl;
20796      INDENT(4);
20797 
20798      print_VkStructureType(obj.sType, "sType", 1);
20799 
20800       if (obj.pNext) {
20801          dumpPNextChain(obj.pNext);
20802       } else {
20803          PRINT_SPACE
20804          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20805      }
20806 
20807      print_uint32_t(obj.maxVariableDescriptorCount, "maxVariableDescriptorCount", 0);
20808 
20809      INDENT(-4);
20810      PRINT_SPACE
20811      if (commaNeeded)
20812          _OUT << "}," << std::endl;
20813      else
20814          _OUT << "}" << std::endl;
20815 }
print_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDescriptorSetVariableDescriptorCountLayoutSupport * obj,const std::string & s,bool commaNeeded=true)20816 static void print_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDescriptorSetVariableDescriptorCountLayoutSupport * obj, const std::string& s, bool commaNeeded=true) {
20817      PRINT_SPACE
20818      _OUT << "{" << std::endl;
20819      INDENT(4);
20820 
20821      print_VkStructureType(obj->sType, "sType", 1);
20822 
20823       if (obj->pNext) {
20824          dumpPNextChain(obj->pNext);
20825       } else {
20826          PRINT_SPACE
20827          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20828      }
20829 
20830      print_uint32_t(obj->maxVariableDescriptorCount, "maxVariableDescriptorCount", 0);
20831 
20832      INDENT(-4);
20833      PRINT_SPACE
20834      if (commaNeeded)
20835          _OUT << "}," << std::endl;
20836      else
20837          _OUT << "}" << std::endl;
20838 }
20839 
print_VkSubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDepthStencilResolve obj,const std::string & s,bool commaNeeded=true)20840 static void print_VkSubpassDescriptionDepthStencilResolve(VkSubpassDescriptionDepthStencilResolve obj, const std::string& s, bool commaNeeded=true) {
20841      PRINT_SPACE
20842      _OUT << "{" << std::endl;
20843      INDENT(4);
20844 
20845      print_VkStructureType(obj.sType, "sType", 1);
20846 
20847       if (obj.pNext) {
20848          dumpPNextChain(obj.pNext);
20849       } else {
20850          PRINT_SPACE
20851          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20852      }
20853 
20854      print_VkResolveModeFlagBits(obj.depthResolveMode, "depthResolveMode", 1);
20855 
20856      print_VkResolveModeFlagBits(obj.stencilResolveMode, "stencilResolveMode", 1);
20857 
20858      PRINT_SPACE
20859      _OUT << "\"pDepthStencilResolveAttachment\": " << std::endl;
20860      if (obj.pDepthStencilResolveAttachment) {
20861            print_VkAttachmentReference2(obj.pDepthStencilResolveAttachment, "pDepthStencilResolveAttachment", 0);
20862      }
20863      else
20864      {
20865          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
20866      }
20867 
20868      INDENT(-4);
20869      PRINT_SPACE
20870      if (commaNeeded)
20871          _OUT << "}," << std::endl;
20872      else
20873          _OUT << "}" << std::endl;
20874 }
print_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescriptionDepthStencilResolve * obj,const std::string & s,bool commaNeeded=true)20875 static void print_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescriptionDepthStencilResolve * obj, const std::string& s, bool commaNeeded=true) {
20876      PRINT_SPACE
20877      _OUT << "{" << std::endl;
20878      INDENT(4);
20879 
20880      print_VkStructureType(obj->sType, "sType", 1);
20881 
20882       if (obj->pNext) {
20883          dumpPNextChain(obj->pNext);
20884       } else {
20885          PRINT_SPACE
20886          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20887      }
20888 
20889      print_VkResolveModeFlagBits(obj->depthResolveMode, "depthResolveMode", 1);
20890 
20891      print_VkResolveModeFlagBits(obj->stencilResolveMode, "stencilResolveMode", 1);
20892 
20893      PRINT_SPACE
20894      _OUT << "\"pDepthStencilResolveAttachment\": " << std::endl;
20895      if (obj->pDepthStencilResolveAttachment) {
20896            print_VkAttachmentReference2(obj->pDepthStencilResolveAttachment, "pDepthStencilResolveAttachment", 0);
20897      }
20898      else
20899      {
20900          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
20901      }
20902 
20903      INDENT(-4);
20904      PRINT_SPACE
20905      if (commaNeeded)
20906          _OUT << "}," << std::endl;
20907      else
20908          _OUT << "}" << std::endl;
20909 }
20910 
print_VkPhysicalDeviceDepthStencilResolveProperties(VkPhysicalDeviceDepthStencilResolveProperties obj,const std::string & s,bool commaNeeded=true)20911 static void print_VkPhysicalDeviceDepthStencilResolveProperties(VkPhysicalDeviceDepthStencilResolveProperties obj, const std::string& s, bool commaNeeded=true) {
20912      PRINT_SPACE
20913      _OUT << "{" << std::endl;
20914      INDENT(4);
20915 
20916      print_VkStructureType(obj.sType, "sType", 1);
20917 
20918       if (obj.pNext) {
20919          dumpPNextChain(obj.pNext);
20920       } else {
20921          PRINT_SPACE
20922          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20923      }
20924 
20925      print_VkResolveModeFlags(obj.supportedDepthResolveModes, "supportedDepthResolveModes", 1);
20926 
20927      print_VkResolveModeFlags(obj.supportedStencilResolveModes, "supportedStencilResolveModes", 1);
20928 
20929      print_VkBool32(obj.independentResolveNone, "independentResolveNone", 1);
20930 
20931      print_VkBool32(obj.independentResolve, "independentResolve", 0);
20932 
20933      INDENT(-4);
20934      PRINT_SPACE
20935      if (commaNeeded)
20936          _OUT << "}," << std::endl;
20937      else
20938          _OUT << "}" << std::endl;
20939 }
print_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysicalDeviceDepthStencilResolveProperties * obj,const std::string & s,bool commaNeeded=true)20940 static void print_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysicalDeviceDepthStencilResolveProperties * obj, const std::string& s, bool commaNeeded=true) {
20941      PRINT_SPACE
20942      _OUT << "{" << std::endl;
20943      INDENT(4);
20944 
20945      print_VkStructureType(obj->sType, "sType", 1);
20946 
20947       if (obj->pNext) {
20948          dumpPNextChain(obj->pNext);
20949       } else {
20950          PRINT_SPACE
20951          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20952      }
20953 
20954      print_VkResolveModeFlags(obj->supportedDepthResolveModes, "supportedDepthResolveModes", 1);
20955 
20956      print_VkResolveModeFlags(obj->supportedStencilResolveModes, "supportedStencilResolveModes", 1);
20957 
20958      print_VkBool32(obj->independentResolveNone, "independentResolveNone", 1);
20959 
20960      print_VkBool32(obj->independentResolve, "independentResolve", 0);
20961 
20962      INDENT(-4);
20963      PRINT_SPACE
20964      if (commaNeeded)
20965          _OUT << "}," << std::endl;
20966      else
20967          _OUT << "}" << std::endl;
20968 }
20969 
print_VkPhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScalarBlockLayoutFeatures obj,const std::string & s,bool commaNeeded=true)20970 static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(VkPhysicalDeviceScalarBlockLayoutFeatures obj, const std::string& s, bool commaNeeded=true) {
20971      PRINT_SPACE
20972      _OUT << "{" << std::endl;
20973      INDENT(4);
20974 
20975      print_VkStructureType(obj.sType, "sType", 1);
20976 
20977       if (obj.pNext) {
20978          dumpPNextChain(obj.pNext);
20979       } else {
20980          PRINT_SPACE
20981          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
20982      }
20983 
20984      print_VkBool32(obj.scalarBlockLayout, "scalarBlockLayout", 0);
20985 
20986      INDENT(-4);
20987      PRINT_SPACE
20988      if (commaNeeded)
20989          _OUT << "}," << std::endl;
20990      else
20991          _OUT << "}" << std::endl;
20992 }
print_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDeviceScalarBlockLayoutFeatures * obj,const std::string & s,bool commaNeeded=true)20993 static void print_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDeviceScalarBlockLayoutFeatures * obj, const std::string& s, bool commaNeeded=true) {
20994      PRINT_SPACE
20995      _OUT << "{" << std::endl;
20996      INDENT(4);
20997 
20998      print_VkStructureType(obj->sType, "sType", 1);
20999 
21000       if (obj->pNext) {
21001          dumpPNextChain(obj->pNext);
21002       } else {
21003          PRINT_SPACE
21004          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21005      }
21006 
21007      print_VkBool32(obj->scalarBlockLayout, "scalarBlockLayout", 0);
21008 
21009      INDENT(-4);
21010      PRINT_SPACE
21011      if (commaNeeded)
21012          _OUT << "}," << std::endl;
21013      else
21014          _OUT << "}" << std::endl;
21015 }
21016 
print_VkImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo obj,const std::string & s,bool commaNeeded=true)21017 static void print_VkImageStencilUsageCreateInfo(VkImageStencilUsageCreateInfo obj, const std::string& s, bool commaNeeded=true) {
21018      PRINT_SPACE
21019      _OUT << "{" << std::endl;
21020      INDENT(4);
21021 
21022      print_VkStructureType(obj.sType, "sType", 1);
21023 
21024       if (obj.pNext) {
21025          dumpPNextChain(obj.pNext);
21026       } else {
21027          PRINT_SPACE
21028          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21029      }
21030 
21031      print_VkImageUsageFlags(obj.stencilUsage, "stencilUsage", 0);
21032 
21033      INDENT(-4);
21034      PRINT_SPACE
21035      if (commaNeeded)
21036          _OUT << "}," << std::endl;
21037      else
21038          _OUT << "}" << std::endl;
21039 }
print_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo * obj,const std::string & s,bool commaNeeded=true)21040 static void print_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
21041      PRINT_SPACE
21042      _OUT << "{" << std::endl;
21043      INDENT(4);
21044 
21045      print_VkStructureType(obj->sType, "sType", 1);
21046 
21047       if (obj->pNext) {
21048          dumpPNextChain(obj->pNext);
21049       } else {
21050          PRINT_SPACE
21051          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21052      }
21053 
21054      print_VkImageUsageFlags(obj->stencilUsage, "stencilUsage", 0);
21055 
21056      INDENT(-4);
21057      PRINT_SPACE
21058      if (commaNeeded)
21059          _OUT << "}," << std::endl;
21060      else
21061          _OUT << "}" << std::endl;
21062 }
21063 
print_VkSamplerReductionModeCreateInfo(VkSamplerReductionModeCreateInfo obj,const std::string & s,bool commaNeeded=true)21064 static void print_VkSamplerReductionModeCreateInfo(VkSamplerReductionModeCreateInfo obj, const std::string& s, bool commaNeeded=true) {
21065      PRINT_SPACE
21066      _OUT << "{" << std::endl;
21067      INDENT(4);
21068 
21069      print_VkStructureType(obj.sType, "sType", 1);
21070 
21071       if (obj.pNext) {
21072          dumpPNextChain(obj.pNext);
21073       } else {
21074          PRINT_SPACE
21075          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21076      }
21077 
21078      print_VkSamplerReductionMode(obj.reductionMode, "reductionMode", 0);
21079 
21080      INDENT(-4);
21081      PRINT_SPACE
21082      if (commaNeeded)
21083          _OUT << "}," << std::endl;
21084      else
21085          _OUT << "}" << std::endl;
21086 }
print_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo * obj,const std::string & s,bool commaNeeded=true)21087 static void print_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
21088      PRINT_SPACE
21089      _OUT << "{" << std::endl;
21090      INDENT(4);
21091 
21092      print_VkStructureType(obj->sType, "sType", 1);
21093 
21094       if (obj->pNext) {
21095          dumpPNextChain(obj->pNext);
21096       } else {
21097          PRINT_SPACE
21098          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21099      }
21100 
21101      print_VkSamplerReductionMode(obj->reductionMode, "reductionMode", 0);
21102 
21103      INDENT(-4);
21104      PRINT_SPACE
21105      if (commaNeeded)
21106          _OUT << "}," << std::endl;
21107      else
21108          _OUT << "}" << std::endl;
21109 }
21110 
print_VkPhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDeviceSamplerFilterMinmaxProperties obj,const std::string & s,bool commaNeeded=true)21111 static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(VkPhysicalDeviceSamplerFilterMinmaxProperties obj, const std::string& s, bool commaNeeded=true) {
21112      PRINT_SPACE
21113      _OUT << "{" << std::endl;
21114      INDENT(4);
21115 
21116      print_VkStructureType(obj.sType, "sType", 1);
21117 
21118       if (obj.pNext) {
21119          dumpPNextChain(obj.pNext);
21120       } else {
21121          PRINT_SPACE
21122          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21123      }
21124 
21125      print_VkBool32(obj.filterMinmaxSingleComponentFormats, "filterMinmaxSingleComponentFormats", 1);
21126 
21127      print_VkBool32(obj.filterMinmaxImageComponentMapping, "filterMinmaxImageComponentMapping", 0);
21128 
21129      INDENT(-4);
21130      PRINT_SPACE
21131      if (commaNeeded)
21132          _OUT << "}," << std::endl;
21133      else
21134          _OUT << "}" << std::endl;
21135 }
print_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysicalDeviceSamplerFilterMinmaxProperties * obj,const std::string & s,bool commaNeeded=true)21136 static void print_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysicalDeviceSamplerFilterMinmaxProperties * obj, const std::string& s, bool commaNeeded=true) {
21137      PRINT_SPACE
21138      _OUT << "{" << std::endl;
21139      INDENT(4);
21140 
21141      print_VkStructureType(obj->sType, "sType", 1);
21142 
21143       if (obj->pNext) {
21144          dumpPNextChain(obj->pNext);
21145       } else {
21146          PRINT_SPACE
21147          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21148      }
21149 
21150      print_VkBool32(obj->filterMinmaxSingleComponentFormats, "filterMinmaxSingleComponentFormats", 1);
21151 
21152      print_VkBool32(obj->filterMinmaxImageComponentMapping, "filterMinmaxImageComponentMapping", 0);
21153 
21154      INDENT(-4);
21155      PRINT_SPACE
21156      if (commaNeeded)
21157          _OUT << "}," << std::endl;
21158      else
21159          _OUT << "}" << std::endl;
21160 }
21161 
print_VkPhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulkanMemoryModelFeatures obj,const std::string & s,bool commaNeeded=true)21162 static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(VkPhysicalDeviceVulkanMemoryModelFeatures obj, const std::string& s, bool commaNeeded=true) {
21163      PRINT_SPACE
21164      _OUT << "{" << std::endl;
21165      INDENT(4);
21166 
21167      print_VkStructureType(obj.sType, "sType", 1);
21168 
21169       if (obj.pNext) {
21170          dumpPNextChain(obj.pNext);
21171       } else {
21172          PRINT_SPACE
21173          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21174      }
21175 
21176      print_VkBool32(obj.vulkanMemoryModel, "vulkanMemoryModel", 1);
21177 
21178      print_VkBool32(obj.vulkanMemoryModelDeviceScope, "vulkanMemoryModelDeviceScope", 1);
21179 
21180      print_VkBool32(obj.vulkanMemoryModelAvailabilityVisibilityChains, "vulkanMemoryModelAvailabilityVisibilityChains", 0);
21181 
21182      INDENT(-4);
21183      PRINT_SPACE
21184      if (commaNeeded)
21185          _OUT << "}," << std::endl;
21186      else
21187          _OUT << "}" << std::endl;
21188 }
print_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDeviceVulkanMemoryModelFeatures * obj,const std::string & s,bool commaNeeded=true)21189 static void print_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDeviceVulkanMemoryModelFeatures * obj, const std::string& s, bool commaNeeded=true) {
21190      PRINT_SPACE
21191      _OUT << "{" << std::endl;
21192      INDENT(4);
21193 
21194      print_VkStructureType(obj->sType, "sType", 1);
21195 
21196       if (obj->pNext) {
21197          dumpPNextChain(obj->pNext);
21198       } else {
21199          PRINT_SPACE
21200          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21201      }
21202 
21203      print_VkBool32(obj->vulkanMemoryModel, "vulkanMemoryModel", 1);
21204 
21205      print_VkBool32(obj->vulkanMemoryModelDeviceScope, "vulkanMemoryModelDeviceScope", 1);
21206 
21207      print_VkBool32(obj->vulkanMemoryModelAvailabilityVisibilityChains, "vulkanMemoryModelAvailabilityVisibilityChains", 0);
21208 
21209      INDENT(-4);
21210      PRINT_SPACE
21211      if (commaNeeded)
21212          _OUT << "}," << std::endl;
21213      else
21214          _OUT << "}" << std::endl;
21215 }
21216 
print_VkPhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceImagelessFramebufferFeatures obj,const std::string & s,bool commaNeeded=true)21217 static void print_VkPhysicalDeviceImagelessFramebufferFeatures(VkPhysicalDeviceImagelessFramebufferFeatures obj, const std::string& s, bool commaNeeded=true) {
21218      PRINT_SPACE
21219      _OUT << "{" << std::endl;
21220      INDENT(4);
21221 
21222      print_VkStructureType(obj.sType, "sType", 1);
21223 
21224       if (obj.pNext) {
21225          dumpPNextChain(obj.pNext);
21226       } else {
21227          PRINT_SPACE
21228          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21229      }
21230 
21231      print_VkBool32(obj.imagelessFramebuffer, "imagelessFramebuffer", 0);
21232 
21233      INDENT(-4);
21234      PRINT_SPACE
21235      if (commaNeeded)
21236          _OUT << "}," << std::endl;
21237      else
21238          _OUT << "}" << std::endl;
21239 }
print_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalDeviceImagelessFramebufferFeatures * obj,const std::string & s,bool commaNeeded=true)21240 static void print_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalDeviceImagelessFramebufferFeatures * obj, const std::string& s, bool commaNeeded=true) {
21241      PRINT_SPACE
21242      _OUT << "{" << std::endl;
21243      INDENT(4);
21244 
21245      print_VkStructureType(obj->sType, "sType", 1);
21246 
21247       if (obj->pNext) {
21248          dumpPNextChain(obj->pNext);
21249       } else {
21250          PRINT_SPACE
21251          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21252      }
21253 
21254      print_VkBool32(obj->imagelessFramebuffer, "imagelessFramebuffer", 0);
21255 
21256      INDENT(-4);
21257      PRINT_SPACE
21258      if (commaNeeded)
21259          _OUT << "}," << std::endl;
21260      else
21261          _OUT << "}" << std::endl;
21262 }
21263 
print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageInfo obj,const std::string & s,bool commaNeeded=true)21264 static void print_VkFramebufferAttachmentImageInfo(VkFramebufferAttachmentImageInfo obj, const std::string& s, bool commaNeeded=true) {
21265      PRINT_SPACE
21266      _OUT << "{" << std::endl;
21267      INDENT(4);
21268 
21269      print_VkStructureType(obj.sType, "sType", 1);
21270 
21271       if (obj.pNext) {
21272          dumpPNextChain(obj.pNext);
21273       } else {
21274          PRINT_SPACE
21275          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21276      }
21277 
21278      print_VkImageCreateFlags(obj.flags, "flags", 1);
21279 
21280      print_VkImageUsageFlags(obj.usage, "usage", 1);
21281 
21282      print_uint32_t(obj.width, "width", 1);
21283 
21284      print_uint32_t(obj.height, "height", 1);
21285 
21286      print_uint32_t(obj.layerCount, "layerCount", 1);
21287 
21288      print_uint32_t(obj.viewFormatCount, "viewFormatCount", 1);
21289 
21290      PRINT_SPACE
21291      _OUT << "\"pViewFormats\":" << std::endl;
21292      PRINT_SPACE
21293      if (obj.pViewFormats) {
21294        _OUT << "[" << std::endl;
21295        for (unsigned int i = 0; i < obj.viewFormatCount; i++) {
21296            bool isCommaNeeded = (i+1) != obj.viewFormatCount;
21297            print_VkFormat(obj.pViewFormats[i], "", isCommaNeeded);
21298        }
21299        PRINT_SPACE
21300        _OUT << "]" << "" << std::endl;
21301      } else {
21302        _OUT << "\"NULL\"" << "" << std::endl;
21303      }
21304 
21305      INDENT(-4);
21306      PRINT_SPACE
21307      if (commaNeeded)
21308          _OUT << "}," << std::endl;
21309      else
21310          _OUT << "}" << std::endl;
21311 }
print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo * obj,const std::string & s,bool commaNeeded=true)21312 static void print_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo * obj, const std::string& s, bool commaNeeded=true) {
21313      PRINT_SPACE
21314      _OUT << "{" << std::endl;
21315      INDENT(4);
21316 
21317      print_VkStructureType(obj->sType, "sType", 1);
21318 
21319       if (obj->pNext) {
21320          dumpPNextChain(obj->pNext);
21321       } else {
21322          PRINT_SPACE
21323          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21324      }
21325 
21326      print_VkImageCreateFlags(obj->flags, "flags", 1);
21327 
21328      print_VkImageUsageFlags(obj->usage, "usage", 1);
21329 
21330      print_uint32_t(obj->width, "width", 1);
21331 
21332      print_uint32_t(obj->height, "height", 1);
21333 
21334      print_uint32_t(obj->layerCount, "layerCount", 1);
21335 
21336      print_uint32_t(obj->viewFormatCount, "viewFormatCount", 1);
21337 
21338      PRINT_SPACE
21339      _OUT << "\"pViewFormats\":" << std::endl;
21340      PRINT_SPACE
21341      if (obj->pViewFormats) {
21342        _OUT << "[" << std::endl;
21343        for (unsigned int i = 0; i < obj->viewFormatCount; i++) {
21344            bool isCommaNeeded = (i+1) != obj->viewFormatCount;
21345            print_VkFormat(obj->pViewFormats[i], "", isCommaNeeded);
21346        }
21347        PRINT_SPACE
21348        _OUT << "]" << "" << std::endl;
21349      } else {
21350        _OUT << "\"NULL\"" << "" << std::endl;
21351      }
21352 
21353      INDENT(-4);
21354      PRINT_SPACE
21355      if (commaNeeded)
21356          _OUT << "}," << std::endl;
21357      else
21358          _OUT << "}" << std::endl;
21359 }
21360 
print_VkFramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCreateInfo obj,const std::string & s,bool commaNeeded=true)21361 static void print_VkFramebufferAttachmentsCreateInfo(VkFramebufferAttachmentsCreateInfo obj, const std::string& s, bool commaNeeded=true) {
21362      PRINT_SPACE
21363      _OUT << "{" << std::endl;
21364      INDENT(4);
21365 
21366      print_VkStructureType(obj.sType, "sType", 1);
21367 
21368       if (obj.pNext) {
21369          dumpPNextChain(obj.pNext);
21370       } else {
21371          PRINT_SPACE
21372          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21373      }
21374 
21375      print_uint32_t(obj.attachmentImageInfoCount, "attachmentImageInfoCount", 1);
21376 
21377      PRINT_SPACE
21378      _OUT << "\"pAttachmentImageInfos\": " << std::endl;
21379      if (obj.pAttachmentImageInfos) {
21380          PRINT_SPACE
21381          _OUT << "[" << std::endl;
21382          for (unsigned int i = 0; i < obj.attachmentImageInfoCount; i++) {
21383            if (i+1 == obj.attachmentImageInfoCount)
21384                print_VkFramebufferAttachmentImageInfo(obj.pAttachmentImageInfos[i], "pAttachmentImageInfos", 0);
21385            else
21386                print_VkFramebufferAttachmentImageInfo(obj.pAttachmentImageInfos[i], "pAttachmentImageInfos", 1);
21387          }
21388          PRINT_SPACE
21389          _OUT << "]" << std::endl;
21390     }
21391      else
21392      {
21393          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
21394      }
21395 
21396      INDENT(-4);
21397      PRINT_SPACE
21398      if (commaNeeded)
21399          _OUT << "}," << std::endl;
21400      else
21401          _OUT << "}" << std::endl;
21402 }
print_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo * obj,const std::string & s,bool commaNeeded=true)21403 static void print_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
21404      PRINT_SPACE
21405      _OUT << "{" << std::endl;
21406      INDENT(4);
21407 
21408      print_VkStructureType(obj->sType, "sType", 1);
21409 
21410       if (obj->pNext) {
21411          dumpPNextChain(obj->pNext);
21412       } else {
21413          PRINT_SPACE
21414          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21415      }
21416 
21417      print_uint32_t(obj->attachmentImageInfoCount, "attachmentImageInfoCount", 1);
21418 
21419      PRINT_SPACE
21420      _OUT << "\"pAttachmentImageInfos\": " << std::endl;
21421      if (obj->pAttachmentImageInfos) {
21422          PRINT_SPACE
21423          _OUT << "[" << std::endl;
21424          for (unsigned int i = 0; i < obj->attachmentImageInfoCount; i++) {
21425            if (i+1 == obj->attachmentImageInfoCount)
21426                print_VkFramebufferAttachmentImageInfo(obj->pAttachmentImageInfos[i], "pAttachmentImageInfos", 0);
21427            else
21428                print_VkFramebufferAttachmentImageInfo(obj->pAttachmentImageInfos[i], "pAttachmentImageInfos", 1);
21429          }
21430          PRINT_SPACE
21431          _OUT << "]" << std::endl;
21432     }
21433      else
21434      {
21435          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
21436      }
21437 
21438      INDENT(-4);
21439      PRINT_SPACE
21440      if (commaNeeded)
21441          _OUT << "}," << std::endl;
21442      else
21443          _OUT << "}" << std::endl;
21444 }
21445 
print_VkRenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInfo obj,const std::string & s,bool commaNeeded=true)21446 static void print_VkRenderPassAttachmentBeginInfo(VkRenderPassAttachmentBeginInfo obj, const std::string& s, bool commaNeeded=true) {
21447      PRINT_SPACE
21448      _OUT << "{" << std::endl;
21449      INDENT(4);
21450 
21451      print_VkStructureType(obj.sType, "sType", 1);
21452 
21453       if (obj.pNext) {
21454          dumpPNextChain(obj.pNext);
21455       } else {
21456          PRINT_SPACE
21457          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21458      }
21459 
21460      print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
21461 
21462      PRINT_SPACE
21463      _OUT << "\"pAttachments\":" << std::endl;
21464      PRINT_SPACE
21465      if (obj.pAttachments) {
21466        _OUT << "[" << std::endl;
21467        for (unsigned int i = 0; i < obj.attachmentCount; i++) {
21468            std:: stringstream tmp;
21469            tmp << "pAttachments" << "_" << i;
21470            bool isCommaNeeded = (i+1) != obj.attachmentCount;
21471            print_VkImageView(obj.pAttachments[i], tmp.str(), isCommaNeeded);
21472        }
21473        PRINT_SPACE
21474        _OUT << "]" << "" << std::endl;
21475      } else {
21476        _OUT << "\"NULL\"" << "" << std::endl;
21477      }
21478 
21479      INDENT(-4);
21480      PRINT_SPACE
21481      if (commaNeeded)
21482          _OUT << "}," << std::endl;
21483      else
21484          _OUT << "}" << std::endl;
21485 }
print_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo * obj,const std::string & s,bool commaNeeded=true)21486 static void print_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo * obj, const std::string& s, bool commaNeeded=true) {
21487      PRINT_SPACE
21488      _OUT << "{" << std::endl;
21489      INDENT(4);
21490 
21491      print_VkStructureType(obj->sType, "sType", 1);
21492 
21493       if (obj->pNext) {
21494          dumpPNextChain(obj->pNext);
21495       } else {
21496          PRINT_SPACE
21497          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21498      }
21499 
21500      print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
21501 
21502      PRINT_SPACE
21503      _OUT << "\"pAttachments\":" << std::endl;
21504      PRINT_SPACE
21505      if (obj->pAttachments) {
21506        _OUT << "[" << std::endl;
21507        for (unsigned int i = 0; i < obj->attachmentCount; i++) {
21508            std:: stringstream tmp;
21509            tmp << "pAttachments" << "_" << i;
21510            bool isCommaNeeded = (i+1) != obj->attachmentCount;
21511            print_VkImageView(obj->pAttachments[i], tmp.str(), isCommaNeeded);
21512        }
21513        PRINT_SPACE
21514        _OUT << "]" << "" << std::endl;
21515      } else {
21516        _OUT << "\"NULL\"" << "" << std::endl;
21517      }
21518 
21519      INDENT(-4);
21520      PRINT_SPACE
21521      if (commaNeeded)
21522          _OUT << "}," << std::endl;
21523      else
21524          _OUT << "}" << std::endl;
21525 }
21526 
print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysicalDeviceUniformBufferStandardLayoutFeatures obj,const std::string & s,bool commaNeeded=true)21527 static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(VkPhysicalDeviceUniformBufferStandardLayoutFeatures obj, const std::string& s, bool commaNeeded=true) {
21528      PRINT_SPACE
21529      _OUT << "{" << std::endl;
21530      INDENT(4);
21531 
21532      print_VkStructureType(obj.sType, "sType", 1);
21533 
21534       if (obj.pNext) {
21535          dumpPNextChain(obj.pNext);
21536       } else {
21537          PRINT_SPACE
21538          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21539      }
21540 
21541      print_VkBool32(obj.uniformBufferStandardLayout, "uniformBufferStandardLayout", 0);
21542 
21543      INDENT(-4);
21544      PRINT_SPACE
21545      if (commaNeeded)
21546          _OUT << "}," << std::endl;
21547      else
21548          _OUT << "}" << std::endl;
21549 }
print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * obj,const std::string & s,bool commaNeeded=true)21550 static void print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * obj, const std::string& s, bool commaNeeded=true) {
21551      PRINT_SPACE
21552      _OUT << "{" << std::endl;
21553      INDENT(4);
21554 
21555      print_VkStructureType(obj->sType, "sType", 1);
21556 
21557       if (obj->pNext) {
21558          dumpPNextChain(obj->pNext);
21559       } else {
21560          PRINT_SPACE
21561          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21562      }
21563 
21564      print_VkBool32(obj->uniformBufferStandardLayout, "uniformBufferStandardLayout", 0);
21565 
21566      INDENT(-4);
21567      PRINT_SPACE
21568      if (commaNeeded)
21569          _OUT << "}," << std::endl;
21570      else
21571          _OUT << "}" << std::endl;
21572 }
21573 
print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures obj,const std::string & s,bool commaNeeded=true)21574 static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures obj, const std::string& s, bool commaNeeded=true) {
21575      PRINT_SPACE
21576      _OUT << "{" << std::endl;
21577      INDENT(4);
21578 
21579      print_VkStructureType(obj.sType, "sType", 1);
21580 
21581       if (obj.pNext) {
21582          dumpPNextChain(obj.pNext);
21583       } else {
21584          PRINT_SPACE
21585          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21586      }
21587 
21588      print_VkBool32(obj.shaderSubgroupExtendedTypes, "shaderSubgroupExtendedTypes", 0);
21589 
21590      INDENT(-4);
21591      PRINT_SPACE
21592      if (commaNeeded)
21593          _OUT << "}," << std::endl;
21594      else
21595          _OUT << "}" << std::endl;
21596 }
print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * obj,const std::string & s,bool commaNeeded=true)21597 static void print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * obj, const std::string& s, bool commaNeeded=true) {
21598      PRINT_SPACE
21599      _OUT << "{" << std::endl;
21600      INDENT(4);
21601 
21602      print_VkStructureType(obj->sType, "sType", 1);
21603 
21604       if (obj->pNext) {
21605          dumpPNextChain(obj->pNext);
21606       } else {
21607          PRINT_SPACE
21608          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21609      }
21610 
21611      print_VkBool32(obj->shaderSubgroupExtendedTypes, "shaderSubgroupExtendedTypes", 0);
21612 
21613      INDENT(-4);
21614      PRINT_SPACE
21615      if (commaNeeded)
21616          _OUT << "}," << std::endl;
21617      else
21618          _OUT << "}" << std::endl;
21619 }
21620 
print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures obj,const std::string & s,bool commaNeeded=true)21621 static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures obj, const std::string& s, bool commaNeeded=true) {
21622      PRINT_SPACE
21623      _OUT << "{" << std::endl;
21624      INDENT(4);
21625 
21626      print_VkStructureType(obj.sType, "sType", 1);
21627 
21628       if (obj.pNext) {
21629          dumpPNextChain(obj.pNext);
21630       } else {
21631          PRINT_SPACE
21632          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21633      }
21634 
21635      print_VkBool32(obj.separateDepthStencilLayouts, "separateDepthStencilLayouts", 0);
21636 
21637      INDENT(-4);
21638      PRINT_SPACE
21639      if (commaNeeded)
21640          _OUT << "}," << std::endl;
21641      else
21642          _OUT << "}" << std::endl;
21643 }
print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * obj,const std::string & s,bool commaNeeded=true)21644 static void print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * obj, const std::string& s, bool commaNeeded=true) {
21645      PRINT_SPACE
21646      _OUT << "{" << std::endl;
21647      INDENT(4);
21648 
21649      print_VkStructureType(obj->sType, "sType", 1);
21650 
21651       if (obj->pNext) {
21652          dumpPNextChain(obj->pNext);
21653       } else {
21654          PRINT_SPACE
21655          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21656      }
21657 
21658      print_VkBool32(obj->separateDepthStencilLayouts, "separateDepthStencilLayouts", 0);
21659 
21660      INDENT(-4);
21661      PRINT_SPACE
21662      if (commaNeeded)
21663          _OUT << "}," << std::endl;
21664      else
21665          _OUT << "}" << std::endl;
21666 }
21667 
print_VkAttachmentReferenceStencilLayout(VkAttachmentReferenceStencilLayout obj,const std::string & s,bool commaNeeded=true)21668 static void print_VkAttachmentReferenceStencilLayout(VkAttachmentReferenceStencilLayout obj, const std::string& s, bool commaNeeded=true) {
21669      PRINT_SPACE
21670      _OUT << "{" << std::endl;
21671      INDENT(4);
21672 
21673      print_VkStructureType(obj.sType, "sType", 1);
21674 
21675       if (obj.pNext) {
21676          dumpPNextChain(obj.pNext);
21677       } else {
21678          PRINT_SPACE
21679          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21680      }
21681 
21682      print_VkImageLayout(obj.stencilLayout, "stencilLayout", 0);
21683 
21684      INDENT(-4);
21685      PRINT_SPACE
21686      if (commaNeeded)
21687          _OUT << "}," << std::endl;
21688      else
21689          _OUT << "}" << std::endl;
21690 }
print_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout * obj,const std::string & s,bool commaNeeded=true)21691 static void print_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout * obj, const std::string& s, bool commaNeeded=true) {
21692      PRINT_SPACE
21693      _OUT << "{" << std::endl;
21694      INDENT(4);
21695 
21696      print_VkStructureType(obj->sType, "sType", 1);
21697 
21698       if (obj->pNext) {
21699          dumpPNextChain(obj->pNext);
21700       } else {
21701          PRINT_SPACE
21702          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21703      }
21704 
21705      print_VkImageLayout(obj->stencilLayout, "stencilLayout", 0);
21706 
21707      INDENT(-4);
21708      PRINT_SPACE
21709      if (commaNeeded)
21710          _OUT << "}," << std::endl;
21711      else
21712          _OUT << "}" << std::endl;
21713 }
21714 
print_VkAttachmentDescriptionStencilLayout(VkAttachmentDescriptionStencilLayout obj,const std::string & s,bool commaNeeded=true)21715 static void print_VkAttachmentDescriptionStencilLayout(VkAttachmentDescriptionStencilLayout obj, const std::string& s, bool commaNeeded=true) {
21716      PRINT_SPACE
21717      _OUT << "{" << std::endl;
21718      INDENT(4);
21719 
21720      print_VkStructureType(obj.sType, "sType", 1);
21721 
21722       if (obj.pNext) {
21723          dumpPNextChain(obj.pNext);
21724       } else {
21725          PRINT_SPACE
21726          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21727      }
21728 
21729      print_VkImageLayout(obj.stencilInitialLayout, "stencilInitialLayout", 1);
21730 
21731      print_VkImageLayout(obj.stencilFinalLayout, "stencilFinalLayout", 0);
21732 
21733      INDENT(-4);
21734      PRINT_SPACE
21735      if (commaNeeded)
21736          _OUT << "}," << std::endl;
21737      else
21738          _OUT << "}" << std::endl;
21739 }
print_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout * obj,const std::string & s,bool commaNeeded=true)21740 static void print_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout * obj, const std::string& s, bool commaNeeded=true) {
21741      PRINT_SPACE
21742      _OUT << "{" << std::endl;
21743      INDENT(4);
21744 
21745      print_VkStructureType(obj->sType, "sType", 1);
21746 
21747       if (obj->pNext) {
21748          dumpPNextChain(obj->pNext);
21749       } else {
21750          PRINT_SPACE
21751          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21752      }
21753 
21754      print_VkImageLayout(obj->stencilInitialLayout, "stencilInitialLayout", 1);
21755 
21756      print_VkImageLayout(obj->stencilFinalLayout, "stencilFinalLayout", 0);
21757 
21758      INDENT(-4);
21759      PRINT_SPACE
21760      if (commaNeeded)
21761          _OUT << "}," << std::endl;
21762      else
21763          _OUT << "}" << std::endl;
21764 }
21765 
print_VkPhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQueryResetFeatures obj,const std::string & s,bool commaNeeded=true)21766 static void print_VkPhysicalDeviceHostQueryResetFeatures(VkPhysicalDeviceHostQueryResetFeatures obj, const std::string& s, bool commaNeeded=true) {
21767      PRINT_SPACE
21768      _OUT << "{" << std::endl;
21769      INDENT(4);
21770 
21771      print_VkStructureType(obj.sType, "sType", 1);
21772 
21773       if (obj.pNext) {
21774          dumpPNextChain(obj.pNext);
21775       } else {
21776          PRINT_SPACE
21777          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21778      }
21779 
21780      print_VkBool32(obj.hostQueryReset, "hostQueryReset", 0);
21781 
21782      INDENT(-4);
21783      PRINT_SPACE
21784      if (commaNeeded)
21785          _OUT << "}," << std::endl;
21786      else
21787          _OUT << "}" << std::endl;
21788 }
print_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceHostQueryResetFeatures * obj,const std::string & s,bool commaNeeded=true)21789 static void print_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceHostQueryResetFeatures * obj, const std::string& s, bool commaNeeded=true) {
21790      PRINT_SPACE
21791      _OUT << "{" << std::endl;
21792      INDENT(4);
21793 
21794      print_VkStructureType(obj->sType, "sType", 1);
21795 
21796       if (obj->pNext) {
21797          dumpPNextChain(obj->pNext);
21798       } else {
21799          PRINT_SPACE
21800          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21801      }
21802 
21803      print_VkBool32(obj->hostQueryReset, "hostQueryReset", 0);
21804 
21805      INDENT(-4);
21806      PRINT_SPACE
21807      if (commaNeeded)
21808          _OUT << "}," << std::endl;
21809      else
21810          _OUT << "}" << std::endl;
21811 }
21812 
print_VkPhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTimelineSemaphoreFeatures obj,const std::string & s,bool commaNeeded=true)21813 static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(VkPhysicalDeviceTimelineSemaphoreFeatures obj, const std::string& s, bool commaNeeded=true) {
21814      PRINT_SPACE
21815      _OUT << "{" << std::endl;
21816      INDENT(4);
21817 
21818      print_VkStructureType(obj.sType, "sType", 1);
21819 
21820       if (obj.pNext) {
21821          dumpPNextChain(obj.pNext);
21822       } else {
21823          PRINT_SPACE
21824          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21825      }
21826 
21827      print_VkBool32(obj.timelineSemaphore, "timelineSemaphore", 0);
21828 
21829      INDENT(-4);
21830      PRINT_SPACE
21831      if (commaNeeded)
21832          _OUT << "}," << std::endl;
21833      else
21834          _OUT << "}" << std::endl;
21835 }
print_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDeviceTimelineSemaphoreFeatures * obj,const std::string & s,bool commaNeeded=true)21836 static void print_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDeviceTimelineSemaphoreFeatures * obj, const std::string& s, bool commaNeeded=true) {
21837      PRINT_SPACE
21838      _OUT << "{" << std::endl;
21839      INDENT(4);
21840 
21841      print_VkStructureType(obj->sType, "sType", 1);
21842 
21843       if (obj->pNext) {
21844          dumpPNextChain(obj->pNext);
21845       } else {
21846          PRINT_SPACE
21847          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21848      }
21849 
21850      print_VkBool32(obj->timelineSemaphore, "timelineSemaphore", 0);
21851 
21852      INDENT(-4);
21853      PRINT_SPACE
21854      if (commaNeeded)
21855          _OUT << "}," << std::endl;
21856      else
21857          _OUT << "}" << std::endl;
21858 }
21859 
print_VkPhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTimelineSemaphoreProperties obj,const std::string & s,bool commaNeeded=true)21860 static void print_VkPhysicalDeviceTimelineSemaphoreProperties(VkPhysicalDeviceTimelineSemaphoreProperties obj, const std::string& s, bool commaNeeded=true) {
21861      PRINT_SPACE
21862      _OUT << "{" << std::endl;
21863      INDENT(4);
21864 
21865      print_VkStructureType(obj.sType, "sType", 1);
21866 
21867       if (obj.pNext) {
21868          dumpPNextChain(obj.pNext);
21869       } else {
21870          PRINT_SPACE
21871          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21872      }
21873 
21874      print_uint64_t(obj.maxTimelineSemaphoreValueDifference, "maxTimelineSemaphoreValueDifference", 0);
21875 
21876      INDENT(-4);
21877      PRINT_SPACE
21878      if (commaNeeded)
21879          _OUT << "}," << std::endl;
21880      else
21881          _OUT << "}" << std::endl;
21882 }
print_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDeviceTimelineSemaphoreProperties * obj,const std::string & s,bool commaNeeded=true)21883 static void print_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDeviceTimelineSemaphoreProperties * obj, const std::string& s, bool commaNeeded=true) {
21884      PRINT_SPACE
21885      _OUT << "{" << std::endl;
21886      INDENT(4);
21887 
21888      print_VkStructureType(obj->sType, "sType", 1);
21889 
21890       if (obj->pNext) {
21891          dumpPNextChain(obj->pNext);
21892       } else {
21893          PRINT_SPACE
21894          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21895      }
21896 
21897      print_uint64_t(obj->maxTimelineSemaphoreValueDifference, "maxTimelineSemaphoreValueDifference", 0);
21898 
21899      INDENT(-4);
21900      PRINT_SPACE
21901      if (commaNeeded)
21902          _OUT << "}," << std::endl;
21903      else
21904          _OUT << "}" << std::endl;
21905 }
21906 
print_VkSemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo obj,const std::string & s,bool commaNeeded=true)21907 static void print_VkSemaphoreTypeCreateInfo(VkSemaphoreTypeCreateInfo obj, const std::string& s, bool commaNeeded=true) {
21908      PRINT_SPACE
21909      _OUT << "{" << std::endl;
21910      INDENT(4);
21911 
21912      print_VkStructureType(obj.sType, "sType", 1);
21913 
21914       if (obj.pNext) {
21915          dumpPNextChain(obj.pNext);
21916       } else {
21917          PRINT_SPACE
21918          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21919      }
21920 
21921      print_VkSemaphoreType(obj.semaphoreType, "semaphoreType", 1);
21922 
21923      print_uint64_t(obj.initialValue, "initialValue", 0);
21924 
21925      INDENT(-4);
21926      PRINT_SPACE
21927      if (commaNeeded)
21928          _OUT << "}," << std::endl;
21929      else
21930          _OUT << "}" << std::endl;
21931 }
print_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * obj,const std::string & s,bool commaNeeded=true)21932 static void print_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
21933      PRINT_SPACE
21934      _OUT << "{" << std::endl;
21935      INDENT(4);
21936 
21937      print_VkStructureType(obj->sType, "sType", 1);
21938 
21939       if (obj->pNext) {
21940          dumpPNextChain(obj->pNext);
21941       } else {
21942          PRINT_SPACE
21943          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21944      }
21945 
21946      print_VkSemaphoreType(obj->semaphoreType, "semaphoreType", 1);
21947 
21948      print_uint64_t(obj->initialValue, "initialValue", 0);
21949 
21950      INDENT(-4);
21951      PRINT_SPACE
21952      if (commaNeeded)
21953          _OUT << "}," << std::endl;
21954      else
21955          _OUT << "}" << std::endl;
21956 }
21957 
print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo obj,const std::string & s,bool commaNeeded=true)21958 static void print_VkTimelineSemaphoreSubmitInfo(VkTimelineSemaphoreSubmitInfo obj, const std::string& s, bool commaNeeded=true) {
21959      PRINT_SPACE
21960      _OUT << "{" << std::endl;
21961      INDENT(4);
21962 
21963      print_VkStructureType(obj.sType, "sType", 1);
21964 
21965       if (obj.pNext) {
21966          dumpPNextChain(obj.pNext);
21967       } else {
21968          PRINT_SPACE
21969          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
21970      }
21971 
21972      print_uint32_t(obj.waitSemaphoreValueCount, "waitSemaphoreValueCount", 1);
21973 
21974      PRINT_SPACE
21975      _OUT << "\"pWaitSemaphoreValues\":" << std::endl;
21976      PRINT_SPACE
21977      if (obj.pWaitSemaphoreValues) {
21978        _OUT << "[" << std::endl;
21979        for (unsigned int i = 0; i < obj.waitSemaphoreValueCount; i++) {
21980            bool isCommaNeeded = (i+1) != obj.waitSemaphoreValueCount;
21981            print_uint64_t(obj.pWaitSemaphoreValues[i], "", isCommaNeeded);
21982        }
21983        PRINT_SPACE
21984        _OUT << "]" << "," << std::endl;
21985      } else {
21986        _OUT << "\"NULL\"" << "," << std::endl;
21987      }
21988 
21989      print_uint32_t(obj.signalSemaphoreValueCount, "signalSemaphoreValueCount", 1);
21990 
21991      PRINT_SPACE
21992      _OUT << "\"pSignalSemaphoreValues\":" << std::endl;
21993      PRINT_SPACE
21994      if (obj.pSignalSemaphoreValues) {
21995        _OUT << "[" << std::endl;
21996        for (unsigned int i = 0; i < obj.signalSemaphoreValueCount; i++) {
21997            bool isCommaNeeded = (i+1) != obj.signalSemaphoreValueCount;
21998            print_uint64_t(obj.pSignalSemaphoreValues[i], "", isCommaNeeded);
21999        }
22000        PRINT_SPACE
22001        _OUT << "]" << "" << std::endl;
22002      } else {
22003        _OUT << "\"NULL\"" << "" << std::endl;
22004      }
22005 
22006      INDENT(-4);
22007      PRINT_SPACE
22008      if (commaNeeded)
22009          _OUT << "}," << std::endl;
22010      else
22011          _OUT << "}" << std::endl;
22012 }
print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo * obj,const std::string & s,bool commaNeeded=true)22013 static void print_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo * obj, const std::string& s, bool commaNeeded=true) {
22014      PRINT_SPACE
22015      _OUT << "{" << std::endl;
22016      INDENT(4);
22017 
22018      print_VkStructureType(obj->sType, "sType", 1);
22019 
22020       if (obj->pNext) {
22021          dumpPNextChain(obj->pNext);
22022       } else {
22023          PRINT_SPACE
22024          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22025      }
22026 
22027      print_uint32_t(obj->waitSemaphoreValueCount, "waitSemaphoreValueCount", 1);
22028 
22029      PRINT_SPACE
22030      _OUT << "\"pWaitSemaphoreValues\":" << std::endl;
22031      PRINT_SPACE
22032      if (obj->pWaitSemaphoreValues) {
22033        _OUT << "[" << std::endl;
22034        for (unsigned int i = 0; i < obj->waitSemaphoreValueCount; i++) {
22035            bool isCommaNeeded = (i+1) != obj->waitSemaphoreValueCount;
22036            print_uint64_t(obj->pWaitSemaphoreValues[i], "", isCommaNeeded);
22037        }
22038        PRINT_SPACE
22039        _OUT << "]" << "," << std::endl;
22040      } else {
22041        _OUT << "\"NULL\"" << "," << std::endl;
22042      }
22043 
22044      print_uint32_t(obj->signalSemaphoreValueCount, "signalSemaphoreValueCount", 1);
22045 
22046      PRINT_SPACE
22047      _OUT << "\"pSignalSemaphoreValues\":" << std::endl;
22048      PRINT_SPACE
22049      if (obj->pSignalSemaphoreValues) {
22050        _OUT << "[" << std::endl;
22051        for (unsigned int i = 0; i < obj->signalSemaphoreValueCount; i++) {
22052            bool isCommaNeeded = (i+1) != obj->signalSemaphoreValueCount;
22053            print_uint64_t(obj->pSignalSemaphoreValues[i], "", isCommaNeeded);
22054        }
22055        PRINT_SPACE
22056        _OUT << "]" << "" << std::endl;
22057      } else {
22058        _OUT << "\"NULL\"" << "" << std::endl;
22059      }
22060 
22061      INDENT(-4);
22062      PRINT_SPACE
22063      if (commaNeeded)
22064          _OUT << "}," << std::endl;
22065      else
22066          _OUT << "}" << std::endl;
22067 }
22068 
print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj,const std::string & s,bool commaNeeded=true)22069 static void print_VkSemaphoreWaitInfo(VkSemaphoreWaitInfo obj, const std::string& s, bool commaNeeded=true) {
22070      PRINT_SPACE
22071      _OUT << "{" << std::endl;
22072      INDENT(4);
22073 
22074      print_VkStructureType(obj.sType, "sType", 1);
22075 
22076       if (obj.pNext) {
22077          dumpPNextChain(obj.pNext);
22078       } else {
22079          PRINT_SPACE
22080          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22081      }
22082 
22083      print_VkSemaphoreWaitFlags(obj.flags, "flags", 1);
22084 
22085      print_uint32_t(obj.semaphoreCount, "semaphoreCount", 1);
22086 
22087      PRINT_SPACE
22088      _OUT << "\"pSemaphores\":" << std::endl;
22089      PRINT_SPACE
22090      if (obj.pSemaphores) {
22091        _OUT << "[" << std::endl;
22092        for (unsigned int i = 0; i < obj.semaphoreCount; i++) {
22093            std:: stringstream tmp;
22094            tmp << "pSemaphores" << "_" << i;
22095            bool isCommaNeeded = (i+1) != obj.semaphoreCount;
22096            print_VkSemaphore(obj.pSemaphores[i], tmp.str(), isCommaNeeded);
22097        }
22098        PRINT_SPACE
22099        _OUT << "]" << "," << std::endl;
22100      } else {
22101        _OUT << "\"NULL\"" << "," << std::endl;
22102      }
22103 
22104      PRINT_SPACE
22105      _OUT << "\"pValues\":" << std::endl;
22106      PRINT_SPACE
22107      if (obj.pValues) {
22108        _OUT << "[" << std::endl;
22109        for (unsigned int i = 0; i < obj.semaphoreCount; i++) {
22110            bool isCommaNeeded = (i+1) != obj.semaphoreCount;
22111            print_uint64_t(obj.pValues[i], "", isCommaNeeded);
22112        }
22113        PRINT_SPACE
22114        _OUT << "]" << "" << std::endl;
22115      } else {
22116        _OUT << "\"NULL\"" << "" << std::endl;
22117      }
22118 
22119      INDENT(-4);
22120      PRINT_SPACE
22121      if (commaNeeded)
22122          _OUT << "}," << std::endl;
22123      else
22124          _OUT << "}" << std::endl;
22125 }
print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj,const std::string & s,bool commaNeeded=true)22126 static void print_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * obj, const std::string& s, bool commaNeeded=true) {
22127      PRINT_SPACE
22128      _OUT << "{" << std::endl;
22129      INDENT(4);
22130 
22131      print_VkStructureType(obj->sType, "sType", 1);
22132 
22133       if (obj->pNext) {
22134          dumpPNextChain(obj->pNext);
22135       } else {
22136          PRINT_SPACE
22137          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22138      }
22139 
22140      print_VkSemaphoreWaitFlags(obj->flags, "flags", 1);
22141 
22142      print_uint32_t(obj->semaphoreCount, "semaphoreCount", 1);
22143 
22144      PRINT_SPACE
22145      _OUT << "\"pSemaphores\":" << std::endl;
22146      PRINT_SPACE
22147      if (obj->pSemaphores) {
22148        _OUT << "[" << std::endl;
22149        for (unsigned int i = 0; i < obj->semaphoreCount; i++) {
22150            std:: stringstream tmp;
22151            tmp << "pSemaphores" << "_" << i;
22152            bool isCommaNeeded = (i+1) != obj->semaphoreCount;
22153            print_VkSemaphore(obj->pSemaphores[i], tmp.str(), isCommaNeeded);
22154        }
22155        PRINT_SPACE
22156        _OUT << "]" << "," << std::endl;
22157      } else {
22158        _OUT << "\"NULL\"" << "," << std::endl;
22159      }
22160 
22161      PRINT_SPACE
22162      _OUT << "\"pValues\":" << std::endl;
22163      PRINT_SPACE
22164      if (obj->pValues) {
22165        _OUT << "[" << std::endl;
22166        for (unsigned int i = 0; i < obj->semaphoreCount; i++) {
22167            bool isCommaNeeded = (i+1) != obj->semaphoreCount;
22168            print_uint64_t(obj->pValues[i], "", isCommaNeeded);
22169        }
22170        PRINT_SPACE
22171        _OUT << "]" << "" << std::endl;
22172      } else {
22173        _OUT << "\"NULL\"" << "" << std::endl;
22174      }
22175 
22176      INDENT(-4);
22177      PRINT_SPACE
22178      if (commaNeeded)
22179          _OUT << "}," << std::endl;
22180      else
22181          _OUT << "}" << std::endl;
22182 }
22183 
print_VkSemaphoreSignalInfo(VkSemaphoreSignalInfo obj,const std::string & s,bool commaNeeded=true)22184 static void print_VkSemaphoreSignalInfo(VkSemaphoreSignalInfo obj, const std::string& s, bool commaNeeded=true) {
22185      PRINT_SPACE
22186      _OUT << "{" << std::endl;
22187      INDENT(4);
22188 
22189      print_VkStructureType(obj.sType, "sType", 1);
22190 
22191       if (obj.pNext) {
22192          dumpPNextChain(obj.pNext);
22193       } else {
22194          PRINT_SPACE
22195          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22196      }
22197 
22198      // CTS : required value
22199      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
22200 
22201      print_uint64_t(obj.value, "value", 0);
22202 
22203      INDENT(-4);
22204      PRINT_SPACE
22205      if (commaNeeded)
22206          _OUT << "}," << std::endl;
22207      else
22208          _OUT << "}" << std::endl;
22209 }
print_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * obj,const std::string & s,bool commaNeeded=true)22210 static void print_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * obj, const std::string& s, bool commaNeeded=true) {
22211      PRINT_SPACE
22212      _OUT << "{" << std::endl;
22213      INDENT(4);
22214 
22215      print_VkStructureType(obj->sType, "sType", 1);
22216 
22217       if (obj->pNext) {
22218          dumpPNextChain(obj->pNext);
22219       } else {
22220          PRINT_SPACE
22221          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22222      }
22223 
22224      // CTS : required value
22225      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
22226 
22227      print_uint64_t(obj->value, "value", 0);
22228 
22229      INDENT(-4);
22230      PRINT_SPACE
22231      if (commaNeeded)
22232          _OUT << "}," << std::endl;
22233      else
22234          _OUT << "}" << std::endl;
22235 }
22236 
print_VkPhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBufferDeviceAddressFeatures obj,const std::string & s,bool commaNeeded=true)22237 static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(VkPhysicalDeviceBufferDeviceAddressFeatures obj, const std::string& s, bool commaNeeded=true) {
22238      PRINT_SPACE
22239      _OUT << "{" << std::endl;
22240      INDENT(4);
22241 
22242      print_VkStructureType(obj.sType, "sType", 1);
22243 
22244       if (obj.pNext) {
22245          dumpPNextChain(obj.pNext);
22246       } else {
22247          PRINT_SPACE
22248          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22249      }
22250 
22251      print_VkBool32(obj.bufferDeviceAddress, "bufferDeviceAddress", 1);
22252 
22253      print_VkBool32(obj.bufferDeviceAddressCaptureReplay, "bufferDeviceAddressCaptureReplay", 1);
22254 
22255      print_VkBool32(obj.bufferDeviceAddressMultiDevice, "bufferDeviceAddressMultiDevice", 0);
22256 
22257      INDENT(-4);
22258      PRINT_SPACE
22259      if (commaNeeded)
22260          _OUT << "}," << std::endl;
22261      else
22262          _OUT << "}" << std::endl;
22263 }
print_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDeviceBufferDeviceAddressFeatures * obj,const std::string & s,bool commaNeeded=true)22264 static void print_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDeviceBufferDeviceAddressFeatures * obj, const std::string& s, bool commaNeeded=true) {
22265      PRINT_SPACE
22266      _OUT << "{" << std::endl;
22267      INDENT(4);
22268 
22269      print_VkStructureType(obj->sType, "sType", 1);
22270 
22271       if (obj->pNext) {
22272          dumpPNextChain(obj->pNext);
22273       } else {
22274          PRINT_SPACE
22275          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22276      }
22277 
22278      print_VkBool32(obj->bufferDeviceAddress, "bufferDeviceAddress", 1);
22279 
22280      print_VkBool32(obj->bufferDeviceAddressCaptureReplay, "bufferDeviceAddressCaptureReplay", 1);
22281 
22282      print_VkBool32(obj->bufferDeviceAddressMultiDevice, "bufferDeviceAddressMultiDevice", 0);
22283 
22284      INDENT(-4);
22285      PRINT_SPACE
22286      if (commaNeeded)
22287          _OUT << "}," << std::endl;
22288      else
22289          _OUT << "}" << std::endl;
22290 }
22291 
print_VkBufferDeviceAddressInfo(VkBufferDeviceAddressInfo obj,const std::string & s,bool commaNeeded=true)22292 static void print_VkBufferDeviceAddressInfo(VkBufferDeviceAddressInfo obj, const std::string& s, bool commaNeeded=true) {
22293      PRINT_SPACE
22294      _OUT << "{" << std::endl;
22295      INDENT(4);
22296 
22297      print_VkStructureType(obj.sType, "sType", 1);
22298 
22299       if (obj.pNext) {
22300          dumpPNextChain(obj.pNext);
22301       } else {
22302          PRINT_SPACE
22303          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22304      }
22305 
22306      // CTS : required value
22307      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"" << std::endl;
22308 
22309      INDENT(-4);
22310      PRINT_SPACE
22311      if (commaNeeded)
22312          _OUT << "}," << std::endl;
22313      else
22314          _OUT << "}" << std::endl;
22315 }
print_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * obj,const std::string & s,bool commaNeeded=true)22316 static void print_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * obj, const std::string& s, bool commaNeeded=true) {
22317      PRINT_SPACE
22318      _OUT << "{" << std::endl;
22319      INDENT(4);
22320 
22321      print_VkStructureType(obj->sType, "sType", 1);
22322 
22323       if (obj->pNext) {
22324          dumpPNextChain(obj->pNext);
22325       } else {
22326          PRINT_SPACE
22327          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22328      }
22329 
22330      // CTS : required value
22331      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"" << std::endl;
22332 
22333      INDENT(-4);
22334      PRINT_SPACE
22335      if (commaNeeded)
22336          _OUT << "}," << std::endl;
22337      else
22338          _OUT << "}" << std::endl;
22339 }
22340 
print_VkBufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAddressCreateInfo obj,const std::string & s,bool commaNeeded=true)22341 static void print_VkBufferOpaqueCaptureAddressCreateInfo(VkBufferOpaqueCaptureAddressCreateInfo obj, const std::string& s, bool commaNeeded=true) {
22342      PRINT_SPACE
22343      _OUT << "{" << std::endl;
22344      INDENT(4);
22345 
22346      print_VkStructureType(obj.sType, "sType", 1);
22347 
22348       if (obj.pNext) {
22349          dumpPNextChain(obj.pNext);
22350       } else {
22351          PRINT_SPACE
22352          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22353      }
22354 
22355      print_uint64_t(obj.opaqueCaptureAddress, "opaqueCaptureAddress", 0);
22356 
22357      INDENT(-4);
22358      PRINT_SPACE
22359      if (commaNeeded)
22360          _OUT << "}," << std::endl;
22361      else
22362          _OUT << "}" << std::endl;
22363 }
print_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCaptureAddressCreateInfo * obj,const std::string & s,bool commaNeeded=true)22364 static void print_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCaptureAddressCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
22365      PRINT_SPACE
22366      _OUT << "{" << std::endl;
22367      INDENT(4);
22368 
22369      print_VkStructureType(obj->sType, "sType", 1);
22370 
22371       if (obj->pNext) {
22372          dumpPNextChain(obj->pNext);
22373       } else {
22374          PRINT_SPACE
22375          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22376      }
22377 
22378      print_uint64_t(obj->opaqueCaptureAddress, "opaqueCaptureAddress", 0);
22379 
22380      INDENT(-4);
22381      PRINT_SPACE
22382      if (commaNeeded)
22383          _OUT << "}," << std::endl;
22384      else
22385          _OUT << "}" << std::endl;
22386 }
22387 
print_VkMemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCaptureAddressAllocateInfo obj,const std::string & s,bool commaNeeded=true)22388 static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(VkMemoryOpaqueCaptureAddressAllocateInfo obj, const std::string& s, bool commaNeeded=true) {
22389      PRINT_SPACE
22390      _OUT << "{" << std::endl;
22391      INDENT(4);
22392 
22393      print_VkStructureType(obj.sType, "sType", 1);
22394 
22395       if (obj.pNext) {
22396          dumpPNextChain(obj.pNext);
22397       } else {
22398          PRINT_SPACE
22399          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22400      }
22401 
22402      print_uint64_t(obj.opaqueCaptureAddress, "opaqueCaptureAddress", 0);
22403 
22404      INDENT(-4);
22405      PRINT_SPACE
22406      if (commaNeeded)
22407          _OUT << "}," << std::endl;
22408      else
22409          _OUT << "}" << std::endl;
22410 }
print_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueCaptureAddressAllocateInfo * obj,const std::string & s,bool commaNeeded=true)22411 static void print_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueCaptureAddressAllocateInfo * obj, const std::string& s, bool commaNeeded=true) {
22412      PRINT_SPACE
22413      _OUT << "{" << std::endl;
22414      INDENT(4);
22415 
22416      print_VkStructureType(obj->sType, "sType", 1);
22417 
22418       if (obj->pNext) {
22419          dumpPNextChain(obj->pNext);
22420       } else {
22421          PRINT_SPACE
22422          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22423      }
22424 
22425      print_uint64_t(obj->opaqueCaptureAddress, "opaqueCaptureAddress", 0);
22426 
22427      INDENT(-4);
22428      PRINT_SPACE
22429      if (commaNeeded)
22430          _OUT << "}," << std::endl;
22431      else
22432          _OUT << "}" << std::endl;
22433 }
22434 
print_VkDeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCaptureAddressInfo obj,const std::string & s,bool commaNeeded=true)22435 static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(VkDeviceMemoryOpaqueCaptureAddressInfo obj, const std::string& s, bool commaNeeded=true) {
22436      PRINT_SPACE
22437      _OUT << "{" << std::endl;
22438      INDENT(4);
22439 
22440      print_VkStructureType(obj.sType, "sType", 1);
22441 
22442       if (obj.pNext) {
22443          dumpPNextChain(obj.pNext);
22444       } else {
22445          PRINT_SPACE
22446          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22447      }
22448 
22449      // CTS : required value
22450      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"" << std::endl;
22451 
22452      INDENT(-4);
22453      PRINT_SPACE
22454      if (commaNeeded)
22455          _OUT << "}," << std::endl;
22456      else
22457          _OUT << "}" << std::endl;
22458 }
print_VkDeviceMemoryOpaqueCaptureAddressInfo(const VkDeviceMemoryOpaqueCaptureAddressInfo * obj,const std::string & s,bool commaNeeded=true)22459 static void print_VkDeviceMemoryOpaqueCaptureAddressInfo(const VkDeviceMemoryOpaqueCaptureAddressInfo * obj, const std::string& s, bool commaNeeded=true) {
22460      PRINT_SPACE
22461      _OUT << "{" << std::endl;
22462      INDENT(4);
22463 
22464      print_VkStructureType(obj->sType, "sType", 1);
22465 
22466       if (obj->pNext) {
22467          dumpPNextChain(obj->pNext);
22468       } else {
22469          PRINT_SPACE
22470          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22471      }
22472 
22473      // CTS : required value
22474      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"" << std::endl;
22475 
22476      INDENT(-4);
22477      PRINT_SPACE
22478      if (commaNeeded)
22479          _OUT << "}," << std::endl;
22480      else
22481          _OUT << "}" << std::endl;
22482 }
22483 
22484 static std::map<deUint64, std::string> VkFaultLevel_map = {
22485     std::make_pair(0, "VK_FAULT_LEVEL_UNASSIGNED"),
22486     std::make_pair(1, "VK_FAULT_LEVEL_CRITICAL"),
22487     std::make_pair(2, "VK_FAULT_LEVEL_RECOVERABLE"),
22488     std::make_pair(3, "VK_FAULT_LEVEL_WARNING"),
22489 };
print_VkFaultLevel(VkFaultLevel obj,const std::string & str,bool commaNeeded=true)22490 static void print_VkFaultLevel(VkFaultLevel obj, const std::string& str, bool commaNeeded=true) {
22491      PRINT_SPACE
22492      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22493      if (commaNeeded)
22494          _OUT << "\"" <<  VkFaultLevel_map[obj] << "\"," << std::endl;
22495      else
22496          _OUT << "\"" << VkFaultLevel_map[obj] << "\"" << std::endl;
22497 }
print_VkFaultLevel(const VkFaultLevel * obj,const std::string & str,bool commaNeeded=true)22498 static void print_VkFaultLevel(const VkFaultLevel * obj, const std::string& str, bool commaNeeded=true) {
22499      PRINT_SPACE
22500      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22501      if (commaNeeded)
22502          _OUT << "\"" <<  VkFaultLevel_map[*obj] << "\"," << std::endl;
22503      else
22504          _OUT << "\"" << VkFaultLevel_map[*obj] << "\"" << std::endl;
22505 }
22506 
22507 static std::map<deUint64, std::string> VkFaultType_map = {
22508     std::make_pair(0, "VK_FAULT_TYPE_INVALID"),
22509     std::make_pair(1, "VK_FAULT_TYPE_UNASSIGNED"),
22510     std::make_pair(2, "VK_FAULT_TYPE_IMPLEMENTATION"),
22511     std::make_pair(3, "VK_FAULT_TYPE_SYSTEM"),
22512     std::make_pair(4, "VK_FAULT_TYPE_PHYSICAL_DEVICE"),
22513     std::make_pair(5, "VK_FAULT_TYPE_COMMAND_BUFFER_FULL"),
22514     std::make_pair(6, "VK_FAULT_TYPE_INVALID_API_USAGE"),
22515 };
print_VkFaultType(VkFaultType obj,const std::string & str,bool commaNeeded=true)22516 static void print_VkFaultType(VkFaultType obj, const std::string& str, bool commaNeeded=true) {
22517      PRINT_SPACE
22518      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22519      if (commaNeeded)
22520          _OUT << "\"" <<  VkFaultType_map[obj] << "\"," << std::endl;
22521      else
22522          _OUT << "\"" << VkFaultType_map[obj] << "\"" << std::endl;
22523 }
print_VkFaultType(const VkFaultType * obj,const std::string & str,bool commaNeeded=true)22524 static void print_VkFaultType(const VkFaultType * obj, const std::string& str, bool commaNeeded=true) {
22525      PRINT_SPACE
22526      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22527      if (commaNeeded)
22528          _OUT << "\"" <<  VkFaultType_map[*obj] << "\"," << std::endl;
22529      else
22530          _OUT << "\"" << VkFaultType_map[*obj] << "\"" << std::endl;
22531 }
22532 
22533 static std::map<deUint64, std::string> VkFaultQueryBehavior_map = {
22534     std::make_pair(0, "VK_FAULT_QUERY_BEHAVIOR_GET_AND_CLEAR_ALL_FAULTS"),
22535 };
print_VkFaultQueryBehavior(VkFaultQueryBehavior obj,const std::string & str,bool commaNeeded=true)22536 static void print_VkFaultQueryBehavior(VkFaultQueryBehavior obj, const std::string& str, bool commaNeeded=true) {
22537      PRINT_SPACE
22538      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22539      if (commaNeeded)
22540          _OUT << "\"" <<  VkFaultQueryBehavior_map[obj] << "\"," << std::endl;
22541      else
22542          _OUT << "\"" << VkFaultQueryBehavior_map[obj] << "\"" << std::endl;
22543 }
print_VkFaultQueryBehavior(const VkFaultQueryBehavior * obj,const std::string & str,bool commaNeeded=true)22544 static void print_VkFaultQueryBehavior(const VkFaultQueryBehavior * obj, const std::string& str, bool commaNeeded=true) {
22545      PRINT_SPACE
22546      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22547      if (commaNeeded)
22548          _OUT << "\"" <<  VkFaultQueryBehavior_map[*obj] << "\"," << std::endl;
22549      else
22550          _OUT << "\"" << VkFaultQueryBehavior_map[*obj] << "\"" << std::endl;
22551 }
22552 
22553 static std::map<deUint64, std::string> VkPipelineMatchControl_map = {
22554     std::make_pair(0, "VK_PIPELINE_MATCH_CONTROL_APPLICATION_UUID_EXACT_MATCH"),
22555 };
print_VkPipelineMatchControl(VkPipelineMatchControl obj,const std::string & str,bool commaNeeded=true)22556 static void print_VkPipelineMatchControl(VkPipelineMatchControl obj, const std::string& str, bool commaNeeded=true) {
22557      PRINT_SPACE
22558      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22559      if (commaNeeded)
22560          _OUT << "\"" <<  VkPipelineMatchControl_map[obj] << "\"," << std::endl;
22561      else
22562          _OUT << "\"" << VkPipelineMatchControl_map[obj] << "\"" << std::endl;
22563 }
print_VkPipelineMatchControl(const VkPipelineMatchControl * obj,const std::string & str,bool commaNeeded=true)22564 static void print_VkPipelineMatchControl(const VkPipelineMatchControl * obj, const std::string& str, bool commaNeeded=true) {
22565      PRINT_SPACE
22566      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22567      if (commaNeeded)
22568          _OUT << "\"" <<  VkPipelineMatchControl_map[*obj] << "\"," << std::endl;
22569      else
22570          _OUT << "\"" << VkPipelineMatchControl_map[*obj] << "\"" << std::endl;
22571 }
22572 
22573 static std::map<deUint64, std::string> VkPipelineCacheValidationVersion_map = {
22574     std::make_pair(1, "VK_PIPELINE_CACHE_VALIDATION_VERSION_SAFETY_CRITICAL_ONE"),
22575 };
print_VkPipelineCacheValidationVersion(VkPipelineCacheValidationVersion obj,const std::string & str,bool commaNeeded=true)22576 static void print_VkPipelineCacheValidationVersion(VkPipelineCacheValidationVersion obj, const std::string& str, bool commaNeeded=true) {
22577      PRINT_SPACE
22578      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22579      if (commaNeeded)
22580          _OUT << "\"" <<  VkPipelineCacheValidationVersion_map[obj] << "\"," << std::endl;
22581      else
22582          _OUT << "\"" << VkPipelineCacheValidationVersion_map[obj] << "\"" << std::endl;
22583 }
print_VkPipelineCacheValidationVersion(const VkPipelineCacheValidationVersion * obj,const std::string & str,bool commaNeeded=true)22584 static void print_VkPipelineCacheValidationVersion(const VkPipelineCacheValidationVersion * obj, const std::string& str, bool commaNeeded=true) {
22585      PRINT_SPACE
22586      if (str != "") _OUT << "\"" << str << "\"" << " : ";
22587      if (commaNeeded)
22588          _OUT << "\"" <<  VkPipelineCacheValidationVersion_map[*obj] << "\"," << std::endl;
22589      else
22590          _OUT << "\"" << VkPipelineCacheValidationVersion_map[*obj] << "\"" << std::endl;
22591 }
22592 
print_VkPhysicalDeviceVulkanSC10Features(VkPhysicalDeviceVulkanSC10Features obj,const std::string & s,bool commaNeeded=true)22593 static void print_VkPhysicalDeviceVulkanSC10Features(VkPhysicalDeviceVulkanSC10Features obj, const std::string& s, bool commaNeeded=true) {
22594      PRINT_SPACE
22595      _OUT << "{" << std::endl;
22596      INDENT(4);
22597 
22598      print_VkStructureType(obj.sType, "sType", 1);
22599 
22600       if (obj.pNext) {
22601          dumpPNextChain(obj.pNext);
22602       } else {
22603          PRINT_SPACE
22604          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22605      }
22606 
22607      print_VkBool32(obj.shaderAtomicInstructions, "shaderAtomicInstructions", 0);
22608 
22609      INDENT(-4);
22610      PRINT_SPACE
22611      if (commaNeeded)
22612          _OUT << "}," << std::endl;
22613      else
22614          _OUT << "}" << std::endl;
22615 }
print_VkPhysicalDeviceVulkanSC10Features(const VkPhysicalDeviceVulkanSC10Features * obj,const std::string & s,bool commaNeeded=true)22616 static void print_VkPhysicalDeviceVulkanSC10Features(const VkPhysicalDeviceVulkanSC10Features * obj, const std::string& s, bool commaNeeded=true) {
22617      PRINT_SPACE
22618      _OUT << "{" << std::endl;
22619      INDENT(4);
22620 
22621      print_VkStructureType(obj->sType, "sType", 1);
22622 
22623       if (obj->pNext) {
22624          dumpPNextChain(obj->pNext);
22625       } else {
22626          PRINT_SPACE
22627          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22628      }
22629 
22630      print_VkBool32(obj->shaderAtomicInstructions, "shaderAtomicInstructions", 0);
22631 
22632      INDENT(-4);
22633      PRINT_SPACE
22634      if (commaNeeded)
22635          _OUT << "}," << std::endl;
22636      else
22637          _OUT << "}" << std::endl;
22638 }
22639 
print_VkPhysicalDeviceVulkanSC10Properties(VkPhysicalDeviceVulkanSC10Properties obj,const std::string & s,bool commaNeeded=true)22640 static void print_VkPhysicalDeviceVulkanSC10Properties(VkPhysicalDeviceVulkanSC10Properties obj, const std::string& s, bool commaNeeded=true) {
22641      PRINT_SPACE
22642      _OUT << "{" << std::endl;
22643      INDENT(4);
22644 
22645      print_VkStructureType(obj.sType, "sType", 1);
22646 
22647       if (obj.pNext) {
22648          dumpPNextChain(obj.pNext);
22649       } else {
22650          PRINT_SPACE
22651          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22652      }
22653 
22654      print_VkBool32(obj.deviceNoDynamicHostAllocations, "deviceNoDynamicHostAllocations", 1);
22655 
22656      print_VkBool32(obj.deviceDestroyFreesMemory, "deviceDestroyFreesMemory", 1);
22657 
22658      print_VkBool32(obj.commandPoolMultipleCommandBuffersRecording, "commandPoolMultipleCommandBuffersRecording", 1);
22659 
22660      print_VkBool32(obj.commandPoolResetCommandBuffer, "commandPoolResetCommandBuffer", 1);
22661 
22662      print_VkBool32(obj.commandBufferSimultaneousUse, "commandBufferSimultaneousUse", 1);
22663 
22664      print_VkBool32(obj.secondaryCommandBufferNullOrImagelessFramebuffer, "secondaryCommandBufferNullOrImagelessFramebuffer", 1);
22665 
22666      print_VkBool32(obj.recycleDescriptorSetMemory, "recycleDescriptorSetMemory", 1);
22667 
22668      print_VkBool32(obj.recyclePipelineMemory, "recyclePipelineMemory", 1);
22669 
22670      print_uint32_t(obj.maxRenderPassSubpasses, "maxRenderPassSubpasses", 1);
22671 
22672      print_uint32_t(obj.maxRenderPassDependencies, "maxRenderPassDependencies", 1);
22673 
22674      print_uint32_t(obj.maxSubpassInputAttachments, "maxSubpassInputAttachments", 1);
22675 
22676      print_uint32_t(obj.maxSubpassPreserveAttachments, "maxSubpassPreserveAttachments", 1);
22677 
22678      print_uint32_t(obj.maxFramebufferAttachments, "maxFramebufferAttachments", 1);
22679 
22680      print_uint32_t(obj.maxDescriptorSetLayoutBindings, "maxDescriptorSetLayoutBindings", 1);
22681 
22682      print_uint32_t(obj.maxQueryFaultCount, "maxQueryFaultCount", 1);
22683 
22684      print_uint32_t(obj.maxCallbackFaultCount, "maxCallbackFaultCount", 1);
22685 
22686      print_uint32_t(obj.maxCommandPoolCommandBuffers, "maxCommandPoolCommandBuffers", 1);
22687 
22688      print_VkDeviceSize(obj.maxCommandBufferSize, "maxCommandBufferSize", 0);
22689 
22690      INDENT(-4);
22691      PRINT_SPACE
22692      if (commaNeeded)
22693          _OUT << "}," << std::endl;
22694      else
22695          _OUT << "}" << std::endl;
22696 }
print_VkPhysicalDeviceVulkanSC10Properties(const VkPhysicalDeviceVulkanSC10Properties * obj,const std::string & s,bool commaNeeded=true)22697 static void print_VkPhysicalDeviceVulkanSC10Properties(const VkPhysicalDeviceVulkanSC10Properties * obj, const std::string& s, bool commaNeeded=true) {
22698      PRINT_SPACE
22699      _OUT << "{" << std::endl;
22700      INDENT(4);
22701 
22702      print_VkStructureType(obj->sType, "sType", 1);
22703 
22704       if (obj->pNext) {
22705          dumpPNextChain(obj->pNext);
22706       } else {
22707          PRINT_SPACE
22708          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22709      }
22710 
22711      print_VkBool32(obj->deviceNoDynamicHostAllocations, "deviceNoDynamicHostAllocations", 1);
22712 
22713      print_VkBool32(obj->deviceDestroyFreesMemory, "deviceDestroyFreesMemory", 1);
22714 
22715      print_VkBool32(obj->commandPoolMultipleCommandBuffersRecording, "commandPoolMultipleCommandBuffersRecording", 1);
22716 
22717      print_VkBool32(obj->commandPoolResetCommandBuffer, "commandPoolResetCommandBuffer", 1);
22718 
22719      print_VkBool32(obj->commandBufferSimultaneousUse, "commandBufferSimultaneousUse", 1);
22720 
22721      print_VkBool32(obj->secondaryCommandBufferNullOrImagelessFramebuffer, "secondaryCommandBufferNullOrImagelessFramebuffer", 1);
22722 
22723      print_VkBool32(obj->recycleDescriptorSetMemory, "recycleDescriptorSetMemory", 1);
22724 
22725      print_VkBool32(obj->recyclePipelineMemory, "recyclePipelineMemory", 1);
22726 
22727      print_uint32_t(obj->maxRenderPassSubpasses, "maxRenderPassSubpasses", 1);
22728 
22729      print_uint32_t(obj->maxRenderPassDependencies, "maxRenderPassDependencies", 1);
22730 
22731      print_uint32_t(obj->maxSubpassInputAttachments, "maxSubpassInputAttachments", 1);
22732 
22733      print_uint32_t(obj->maxSubpassPreserveAttachments, "maxSubpassPreserveAttachments", 1);
22734 
22735      print_uint32_t(obj->maxFramebufferAttachments, "maxFramebufferAttachments", 1);
22736 
22737      print_uint32_t(obj->maxDescriptorSetLayoutBindings, "maxDescriptorSetLayoutBindings", 1);
22738 
22739      print_uint32_t(obj->maxQueryFaultCount, "maxQueryFaultCount", 1);
22740 
22741      print_uint32_t(obj->maxCallbackFaultCount, "maxCallbackFaultCount", 1);
22742 
22743      print_uint32_t(obj->maxCommandPoolCommandBuffers, "maxCommandPoolCommandBuffers", 1);
22744 
22745      print_VkDeviceSize(obj->maxCommandBufferSize, "maxCommandBufferSize", 0);
22746 
22747      INDENT(-4);
22748      PRINT_SPACE
22749      if (commaNeeded)
22750          _OUT << "}," << std::endl;
22751      else
22752          _OUT << "}" << std::endl;
22753 }
22754 
print_VkPipelinePoolSize(VkPipelinePoolSize obj,const std::string & s,bool commaNeeded=true)22755 static void print_VkPipelinePoolSize(VkPipelinePoolSize obj, const std::string& s, bool commaNeeded=true) {
22756      PRINT_SPACE
22757      _OUT << "{" << std::endl;
22758      INDENT(4);
22759 
22760      print_VkStructureType(obj.sType, "sType", 1);
22761 
22762       if (obj.pNext) {
22763          dumpPNextChain(obj.pNext);
22764       } else {
22765          PRINT_SPACE
22766          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22767      }
22768 
22769      print_VkDeviceSize(obj.poolEntrySize, "poolEntrySize", 1);
22770 
22771      print_uint32_t(obj.poolEntryCount, "poolEntryCount", 0);
22772 
22773      INDENT(-4);
22774      PRINT_SPACE
22775      if (commaNeeded)
22776          _OUT << "}," << std::endl;
22777      else
22778          _OUT << "}" << std::endl;
22779 }
print_VkPipelinePoolSize(const VkPipelinePoolSize * obj,const std::string & s,bool commaNeeded=true)22780 static void print_VkPipelinePoolSize(const VkPipelinePoolSize * obj, const std::string& s, bool commaNeeded=true) {
22781      PRINT_SPACE
22782      _OUT << "{" << std::endl;
22783      INDENT(4);
22784 
22785      print_VkStructureType(obj->sType, "sType", 1);
22786 
22787       if (obj->pNext) {
22788          dumpPNextChain(obj->pNext);
22789       } else {
22790          PRINT_SPACE
22791          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22792      }
22793 
22794      print_VkDeviceSize(obj->poolEntrySize, "poolEntrySize", 1);
22795 
22796      print_uint32_t(obj->poolEntryCount, "poolEntryCount", 0);
22797 
22798      INDENT(-4);
22799      PRINT_SPACE
22800      if (commaNeeded)
22801          _OUT << "}," << std::endl;
22802      else
22803          _OUT << "}" << std::endl;
22804 }
22805 
print_VkDeviceObjectReservationCreateInfo(VkDeviceObjectReservationCreateInfo obj,const std::string & s,bool commaNeeded=true)22806 static void print_VkDeviceObjectReservationCreateInfo(VkDeviceObjectReservationCreateInfo obj, const std::string& s, bool commaNeeded=true) {
22807      PRINT_SPACE
22808      _OUT << "{" << std::endl;
22809      INDENT(4);
22810 
22811      print_VkStructureType(obj.sType, "sType", 1);
22812 
22813       if (obj.pNext) {
22814          dumpPNextChain(obj.pNext);
22815       } else {
22816          PRINT_SPACE
22817          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22818      }
22819 
22820      print_uint32_t(obj.pipelineCacheCreateInfoCount, "pipelineCacheCreateInfoCount", 1);
22821 
22822      PRINT_SPACE
22823      _OUT << "\"pPipelineCacheCreateInfos\": " << std::endl;
22824      if (obj.pPipelineCacheCreateInfos) {
22825          PRINT_SPACE
22826          _OUT << "[" << std::endl;
22827          for (unsigned int i = 0; i < obj.pipelineCacheCreateInfoCount; i++) {
22828            if (i+1 == obj.pipelineCacheCreateInfoCount)
22829                print_VkPipelineCacheCreateInfo(obj.pPipelineCacheCreateInfos[i], "pPipelineCacheCreateInfos", 0);
22830            else
22831                print_VkPipelineCacheCreateInfo(obj.pPipelineCacheCreateInfos[i], "pPipelineCacheCreateInfos", 1);
22832          }
22833          PRINT_SPACE
22834          _OUT << "]," << std::endl;
22835     }
22836      else
22837      {
22838          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
22839      }
22840 
22841      print_uint32_t(obj.pipelinePoolSizeCount, "pipelinePoolSizeCount", 1);
22842 
22843      PRINT_SPACE
22844      _OUT << "\"pPipelinePoolSizes\": " << std::endl;
22845      if (obj.pPipelinePoolSizes) {
22846          PRINT_SPACE
22847          _OUT << "[" << std::endl;
22848          for (unsigned int i = 0; i < obj.pipelinePoolSizeCount; i++) {
22849            if (i+1 == obj.pipelinePoolSizeCount)
22850                print_VkPipelinePoolSize(obj.pPipelinePoolSizes[i], "pPipelinePoolSizes", 0);
22851            else
22852                print_VkPipelinePoolSize(obj.pPipelinePoolSizes[i], "pPipelinePoolSizes", 1);
22853          }
22854          PRINT_SPACE
22855          _OUT << "]," << std::endl;
22856     }
22857      else
22858      {
22859          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
22860      }
22861 
22862      print_uint32_t(obj.semaphoreRequestCount, "semaphoreRequestCount", 1);
22863 
22864      print_uint32_t(obj.commandBufferRequestCount, "commandBufferRequestCount", 1);
22865 
22866      print_uint32_t(obj.fenceRequestCount, "fenceRequestCount", 1);
22867 
22868      print_uint32_t(obj.deviceMemoryRequestCount, "deviceMemoryRequestCount", 1);
22869 
22870      print_uint32_t(obj.bufferRequestCount, "bufferRequestCount", 1);
22871 
22872      print_uint32_t(obj.imageRequestCount, "imageRequestCount", 1);
22873 
22874      print_uint32_t(obj.eventRequestCount, "eventRequestCount", 1);
22875 
22876      print_uint32_t(obj.queryPoolRequestCount, "queryPoolRequestCount", 1);
22877 
22878      print_uint32_t(obj.bufferViewRequestCount, "bufferViewRequestCount", 1);
22879 
22880      print_uint32_t(obj.imageViewRequestCount, "imageViewRequestCount", 1);
22881 
22882      print_uint32_t(obj.layeredImageViewRequestCount, "layeredImageViewRequestCount", 1);
22883 
22884      print_uint32_t(obj.pipelineCacheRequestCount, "pipelineCacheRequestCount", 1);
22885 
22886      print_uint32_t(obj.pipelineLayoutRequestCount, "pipelineLayoutRequestCount", 1);
22887 
22888      print_uint32_t(obj.renderPassRequestCount, "renderPassRequestCount", 1);
22889 
22890      print_uint32_t(obj.graphicsPipelineRequestCount, "graphicsPipelineRequestCount", 1);
22891 
22892      print_uint32_t(obj.computePipelineRequestCount, "computePipelineRequestCount", 1);
22893 
22894      print_uint32_t(obj.descriptorSetLayoutRequestCount, "descriptorSetLayoutRequestCount", 1);
22895 
22896      print_uint32_t(obj.samplerRequestCount, "samplerRequestCount", 1);
22897 
22898      print_uint32_t(obj.descriptorPoolRequestCount, "descriptorPoolRequestCount", 1);
22899 
22900      print_uint32_t(obj.descriptorSetRequestCount, "descriptorSetRequestCount", 1);
22901 
22902      print_uint32_t(obj.framebufferRequestCount, "framebufferRequestCount", 1);
22903 
22904      print_uint32_t(obj.commandPoolRequestCount, "commandPoolRequestCount", 1);
22905 
22906      print_uint32_t(obj.samplerYcbcrConversionRequestCount, "samplerYcbcrConversionRequestCount", 1);
22907 
22908      print_uint32_t(obj.surfaceRequestCount, "surfaceRequestCount", 1);
22909 
22910      print_uint32_t(obj.swapchainRequestCount, "swapchainRequestCount", 1);
22911 
22912      print_uint32_t(obj.displayModeRequestCount, "displayModeRequestCount", 1);
22913 
22914      print_uint32_t(obj.subpassDescriptionRequestCount, "subpassDescriptionRequestCount", 1);
22915 
22916      print_uint32_t(obj.attachmentDescriptionRequestCount, "attachmentDescriptionRequestCount", 1);
22917 
22918      print_uint32_t(obj.descriptorSetLayoutBindingRequestCount, "descriptorSetLayoutBindingRequestCount", 1);
22919 
22920      print_uint32_t(obj.descriptorSetLayoutBindingLimit, "descriptorSetLayoutBindingLimit", 1);
22921 
22922      print_uint32_t(obj.maxImageViewMipLevels, "maxImageViewMipLevels", 1);
22923 
22924      print_uint32_t(obj.maxImageViewArrayLayers, "maxImageViewArrayLayers", 1);
22925 
22926      print_uint32_t(obj.maxLayeredImageViewMipLevels, "maxLayeredImageViewMipLevels", 1);
22927 
22928      print_uint32_t(obj.maxOcclusionQueriesPerPool, "maxOcclusionQueriesPerPool", 1);
22929 
22930      print_uint32_t(obj.maxPipelineStatisticsQueriesPerPool, "maxPipelineStatisticsQueriesPerPool", 1);
22931 
22932      print_uint32_t(obj.maxTimestampQueriesPerPool, "maxTimestampQueriesPerPool", 1);
22933 
22934      print_uint32_t(obj.maxImmutableSamplersPerDescriptorSetLayout, "maxImmutableSamplersPerDescriptorSetLayout", 0);
22935 
22936      INDENT(-4);
22937      PRINT_SPACE
22938      if (commaNeeded)
22939          _OUT << "}," << std::endl;
22940      else
22941          _OUT << "}" << std::endl;
22942 }
print_VkDeviceObjectReservationCreateInfo(const VkDeviceObjectReservationCreateInfo * obj,const std::string & s,bool commaNeeded=true)22943 static void print_VkDeviceObjectReservationCreateInfo(const VkDeviceObjectReservationCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
22944      PRINT_SPACE
22945      _OUT << "{" << std::endl;
22946      INDENT(4);
22947 
22948      print_VkStructureType(obj->sType, "sType", 1);
22949 
22950       if (obj->pNext) {
22951          dumpPNextChain(obj->pNext);
22952       } else {
22953          PRINT_SPACE
22954          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
22955      }
22956 
22957      print_uint32_t(obj->pipelineCacheCreateInfoCount, "pipelineCacheCreateInfoCount", 1);
22958 
22959      PRINT_SPACE
22960      _OUT << "\"pPipelineCacheCreateInfos\": " << std::endl;
22961      if (obj->pPipelineCacheCreateInfos) {
22962          PRINT_SPACE
22963          _OUT << "[" << std::endl;
22964          for (unsigned int i = 0; i < obj->pipelineCacheCreateInfoCount; i++) {
22965            if (i+1 == obj->pipelineCacheCreateInfoCount)
22966                print_VkPipelineCacheCreateInfo(obj->pPipelineCacheCreateInfos[i], "pPipelineCacheCreateInfos", 0);
22967            else
22968                print_VkPipelineCacheCreateInfo(obj->pPipelineCacheCreateInfos[i], "pPipelineCacheCreateInfos", 1);
22969          }
22970          PRINT_SPACE
22971          _OUT << "]," << std::endl;
22972     }
22973      else
22974      {
22975          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
22976      }
22977 
22978      print_uint32_t(obj->pipelinePoolSizeCount, "pipelinePoolSizeCount", 1);
22979 
22980      PRINT_SPACE
22981      _OUT << "\"pPipelinePoolSizes\": " << std::endl;
22982      if (obj->pPipelinePoolSizes) {
22983          PRINT_SPACE
22984          _OUT << "[" << std::endl;
22985          for (unsigned int i = 0; i < obj->pipelinePoolSizeCount; i++) {
22986            if (i+1 == obj->pipelinePoolSizeCount)
22987                print_VkPipelinePoolSize(obj->pPipelinePoolSizes[i], "pPipelinePoolSizes", 0);
22988            else
22989                print_VkPipelinePoolSize(obj->pPipelinePoolSizes[i], "pPipelinePoolSizes", 1);
22990          }
22991          PRINT_SPACE
22992          _OUT << "]," << std::endl;
22993     }
22994      else
22995      {
22996          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
22997      }
22998 
22999      print_uint32_t(obj->semaphoreRequestCount, "semaphoreRequestCount", 1);
23000 
23001      print_uint32_t(obj->commandBufferRequestCount, "commandBufferRequestCount", 1);
23002 
23003      print_uint32_t(obj->fenceRequestCount, "fenceRequestCount", 1);
23004 
23005      print_uint32_t(obj->deviceMemoryRequestCount, "deviceMemoryRequestCount", 1);
23006 
23007      print_uint32_t(obj->bufferRequestCount, "bufferRequestCount", 1);
23008 
23009      print_uint32_t(obj->imageRequestCount, "imageRequestCount", 1);
23010 
23011      print_uint32_t(obj->eventRequestCount, "eventRequestCount", 1);
23012 
23013      print_uint32_t(obj->queryPoolRequestCount, "queryPoolRequestCount", 1);
23014 
23015      print_uint32_t(obj->bufferViewRequestCount, "bufferViewRequestCount", 1);
23016 
23017      print_uint32_t(obj->imageViewRequestCount, "imageViewRequestCount", 1);
23018 
23019      print_uint32_t(obj->layeredImageViewRequestCount, "layeredImageViewRequestCount", 1);
23020 
23021      print_uint32_t(obj->pipelineCacheRequestCount, "pipelineCacheRequestCount", 1);
23022 
23023      print_uint32_t(obj->pipelineLayoutRequestCount, "pipelineLayoutRequestCount", 1);
23024 
23025      print_uint32_t(obj->renderPassRequestCount, "renderPassRequestCount", 1);
23026 
23027      print_uint32_t(obj->graphicsPipelineRequestCount, "graphicsPipelineRequestCount", 1);
23028 
23029      print_uint32_t(obj->computePipelineRequestCount, "computePipelineRequestCount", 1);
23030 
23031      print_uint32_t(obj->descriptorSetLayoutRequestCount, "descriptorSetLayoutRequestCount", 1);
23032 
23033      print_uint32_t(obj->samplerRequestCount, "samplerRequestCount", 1);
23034 
23035      print_uint32_t(obj->descriptorPoolRequestCount, "descriptorPoolRequestCount", 1);
23036 
23037      print_uint32_t(obj->descriptorSetRequestCount, "descriptorSetRequestCount", 1);
23038 
23039      print_uint32_t(obj->framebufferRequestCount, "framebufferRequestCount", 1);
23040 
23041      print_uint32_t(obj->commandPoolRequestCount, "commandPoolRequestCount", 1);
23042 
23043      print_uint32_t(obj->samplerYcbcrConversionRequestCount, "samplerYcbcrConversionRequestCount", 1);
23044 
23045      print_uint32_t(obj->surfaceRequestCount, "surfaceRequestCount", 1);
23046 
23047      print_uint32_t(obj->swapchainRequestCount, "swapchainRequestCount", 1);
23048 
23049      print_uint32_t(obj->displayModeRequestCount, "displayModeRequestCount", 1);
23050 
23051      print_uint32_t(obj->subpassDescriptionRequestCount, "subpassDescriptionRequestCount", 1);
23052 
23053      print_uint32_t(obj->attachmentDescriptionRequestCount, "attachmentDescriptionRequestCount", 1);
23054 
23055      print_uint32_t(obj->descriptorSetLayoutBindingRequestCount, "descriptorSetLayoutBindingRequestCount", 1);
23056 
23057      print_uint32_t(obj->descriptorSetLayoutBindingLimit, "descriptorSetLayoutBindingLimit", 1);
23058 
23059      print_uint32_t(obj->maxImageViewMipLevels, "maxImageViewMipLevels", 1);
23060 
23061      print_uint32_t(obj->maxImageViewArrayLayers, "maxImageViewArrayLayers", 1);
23062 
23063      print_uint32_t(obj->maxLayeredImageViewMipLevels, "maxLayeredImageViewMipLevels", 1);
23064 
23065      print_uint32_t(obj->maxOcclusionQueriesPerPool, "maxOcclusionQueriesPerPool", 1);
23066 
23067      print_uint32_t(obj->maxPipelineStatisticsQueriesPerPool, "maxPipelineStatisticsQueriesPerPool", 1);
23068 
23069      print_uint32_t(obj->maxTimestampQueriesPerPool, "maxTimestampQueriesPerPool", 1);
23070 
23071      print_uint32_t(obj->maxImmutableSamplersPerDescriptorSetLayout, "maxImmutableSamplersPerDescriptorSetLayout", 0);
23072 
23073      INDENT(-4);
23074      PRINT_SPACE
23075      if (commaNeeded)
23076          _OUT << "}," << std::endl;
23077      else
23078          _OUT << "}" << std::endl;
23079 }
23080 
print_VkCommandPoolMemoryReservationCreateInfo(VkCommandPoolMemoryReservationCreateInfo obj,const std::string & s,bool commaNeeded=true)23081 static void print_VkCommandPoolMemoryReservationCreateInfo(VkCommandPoolMemoryReservationCreateInfo obj, const std::string& s, bool commaNeeded=true) {
23082      PRINT_SPACE
23083      _OUT << "{" << std::endl;
23084      INDENT(4);
23085 
23086      print_VkStructureType(obj.sType, "sType", 1);
23087 
23088       if (obj.pNext) {
23089          dumpPNextChain(obj.pNext);
23090       } else {
23091          PRINT_SPACE
23092          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23093      }
23094 
23095      print_VkDeviceSize(obj.commandPoolReservedSize, "commandPoolReservedSize", 1);
23096 
23097      print_uint32_t(obj.commandPoolMaxCommandBuffers, "commandPoolMaxCommandBuffers", 0);
23098 
23099      INDENT(-4);
23100      PRINT_SPACE
23101      if (commaNeeded)
23102          _OUT << "}," << std::endl;
23103      else
23104          _OUT << "}" << std::endl;
23105 }
print_VkCommandPoolMemoryReservationCreateInfo(const VkCommandPoolMemoryReservationCreateInfo * obj,const std::string & s,bool commaNeeded=true)23106 static void print_VkCommandPoolMemoryReservationCreateInfo(const VkCommandPoolMemoryReservationCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
23107      PRINT_SPACE
23108      _OUT << "{" << std::endl;
23109      INDENT(4);
23110 
23111      print_VkStructureType(obj->sType, "sType", 1);
23112 
23113       if (obj->pNext) {
23114          dumpPNextChain(obj->pNext);
23115       } else {
23116          PRINT_SPACE
23117          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23118      }
23119 
23120      print_VkDeviceSize(obj->commandPoolReservedSize, "commandPoolReservedSize", 1);
23121 
23122      print_uint32_t(obj->commandPoolMaxCommandBuffers, "commandPoolMaxCommandBuffers", 0);
23123 
23124      INDENT(-4);
23125      PRINT_SPACE
23126      if (commaNeeded)
23127          _OUT << "}," << std::endl;
23128      else
23129          _OUT << "}" << std::endl;
23130 }
23131 
print_VkCommandPoolMemoryConsumption(VkCommandPoolMemoryConsumption obj,const std::string & s,bool commaNeeded=true)23132 static void print_VkCommandPoolMemoryConsumption(VkCommandPoolMemoryConsumption obj, const std::string& s, bool commaNeeded=true) {
23133      PRINT_SPACE
23134      _OUT << "{" << std::endl;
23135      INDENT(4);
23136 
23137      print_VkStructureType(obj.sType, "sType", 1);
23138 
23139       if (obj.pNext) {
23140          dumpPNextChain(obj.pNext);
23141       } else {
23142          PRINT_SPACE
23143          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23144      }
23145 
23146      print_VkDeviceSize(obj.commandPoolAllocated, "commandPoolAllocated", 1);
23147 
23148      print_VkDeviceSize(obj.commandPoolReservedSize, "commandPoolReservedSize", 1);
23149 
23150      print_VkDeviceSize(obj.commandBufferAllocated, "commandBufferAllocated", 0);
23151 
23152      INDENT(-4);
23153      PRINT_SPACE
23154      if (commaNeeded)
23155          _OUT << "}," << std::endl;
23156      else
23157          _OUT << "}" << std::endl;
23158 }
print_VkCommandPoolMemoryConsumption(const VkCommandPoolMemoryConsumption * obj,const std::string & s,bool commaNeeded=true)23159 static void print_VkCommandPoolMemoryConsumption(const VkCommandPoolMemoryConsumption * obj, const std::string& s, bool commaNeeded=true) {
23160      PRINT_SPACE
23161      _OUT << "{" << std::endl;
23162      INDENT(4);
23163 
23164      print_VkStructureType(obj->sType, "sType", 1);
23165 
23166       if (obj->pNext) {
23167          dumpPNextChain(obj->pNext);
23168       } else {
23169          PRINT_SPACE
23170          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23171      }
23172 
23173      print_VkDeviceSize(obj->commandPoolAllocated, "commandPoolAllocated", 1);
23174 
23175      print_VkDeviceSize(obj->commandPoolReservedSize, "commandPoolReservedSize", 1);
23176 
23177      print_VkDeviceSize(obj->commandBufferAllocated, "commandBufferAllocated", 0);
23178 
23179      INDENT(-4);
23180      PRINT_SPACE
23181      if (commaNeeded)
23182          _OUT << "}," << std::endl;
23183      else
23184          _OUT << "}" << std::endl;
23185 }
23186 
print_VkFaultData(VkFaultData obj,const std::string & s,bool commaNeeded=true)23187 static void print_VkFaultData(VkFaultData obj, const std::string& s, bool commaNeeded=true) {
23188      PRINT_SPACE
23189      _OUT << "{" << std::endl;
23190      INDENT(4);
23191 
23192      print_VkStructureType(obj.sType, "sType", 1);
23193 
23194       if (obj.pNext) {
23195          dumpPNextChain(obj.pNext);
23196       } else {
23197          PRINT_SPACE
23198          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23199      }
23200 
23201      print_VkFaultLevel(obj.faultLevel, "faultLevel", 1);
23202 
23203      print_VkFaultType(obj.faultType, "faultType", 0);
23204 
23205      INDENT(-4);
23206      PRINT_SPACE
23207      if (commaNeeded)
23208          _OUT << "}," << std::endl;
23209      else
23210          _OUT << "}" << std::endl;
23211 }
print_VkFaultData(const VkFaultData * obj,const std::string & s,bool commaNeeded=true)23212 static void print_VkFaultData(const VkFaultData * obj, const std::string& s, bool commaNeeded=true) {
23213      PRINT_SPACE
23214      _OUT << "{" << std::endl;
23215      INDENT(4);
23216 
23217      print_VkStructureType(obj->sType, "sType", 1);
23218 
23219       if (obj->pNext) {
23220          dumpPNextChain(obj->pNext);
23221       } else {
23222          PRINT_SPACE
23223          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23224      }
23225 
23226      print_VkFaultLevel(obj->faultLevel, "faultLevel", 1);
23227 
23228      print_VkFaultType(obj->faultType, "faultType", 0);
23229 
23230      INDENT(-4);
23231      PRINT_SPACE
23232      if (commaNeeded)
23233          _OUT << "}," << std::endl;
23234      else
23235          _OUT << "}" << std::endl;
23236 }
23237 
print_VkFaultCallbackInfo(VkFaultCallbackInfo obj,const std::string & s,bool commaNeeded=true)23238 static void print_VkFaultCallbackInfo(VkFaultCallbackInfo obj, const std::string& s, bool commaNeeded=true) {
23239      PRINT_SPACE
23240      _OUT << "{" << std::endl;
23241      INDENT(4);
23242 
23243      print_VkStructureType(obj.sType, "sType", 1);
23244 
23245       if (obj.pNext) {
23246          dumpPNextChain(obj.pNext);
23247       } else {
23248          PRINT_SPACE
23249          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23250      }
23251 
23252      print_uint32_t(obj.faultCount, "faultCount", 1);
23253 
23254      PRINT_SPACE
23255      _OUT << "\"pFaults\": " << std::endl;
23256      if (obj.pFaults) {
23257          PRINT_SPACE
23258          _OUT << "[" << std::endl;
23259          for (unsigned int i = 0; i < obj.faultCount; i++) {
23260            if (i+1 == obj.faultCount)
23261                print_VkFaultData(obj.pFaults[i], "pFaults", 0);
23262            else
23263                print_VkFaultData(obj.pFaults[i], "pFaults", 1);
23264          }
23265          PRINT_SPACE
23266          _OUT << "]," << std::endl;
23267     }
23268      else
23269      {
23270          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
23271      }
23272 
23273      /** Note: Ignoring function pointer (PFN_vkFaultCallbackFunction). **/
23274 
23275      INDENT(-4);
23276      PRINT_SPACE
23277      if (commaNeeded)
23278          _OUT << "}," << std::endl;
23279      else
23280          _OUT << "}" << std::endl;
23281 }
print_VkFaultCallbackInfo(const VkFaultCallbackInfo * obj,const std::string & s,bool commaNeeded=true)23282 static void print_VkFaultCallbackInfo(const VkFaultCallbackInfo * obj, const std::string& s, bool commaNeeded=true) {
23283      PRINT_SPACE
23284      _OUT << "{" << std::endl;
23285      INDENT(4);
23286 
23287      print_VkStructureType(obj->sType, "sType", 1);
23288 
23289       if (obj->pNext) {
23290          dumpPNextChain(obj->pNext);
23291       } else {
23292          PRINT_SPACE
23293          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23294      }
23295 
23296      print_uint32_t(obj->faultCount, "faultCount", 1);
23297 
23298      PRINT_SPACE
23299      _OUT << "\"pFaults\": " << std::endl;
23300      if (obj->pFaults) {
23301          PRINT_SPACE
23302          _OUT << "[" << std::endl;
23303          for (unsigned int i = 0; i < obj->faultCount; i++) {
23304            if (i+1 == obj->faultCount)
23305                print_VkFaultData(obj->pFaults[i], "pFaults", 0);
23306            else
23307                print_VkFaultData(obj->pFaults[i], "pFaults", 1);
23308          }
23309          PRINT_SPACE
23310          _OUT << "]," << std::endl;
23311     }
23312      else
23313      {
23314          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
23315      }
23316 
23317      /** Note: Ignoring function pointer (PFN_vkFaultCallbackFunction). **/
23318 
23319      INDENT(-4);
23320      PRINT_SPACE
23321      if (commaNeeded)
23322          _OUT << "}," << std::endl;
23323      else
23324          _OUT << "}" << std::endl;
23325 }
23326 
print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj,const std::string & s,bool commaNeeded=true)23327 static void print_VkPipelineOfflineCreateInfo(VkPipelineOfflineCreateInfo obj, const std::string& s, bool commaNeeded=true) {
23328      PRINT_SPACE
23329      _OUT << "{" << std::endl;
23330      INDENT(4);
23331 
23332      print_VkStructureType(obj.sType, "sType", 1);
23333 
23334       if (obj.pNext) {
23335          dumpPNextChain(obj.pNext);
23336       } else {
23337          PRINT_SPACE
23338          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23339      }
23340 
23341      PRINT_SPACE
23342      _OUT << "\"pipelineIdentifier\":" << std::endl;
23343      PRINT_SPACE
23344        _OUT << "[" << std::endl;
23345        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
23346            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
23347            print_uint32_t((deUint32)obj.pipelineIdentifier[i], "", isCommaNeeded);
23348        }
23349        PRINT_SPACE
23350        _OUT << "]" << "," << std::endl;
23351 
23352      print_VkPipelineMatchControl(obj.matchControl, "matchControl", 1);
23353 
23354      print_VkDeviceSize(obj.poolEntrySize, "poolEntrySize", 0);
23355 
23356      INDENT(-4);
23357      PRINT_SPACE
23358      if (commaNeeded)
23359          _OUT << "}," << std::endl;
23360      else
23361          _OUT << "}" << std::endl;
23362 }
print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo * obj,const std::string & s,bool commaNeeded=true)23363 static void print_VkPipelineOfflineCreateInfo(const VkPipelineOfflineCreateInfo * obj, const std::string& s, bool commaNeeded=true) {
23364      PRINT_SPACE
23365      _OUT << "{" << std::endl;
23366      INDENT(4);
23367 
23368      print_VkStructureType(obj->sType, "sType", 1);
23369 
23370       if (obj->pNext) {
23371          dumpPNextChain(obj->pNext);
23372       } else {
23373          PRINT_SPACE
23374          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
23375      }
23376 
23377      PRINT_SPACE
23378      _OUT << "\"pipelineIdentifier\":" << std::endl;
23379      PRINT_SPACE
23380        _OUT << "[" << std::endl;
23381        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
23382            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
23383            print_uint32_t((deUint32)obj->pipelineIdentifier[i], "", isCommaNeeded);
23384        }
23385        PRINT_SPACE
23386        _OUT << "]" << "," << std::endl;
23387 
23388      print_VkPipelineMatchControl(obj->matchControl, "matchControl", 1);
23389 
23390      print_VkDeviceSize(obj->poolEntrySize, "poolEntrySize", 0);
23391 
23392      INDENT(-4);
23393      PRINT_SPACE
23394      if (commaNeeded)
23395          _OUT << "}," << std::endl;
23396      else
23397          _OUT << "}" << std::endl;
23398 }
23399 
print_VkPipelineCacheStageValidationIndexEntry(VkPipelineCacheStageValidationIndexEntry obj,const std::string & s,bool commaNeeded=true)23400 static void print_VkPipelineCacheStageValidationIndexEntry(VkPipelineCacheStageValidationIndexEntry obj, const std::string& s, bool commaNeeded=true) {
23401      PRINT_SPACE
23402      _OUT << "{" << std::endl;
23403      INDENT(4);
23404 
23405      print_uint64_t(obj.codeSize, "codeSize", 1);
23406 
23407      print_uint64_t(obj.codeOffset, "codeOffset", 0);
23408 
23409      INDENT(-4);
23410      PRINT_SPACE
23411      if (commaNeeded)
23412          _OUT << "}," << std::endl;
23413      else
23414          _OUT << "}" << std::endl;
23415 }
print_VkPipelineCacheStageValidationIndexEntry(const VkPipelineCacheStageValidationIndexEntry * obj,const std::string & s,bool commaNeeded=true)23416 static void print_VkPipelineCacheStageValidationIndexEntry(const VkPipelineCacheStageValidationIndexEntry * obj, const std::string& s, bool commaNeeded=true) {
23417      PRINT_SPACE
23418      _OUT << "{" << std::endl;
23419      INDENT(4);
23420 
23421      print_uint64_t(obj->codeSize, "codeSize", 1);
23422 
23423      print_uint64_t(obj->codeOffset, "codeOffset", 0);
23424 
23425      INDENT(-4);
23426      PRINT_SPACE
23427      if (commaNeeded)
23428          _OUT << "}," << std::endl;
23429      else
23430          _OUT << "}" << std::endl;
23431 }
23432 
print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyCriticalIndexEntry obj,const std::string & s,bool commaNeeded=true)23433 static void print_VkPipelineCacheSafetyCriticalIndexEntry(VkPipelineCacheSafetyCriticalIndexEntry obj, const std::string& s, bool commaNeeded=true) {
23434      PRINT_SPACE
23435      _OUT << "{" << std::endl;
23436      INDENT(4);
23437 
23438      PRINT_SPACE
23439      _OUT << "\"pipelineIdentifier\":" << std::endl;
23440      PRINT_SPACE
23441        _OUT << "[" << std::endl;
23442        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
23443            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
23444            print_uint32_t((deUint32)obj.pipelineIdentifier[i], "", isCommaNeeded);
23445        }
23446        PRINT_SPACE
23447        _OUT << "]" << "," << std::endl;
23448 
23449      print_uint64_t(obj.pipelineMemorySize, "pipelineMemorySize", 1);
23450 
23451      print_uint64_t(obj.jsonSize, "jsonSize", 1);
23452 
23453      print_uint64_t(obj.jsonOffset, "jsonOffset", 1);
23454 
23455      print_uint32_t(obj.stageIndexCount, "stageIndexCount", 1);
23456 
23457      print_uint32_t(obj.stageIndexStride, "stageIndexStride", 1);
23458 
23459      print_uint64_t(obj.stageIndexOffset, "stageIndexOffset", 0);
23460 
23461      INDENT(-4);
23462      PRINT_SPACE
23463      if (commaNeeded)
23464          _OUT << "}," << std::endl;
23465      else
23466          _OUT << "}" << std::endl;
23467 }
print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheSafetyCriticalIndexEntry * obj,const std::string & s,bool commaNeeded=true)23468 static void print_VkPipelineCacheSafetyCriticalIndexEntry(const VkPipelineCacheSafetyCriticalIndexEntry * obj, const std::string& s, bool commaNeeded=true) {
23469      PRINT_SPACE
23470      _OUT << "{" << std::endl;
23471      INDENT(4);
23472 
23473      PRINT_SPACE
23474      _OUT << "\"pipelineIdentifier\":" << std::endl;
23475      PRINT_SPACE
23476        _OUT << "[" << std::endl;
23477        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
23478            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
23479            print_uint32_t((deUint32)obj->pipelineIdentifier[i], "", isCommaNeeded);
23480        }
23481        PRINT_SPACE
23482        _OUT << "]" << "," << std::endl;
23483 
23484      print_uint64_t(obj->pipelineMemorySize, "pipelineMemorySize", 1);
23485 
23486      print_uint64_t(obj->jsonSize, "jsonSize", 1);
23487 
23488      print_uint64_t(obj->jsonOffset, "jsonOffset", 1);
23489 
23490      print_uint32_t(obj->stageIndexCount, "stageIndexCount", 1);
23491 
23492      print_uint32_t(obj->stageIndexStride, "stageIndexStride", 1);
23493 
23494      print_uint64_t(obj->stageIndexOffset, "stageIndexOffset", 0);
23495 
23496      INDENT(-4);
23497      PRINT_SPACE
23498      if (commaNeeded)
23499          _OUT << "}," << std::endl;
23500      else
23501          _OUT << "}" << std::endl;
23502 }
23503 
print_VkPipelineCacheHeaderVersionSafetyCriticalOne(VkPipelineCacheHeaderVersionSafetyCriticalOne obj,const std::string & s,bool commaNeeded=true)23504 static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(VkPipelineCacheHeaderVersionSafetyCriticalOne obj, const std::string& s, bool commaNeeded=true) {
23505      PRINT_SPACE
23506      _OUT << "{" << std::endl;
23507      INDENT(4);
23508 
23509      PRINT_SPACE
23510      _OUT << "\"headerVersionOne\": " << std::endl;
23511      {
23512            print_VkPipelineCacheHeaderVersionOne(obj.headerVersionOne, "headerVersionOne", 1);
23513      }
23514 
23515      print_VkPipelineCacheValidationVersion(obj.validationVersion, "validationVersion", 1);
23516 
23517      print_uint32_t(obj.implementationData, "implementationData", 1);
23518 
23519      print_uint32_t(obj.pipelineIndexCount, "pipelineIndexCount", 1);
23520 
23521      print_uint32_t(obj.pipelineIndexStride, "pipelineIndexStride", 1);
23522 
23523      print_uint64_t(obj.pipelineIndexOffset, "pipelineIndexOffset", 0);
23524 
23525      INDENT(-4);
23526      PRINT_SPACE
23527      if (commaNeeded)
23528          _OUT << "}," << std::endl;
23529      else
23530          _OUT << "}" << std::endl;
23531 }
print_VkPipelineCacheHeaderVersionSafetyCriticalOne(const VkPipelineCacheHeaderVersionSafetyCriticalOne * obj,const std::string & s,bool commaNeeded=true)23532 static void print_VkPipelineCacheHeaderVersionSafetyCriticalOne(const VkPipelineCacheHeaderVersionSafetyCriticalOne * obj, const std::string& s, bool commaNeeded=true) {
23533      PRINT_SPACE
23534      _OUT << "{" << std::endl;
23535      INDENT(4);
23536 
23537      PRINT_SPACE
23538      _OUT << "\"headerVersionOne\": " << std::endl;
23539      {
23540            print_VkPipelineCacheHeaderVersionOne(obj->headerVersionOne, "headerVersionOne", 1);
23541      }
23542 
23543      print_VkPipelineCacheValidationVersion(obj->validationVersion, "validationVersion", 1);
23544 
23545      print_uint32_t(obj->implementationData, "implementationData", 1);
23546 
23547      print_uint32_t(obj->pipelineIndexCount, "pipelineIndexCount", 1);
23548 
23549      print_uint32_t(obj->pipelineIndexStride, "pipelineIndexStride", 1);
23550 
23551      print_uint64_t(obj->pipelineIndexOffset, "pipelineIndexOffset", 0);
23552 
23553      INDENT(-4);
23554      PRINT_SPACE
23555      if (commaNeeded)
23556          _OUT << "}," << std::endl;
23557      else
23558          _OUT << "}" << std::endl;
23559 }
23560 
print_VkSurfaceKHR(VkSurfaceKHR obj,const std::string & str,bool commaNeeded=true)23561 static void print_VkSurfaceKHR(VkSurfaceKHR obj, const std::string& str, bool commaNeeded=true) {
23562      PRINT_SPACE
23563      if (commaNeeded)
23564          _OUT << "\"" << str << "\"" << "," << std::endl;
23565      else
23566          _OUT << "\"" << str << "\"" << std::endl;
23567 }
print_VkSurfaceKHR(const VkSurfaceKHR * obj,const std::string & str,bool commaNeeded=true)23568 static void print_VkSurfaceKHR(const VkSurfaceKHR * obj, const std::string& str, bool commaNeeded=true) {
23569      PRINT_SPACE
23570      if (commaNeeded)
23571          _OUT << "\"" << str << "\"" << "," << std::endl;
23572      else
23573          _OUT << "\"" << str << "\"" << std::endl;
23574 }
23575 
23576 static std::map<deUint64, std::string> VkSurfaceTransformFlagBitsKHR_map = {
23577     std::make_pair(1ULL << 0, "VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR"),
23578     std::make_pair(1ULL << 1, "VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR"),
23579     std::make_pair(1ULL << 2, "VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR"),
23580     std::make_pair(1ULL << 3, "VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR"),
23581     std::make_pair(1ULL << 4, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR"),
23582     std::make_pair(1ULL << 5, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR"),
23583     std::make_pair(1ULL << 6, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR"),
23584     std::make_pair(1ULL << 7, "VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR"),
23585     std::make_pair(1ULL << 8, "VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR"),
23586 };
print_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)23587 static void print_VkSurfaceTransformFlagBitsKHR(VkSurfaceTransformFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
23588      PRINT_SPACE
23589      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23590      if (commaNeeded)
23591          _OUT << "\"" <<  VkSurfaceTransformFlagBitsKHR_map[obj] << "\"," << std::endl;
23592      else
23593          _OUT << "\"" << VkSurfaceTransformFlagBitsKHR_map[obj] << "\"" << std::endl;
23594 }
print_VkSurfaceTransformFlagBitsKHR(const VkSurfaceTransformFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)23595 static void print_VkSurfaceTransformFlagBitsKHR(const VkSurfaceTransformFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
23596      PRINT_SPACE
23597      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23598      if (commaNeeded)
23599          _OUT << "\"" <<  VkSurfaceTransformFlagBitsKHR_map[*obj] << "\"," << std::endl;
23600      else
23601          _OUT << "\"" << VkSurfaceTransformFlagBitsKHR_map[*obj] << "\"" << std::endl;
23602 }
23603 
23604 static std::map<deUint64, std::string> VkPresentModeKHR_map = {
23605     std::make_pair(0, "VK_PRESENT_MODE_IMMEDIATE_KHR"),
23606     std::make_pair(1, "VK_PRESENT_MODE_MAILBOX_KHR"),
23607     std::make_pair(2, "VK_PRESENT_MODE_FIFO_KHR"),
23608     std::make_pair(3, "VK_PRESENT_MODE_FIFO_RELAXED_KHR"),
23609     std::make_pair(1000111000, "VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR"),
23610     std::make_pair(1000111001, "VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR"),
23611 };
print_VkPresentModeKHR(VkPresentModeKHR obj,const std::string & str,bool commaNeeded=true)23612 static void print_VkPresentModeKHR(VkPresentModeKHR obj, const std::string& str, bool commaNeeded=true) {
23613      PRINT_SPACE
23614      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23615      if (commaNeeded)
23616          _OUT << "\"" <<  VkPresentModeKHR_map[obj] << "\"," << std::endl;
23617      else
23618          _OUT << "\"" << VkPresentModeKHR_map[obj] << "\"" << std::endl;
23619 }
print_VkPresentModeKHR(const VkPresentModeKHR * obj,const std::string & str,bool commaNeeded=true)23620 static void print_VkPresentModeKHR(const VkPresentModeKHR * obj, const std::string& str, bool commaNeeded=true) {
23621      PRINT_SPACE
23622      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23623      if (commaNeeded)
23624          _OUT << "\"" <<  VkPresentModeKHR_map[*obj] << "\"," << std::endl;
23625      else
23626          _OUT << "\"" << VkPresentModeKHR_map[*obj] << "\"" << std::endl;
23627 }
23628 
23629 static std::map<deUint64, std::string> VkColorSpaceKHR_map = {
23630     std::make_pair(0, "VK_COLOR_SPACE_SRGB_NONLINEAR_KHR"),
23631     std::make_pair(1000104001, "VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT"),
23632     std::make_pair(1000104002, "VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT"),
23633     std::make_pair(1000104003, "VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT"),
23634     std::make_pair(1000104004, "VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT"),
23635     std::make_pair(1000104005, "VK_COLOR_SPACE_BT709_LINEAR_EXT"),
23636     std::make_pair(1000104006, "VK_COLOR_SPACE_BT709_NONLINEAR_EXT"),
23637     std::make_pair(1000104007, "VK_COLOR_SPACE_BT2020_LINEAR_EXT"),
23638     std::make_pair(1000104008, "VK_COLOR_SPACE_HDR10_ST2084_EXT"),
23639     std::make_pair(1000104009, "VK_COLOR_SPACE_DOLBYVISION_EXT"),
23640     std::make_pair(1000104010, "VK_COLOR_SPACE_HDR10_HLG_EXT"),
23641     std::make_pair(1000104011, "VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT"),
23642     std::make_pair(1000104012, "VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT"),
23643     std::make_pair(1000104013, "VK_COLOR_SPACE_PASS_THROUGH_EXT"),
23644     std::make_pair(1000104014, "VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT"),
23645     std::make_pair(1000213000, "VK_COLOR_SPACE_DISPLAY_NATIVE_AMD"),
23646 };
print_VkColorSpaceKHR(VkColorSpaceKHR obj,const std::string & str,bool commaNeeded=true)23647 static void print_VkColorSpaceKHR(VkColorSpaceKHR obj, const std::string& str, bool commaNeeded=true) {
23648      PRINT_SPACE
23649      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23650      if (commaNeeded)
23651          _OUT << "\"" <<  VkColorSpaceKHR_map[obj] << "\"," << std::endl;
23652      else
23653          _OUT << "\"" << VkColorSpaceKHR_map[obj] << "\"" << std::endl;
23654 }
print_VkColorSpaceKHR(const VkColorSpaceKHR * obj,const std::string & str,bool commaNeeded=true)23655 static void print_VkColorSpaceKHR(const VkColorSpaceKHR * obj, const std::string& str, bool commaNeeded=true) {
23656      PRINT_SPACE
23657      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23658      if (commaNeeded)
23659          _OUT << "\"" <<  VkColorSpaceKHR_map[*obj] << "\"," << std::endl;
23660      else
23661          _OUT << "\"" << VkColorSpaceKHR_map[*obj] << "\"" << std::endl;
23662 }
23663 
23664 static std::map<deUint64, std::string> VkCompositeAlphaFlagBitsKHR_map = {
23665     std::make_pair(1ULL << 0, "VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR"),
23666     std::make_pair(1ULL << 1, "VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR"),
23667     std::make_pair(1ULL << 2, "VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR"),
23668     std::make_pair(1ULL << 3, "VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR"),
23669 };
print_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)23670 static void print_VkCompositeAlphaFlagBitsKHR(VkCompositeAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
23671      PRINT_SPACE
23672      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23673      if (commaNeeded)
23674          _OUT << "\"" <<  VkCompositeAlphaFlagBitsKHR_map[obj] << "\"," << std::endl;
23675      else
23676          _OUT << "\"" << VkCompositeAlphaFlagBitsKHR_map[obj] << "\"" << std::endl;
23677 }
print_VkCompositeAlphaFlagBitsKHR(const VkCompositeAlphaFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)23678 static void print_VkCompositeAlphaFlagBitsKHR(const VkCompositeAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
23679      PRINT_SPACE
23680      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23681      if (commaNeeded)
23682          _OUT << "\"" <<  VkCompositeAlphaFlagBitsKHR_map[*obj] << "\"," << std::endl;
23683      else
23684          _OUT << "\"" << VkCompositeAlphaFlagBitsKHR_map[*obj] << "\"" << std::endl;
23685 }
23686 
print_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR obj,const std::string & str,bool commaNeeded=true)23687 static void print_VkCompositeAlphaFlagsKHR(VkCompositeAlphaFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
23688      PRINT_SPACE
23689      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23690      const int max_bits = 64; // We don't expect the number to be larger.
23691      std::bitset<max_bits> b(obj);
23692      _OUT << "\"";
23693      if (obj == 0) _OUT << "0";
23694      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
23695          if (b[i] == 1) {
23696              bitCount++;
23697              if (bitCount < b.count())
23698                  _OUT << VkCompositeAlphaFlagBitsKHR_map[1ULL<<i] << " | ";
23699              else
23700                  _OUT << VkCompositeAlphaFlagBitsKHR_map[1ULL<<i];
23701          }
23702      }
23703      if (commaNeeded)
23704        _OUT << "\"" << ",";
23705      else
23706        _OUT << "\""<< "";
23707      _OUT << std::endl;
23708 }
print_VkCompositeAlphaFlagsKHR(const VkCompositeAlphaFlagsKHR * obj,const std::string & str,bool commaNeeded=true)23709 static void print_VkCompositeAlphaFlagsKHR(const VkCompositeAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
23710      PRINT_SPACE
23711      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23712      const int max_bits = 64; // We don't expect the number to be larger.
23713      std::bitset<max_bits> b(obj);
23714      _OUT << "\"";
23715      if (obj == 0) _OUT << "0";
23716      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
23717          if (b[i] == 1) {
23718              bitCount++;
23719              if (bitCount < b.count())
23720                  _OUT << VkCompositeAlphaFlagBitsKHR_map[1ULL<<i] << " | ";
23721              else
23722                  _OUT << VkCompositeAlphaFlagBitsKHR_map[1ULL<<i];
23723          }
23724      }
23725      if (commaNeeded)
23726        _OUT << "\"" << ",";
23727      else
23728        _OUT << "\""<< "";
23729      _OUT << std::endl;
23730 }
23731 
print_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR obj,const std::string & str,bool commaNeeded=true)23732 static void print_VkSurfaceTransformFlagsKHR(VkSurfaceTransformFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
23733      PRINT_SPACE
23734      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23735      const int max_bits = 64; // We don't expect the number to be larger.
23736      std::bitset<max_bits> b(obj);
23737      _OUT << "\"";
23738      if (obj == 0) _OUT << "0";
23739      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
23740          if (b[i] == 1) {
23741              bitCount++;
23742              if (bitCount < b.count())
23743                  _OUT << VkSurfaceTransformFlagBitsKHR_map[1ULL<<i] << " | ";
23744              else
23745                  _OUT << VkSurfaceTransformFlagBitsKHR_map[1ULL<<i];
23746          }
23747      }
23748      if (commaNeeded)
23749        _OUT << "\"" << ",";
23750      else
23751        _OUT << "\""<< "";
23752      _OUT << std::endl;
23753 }
print_VkSurfaceTransformFlagsKHR(const VkSurfaceTransformFlagsKHR * obj,const std::string & str,bool commaNeeded=true)23754 static void print_VkSurfaceTransformFlagsKHR(const VkSurfaceTransformFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
23755      PRINT_SPACE
23756      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23757      const int max_bits = 64; // We don't expect the number to be larger.
23758      std::bitset<max_bits> b(obj);
23759      _OUT << "\"";
23760      if (obj == 0) _OUT << "0";
23761      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
23762          if (b[i] == 1) {
23763              bitCount++;
23764              if (bitCount < b.count())
23765                  _OUT << VkSurfaceTransformFlagBitsKHR_map[1ULL<<i] << " | ";
23766              else
23767                  _OUT << VkSurfaceTransformFlagBitsKHR_map[1ULL<<i];
23768          }
23769      }
23770      if (commaNeeded)
23771        _OUT << "\"" << ",";
23772      else
23773        _OUT << "\""<< "";
23774      _OUT << std::endl;
23775 }
23776 
print_VkSurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR obj,const std::string & s,bool commaNeeded=true)23777 static void print_VkSurfaceCapabilitiesKHR(VkSurfaceCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
23778      PRINT_SPACE
23779      _OUT << "{" << std::endl;
23780      INDENT(4);
23781 
23782      print_uint32_t(obj.minImageCount, "minImageCount", 1);
23783 
23784      print_uint32_t(obj.maxImageCount, "maxImageCount", 1);
23785 
23786      PRINT_SPACE
23787      _OUT << "\"currentExtent\": " << std::endl;
23788      {
23789            print_VkExtent2D(obj.currentExtent, "currentExtent", 1);
23790      }
23791 
23792      PRINT_SPACE
23793      _OUT << "\"minImageExtent\": " << std::endl;
23794      {
23795            print_VkExtent2D(obj.minImageExtent, "minImageExtent", 1);
23796      }
23797 
23798      PRINT_SPACE
23799      _OUT << "\"maxImageExtent\": " << std::endl;
23800      {
23801            print_VkExtent2D(obj.maxImageExtent, "maxImageExtent", 1);
23802      }
23803 
23804      print_uint32_t(obj.maxImageArrayLayers, "maxImageArrayLayers", 1);
23805 
23806      print_VkSurfaceTransformFlagsKHR(obj.supportedTransforms, "supportedTransforms", 1);
23807 
23808      print_VkSurfaceTransformFlagBitsKHR(obj.currentTransform, "currentTransform", 1);
23809 
23810      print_VkCompositeAlphaFlagsKHR(obj.supportedCompositeAlpha, "supportedCompositeAlpha", 1);
23811 
23812      print_VkImageUsageFlags(obj.supportedUsageFlags, "supportedUsageFlags", 0);
23813 
23814      INDENT(-4);
23815      PRINT_SPACE
23816      if (commaNeeded)
23817          _OUT << "}," << std::endl;
23818      else
23819          _OUT << "}" << std::endl;
23820 }
print_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * obj,const std::string & s,bool commaNeeded=true)23821 static void print_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
23822      PRINT_SPACE
23823      _OUT << "{" << std::endl;
23824      INDENT(4);
23825 
23826      print_uint32_t(obj->minImageCount, "minImageCount", 1);
23827 
23828      print_uint32_t(obj->maxImageCount, "maxImageCount", 1);
23829 
23830      PRINT_SPACE
23831      _OUT << "\"currentExtent\": " << std::endl;
23832      {
23833            print_VkExtent2D(obj->currentExtent, "currentExtent", 1);
23834      }
23835 
23836      PRINT_SPACE
23837      _OUT << "\"minImageExtent\": " << std::endl;
23838      {
23839            print_VkExtent2D(obj->minImageExtent, "minImageExtent", 1);
23840      }
23841 
23842      PRINT_SPACE
23843      _OUT << "\"maxImageExtent\": " << std::endl;
23844      {
23845            print_VkExtent2D(obj->maxImageExtent, "maxImageExtent", 1);
23846      }
23847 
23848      print_uint32_t(obj->maxImageArrayLayers, "maxImageArrayLayers", 1);
23849 
23850      print_VkSurfaceTransformFlagsKHR(obj->supportedTransforms, "supportedTransforms", 1);
23851 
23852      print_VkSurfaceTransformFlagBitsKHR(obj->currentTransform, "currentTransform", 1);
23853 
23854      print_VkCompositeAlphaFlagsKHR(obj->supportedCompositeAlpha, "supportedCompositeAlpha", 1);
23855 
23856      print_VkImageUsageFlags(obj->supportedUsageFlags, "supportedUsageFlags", 0);
23857 
23858      INDENT(-4);
23859      PRINT_SPACE
23860      if (commaNeeded)
23861          _OUT << "}," << std::endl;
23862      else
23863          _OUT << "}" << std::endl;
23864 }
23865 
print_VkSurfaceFormatKHR(VkSurfaceFormatKHR obj,const std::string & s,bool commaNeeded=true)23866 static void print_VkSurfaceFormatKHR(VkSurfaceFormatKHR obj, const std::string& s, bool commaNeeded=true) {
23867      PRINT_SPACE
23868      _OUT << "{" << std::endl;
23869      INDENT(4);
23870 
23871      print_VkFormat(obj.format, "format", 1);
23872 
23873      print_VkColorSpaceKHR(obj.colorSpace, "colorSpace", 0);
23874 
23875      INDENT(-4);
23876      PRINT_SPACE
23877      if (commaNeeded)
23878          _OUT << "}," << std::endl;
23879      else
23880          _OUT << "}" << std::endl;
23881 }
print_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * obj,const std::string & s,bool commaNeeded=true)23882 static void print_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * obj, const std::string& s, bool commaNeeded=true) {
23883      PRINT_SPACE
23884      _OUT << "{" << std::endl;
23885      INDENT(4);
23886 
23887      print_VkFormat(obj->format, "format", 1);
23888 
23889      print_VkColorSpaceKHR(obj->colorSpace, "colorSpace", 0);
23890 
23891      INDENT(-4);
23892      PRINT_SPACE
23893      if (commaNeeded)
23894          _OUT << "}," << std::endl;
23895      else
23896          _OUT << "}" << std::endl;
23897 }
23898 
print_VkSwapchainKHR(VkSwapchainKHR obj,const std::string & str,bool commaNeeded=true)23899 static void print_VkSwapchainKHR(VkSwapchainKHR obj, const std::string& str, bool commaNeeded=true) {
23900      PRINT_SPACE
23901      if (commaNeeded)
23902          _OUT << "\"" << str << "\"" << "," << std::endl;
23903      else
23904          _OUT << "\"" << str << "\"" << std::endl;
23905 }
print_VkSwapchainKHR(const VkSwapchainKHR * obj,const std::string & str,bool commaNeeded=true)23906 static void print_VkSwapchainKHR(const VkSwapchainKHR * obj, const std::string& str, bool commaNeeded=true) {
23907      PRINT_SPACE
23908      if (commaNeeded)
23909          _OUT << "\"" << str << "\"" << "," << std::endl;
23910      else
23911          _OUT << "\"" << str << "\"" << std::endl;
23912 }
23913 
23914 static std::map<deUint64, std::string> VkSwapchainCreateFlagBitsKHR_map = {
23915     std::make_pair(1ULL << 0, "VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR"),
23916     std::make_pair(1ULL << 1, "VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR"),
23917     std::make_pair(1ULL << 0, "VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR"),
23918     std::make_pair(1ULL << 2, "VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR"),
23919 };
print_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)23920 static void print_VkSwapchainCreateFlagBitsKHR(VkSwapchainCreateFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
23921      PRINT_SPACE
23922      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23923      if (commaNeeded)
23924          _OUT << "\"" <<  VkSwapchainCreateFlagBitsKHR_map[obj] << "\"," << std::endl;
23925      else
23926          _OUT << "\"" << VkSwapchainCreateFlagBitsKHR_map[obj] << "\"" << std::endl;
23927 }
print_VkSwapchainCreateFlagBitsKHR(const VkSwapchainCreateFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)23928 static void print_VkSwapchainCreateFlagBitsKHR(const VkSwapchainCreateFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
23929      PRINT_SPACE
23930      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23931      if (commaNeeded)
23932          _OUT << "\"" <<  VkSwapchainCreateFlagBitsKHR_map[*obj] << "\"," << std::endl;
23933      else
23934          _OUT << "\"" << VkSwapchainCreateFlagBitsKHR_map[*obj] << "\"" << std::endl;
23935 }
23936 
23937 static std::map<deUint64, std::string> VkDeviceGroupPresentModeFlagBitsKHR_map = {
23938     std::make_pair(1ULL << 0, "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR"),
23939     std::make_pair(1ULL << 1, "VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR"),
23940     std::make_pair(1ULL << 2, "VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR"),
23941     std::make_pair(1ULL << 3, "VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR"),
23942 };
print_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)23943 static void print_VkDeviceGroupPresentModeFlagBitsKHR(VkDeviceGroupPresentModeFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
23944      PRINT_SPACE
23945      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23946      if (commaNeeded)
23947          _OUT << "\"" <<  VkDeviceGroupPresentModeFlagBitsKHR_map[obj] << "\"," << std::endl;
23948      else
23949          _OUT << "\"" << VkDeviceGroupPresentModeFlagBitsKHR_map[obj] << "\"" << std::endl;
23950 }
print_VkDeviceGroupPresentModeFlagBitsKHR(const VkDeviceGroupPresentModeFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)23951 static void print_VkDeviceGroupPresentModeFlagBitsKHR(const VkDeviceGroupPresentModeFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
23952      PRINT_SPACE
23953      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23954      if (commaNeeded)
23955          _OUT << "\"" <<  VkDeviceGroupPresentModeFlagBitsKHR_map[*obj] << "\"," << std::endl;
23956      else
23957          _OUT << "\"" << VkDeviceGroupPresentModeFlagBitsKHR_map[*obj] << "\"" << std::endl;
23958 }
23959 
print_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR obj,const std::string & str,bool commaNeeded=true)23960 static void print_VkSwapchainCreateFlagsKHR(VkSwapchainCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
23961      PRINT_SPACE
23962      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23963      const int max_bits = 64; // We don't expect the number to be larger.
23964      std::bitset<max_bits> b(obj);
23965      _OUT << "\"";
23966      if (obj == 0) _OUT << "0";
23967      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
23968          if (b[i] == 1) {
23969              bitCount++;
23970              if (bitCount < b.count())
23971                  _OUT << VkSwapchainCreateFlagBitsKHR_map[1ULL<<i] << " | ";
23972              else
23973                  _OUT << VkSwapchainCreateFlagBitsKHR_map[1ULL<<i];
23974          }
23975      }
23976      if (commaNeeded)
23977        _OUT << "\"" << ",";
23978      else
23979        _OUT << "\""<< "";
23980      _OUT << std::endl;
23981 }
print_VkSwapchainCreateFlagsKHR(const VkSwapchainCreateFlagsKHR * obj,const std::string & str,bool commaNeeded=true)23982 static void print_VkSwapchainCreateFlagsKHR(const VkSwapchainCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
23983      PRINT_SPACE
23984      if (str != "") _OUT << "\"" << str << "\"" << " : ";
23985      const int max_bits = 64; // We don't expect the number to be larger.
23986      std::bitset<max_bits> b(obj);
23987      _OUT << "\"";
23988      if (obj == 0) _OUT << "0";
23989      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
23990          if (b[i] == 1) {
23991              bitCount++;
23992              if (bitCount < b.count())
23993                  _OUT << VkSwapchainCreateFlagBitsKHR_map[1ULL<<i] << " | ";
23994              else
23995                  _OUT << VkSwapchainCreateFlagBitsKHR_map[1ULL<<i];
23996          }
23997      }
23998      if (commaNeeded)
23999        _OUT << "\"" << ",";
24000      else
24001        _OUT << "\""<< "";
24002      _OUT << std::endl;
24003 }
24004 
print_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR obj,const std::string & str,bool commaNeeded=true)24005 static void print_VkDeviceGroupPresentModeFlagsKHR(VkDeviceGroupPresentModeFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
24006      PRINT_SPACE
24007      if (str != "") _OUT << "\"" << str << "\"" << " : ";
24008      const int max_bits = 64; // We don't expect the number to be larger.
24009      std::bitset<max_bits> b(obj);
24010      _OUT << "\"";
24011      if (obj == 0) _OUT << "0";
24012      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
24013          if (b[i] == 1) {
24014              bitCount++;
24015              if (bitCount < b.count())
24016                  _OUT << VkDeviceGroupPresentModeFlagBitsKHR_map[1ULL<<i] << " | ";
24017              else
24018                  _OUT << VkDeviceGroupPresentModeFlagBitsKHR_map[1ULL<<i];
24019          }
24020      }
24021      if (commaNeeded)
24022        _OUT << "\"" << ",";
24023      else
24024        _OUT << "\""<< "";
24025      _OUT << std::endl;
24026 }
print_VkDeviceGroupPresentModeFlagsKHR(const VkDeviceGroupPresentModeFlagsKHR * obj,const std::string & str,bool commaNeeded=true)24027 static void print_VkDeviceGroupPresentModeFlagsKHR(const VkDeviceGroupPresentModeFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
24028      PRINT_SPACE
24029      if (str != "") _OUT << "\"" << str << "\"" << " : ";
24030      const int max_bits = 64; // We don't expect the number to be larger.
24031      std::bitset<max_bits> b(obj);
24032      _OUT << "\"";
24033      if (obj == 0) _OUT << "0";
24034      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
24035          if (b[i] == 1) {
24036              bitCount++;
24037              if (bitCount < b.count())
24038                  _OUT << VkDeviceGroupPresentModeFlagBitsKHR_map[1ULL<<i] << " | ";
24039              else
24040                  _OUT << VkDeviceGroupPresentModeFlagBitsKHR_map[1ULL<<i];
24041          }
24042      }
24043      if (commaNeeded)
24044        _OUT << "\"" << ",";
24045      else
24046        _OUT << "\""<< "";
24047      _OUT << std::endl;
24048 }
24049 
print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)24050 static void print_VkSwapchainCreateInfoKHR(VkSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24051      PRINT_SPACE
24052      _OUT << "{" << std::endl;
24053      INDENT(4);
24054 
24055      print_VkStructureType(obj.sType, "sType", 1);
24056 
24057       if (obj.pNext) {
24058          dumpPNextChain(obj.pNext);
24059       } else {
24060          PRINT_SPACE
24061          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24062      }
24063 
24064      print_VkSwapchainCreateFlagsKHR(obj.flags, "flags", 1);
24065 
24066      // CTS : required value
24067      PRINT_SPACE    _OUT << "\"" << "surface" << "\"" << " : " << "\"" << "\"," << std::endl;
24068 
24069      print_uint32_t(obj.minImageCount, "minImageCount", 1);
24070 
24071      print_VkFormat(obj.imageFormat, "imageFormat", 1);
24072 
24073      print_VkColorSpaceKHR(obj.imageColorSpace, "imageColorSpace", 1);
24074 
24075      PRINT_SPACE
24076      _OUT << "\"imageExtent\": " << std::endl;
24077      {
24078            print_VkExtent2D(obj.imageExtent, "imageExtent", 1);
24079      }
24080 
24081      print_uint32_t(obj.imageArrayLayers, "imageArrayLayers", 1);
24082 
24083      print_VkImageUsageFlags(obj.imageUsage, "imageUsage", 1);
24084 
24085      print_VkSharingMode(obj.imageSharingMode, "imageSharingMode", 1);
24086 
24087      print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
24088 
24089      PRINT_SPACE
24090      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
24091      PRINT_SPACE
24092      if (obj.pQueueFamilyIndices) {
24093        _OUT << "[" << std::endl;
24094        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
24095            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
24096            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
24097        }
24098        PRINT_SPACE
24099        _OUT << "]" << "," << std::endl;
24100      } else {
24101        _OUT << "\"NULL\"" << "," << std::endl;
24102      }
24103 
24104      print_VkSurfaceTransformFlagBitsKHR(obj.preTransform, "preTransform", 1);
24105 
24106      print_VkCompositeAlphaFlagBitsKHR(obj.compositeAlpha, "compositeAlpha", 1);
24107 
24108      print_VkPresentModeKHR(obj.presentMode, "presentMode", 1);
24109 
24110      print_VkBool32(obj.clipped, "clipped", 1);
24111 
24112      // CTS : required value
24113      PRINT_SPACE    _OUT << "\"" << "oldSwapchain" << "\"" << " : " << "\"" << "\"" << std::endl;
24114 
24115      INDENT(-4);
24116      PRINT_SPACE
24117      if (commaNeeded)
24118          _OUT << "}," << std::endl;
24119      else
24120          _OUT << "}" << std::endl;
24121 }
print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)24122 static void print_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24123      PRINT_SPACE
24124      _OUT << "{" << std::endl;
24125      INDENT(4);
24126 
24127      print_VkStructureType(obj->sType, "sType", 1);
24128 
24129       if (obj->pNext) {
24130          dumpPNextChain(obj->pNext);
24131       } else {
24132          PRINT_SPACE
24133          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24134      }
24135 
24136      print_VkSwapchainCreateFlagsKHR(obj->flags, "flags", 1);
24137 
24138      // CTS : required value
24139      PRINT_SPACE    _OUT << "\"" << "surface" << "\"" << " : " << "\"" << "\"," << std::endl;
24140 
24141      print_uint32_t(obj->minImageCount, "minImageCount", 1);
24142 
24143      print_VkFormat(obj->imageFormat, "imageFormat", 1);
24144 
24145      print_VkColorSpaceKHR(obj->imageColorSpace, "imageColorSpace", 1);
24146 
24147      PRINT_SPACE
24148      _OUT << "\"imageExtent\": " << std::endl;
24149      {
24150            print_VkExtent2D(obj->imageExtent, "imageExtent", 1);
24151      }
24152 
24153      print_uint32_t(obj->imageArrayLayers, "imageArrayLayers", 1);
24154 
24155      print_VkImageUsageFlags(obj->imageUsage, "imageUsage", 1);
24156 
24157      print_VkSharingMode(obj->imageSharingMode, "imageSharingMode", 1);
24158 
24159      print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
24160 
24161      PRINT_SPACE
24162      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
24163      PRINT_SPACE
24164      if (obj->pQueueFamilyIndices) {
24165        _OUT << "[" << std::endl;
24166        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
24167            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
24168            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
24169        }
24170        PRINT_SPACE
24171        _OUT << "]" << "," << std::endl;
24172      } else {
24173        _OUT << "\"NULL\"" << "," << std::endl;
24174      }
24175 
24176      print_VkSurfaceTransformFlagBitsKHR(obj->preTransform, "preTransform", 1);
24177 
24178      print_VkCompositeAlphaFlagBitsKHR(obj->compositeAlpha, "compositeAlpha", 1);
24179 
24180      print_VkPresentModeKHR(obj->presentMode, "presentMode", 1);
24181 
24182      print_VkBool32(obj->clipped, "clipped", 1);
24183 
24184      // CTS : required value
24185      PRINT_SPACE    _OUT << "\"" << "oldSwapchain" << "\"" << " : " << "\"" << "\"" << std::endl;
24186 
24187      INDENT(-4);
24188      PRINT_SPACE
24189      if (commaNeeded)
24190          _OUT << "}," << std::endl;
24191      else
24192          _OUT << "}" << std::endl;
24193 }
24194 
print_VkPresentInfoKHR(VkPresentInfoKHR obj,const std::string & s,bool commaNeeded=true)24195 static void print_VkPresentInfoKHR(VkPresentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24196      PRINT_SPACE
24197      _OUT << "{" << std::endl;
24198      INDENT(4);
24199 
24200      print_VkStructureType(obj.sType, "sType", 1);
24201 
24202       if (obj.pNext) {
24203          dumpPNextChain(obj.pNext);
24204       } else {
24205          PRINT_SPACE
24206          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24207      }
24208 
24209      print_uint32_t(obj.waitSemaphoreCount, "waitSemaphoreCount", 1);
24210 
24211      PRINT_SPACE
24212      _OUT << "\"pWaitSemaphores\":" << std::endl;
24213      PRINT_SPACE
24214      if (obj.pWaitSemaphores) {
24215        _OUT << "[" << std::endl;
24216        for (unsigned int i = 0; i < obj.waitSemaphoreCount; i++) {
24217            std:: stringstream tmp;
24218            tmp << "pWaitSemaphores" << "_" << i;
24219            bool isCommaNeeded = (i+1) != obj.waitSemaphoreCount;
24220            print_VkSemaphore(obj.pWaitSemaphores[i], tmp.str(), isCommaNeeded);
24221        }
24222        PRINT_SPACE
24223        _OUT << "]" << "," << std::endl;
24224      } else {
24225        _OUT << "\"NULL\"" << "," << std::endl;
24226      }
24227 
24228      print_uint32_t(obj.swapchainCount, "swapchainCount", 1);
24229 
24230      PRINT_SPACE
24231      _OUT << "\"pSwapchains\":" << std::endl;
24232      PRINT_SPACE
24233      if (obj.pSwapchains) {
24234        _OUT << "[" << std::endl;
24235        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
24236            std:: stringstream tmp;
24237            tmp << "pSwapchains" << "_" << i;
24238            bool isCommaNeeded = (i+1) != obj.swapchainCount;
24239            print_VkSwapchainKHR(obj.pSwapchains[i], tmp.str(), isCommaNeeded);
24240        }
24241        PRINT_SPACE
24242        _OUT << "]" << "," << std::endl;
24243      } else {
24244        _OUT << "\"NULL\"" << "," << std::endl;
24245      }
24246 
24247      PRINT_SPACE
24248      _OUT << "\"pImageIndices\":" << std::endl;
24249      PRINT_SPACE
24250      if (obj.pImageIndices) {
24251        _OUT << "[" << std::endl;
24252        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
24253            bool isCommaNeeded = (i+1) != obj.swapchainCount;
24254            print_uint32_t(obj.pImageIndices[i], "", isCommaNeeded);
24255        }
24256        PRINT_SPACE
24257        _OUT << "]" << "," << std::endl;
24258      } else {
24259        _OUT << "\"NULL\"" << "," << std::endl;
24260      }
24261 
24262      PRINT_SPACE
24263      _OUT << "\"pResults\":" << std::endl;
24264      PRINT_SPACE
24265      if (obj.pResults) {
24266        _OUT << "[" << std::endl;
24267        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
24268            bool isCommaNeeded = (i+1) != obj.swapchainCount;
24269            print_VkResult(obj.pResults[i], "", isCommaNeeded);
24270        }
24271        PRINT_SPACE
24272        _OUT << "]" << "" << std::endl;
24273      } else {
24274        _OUT << "\"NULL\"" << "" << std::endl;
24275      }
24276 
24277      INDENT(-4);
24278      PRINT_SPACE
24279      if (commaNeeded)
24280          _OUT << "}," << std::endl;
24281      else
24282          _OUT << "}" << std::endl;
24283 }
print_VkPresentInfoKHR(const VkPresentInfoKHR * obj,const std::string & s,bool commaNeeded=true)24284 static void print_VkPresentInfoKHR(const VkPresentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24285      PRINT_SPACE
24286      _OUT << "{" << std::endl;
24287      INDENT(4);
24288 
24289      print_VkStructureType(obj->sType, "sType", 1);
24290 
24291       if (obj->pNext) {
24292          dumpPNextChain(obj->pNext);
24293       } else {
24294          PRINT_SPACE
24295          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24296      }
24297 
24298      print_uint32_t(obj->waitSemaphoreCount, "waitSemaphoreCount", 1);
24299 
24300      PRINT_SPACE
24301      _OUT << "\"pWaitSemaphores\":" << std::endl;
24302      PRINT_SPACE
24303      if (obj->pWaitSemaphores) {
24304        _OUT << "[" << std::endl;
24305        for (unsigned int i = 0; i < obj->waitSemaphoreCount; i++) {
24306            std:: stringstream tmp;
24307            tmp << "pWaitSemaphores" << "_" << i;
24308            bool isCommaNeeded = (i+1) != obj->waitSemaphoreCount;
24309            print_VkSemaphore(obj->pWaitSemaphores[i], tmp.str(), isCommaNeeded);
24310        }
24311        PRINT_SPACE
24312        _OUT << "]" << "," << std::endl;
24313      } else {
24314        _OUT << "\"NULL\"" << "," << std::endl;
24315      }
24316 
24317      print_uint32_t(obj->swapchainCount, "swapchainCount", 1);
24318 
24319      PRINT_SPACE
24320      _OUT << "\"pSwapchains\":" << std::endl;
24321      PRINT_SPACE
24322      if (obj->pSwapchains) {
24323        _OUT << "[" << std::endl;
24324        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
24325            std:: stringstream tmp;
24326            tmp << "pSwapchains" << "_" << i;
24327            bool isCommaNeeded = (i+1) != obj->swapchainCount;
24328            print_VkSwapchainKHR(obj->pSwapchains[i], tmp.str(), isCommaNeeded);
24329        }
24330        PRINT_SPACE
24331        _OUT << "]" << "," << std::endl;
24332      } else {
24333        _OUT << "\"NULL\"" << "," << std::endl;
24334      }
24335 
24336      PRINT_SPACE
24337      _OUT << "\"pImageIndices\":" << std::endl;
24338      PRINT_SPACE
24339      if (obj->pImageIndices) {
24340        _OUT << "[" << std::endl;
24341        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
24342            bool isCommaNeeded = (i+1) != obj->swapchainCount;
24343            print_uint32_t(obj->pImageIndices[i], "", isCommaNeeded);
24344        }
24345        PRINT_SPACE
24346        _OUT << "]" << "," << std::endl;
24347      } else {
24348        _OUT << "\"NULL\"" << "," << std::endl;
24349      }
24350 
24351      PRINT_SPACE
24352      _OUT << "\"pResults\":" << std::endl;
24353      PRINT_SPACE
24354      if (obj->pResults) {
24355        _OUT << "[" << std::endl;
24356        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
24357            bool isCommaNeeded = (i+1) != obj->swapchainCount;
24358            print_VkResult(obj->pResults[i], "", isCommaNeeded);
24359        }
24360        PRINT_SPACE
24361        _OUT << "]" << "" << std::endl;
24362      } else {
24363        _OUT << "\"NULL\"" << "" << std::endl;
24364      }
24365 
24366      INDENT(-4);
24367      PRINT_SPACE
24368      if (commaNeeded)
24369          _OUT << "}," << std::endl;
24370      else
24371          _OUT << "}" << std::endl;
24372 }
24373 
print_VkImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)24374 static void print_VkImageSwapchainCreateInfoKHR(VkImageSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24375      PRINT_SPACE
24376      _OUT << "{" << std::endl;
24377      INDENT(4);
24378 
24379      print_VkStructureType(obj.sType, "sType", 1);
24380 
24381       if (obj.pNext) {
24382          dumpPNextChain(obj.pNext);
24383       } else {
24384          PRINT_SPACE
24385          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24386      }
24387 
24388      // CTS : required value
24389      PRINT_SPACE    _OUT << "\"" << "swapchain" << "\"" << " : " << "\"" << "\"" << std::endl;
24390 
24391      INDENT(-4);
24392      PRINT_SPACE
24393      if (commaNeeded)
24394          _OUT << "}," << std::endl;
24395      else
24396          _OUT << "}" << std::endl;
24397 }
print_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)24398 static void print_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24399      PRINT_SPACE
24400      _OUT << "{" << std::endl;
24401      INDENT(4);
24402 
24403      print_VkStructureType(obj->sType, "sType", 1);
24404 
24405       if (obj->pNext) {
24406          dumpPNextChain(obj->pNext);
24407       } else {
24408          PRINT_SPACE
24409          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24410      }
24411 
24412      // CTS : required value
24413      PRINT_SPACE    _OUT << "\"" << "swapchain" << "\"" << " : " << "\"" << "\"" << std::endl;
24414 
24415      INDENT(-4);
24416      PRINT_SPACE
24417      if (commaNeeded)
24418          _OUT << "}," << std::endl;
24419      else
24420          _OUT << "}" << std::endl;
24421 }
24422 
print_VkBindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainInfoKHR obj,const std::string & s,bool commaNeeded=true)24423 static void print_VkBindImageMemorySwapchainInfoKHR(VkBindImageMemorySwapchainInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24424      PRINT_SPACE
24425      _OUT << "{" << std::endl;
24426      INDENT(4);
24427 
24428      print_VkStructureType(obj.sType, "sType", 1);
24429 
24430       if (obj.pNext) {
24431          dumpPNextChain(obj.pNext);
24432       } else {
24433          PRINT_SPACE
24434          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24435      }
24436 
24437      // CTS : required value
24438      PRINT_SPACE    _OUT << "\"" << "swapchain" << "\"" << " : " << "\"" << "\"," << std::endl;
24439 
24440      print_uint32_t(obj.imageIndex, "imageIndex", 0);
24441 
24442      INDENT(-4);
24443      PRINT_SPACE
24444      if (commaNeeded)
24445          _OUT << "}," << std::endl;
24446      else
24447          _OUT << "}" << std::endl;
24448 }
print_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR * obj,const std::string & s,bool commaNeeded=true)24449 static void print_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24450      PRINT_SPACE
24451      _OUT << "{" << std::endl;
24452      INDENT(4);
24453 
24454      print_VkStructureType(obj->sType, "sType", 1);
24455 
24456       if (obj->pNext) {
24457          dumpPNextChain(obj->pNext);
24458       } else {
24459          PRINT_SPACE
24460          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24461      }
24462 
24463      // CTS : required value
24464      PRINT_SPACE    _OUT << "\"" << "swapchain" << "\"" << " : " << "\"" << "\"," << std::endl;
24465 
24466      print_uint32_t(obj->imageIndex, "imageIndex", 0);
24467 
24468      INDENT(-4);
24469      PRINT_SPACE
24470      if (commaNeeded)
24471          _OUT << "}," << std::endl;
24472      else
24473          _OUT << "}" << std::endl;
24474 }
24475 
print_VkAcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR obj,const std::string & s,bool commaNeeded=true)24476 static void print_VkAcquireNextImageInfoKHR(VkAcquireNextImageInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24477      PRINT_SPACE
24478      _OUT << "{" << std::endl;
24479      INDENT(4);
24480 
24481      print_VkStructureType(obj.sType, "sType", 1);
24482 
24483       if (obj.pNext) {
24484          dumpPNextChain(obj.pNext);
24485       } else {
24486          PRINT_SPACE
24487          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24488      }
24489 
24490      // CTS : required value
24491      PRINT_SPACE    _OUT << "\"" << "swapchain" << "\"" << " : " << "\"" << "\"," << std::endl;
24492 
24493      print_uint64_t(obj.timeout, "timeout", 1);
24494 
24495      // CTS : required value
24496      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
24497 
24498      // CTS : required value
24499      PRINT_SPACE    _OUT << "\"" << "fence" << "\"" << " : " << "\"" << "\"," << std::endl;
24500 
24501      print_uint32_t(obj.deviceMask, "deviceMask", 0);
24502 
24503      INDENT(-4);
24504      PRINT_SPACE
24505      if (commaNeeded)
24506          _OUT << "}," << std::endl;
24507      else
24508          _OUT << "}" << std::endl;
24509 }
print_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * obj,const std::string & s,bool commaNeeded=true)24510 static void print_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24511      PRINT_SPACE
24512      _OUT << "{" << std::endl;
24513      INDENT(4);
24514 
24515      print_VkStructureType(obj->sType, "sType", 1);
24516 
24517       if (obj->pNext) {
24518          dumpPNextChain(obj->pNext);
24519       } else {
24520          PRINT_SPACE
24521          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24522      }
24523 
24524      // CTS : required value
24525      PRINT_SPACE    _OUT << "\"" << "swapchain" << "\"" << " : " << "\"" << "\"," << std::endl;
24526 
24527      print_uint64_t(obj->timeout, "timeout", 1);
24528 
24529      // CTS : required value
24530      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
24531 
24532      // CTS : required value
24533      PRINT_SPACE    _OUT << "\"" << "fence" << "\"" << " : " << "\"" << "\"," << std::endl;
24534 
24535      print_uint32_t(obj->deviceMask, "deviceMask", 0);
24536 
24537      INDENT(-4);
24538      PRINT_SPACE
24539      if (commaNeeded)
24540          _OUT << "}," << std::endl;
24541      else
24542          _OUT << "}" << std::endl;
24543 }
24544 
print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabilitiesKHR obj,const std::string & s,bool commaNeeded=true)24545 static void print_VkDeviceGroupPresentCapabilitiesKHR(VkDeviceGroupPresentCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
24546      PRINT_SPACE
24547      _OUT << "{" << std::endl;
24548      INDENT(4);
24549 
24550      print_VkStructureType(obj.sType, "sType", 1);
24551 
24552       if (obj.pNext) {
24553          dumpPNextChain(obj.pNext);
24554       } else {
24555          PRINT_SPACE
24556          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24557      }
24558 
24559      PRINT_SPACE
24560      _OUT << "\"presentMask\":" << std::endl;
24561      PRINT_SPACE
24562        _OUT << "[" << std::endl;
24563        for (unsigned int i = 0; i < VK_MAX_DEVICE_GROUP_SIZE; i++) {
24564            bool isCommaNeeded = (i+1) != VK_MAX_DEVICE_GROUP_SIZE;
24565            print_uint32_t(obj.presentMask[i], "", isCommaNeeded);
24566        }
24567        PRINT_SPACE
24568        _OUT << "]" << "," << std::endl;
24569 
24570      print_VkDeviceGroupPresentModeFlagsKHR(obj.modes, "modes", 0);
24571 
24572      INDENT(-4);
24573      PRINT_SPACE
24574      if (commaNeeded)
24575          _OUT << "}," << std::endl;
24576      else
24577          _OUT << "}" << std::endl;
24578 }
print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR * obj,const std::string & s,bool commaNeeded=true)24579 static void print_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
24580      PRINT_SPACE
24581      _OUT << "{" << std::endl;
24582      INDENT(4);
24583 
24584      print_VkStructureType(obj->sType, "sType", 1);
24585 
24586       if (obj->pNext) {
24587          dumpPNextChain(obj->pNext);
24588       } else {
24589          PRINT_SPACE
24590          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24591      }
24592 
24593      PRINT_SPACE
24594      _OUT << "\"presentMask\":" << std::endl;
24595      PRINT_SPACE
24596        _OUT << "[" << std::endl;
24597        for (unsigned int i = 0; i < VK_MAX_DEVICE_GROUP_SIZE; i++) {
24598            bool isCommaNeeded = (i+1) != VK_MAX_DEVICE_GROUP_SIZE;
24599            print_uint32_t(obj->presentMask[i], "", isCommaNeeded);
24600        }
24601        PRINT_SPACE
24602        _OUT << "]" << "," << std::endl;
24603 
24604      print_VkDeviceGroupPresentModeFlagsKHR(obj->modes, "modes", 0);
24605 
24606      INDENT(-4);
24607      PRINT_SPACE
24608      if (commaNeeded)
24609          _OUT << "}," << std::endl;
24610      else
24611          _OUT << "}" << std::endl;
24612 }
24613 
print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj,const std::string & s,bool commaNeeded=true)24614 static void print_VkDeviceGroupPresentInfoKHR(VkDeviceGroupPresentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24615      PRINT_SPACE
24616      _OUT << "{" << std::endl;
24617      INDENT(4);
24618 
24619      print_VkStructureType(obj.sType, "sType", 1);
24620 
24621       if (obj.pNext) {
24622          dumpPNextChain(obj.pNext);
24623       } else {
24624          PRINT_SPACE
24625          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24626      }
24627 
24628      print_uint32_t(obj.swapchainCount, "swapchainCount", 1);
24629 
24630      PRINT_SPACE
24631      _OUT << "\"pDeviceMasks\":" << std::endl;
24632      PRINT_SPACE
24633      if (obj.pDeviceMasks) {
24634        _OUT << "[" << std::endl;
24635        for (unsigned int i = 0; i < obj.swapchainCount; i++) {
24636            bool isCommaNeeded = (i+1) != obj.swapchainCount;
24637            print_uint32_t(obj.pDeviceMasks[i], "", isCommaNeeded);
24638        }
24639        PRINT_SPACE
24640        _OUT << "]" << "," << std::endl;
24641      } else {
24642        _OUT << "\"NULL\"" << "," << std::endl;
24643      }
24644 
24645      print_VkDeviceGroupPresentModeFlagBitsKHR(obj.mode, "mode", 0);
24646 
24647      INDENT(-4);
24648      PRINT_SPACE
24649      if (commaNeeded)
24650          _OUT << "}," << std::endl;
24651      else
24652          _OUT << "}" << std::endl;
24653 }
print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR * obj,const std::string & s,bool commaNeeded=true)24654 static void print_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24655      PRINT_SPACE
24656      _OUT << "{" << std::endl;
24657      INDENT(4);
24658 
24659      print_VkStructureType(obj->sType, "sType", 1);
24660 
24661       if (obj->pNext) {
24662          dumpPNextChain(obj->pNext);
24663       } else {
24664          PRINT_SPACE
24665          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24666      }
24667 
24668      print_uint32_t(obj->swapchainCount, "swapchainCount", 1);
24669 
24670      PRINT_SPACE
24671      _OUT << "\"pDeviceMasks\":" << std::endl;
24672      PRINT_SPACE
24673      if (obj->pDeviceMasks) {
24674        _OUT << "[" << std::endl;
24675        for (unsigned int i = 0; i < obj->swapchainCount; i++) {
24676            bool isCommaNeeded = (i+1) != obj->swapchainCount;
24677            print_uint32_t(obj->pDeviceMasks[i], "", isCommaNeeded);
24678        }
24679        PRINT_SPACE
24680        _OUT << "]" << "," << std::endl;
24681      } else {
24682        _OUT << "\"NULL\"" << "," << std::endl;
24683      }
24684 
24685      print_VkDeviceGroupPresentModeFlagBitsKHR(obj->mode, "mode", 0);
24686 
24687      INDENT(-4);
24688      PRINT_SPACE
24689      if (commaNeeded)
24690          _OUT << "}," << std::endl;
24691      else
24692          _OUT << "}" << std::endl;
24693 }
24694 
print_VkDeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)24695 static void print_VkDeviceGroupSwapchainCreateInfoKHR(VkDeviceGroupSwapchainCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24696      PRINT_SPACE
24697      _OUT << "{" << std::endl;
24698      INDENT(4);
24699 
24700      print_VkStructureType(obj.sType, "sType", 1);
24701 
24702       if (obj.pNext) {
24703          dumpPNextChain(obj.pNext);
24704       } else {
24705          PRINT_SPACE
24706          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24707      }
24708 
24709      print_VkDeviceGroupPresentModeFlagsKHR(obj.modes, "modes", 0);
24710 
24711      INDENT(-4);
24712      PRINT_SPACE
24713      if (commaNeeded)
24714          _OUT << "}," << std::endl;
24715      else
24716          _OUT << "}" << std::endl;
24717 }
print_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)24718 static void print_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24719      PRINT_SPACE
24720      _OUT << "{" << std::endl;
24721      INDENT(4);
24722 
24723      print_VkStructureType(obj->sType, "sType", 1);
24724 
24725       if (obj->pNext) {
24726          dumpPNextChain(obj->pNext);
24727       } else {
24728          PRINT_SPACE
24729          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24730      }
24731 
24732      print_VkDeviceGroupPresentModeFlagsKHR(obj->modes, "modes", 0);
24733 
24734      INDENT(-4);
24735      PRINT_SPACE
24736      if (commaNeeded)
24737          _OUT << "}," << std::endl;
24738      else
24739          _OUT << "}" << std::endl;
24740 }
24741 
print_VkDisplayKHR(VkDisplayKHR obj,const std::string & str,bool commaNeeded=true)24742 static void print_VkDisplayKHR(VkDisplayKHR obj, const std::string& str, bool commaNeeded=true) {
24743      PRINT_SPACE
24744      if (commaNeeded)
24745          _OUT << "\"" << str << "\"" << "," << std::endl;
24746      else
24747          _OUT << "\"" << str << "\"" << std::endl;
24748 }
print_VkDisplayKHR(const VkDisplayKHR * obj,const std::string & str,bool commaNeeded=true)24749 static void print_VkDisplayKHR(const VkDisplayKHR * obj, const std::string& str, bool commaNeeded=true) {
24750      PRINT_SPACE
24751      if (commaNeeded)
24752          _OUT << "\"" << str << "\"" << "," << std::endl;
24753      else
24754          _OUT << "\"" << str << "\"" << std::endl;
24755 }
24756 
print_VkDisplayModeKHR(VkDisplayModeKHR obj,const std::string & str,bool commaNeeded=true)24757 static void print_VkDisplayModeKHR(VkDisplayModeKHR obj, const std::string& str, bool commaNeeded=true) {
24758      PRINT_SPACE
24759      if (commaNeeded)
24760          _OUT << "\"" << str << "\"" << "," << std::endl;
24761      else
24762          _OUT << "\"" << str << "\"" << std::endl;
24763 }
print_VkDisplayModeKHR(const VkDisplayModeKHR * obj,const std::string & str,bool commaNeeded=true)24764 static void print_VkDisplayModeKHR(const VkDisplayModeKHR * obj, const std::string& str, bool commaNeeded=true) {
24765      PRINT_SPACE
24766      if (commaNeeded)
24767          _OUT << "\"" << str << "\"" << "," << std::endl;
24768      else
24769          _OUT << "\"" << str << "\"" << std::endl;
24770 }
24771 
24772 static std::map<deUint64, std::string> VkDisplayPlaneAlphaFlagBitsKHR_map = {
24773     std::make_pair(1ULL << 0, "VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR"),
24774     std::make_pair(1ULL << 1, "VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR"),
24775     std::make_pair(1ULL << 2, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR"),
24776     std::make_pair(1ULL << 3, "VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR"),
24777 };
print_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)24778 static void print_VkDisplayPlaneAlphaFlagBitsKHR(VkDisplayPlaneAlphaFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
24779      PRINT_SPACE
24780      if (str != "") _OUT << "\"" << str << "\"" << " : ";
24781      if (commaNeeded)
24782          _OUT << "\"" <<  VkDisplayPlaneAlphaFlagBitsKHR_map[obj] << "\"," << std::endl;
24783      else
24784          _OUT << "\"" << VkDisplayPlaneAlphaFlagBitsKHR_map[obj] << "\"" << std::endl;
24785 }
print_VkDisplayPlaneAlphaFlagBitsKHR(const VkDisplayPlaneAlphaFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)24786 static void print_VkDisplayPlaneAlphaFlagBitsKHR(const VkDisplayPlaneAlphaFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
24787      PRINT_SPACE
24788      if (str != "") _OUT << "\"" << str << "\"" << " : ";
24789      if (commaNeeded)
24790          _OUT << "\"" <<  VkDisplayPlaneAlphaFlagBitsKHR_map[*obj] << "\"," << std::endl;
24791      else
24792          _OUT << "\"" << VkDisplayPlaneAlphaFlagBitsKHR_map[*obj] << "\"" << std::endl;
24793 }
24794 
print_VkDisplayModeCreateFlagsKHR(VkDisplayModeCreateFlagsKHR obj,const std::string & str,bool commaNeeded=true)24795 static void print_VkDisplayModeCreateFlagsKHR(VkDisplayModeCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
24796      PRINT_SPACE
24797      if (commaNeeded)
24798          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
24799      else
24800          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
24801 }
print_VkDisplayModeCreateFlagsKHR(const VkDisplayModeCreateFlagsKHR * obj,const std::string & str,bool commaNeeded=true)24802 static void print_VkDisplayModeCreateFlagsKHR(const VkDisplayModeCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
24803      PRINT_SPACE
24804      if (commaNeeded)
24805          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
24806      else
24807          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
24808 }
24809 
print_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR obj,const std::string & str,bool commaNeeded=true)24810 static void print_VkDisplayPlaneAlphaFlagsKHR(VkDisplayPlaneAlphaFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
24811      PRINT_SPACE
24812      if (str != "") _OUT << "\"" << str << "\"" << " : ";
24813      const int max_bits = 64; // We don't expect the number to be larger.
24814      std::bitset<max_bits> b(obj);
24815      _OUT << "\"";
24816      if (obj == 0) _OUT << "0";
24817      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
24818          if (b[i] == 1) {
24819              bitCount++;
24820              if (bitCount < b.count())
24821                  _OUT << VkDisplayPlaneAlphaFlagBitsKHR_map[1ULL<<i] << " | ";
24822              else
24823                  _OUT << VkDisplayPlaneAlphaFlagBitsKHR_map[1ULL<<i];
24824          }
24825      }
24826      if (commaNeeded)
24827        _OUT << "\"" << ",";
24828      else
24829        _OUT << "\""<< "";
24830      _OUT << std::endl;
24831 }
print_VkDisplayPlaneAlphaFlagsKHR(const VkDisplayPlaneAlphaFlagsKHR * obj,const std::string & str,bool commaNeeded=true)24832 static void print_VkDisplayPlaneAlphaFlagsKHR(const VkDisplayPlaneAlphaFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
24833      PRINT_SPACE
24834      if (str != "") _OUT << "\"" << str << "\"" << " : ";
24835      const int max_bits = 64; // We don't expect the number to be larger.
24836      std::bitset<max_bits> b(obj);
24837      _OUT << "\"";
24838      if (obj == 0) _OUT << "0";
24839      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
24840          if (b[i] == 1) {
24841              bitCount++;
24842              if (bitCount < b.count())
24843                  _OUT << VkDisplayPlaneAlphaFlagBitsKHR_map[1ULL<<i] << " | ";
24844              else
24845                  _OUT << VkDisplayPlaneAlphaFlagBitsKHR_map[1ULL<<i];
24846          }
24847      }
24848      if (commaNeeded)
24849        _OUT << "\"" << ",";
24850      else
24851        _OUT << "\""<< "";
24852      _OUT << std::endl;
24853 }
24854 
print_VkDisplaySurfaceCreateFlagsKHR(VkDisplaySurfaceCreateFlagsKHR obj,const std::string & str,bool commaNeeded=true)24855 static void print_VkDisplaySurfaceCreateFlagsKHR(VkDisplaySurfaceCreateFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
24856      PRINT_SPACE
24857      if (commaNeeded)
24858          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
24859      else
24860          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
24861 }
print_VkDisplaySurfaceCreateFlagsKHR(const VkDisplaySurfaceCreateFlagsKHR * obj,const std::string & str,bool commaNeeded=true)24862 static void print_VkDisplaySurfaceCreateFlagsKHR(const VkDisplaySurfaceCreateFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
24863      PRINT_SPACE
24864      if (commaNeeded)
24865          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
24866      else
24867          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
24868 }
24869 
print_VkDisplayModeParametersKHR(VkDisplayModeParametersKHR obj,const std::string & s,bool commaNeeded=true)24870 static void print_VkDisplayModeParametersKHR(VkDisplayModeParametersKHR obj, const std::string& s, bool commaNeeded=true) {
24871      PRINT_SPACE
24872      _OUT << "{" << std::endl;
24873      INDENT(4);
24874 
24875      PRINT_SPACE
24876      _OUT << "\"visibleRegion\": " << std::endl;
24877      {
24878            print_VkExtent2D(obj.visibleRegion, "visibleRegion", 1);
24879      }
24880 
24881      print_uint32_t(obj.refreshRate, "refreshRate", 0);
24882 
24883      INDENT(-4);
24884      PRINT_SPACE
24885      if (commaNeeded)
24886          _OUT << "}," << std::endl;
24887      else
24888          _OUT << "}" << std::endl;
24889 }
print_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR * obj,const std::string & s,bool commaNeeded=true)24890 static void print_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR * obj, const std::string& s, bool commaNeeded=true) {
24891      PRINT_SPACE
24892      _OUT << "{" << std::endl;
24893      INDENT(4);
24894 
24895      PRINT_SPACE
24896      _OUT << "\"visibleRegion\": " << std::endl;
24897      {
24898            print_VkExtent2D(obj->visibleRegion, "visibleRegion", 1);
24899      }
24900 
24901      print_uint32_t(obj->refreshRate, "refreshRate", 0);
24902 
24903      INDENT(-4);
24904      PRINT_SPACE
24905      if (commaNeeded)
24906          _OUT << "}," << std::endl;
24907      else
24908          _OUT << "}" << std::endl;
24909 }
24910 
print_VkDisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)24911 static void print_VkDisplayModeCreateInfoKHR(VkDisplayModeCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
24912      PRINT_SPACE
24913      _OUT << "{" << std::endl;
24914      INDENT(4);
24915 
24916      print_VkStructureType(obj.sType, "sType", 1);
24917 
24918       if (obj.pNext) {
24919          dumpPNextChain(obj.pNext);
24920       } else {
24921          PRINT_SPACE
24922          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24923      }
24924 
24925      print_VkDisplayModeCreateFlagsKHR(obj.flags, "flags", 1);
24926 
24927      PRINT_SPACE
24928      _OUT << "\"parameters\": " << std::endl;
24929      {
24930            print_VkDisplayModeParametersKHR(obj.parameters, "parameters", 0);
24931      }
24932 
24933      INDENT(-4);
24934      PRINT_SPACE
24935      if (commaNeeded)
24936          _OUT << "}," << std::endl;
24937      else
24938          _OUT << "}" << std::endl;
24939 }
print_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)24940 static void print_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
24941      PRINT_SPACE
24942      _OUT << "{" << std::endl;
24943      INDENT(4);
24944 
24945      print_VkStructureType(obj->sType, "sType", 1);
24946 
24947       if (obj->pNext) {
24948          dumpPNextChain(obj->pNext);
24949       } else {
24950          PRINT_SPACE
24951          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
24952      }
24953 
24954      print_VkDisplayModeCreateFlagsKHR(obj->flags, "flags", 1);
24955 
24956      PRINT_SPACE
24957      _OUT << "\"parameters\": " << std::endl;
24958      {
24959            print_VkDisplayModeParametersKHR(obj->parameters, "parameters", 0);
24960      }
24961 
24962      INDENT(-4);
24963      PRINT_SPACE
24964      if (commaNeeded)
24965          _OUT << "}," << std::endl;
24966      else
24967          _OUT << "}" << std::endl;
24968 }
24969 
print_VkDisplayModePropertiesKHR(VkDisplayModePropertiesKHR obj,const std::string & s,bool commaNeeded=true)24970 static void print_VkDisplayModePropertiesKHR(VkDisplayModePropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
24971      PRINT_SPACE
24972      _OUT << "{" << std::endl;
24973      INDENT(4);
24974 
24975      // CTS : required value
24976      PRINT_SPACE    _OUT << "\"" << "displayMode" << "\"" << " : " << "\"" << "\"," << std::endl;
24977 
24978      PRINT_SPACE
24979      _OUT << "\"parameters\": " << std::endl;
24980      {
24981            print_VkDisplayModeParametersKHR(obj.parameters, "parameters", 0);
24982      }
24983 
24984      INDENT(-4);
24985      PRINT_SPACE
24986      if (commaNeeded)
24987          _OUT << "}," << std::endl;
24988      else
24989          _OUT << "}" << std::endl;
24990 }
print_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR * obj,const std::string & s,bool commaNeeded=true)24991 static void print_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
24992      PRINT_SPACE
24993      _OUT << "{" << std::endl;
24994      INDENT(4);
24995 
24996      // CTS : required value
24997      PRINT_SPACE    _OUT << "\"" << "displayMode" << "\"" << " : " << "\"" << "\"," << std::endl;
24998 
24999      PRINT_SPACE
25000      _OUT << "\"parameters\": " << std::endl;
25001      {
25002            print_VkDisplayModeParametersKHR(obj->parameters, "parameters", 0);
25003      }
25004 
25005      INDENT(-4);
25006      PRINT_SPACE
25007      if (commaNeeded)
25008          _OUT << "}," << std::endl;
25009      else
25010          _OUT << "}" << std::endl;
25011 }
25012 
print_VkDisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR obj,const std::string & s,bool commaNeeded=true)25013 static void print_VkDisplayPlaneCapabilitiesKHR(VkDisplayPlaneCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
25014      PRINT_SPACE
25015      _OUT << "{" << std::endl;
25016      INDENT(4);
25017 
25018      print_VkDisplayPlaneAlphaFlagsKHR(obj.supportedAlpha, "supportedAlpha", 1);
25019 
25020      PRINT_SPACE
25021      _OUT << "\"minSrcPosition\": " << std::endl;
25022      {
25023            print_VkOffset2D(obj.minSrcPosition, "minSrcPosition", 1);
25024      }
25025 
25026      PRINT_SPACE
25027      _OUT << "\"maxSrcPosition\": " << std::endl;
25028      {
25029            print_VkOffset2D(obj.maxSrcPosition, "maxSrcPosition", 1);
25030      }
25031 
25032      PRINT_SPACE
25033      _OUT << "\"minSrcExtent\": " << std::endl;
25034      {
25035            print_VkExtent2D(obj.minSrcExtent, "minSrcExtent", 1);
25036      }
25037 
25038      PRINT_SPACE
25039      _OUT << "\"maxSrcExtent\": " << std::endl;
25040      {
25041            print_VkExtent2D(obj.maxSrcExtent, "maxSrcExtent", 1);
25042      }
25043 
25044      PRINT_SPACE
25045      _OUT << "\"minDstPosition\": " << std::endl;
25046      {
25047            print_VkOffset2D(obj.minDstPosition, "minDstPosition", 1);
25048      }
25049 
25050      PRINT_SPACE
25051      _OUT << "\"maxDstPosition\": " << std::endl;
25052      {
25053            print_VkOffset2D(obj.maxDstPosition, "maxDstPosition", 1);
25054      }
25055 
25056      PRINT_SPACE
25057      _OUT << "\"minDstExtent\": " << std::endl;
25058      {
25059            print_VkExtent2D(obj.minDstExtent, "minDstExtent", 1);
25060      }
25061 
25062      PRINT_SPACE
25063      _OUT << "\"maxDstExtent\": " << std::endl;
25064      {
25065            print_VkExtent2D(obj.maxDstExtent, "maxDstExtent", 0);
25066      }
25067 
25068      INDENT(-4);
25069      PRINT_SPACE
25070      if (commaNeeded)
25071          _OUT << "}," << std::endl;
25072      else
25073          _OUT << "}" << std::endl;
25074 }
print_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR * obj,const std::string & s,bool commaNeeded=true)25075 static void print_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
25076      PRINT_SPACE
25077      _OUT << "{" << std::endl;
25078      INDENT(4);
25079 
25080      print_VkDisplayPlaneAlphaFlagsKHR(obj->supportedAlpha, "supportedAlpha", 1);
25081 
25082      PRINT_SPACE
25083      _OUT << "\"minSrcPosition\": " << std::endl;
25084      {
25085            print_VkOffset2D(obj->minSrcPosition, "minSrcPosition", 1);
25086      }
25087 
25088      PRINT_SPACE
25089      _OUT << "\"maxSrcPosition\": " << std::endl;
25090      {
25091            print_VkOffset2D(obj->maxSrcPosition, "maxSrcPosition", 1);
25092      }
25093 
25094      PRINT_SPACE
25095      _OUT << "\"minSrcExtent\": " << std::endl;
25096      {
25097            print_VkExtent2D(obj->minSrcExtent, "minSrcExtent", 1);
25098      }
25099 
25100      PRINT_SPACE
25101      _OUT << "\"maxSrcExtent\": " << std::endl;
25102      {
25103            print_VkExtent2D(obj->maxSrcExtent, "maxSrcExtent", 1);
25104      }
25105 
25106      PRINT_SPACE
25107      _OUT << "\"minDstPosition\": " << std::endl;
25108      {
25109            print_VkOffset2D(obj->minDstPosition, "minDstPosition", 1);
25110      }
25111 
25112      PRINT_SPACE
25113      _OUT << "\"maxDstPosition\": " << std::endl;
25114      {
25115            print_VkOffset2D(obj->maxDstPosition, "maxDstPosition", 1);
25116      }
25117 
25118      PRINT_SPACE
25119      _OUT << "\"minDstExtent\": " << std::endl;
25120      {
25121            print_VkExtent2D(obj->minDstExtent, "minDstExtent", 1);
25122      }
25123 
25124      PRINT_SPACE
25125      _OUT << "\"maxDstExtent\": " << std::endl;
25126      {
25127            print_VkExtent2D(obj->maxDstExtent, "maxDstExtent", 0);
25128      }
25129 
25130      INDENT(-4);
25131      PRINT_SPACE
25132      if (commaNeeded)
25133          _OUT << "}," << std::endl;
25134      else
25135          _OUT << "}" << std::endl;
25136 }
25137 
print_VkDisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR obj,const std::string & s,bool commaNeeded=true)25138 static void print_VkDisplayPlanePropertiesKHR(VkDisplayPlanePropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
25139      PRINT_SPACE
25140      _OUT << "{" << std::endl;
25141      INDENT(4);
25142 
25143      // CTS : required value
25144      PRINT_SPACE    _OUT << "\"" << "currentDisplay" << "\"" << " : " << "\"" << "\"," << std::endl;
25145 
25146      print_uint32_t(obj.currentStackIndex, "currentStackIndex", 0);
25147 
25148      INDENT(-4);
25149      PRINT_SPACE
25150      if (commaNeeded)
25151          _OUT << "}," << std::endl;
25152      else
25153          _OUT << "}" << std::endl;
25154 }
print_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR * obj,const std::string & s,bool commaNeeded=true)25155 static void print_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
25156      PRINT_SPACE
25157      _OUT << "{" << std::endl;
25158      INDENT(4);
25159 
25160      // CTS : required value
25161      PRINT_SPACE    _OUT << "\"" << "currentDisplay" << "\"" << " : " << "\"" << "\"," << std::endl;
25162 
25163      print_uint32_t(obj->currentStackIndex, "currentStackIndex", 0);
25164 
25165      INDENT(-4);
25166      PRINT_SPACE
25167      if (commaNeeded)
25168          _OUT << "}," << std::endl;
25169      else
25170          _OUT << "}" << std::endl;
25171 }
25172 
print_VkDisplayPropertiesKHR(VkDisplayPropertiesKHR obj,const std::string & s,bool commaNeeded=true)25173 static void print_VkDisplayPropertiesKHR(VkDisplayPropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
25174      PRINT_SPACE
25175      _OUT << "{" << std::endl;
25176      INDENT(4);
25177 
25178      // CTS : required value
25179      PRINT_SPACE    _OUT << "\"" << "display" << "\"" << " : " << "\"" << "\"," << std::endl;
25180 
25181      print_char(obj.displayName, "displayName", 1);
25182 
25183      PRINT_SPACE
25184      _OUT << "\"physicalDimensions\": " << std::endl;
25185      {
25186            print_VkExtent2D(obj.physicalDimensions, "physicalDimensions", 1);
25187      }
25188 
25189      PRINT_SPACE
25190      _OUT << "\"physicalResolution\": " << std::endl;
25191      {
25192            print_VkExtent2D(obj.physicalResolution, "physicalResolution", 1);
25193      }
25194 
25195      print_VkSurfaceTransformFlagsKHR(obj.supportedTransforms, "supportedTransforms", 1);
25196 
25197      print_VkBool32(obj.planeReorderPossible, "planeReorderPossible", 1);
25198 
25199      print_VkBool32(obj.persistentContent, "persistentContent", 0);
25200 
25201      INDENT(-4);
25202      PRINT_SPACE
25203      if (commaNeeded)
25204          _OUT << "}," << std::endl;
25205      else
25206          _OUT << "}" << std::endl;
25207 }
print_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * obj,const std::string & s,bool commaNeeded=true)25208 static void print_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
25209      PRINT_SPACE
25210      _OUT << "{" << std::endl;
25211      INDENT(4);
25212 
25213      // CTS : required value
25214      PRINT_SPACE    _OUT << "\"" << "display" << "\"" << " : " << "\"" << "\"," << std::endl;
25215 
25216      print_char(obj->displayName, "displayName", 1);
25217 
25218      PRINT_SPACE
25219      _OUT << "\"physicalDimensions\": " << std::endl;
25220      {
25221            print_VkExtent2D(obj->physicalDimensions, "physicalDimensions", 1);
25222      }
25223 
25224      PRINT_SPACE
25225      _OUT << "\"physicalResolution\": " << std::endl;
25226      {
25227            print_VkExtent2D(obj->physicalResolution, "physicalResolution", 1);
25228      }
25229 
25230      print_VkSurfaceTransformFlagsKHR(obj->supportedTransforms, "supportedTransforms", 1);
25231 
25232      print_VkBool32(obj->planeReorderPossible, "planeReorderPossible", 1);
25233 
25234      print_VkBool32(obj->persistentContent, "persistentContent", 0);
25235 
25236      INDENT(-4);
25237      PRINT_SPACE
25238      if (commaNeeded)
25239          _OUT << "}," << std::endl;
25240      else
25241          _OUT << "}" << std::endl;
25242 }
25243 
print_VkDisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)25244 static void print_VkDisplaySurfaceCreateInfoKHR(VkDisplaySurfaceCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25245      PRINT_SPACE
25246      _OUT << "{" << std::endl;
25247      INDENT(4);
25248 
25249      print_VkStructureType(obj.sType, "sType", 1);
25250 
25251       if (obj.pNext) {
25252          dumpPNextChain(obj.pNext);
25253       } else {
25254          PRINT_SPACE
25255          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25256      }
25257 
25258      print_VkDisplaySurfaceCreateFlagsKHR(obj.flags, "flags", 1);
25259 
25260      // CTS : required value
25261      PRINT_SPACE    _OUT << "\"" << "displayMode" << "\"" << " : " << "\"" << "\"," << std::endl;
25262 
25263      print_uint32_t(obj.planeIndex, "planeIndex", 1);
25264 
25265      print_uint32_t(obj.planeStackIndex, "planeStackIndex", 1);
25266 
25267      print_VkSurfaceTransformFlagBitsKHR(obj.transform, "transform", 1);
25268 
25269      print_float(obj.globalAlpha, "globalAlpha", 1);
25270 
25271      print_VkDisplayPlaneAlphaFlagBitsKHR(obj.alphaMode, "alphaMode", 1);
25272 
25273      PRINT_SPACE
25274      _OUT << "\"imageExtent\": " << std::endl;
25275      {
25276            print_VkExtent2D(obj.imageExtent, "imageExtent", 0);
25277      }
25278 
25279      INDENT(-4);
25280      PRINT_SPACE
25281      if (commaNeeded)
25282          _OUT << "}," << std::endl;
25283      else
25284          _OUT << "}" << std::endl;
25285 }
print_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)25286 static void print_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25287      PRINT_SPACE
25288      _OUT << "{" << std::endl;
25289      INDENT(4);
25290 
25291      print_VkStructureType(obj->sType, "sType", 1);
25292 
25293       if (obj->pNext) {
25294          dumpPNextChain(obj->pNext);
25295       } else {
25296          PRINT_SPACE
25297          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25298      }
25299 
25300      print_VkDisplaySurfaceCreateFlagsKHR(obj->flags, "flags", 1);
25301 
25302      // CTS : required value
25303      PRINT_SPACE    _OUT << "\"" << "displayMode" << "\"" << " : " << "\"" << "\"," << std::endl;
25304 
25305      print_uint32_t(obj->planeIndex, "planeIndex", 1);
25306 
25307      print_uint32_t(obj->planeStackIndex, "planeStackIndex", 1);
25308 
25309      print_VkSurfaceTransformFlagBitsKHR(obj->transform, "transform", 1);
25310 
25311      print_float(obj->globalAlpha, "globalAlpha", 1);
25312 
25313      print_VkDisplayPlaneAlphaFlagBitsKHR(obj->alphaMode, "alphaMode", 1);
25314 
25315      PRINT_SPACE
25316      _OUT << "\"imageExtent\": " << std::endl;
25317      {
25318            print_VkExtent2D(obj->imageExtent, "imageExtent", 0);
25319      }
25320 
25321      INDENT(-4);
25322      PRINT_SPACE
25323      if (commaNeeded)
25324          _OUT << "}," << std::endl;
25325      else
25326          _OUT << "}" << std::endl;
25327 }
25328 
print_VkDisplayPresentInfoKHR(VkDisplayPresentInfoKHR obj,const std::string & s,bool commaNeeded=true)25329 static void print_VkDisplayPresentInfoKHR(VkDisplayPresentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25330      PRINT_SPACE
25331      _OUT << "{" << std::endl;
25332      INDENT(4);
25333 
25334      print_VkStructureType(obj.sType, "sType", 1);
25335 
25336       if (obj.pNext) {
25337          dumpPNextChain(obj.pNext);
25338       } else {
25339          PRINT_SPACE
25340          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25341      }
25342 
25343      PRINT_SPACE
25344      _OUT << "\"srcRect\": " << std::endl;
25345      {
25346            print_VkRect2D(obj.srcRect, "srcRect", 1);
25347      }
25348 
25349      PRINT_SPACE
25350      _OUT << "\"dstRect\": " << std::endl;
25351      {
25352            print_VkRect2D(obj.dstRect, "dstRect", 1);
25353      }
25354 
25355      print_VkBool32(obj.persistent, "persistent", 0);
25356 
25357      INDENT(-4);
25358      PRINT_SPACE
25359      if (commaNeeded)
25360          _OUT << "}," << std::endl;
25361      else
25362          _OUT << "}" << std::endl;
25363 }
print_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * obj,const std::string & s,bool commaNeeded=true)25364 static void print_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25365      PRINT_SPACE
25366      _OUT << "{" << std::endl;
25367      INDENT(4);
25368 
25369      print_VkStructureType(obj->sType, "sType", 1);
25370 
25371       if (obj->pNext) {
25372          dumpPNextChain(obj->pNext);
25373       } else {
25374          PRINT_SPACE
25375          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25376      }
25377 
25378      PRINT_SPACE
25379      _OUT << "\"srcRect\": " << std::endl;
25380      {
25381            print_VkRect2D(obj->srcRect, "srcRect", 1);
25382      }
25383 
25384      PRINT_SPACE
25385      _OUT << "\"dstRect\": " << std::endl;
25386      {
25387            print_VkRect2D(obj->dstRect, "dstRect", 1);
25388      }
25389 
25390      print_VkBool32(obj->persistent, "persistent", 0);
25391 
25392      INDENT(-4);
25393      PRINT_SPACE
25394      if (commaNeeded)
25395          _OUT << "}," << std::endl;
25396      else
25397          _OUT << "}" << std::endl;
25398 }
25399 
print_VkImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR obj,const std::string & s,bool commaNeeded=true)25400 static void print_VkImportMemoryFdInfoKHR(VkImportMemoryFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25401      PRINT_SPACE
25402      _OUT << "{" << std::endl;
25403      INDENT(4);
25404 
25405      print_VkStructureType(obj.sType, "sType", 1);
25406 
25407       if (obj.pNext) {
25408          dumpPNextChain(obj.pNext);
25409       } else {
25410          PRINT_SPACE
25411          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25412      }
25413 
25414      print_VkExternalMemoryHandleTypeFlagBits(obj.handleType, "handleType", 1);
25415 
25416      print_int(obj.fd, "fd", 0);
25417 
25418      INDENT(-4);
25419      PRINT_SPACE
25420      if (commaNeeded)
25421          _OUT << "}," << std::endl;
25422      else
25423          _OUT << "}" << std::endl;
25424 }
print_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * obj,const std::string & s,bool commaNeeded=true)25425 static void print_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25426      PRINT_SPACE
25427      _OUT << "{" << std::endl;
25428      INDENT(4);
25429 
25430      print_VkStructureType(obj->sType, "sType", 1);
25431 
25432       if (obj->pNext) {
25433          dumpPNextChain(obj->pNext);
25434       } else {
25435          PRINT_SPACE
25436          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25437      }
25438 
25439      print_VkExternalMemoryHandleTypeFlagBits(obj->handleType, "handleType", 1);
25440 
25441      print_int(obj->fd, "fd", 0);
25442 
25443      INDENT(-4);
25444      PRINT_SPACE
25445      if (commaNeeded)
25446          _OUT << "}," << std::endl;
25447      else
25448          _OUT << "}" << std::endl;
25449 }
25450 
print_VkMemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR obj,const std::string & s,bool commaNeeded=true)25451 static void print_VkMemoryFdPropertiesKHR(VkMemoryFdPropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
25452      PRINT_SPACE
25453      _OUT << "{" << std::endl;
25454      INDENT(4);
25455 
25456      print_VkStructureType(obj.sType, "sType", 1);
25457 
25458       if (obj.pNext) {
25459          dumpPNextChain(obj.pNext);
25460       } else {
25461          PRINT_SPACE
25462          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25463      }
25464 
25465      print_uint32_t(obj.memoryTypeBits, "memoryTypeBits", 0);
25466 
25467      INDENT(-4);
25468      PRINT_SPACE
25469      if (commaNeeded)
25470          _OUT << "}," << std::endl;
25471      else
25472          _OUT << "}" << std::endl;
25473 }
print_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * obj,const std::string & s,bool commaNeeded=true)25474 static void print_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
25475      PRINT_SPACE
25476      _OUT << "{" << std::endl;
25477      INDENT(4);
25478 
25479      print_VkStructureType(obj->sType, "sType", 1);
25480 
25481       if (obj->pNext) {
25482          dumpPNextChain(obj->pNext);
25483       } else {
25484          PRINT_SPACE
25485          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25486      }
25487 
25488      print_uint32_t(obj->memoryTypeBits, "memoryTypeBits", 0);
25489 
25490      INDENT(-4);
25491      PRINT_SPACE
25492      if (commaNeeded)
25493          _OUT << "}," << std::endl;
25494      else
25495          _OUT << "}" << std::endl;
25496 }
25497 
print_VkMemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR obj,const std::string & s,bool commaNeeded=true)25498 static void print_VkMemoryGetFdInfoKHR(VkMemoryGetFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25499      PRINT_SPACE
25500      _OUT << "{" << std::endl;
25501      INDENT(4);
25502 
25503      print_VkStructureType(obj.sType, "sType", 1);
25504 
25505       if (obj.pNext) {
25506          dumpPNextChain(obj.pNext);
25507       } else {
25508          PRINT_SPACE
25509          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25510      }
25511 
25512      // CTS : required value
25513      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
25514 
25515      print_VkExternalMemoryHandleTypeFlagBits(obj.handleType, "handleType", 0);
25516 
25517      INDENT(-4);
25518      PRINT_SPACE
25519      if (commaNeeded)
25520          _OUT << "}," << std::endl;
25521      else
25522          _OUT << "}" << std::endl;
25523 }
print_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * obj,const std::string & s,bool commaNeeded=true)25524 static void print_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25525      PRINT_SPACE
25526      _OUT << "{" << std::endl;
25527      INDENT(4);
25528 
25529      print_VkStructureType(obj->sType, "sType", 1);
25530 
25531       if (obj->pNext) {
25532          dumpPNextChain(obj->pNext);
25533       } else {
25534          PRINT_SPACE
25535          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25536      }
25537 
25538      // CTS : required value
25539      PRINT_SPACE    _OUT << "\"" << "memory" << "\"" << " : " << "\"" << "\"," << std::endl;
25540 
25541      print_VkExternalMemoryHandleTypeFlagBits(obj->handleType, "handleType", 0);
25542 
25543      INDENT(-4);
25544      PRINT_SPACE
25545      if (commaNeeded)
25546          _OUT << "}," << std::endl;
25547      else
25548          _OUT << "}" << std::endl;
25549 }
25550 
print_VkImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR obj,const std::string & s,bool commaNeeded=true)25551 static void print_VkImportSemaphoreFdInfoKHR(VkImportSemaphoreFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25552      PRINT_SPACE
25553      _OUT << "{" << std::endl;
25554      INDENT(4);
25555 
25556      print_VkStructureType(obj.sType, "sType", 1);
25557 
25558       if (obj.pNext) {
25559          dumpPNextChain(obj.pNext);
25560       } else {
25561          PRINT_SPACE
25562          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25563      }
25564 
25565      // CTS : required value
25566      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
25567 
25568      print_VkSemaphoreImportFlags(obj.flags, "flags", 1);
25569 
25570      print_VkExternalSemaphoreHandleTypeFlagBits(obj.handleType, "handleType", 1);
25571 
25572      print_int(obj.fd, "fd", 0);
25573 
25574      INDENT(-4);
25575      PRINT_SPACE
25576      if (commaNeeded)
25577          _OUT << "}," << std::endl;
25578      else
25579          _OUT << "}" << std::endl;
25580 }
print_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR * obj,const std::string & s,bool commaNeeded=true)25581 static void print_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25582      PRINT_SPACE
25583      _OUT << "{" << std::endl;
25584      INDENT(4);
25585 
25586      print_VkStructureType(obj->sType, "sType", 1);
25587 
25588       if (obj->pNext) {
25589          dumpPNextChain(obj->pNext);
25590       } else {
25591          PRINT_SPACE
25592          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25593      }
25594 
25595      // CTS : required value
25596      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
25597 
25598      print_VkSemaphoreImportFlags(obj->flags, "flags", 1);
25599 
25600      print_VkExternalSemaphoreHandleTypeFlagBits(obj->handleType, "handleType", 1);
25601 
25602      print_int(obj->fd, "fd", 0);
25603 
25604      INDENT(-4);
25605      PRINT_SPACE
25606      if (commaNeeded)
25607          _OUT << "}," << std::endl;
25608      else
25609          _OUT << "}" << std::endl;
25610 }
25611 
print_VkSemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR obj,const std::string & s,bool commaNeeded=true)25612 static void print_VkSemaphoreGetFdInfoKHR(VkSemaphoreGetFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25613      PRINT_SPACE
25614      _OUT << "{" << std::endl;
25615      INDENT(4);
25616 
25617      print_VkStructureType(obj.sType, "sType", 1);
25618 
25619       if (obj.pNext) {
25620          dumpPNextChain(obj.pNext);
25621       } else {
25622          PRINT_SPACE
25623          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25624      }
25625 
25626      // CTS : required value
25627      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
25628 
25629      print_VkExternalSemaphoreHandleTypeFlagBits(obj.handleType, "handleType", 0);
25630 
25631      INDENT(-4);
25632      PRINT_SPACE
25633      if (commaNeeded)
25634          _OUT << "}," << std::endl;
25635      else
25636          _OUT << "}" << std::endl;
25637 }
print_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * obj,const std::string & s,bool commaNeeded=true)25638 static void print_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25639      PRINT_SPACE
25640      _OUT << "{" << std::endl;
25641      INDENT(4);
25642 
25643      print_VkStructureType(obj->sType, "sType", 1);
25644 
25645       if (obj->pNext) {
25646          dumpPNextChain(obj->pNext);
25647       } else {
25648          PRINT_SPACE
25649          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25650      }
25651 
25652      // CTS : required value
25653      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
25654 
25655      print_VkExternalSemaphoreHandleTypeFlagBits(obj->handleType, "handleType", 0);
25656 
25657      INDENT(-4);
25658      PRINT_SPACE
25659      if (commaNeeded)
25660          _OUT << "}," << std::endl;
25661      else
25662          _OUT << "}" << std::endl;
25663 }
25664 
print_VkRectLayerKHR(VkRectLayerKHR obj,const std::string & s,bool commaNeeded=true)25665 static void print_VkRectLayerKHR(VkRectLayerKHR obj, const std::string& s, bool commaNeeded=true) {
25666      PRINT_SPACE
25667      _OUT << "{" << std::endl;
25668      INDENT(4);
25669 
25670      PRINT_SPACE
25671      _OUT << "\"offset\": " << std::endl;
25672      {
25673            print_VkOffset2D(obj.offset, "offset", 1);
25674      }
25675 
25676      PRINT_SPACE
25677      _OUT << "\"extent\": " << std::endl;
25678      {
25679            print_VkExtent2D(obj.extent, "extent", 1);
25680      }
25681 
25682      print_uint32_t(obj.layer, "layer", 0);
25683 
25684      INDENT(-4);
25685      PRINT_SPACE
25686      if (commaNeeded)
25687          _OUT << "}," << std::endl;
25688      else
25689          _OUT << "}" << std::endl;
25690 }
print_VkRectLayerKHR(const VkRectLayerKHR * obj,const std::string & s,bool commaNeeded=true)25691 static void print_VkRectLayerKHR(const VkRectLayerKHR * obj, const std::string& s, bool commaNeeded=true) {
25692      PRINT_SPACE
25693      _OUT << "{" << std::endl;
25694      INDENT(4);
25695 
25696      PRINT_SPACE
25697      _OUT << "\"offset\": " << std::endl;
25698      {
25699            print_VkOffset2D(obj->offset, "offset", 1);
25700      }
25701 
25702      PRINT_SPACE
25703      _OUT << "\"extent\": " << std::endl;
25704      {
25705            print_VkExtent2D(obj->extent, "extent", 1);
25706      }
25707 
25708      print_uint32_t(obj->layer, "layer", 0);
25709 
25710      INDENT(-4);
25711      PRINT_SPACE
25712      if (commaNeeded)
25713          _OUT << "}," << std::endl;
25714      else
25715          _OUT << "}" << std::endl;
25716 }
25717 
print_VkPresentRegionKHR(VkPresentRegionKHR obj,const std::string & s,bool commaNeeded=true)25718 static void print_VkPresentRegionKHR(VkPresentRegionKHR obj, const std::string& s, bool commaNeeded=true) {
25719      PRINT_SPACE
25720      _OUT << "{" << std::endl;
25721      INDENT(4);
25722 
25723      print_uint32_t(obj.rectangleCount, "rectangleCount", 1);
25724 
25725      PRINT_SPACE
25726      _OUT << "\"pRectangles\": " << std::endl;
25727      if (obj.pRectangles) {
25728          PRINT_SPACE
25729          _OUT << "[" << std::endl;
25730          for (unsigned int i = 0; i < obj.rectangleCount; i++) {
25731            if (i+1 == obj.rectangleCount)
25732                print_VkRectLayerKHR(obj.pRectangles[i], "pRectangles", 0);
25733            else
25734                print_VkRectLayerKHR(obj.pRectangles[i], "pRectangles", 1);
25735          }
25736          PRINT_SPACE
25737          _OUT << "]" << std::endl;
25738     }
25739      else
25740      {
25741          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
25742      }
25743 
25744      INDENT(-4);
25745      PRINT_SPACE
25746      if (commaNeeded)
25747          _OUT << "}," << std::endl;
25748      else
25749          _OUT << "}" << std::endl;
25750 }
print_VkPresentRegionKHR(const VkPresentRegionKHR * obj,const std::string & s,bool commaNeeded=true)25751 static void print_VkPresentRegionKHR(const VkPresentRegionKHR * obj, const std::string& s, bool commaNeeded=true) {
25752      PRINT_SPACE
25753      _OUT << "{" << std::endl;
25754      INDENT(4);
25755 
25756      print_uint32_t(obj->rectangleCount, "rectangleCount", 1);
25757 
25758      PRINT_SPACE
25759      _OUT << "\"pRectangles\": " << std::endl;
25760      if (obj->pRectangles) {
25761          PRINT_SPACE
25762          _OUT << "[" << std::endl;
25763          for (unsigned int i = 0; i < obj->rectangleCount; i++) {
25764            if (i+1 == obj->rectangleCount)
25765                print_VkRectLayerKHR(obj->pRectangles[i], "pRectangles", 0);
25766            else
25767                print_VkRectLayerKHR(obj->pRectangles[i], "pRectangles", 1);
25768          }
25769          PRINT_SPACE
25770          _OUT << "]" << std::endl;
25771     }
25772      else
25773      {
25774          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
25775      }
25776 
25777      INDENT(-4);
25778      PRINT_SPACE
25779      if (commaNeeded)
25780          _OUT << "}," << std::endl;
25781      else
25782          _OUT << "}" << std::endl;
25783 }
25784 
print_VkPresentRegionsKHR(VkPresentRegionsKHR obj,const std::string & s,bool commaNeeded=true)25785 static void print_VkPresentRegionsKHR(VkPresentRegionsKHR obj, const std::string& s, bool commaNeeded=true) {
25786      PRINT_SPACE
25787      _OUT << "{" << std::endl;
25788      INDENT(4);
25789 
25790      print_VkStructureType(obj.sType, "sType", 1);
25791 
25792       if (obj.pNext) {
25793          dumpPNextChain(obj.pNext);
25794       } else {
25795          PRINT_SPACE
25796          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25797      }
25798 
25799      print_uint32_t(obj.swapchainCount, "swapchainCount", 1);
25800 
25801      PRINT_SPACE
25802      _OUT << "\"pRegions\": " << std::endl;
25803      if (obj.pRegions) {
25804          PRINT_SPACE
25805          _OUT << "[" << std::endl;
25806          for (unsigned int i = 0; i < obj.swapchainCount; i++) {
25807            if (i+1 == obj.swapchainCount)
25808                print_VkPresentRegionKHR(obj.pRegions[i], "pRegions", 0);
25809            else
25810                print_VkPresentRegionKHR(obj.pRegions[i], "pRegions", 1);
25811          }
25812          PRINT_SPACE
25813          _OUT << "]" << std::endl;
25814     }
25815      else
25816      {
25817          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
25818      }
25819 
25820      INDENT(-4);
25821      PRINT_SPACE
25822      if (commaNeeded)
25823          _OUT << "}," << std::endl;
25824      else
25825          _OUT << "}" << std::endl;
25826 }
print_VkPresentRegionsKHR(const VkPresentRegionsKHR * obj,const std::string & s,bool commaNeeded=true)25827 static void print_VkPresentRegionsKHR(const VkPresentRegionsKHR * obj, const std::string& s, bool commaNeeded=true) {
25828      PRINT_SPACE
25829      _OUT << "{" << std::endl;
25830      INDENT(4);
25831 
25832      print_VkStructureType(obj->sType, "sType", 1);
25833 
25834       if (obj->pNext) {
25835          dumpPNextChain(obj->pNext);
25836       } else {
25837          PRINT_SPACE
25838          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25839      }
25840 
25841      print_uint32_t(obj->swapchainCount, "swapchainCount", 1);
25842 
25843      PRINT_SPACE
25844      _OUT << "\"pRegions\": " << std::endl;
25845      if (obj->pRegions) {
25846          PRINT_SPACE
25847          _OUT << "[" << std::endl;
25848          for (unsigned int i = 0; i < obj->swapchainCount; i++) {
25849            if (i+1 == obj->swapchainCount)
25850                print_VkPresentRegionKHR(obj->pRegions[i], "pRegions", 0);
25851            else
25852                print_VkPresentRegionKHR(obj->pRegions[i], "pRegions", 1);
25853          }
25854          PRINT_SPACE
25855          _OUT << "]" << std::endl;
25856     }
25857      else
25858      {
25859          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
25860      }
25861 
25862      INDENT(-4);
25863      PRINT_SPACE
25864      if (commaNeeded)
25865          _OUT << "}," << std::endl;
25866      else
25867          _OUT << "}" << std::endl;
25868 }
25869 
print_VkSharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCapabilitiesKHR obj,const std::string & s,bool commaNeeded=true)25870 static void print_VkSharedPresentSurfaceCapabilitiesKHR(VkSharedPresentSurfaceCapabilitiesKHR obj, const std::string& s, bool commaNeeded=true) {
25871      PRINT_SPACE
25872      _OUT << "{" << std::endl;
25873      INDENT(4);
25874 
25875      print_VkStructureType(obj.sType, "sType", 1);
25876 
25877       if (obj.pNext) {
25878          dumpPNextChain(obj.pNext);
25879       } else {
25880          PRINT_SPACE
25881          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25882      }
25883 
25884      print_VkImageUsageFlags(obj.sharedPresentSupportedUsageFlags, "sharedPresentSupportedUsageFlags", 0);
25885 
25886      INDENT(-4);
25887      PRINT_SPACE
25888      if (commaNeeded)
25889          _OUT << "}," << std::endl;
25890      else
25891          _OUT << "}" << std::endl;
25892 }
print_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSurfaceCapabilitiesKHR * obj,const std::string & s,bool commaNeeded=true)25893 static void print_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSurfaceCapabilitiesKHR * obj, const std::string& s, bool commaNeeded=true) {
25894      PRINT_SPACE
25895      _OUT << "{" << std::endl;
25896      INDENT(4);
25897 
25898      print_VkStructureType(obj->sType, "sType", 1);
25899 
25900       if (obj->pNext) {
25901          dumpPNextChain(obj->pNext);
25902       } else {
25903          PRINT_SPACE
25904          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25905      }
25906 
25907      print_VkImageUsageFlags(obj->sharedPresentSupportedUsageFlags, "sharedPresentSupportedUsageFlags", 0);
25908 
25909      INDENT(-4);
25910      PRINT_SPACE
25911      if (commaNeeded)
25912          _OUT << "}," << std::endl;
25913      else
25914          _OUT << "}" << std::endl;
25915 }
25916 
print_VkImportFenceFdInfoKHR(VkImportFenceFdInfoKHR obj,const std::string & s,bool commaNeeded=true)25917 static void print_VkImportFenceFdInfoKHR(VkImportFenceFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25918      PRINT_SPACE
25919      _OUT << "{" << std::endl;
25920      INDENT(4);
25921 
25922      print_VkStructureType(obj.sType, "sType", 1);
25923 
25924       if (obj.pNext) {
25925          dumpPNextChain(obj.pNext);
25926       } else {
25927          PRINT_SPACE
25928          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25929      }
25930 
25931      // CTS : required value
25932      PRINT_SPACE    _OUT << "\"" << "fence" << "\"" << " : " << "\"" << "\"," << std::endl;
25933 
25934      print_VkFenceImportFlags(obj.flags, "flags", 1);
25935 
25936      print_VkExternalFenceHandleTypeFlagBits(obj.handleType, "handleType", 1);
25937 
25938      print_int(obj.fd, "fd", 0);
25939 
25940      INDENT(-4);
25941      PRINT_SPACE
25942      if (commaNeeded)
25943          _OUT << "}," << std::endl;
25944      else
25945          _OUT << "}" << std::endl;
25946 }
print_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * obj,const std::string & s,bool commaNeeded=true)25947 static void print_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
25948      PRINT_SPACE
25949      _OUT << "{" << std::endl;
25950      INDENT(4);
25951 
25952      print_VkStructureType(obj->sType, "sType", 1);
25953 
25954       if (obj->pNext) {
25955          dumpPNextChain(obj->pNext);
25956       } else {
25957          PRINT_SPACE
25958          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25959      }
25960 
25961      // CTS : required value
25962      PRINT_SPACE    _OUT << "\"" << "fence" << "\"" << " : " << "\"" << "\"," << std::endl;
25963 
25964      print_VkFenceImportFlags(obj->flags, "flags", 1);
25965 
25966      print_VkExternalFenceHandleTypeFlagBits(obj->handleType, "handleType", 1);
25967 
25968      print_int(obj->fd, "fd", 0);
25969 
25970      INDENT(-4);
25971      PRINT_SPACE
25972      if (commaNeeded)
25973          _OUT << "}," << std::endl;
25974      else
25975          _OUT << "}" << std::endl;
25976 }
25977 
print_VkFenceGetFdInfoKHR(VkFenceGetFdInfoKHR obj,const std::string & s,bool commaNeeded=true)25978 static void print_VkFenceGetFdInfoKHR(VkFenceGetFdInfoKHR obj, const std::string& s, bool commaNeeded=true) {
25979      PRINT_SPACE
25980      _OUT << "{" << std::endl;
25981      INDENT(4);
25982 
25983      print_VkStructureType(obj.sType, "sType", 1);
25984 
25985       if (obj.pNext) {
25986          dumpPNextChain(obj.pNext);
25987       } else {
25988          PRINT_SPACE
25989          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
25990      }
25991 
25992      // CTS : required value
25993      PRINT_SPACE    _OUT << "\"" << "fence" << "\"" << " : " << "\"" << "\"," << std::endl;
25994 
25995      print_VkExternalFenceHandleTypeFlagBits(obj.handleType, "handleType", 0);
25996 
25997      INDENT(-4);
25998      PRINT_SPACE
25999      if (commaNeeded)
26000          _OUT << "}," << std::endl;
26001      else
26002          _OUT << "}" << std::endl;
26003 }
print_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR * obj,const std::string & s,bool commaNeeded=true)26004 static void print_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
26005      PRINT_SPACE
26006      _OUT << "{" << std::endl;
26007      INDENT(4);
26008 
26009      print_VkStructureType(obj->sType, "sType", 1);
26010 
26011       if (obj->pNext) {
26012          dumpPNextChain(obj->pNext);
26013       } else {
26014          PRINT_SPACE
26015          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26016      }
26017 
26018      // CTS : required value
26019      PRINT_SPACE    _OUT << "\"" << "fence" << "\"" << " : " << "\"" << "\"," << std::endl;
26020 
26021      print_VkExternalFenceHandleTypeFlagBits(obj->handleType, "handleType", 0);
26022 
26023      INDENT(-4);
26024      PRINT_SPACE
26025      if (commaNeeded)
26026          _OUT << "}," << std::endl;
26027      else
26028          _OUT << "}" << std::endl;
26029 }
26030 
26031 static std::map<deUint64, std::string> VkPerformanceCounterUnitKHR_map = {
26032     std::make_pair(0, "VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR"),
26033     std::make_pair(1, "VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR"),
26034     std::make_pair(2, "VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR"),
26035     std::make_pair(3, "VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR"),
26036     std::make_pair(4, "VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR"),
26037     std::make_pair(5, "VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR"),
26038     std::make_pair(6, "VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR"),
26039     std::make_pair(7, "VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR"),
26040     std::make_pair(8, "VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR"),
26041     std::make_pair(9, "VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR"),
26042     std::make_pair(10, "VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR"),
26043 };
print_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR obj,const std::string & str,bool commaNeeded=true)26044 static void print_VkPerformanceCounterUnitKHR(VkPerformanceCounterUnitKHR obj, const std::string& str, bool commaNeeded=true) {
26045      PRINT_SPACE
26046      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26047      if (commaNeeded)
26048          _OUT << "\"" <<  VkPerformanceCounterUnitKHR_map[obj] << "\"," << std::endl;
26049      else
26050          _OUT << "\"" << VkPerformanceCounterUnitKHR_map[obj] << "\"" << std::endl;
26051 }
print_VkPerformanceCounterUnitKHR(const VkPerformanceCounterUnitKHR * obj,const std::string & str,bool commaNeeded=true)26052 static void print_VkPerformanceCounterUnitKHR(const VkPerformanceCounterUnitKHR * obj, const std::string& str, bool commaNeeded=true) {
26053      PRINT_SPACE
26054      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26055      if (commaNeeded)
26056          _OUT << "\"" <<  VkPerformanceCounterUnitKHR_map[*obj] << "\"," << std::endl;
26057      else
26058          _OUT << "\"" << VkPerformanceCounterUnitKHR_map[*obj] << "\"" << std::endl;
26059 }
26060 
26061 static std::map<deUint64, std::string> VkPerformanceCounterScopeKHR_map = {
26062     std::make_pair(0, "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR"),
26063     std::make_pair(1, "VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR"),
26064     std::make_pair(2, "VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR"),
26065 };
print_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR obj,const std::string & str,bool commaNeeded=true)26066 static void print_VkPerformanceCounterScopeKHR(VkPerformanceCounterScopeKHR obj, const std::string& str, bool commaNeeded=true) {
26067      PRINT_SPACE
26068      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26069      if (commaNeeded)
26070          _OUT << "\"" <<  VkPerformanceCounterScopeKHR_map[obj] << "\"," << std::endl;
26071      else
26072          _OUT << "\"" << VkPerformanceCounterScopeKHR_map[obj] << "\"" << std::endl;
26073 }
print_VkPerformanceCounterScopeKHR(const VkPerformanceCounterScopeKHR * obj,const std::string & str,bool commaNeeded=true)26074 static void print_VkPerformanceCounterScopeKHR(const VkPerformanceCounterScopeKHR * obj, const std::string& str, bool commaNeeded=true) {
26075      PRINT_SPACE
26076      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26077      if (commaNeeded)
26078          _OUT << "\"" <<  VkPerformanceCounterScopeKHR_map[*obj] << "\"," << std::endl;
26079      else
26080          _OUT << "\"" << VkPerformanceCounterScopeKHR_map[*obj] << "\"" << std::endl;
26081 }
26082 
26083 static std::map<deUint64, std::string> VkPerformanceCounterStorageKHR_map = {
26084     std::make_pair(0, "VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR"),
26085     std::make_pair(1, "VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR"),
26086     std::make_pair(2, "VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR"),
26087     std::make_pair(3, "VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR"),
26088     std::make_pair(4, "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR"),
26089     std::make_pair(5, "VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR"),
26090 };
print_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR obj,const std::string & str,bool commaNeeded=true)26091 static void print_VkPerformanceCounterStorageKHR(VkPerformanceCounterStorageKHR obj, const std::string& str, bool commaNeeded=true) {
26092      PRINT_SPACE
26093      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26094      if (commaNeeded)
26095          _OUT << "\"" <<  VkPerformanceCounterStorageKHR_map[obj] << "\"," << std::endl;
26096      else
26097          _OUT << "\"" << VkPerformanceCounterStorageKHR_map[obj] << "\"" << std::endl;
26098 }
print_VkPerformanceCounterStorageKHR(const VkPerformanceCounterStorageKHR * obj,const std::string & str,bool commaNeeded=true)26099 static void print_VkPerformanceCounterStorageKHR(const VkPerformanceCounterStorageKHR * obj, const std::string& str, bool commaNeeded=true) {
26100      PRINT_SPACE
26101      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26102      if (commaNeeded)
26103          _OUT << "\"" <<  VkPerformanceCounterStorageKHR_map[*obj] << "\"," << std::endl;
26104      else
26105          _OUT << "\"" << VkPerformanceCounterStorageKHR_map[*obj] << "\"" << std::endl;
26106 }
26107 
26108 static std::map<deUint64, std::string> VkPerformanceCounterDescriptionFlagBitsKHR_map = {
26109     std::make_pair(1ULL << 0, "VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR"),
26110     std::make_pair(1ULL << 1, "VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR"),
26111 };
print_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)26112 static void print_VkPerformanceCounterDescriptionFlagBitsKHR(VkPerformanceCounterDescriptionFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
26113      PRINT_SPACE
26114      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26115      if (commaNeeded)
26116          _OUT << "\"" <<  VkPerformanceCounterDescriptionFlagBitsKHR_map[obj] << "\"," << std::endl;
26117      else
26118          _OUT << "\"" << VkPerformanceCounterDescriptionFlagBitsKHR_map[obj] << "\"" << std::endl;
26119 }
print_VkPerformanceCounterDescriptionFlagBitsKHR(const VkPerformanceCounterDescriptionFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)26120 static void print_VkPerformanceCounterDescriptionFlagBitsKHR(const VkPerformanceCounterDescriptionFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
26121      PRINT_SPACE
26122      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26123      if (commaNeeded)
26124          _OUT << "\"" <<  VkPerformanceCounterDescriptionFlagBitsKHR_map[*obj] << "\"," << std::endl;
26125      else
26126          _OUT << "\"" << VkPerformanceCounterDescriptionFlagBitsKHR_map[*obj] << "\"" << std::endl;
26127 }
26128 
26129 static std::map<deUint64, std::string> VkAcquireProfilingLockFlagBitsKHR_map = {
26130 };
print_VkAcquireProfilingLockFlagBitsKHR(VkAcquireProfilingLockFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)26131 static void print_VkAcquireProfilingLockFlagBitsKHR(VkAcquireProfilingLockFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
26132      PRINT_SPACE
26133      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26134      if (commaNeeded)
26135          _OUT << "\"" <<  VkAcquireProfilingLockFlagBitsKHR_map[obj] << "\"," << std::endl;
26136      else
26137          _OUT << "\"" << VkAcquireProfilingLockFlagBitsKHR_map[obj] << "\"" << std::endl;
26138 }
print_VkAcquireProfilingLockFlagBitsKHR(const VkAcquireProfilingLockFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)26139 static void print_VkAcquireProfilingLockFlagBitsKHR(const VkAcquireProfilingLockFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
26140      PRINT_SPACE
26141      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26142      if (commaNeeded)
26143          _OUT << "\"" <<  VkAcquireProfilingLockFlagBitsKHR_map[*obj] << "\"," << std::endl;
26144      else
26145          _OUT << "\"" << VkAcquireProfilingLockFlagBitsKHR_map[*obj] << "\"" << std::endl;
26146 }
26147 
print_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR obj,const std::string & str,bool commaNeeded=true)26148 static void print_VkPerformanceCounterDescriptionFlagsKHR(VkPerformanceCounterDescriptionFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
26149      PRINT_SPACE
26150      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26151      const int max_bits = 64; // We don't expect the number to be larger.
26152      std::bitset<max_bits> b(obj);
26153      _OUT << "\"";
26154      if (obj == 0) _OUT << "0";
26155      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
26156          if (b[i] == 1) {
26157              bitCount++;
26158              if (bitCount < b.count())
26159                  _OUT << VkPerformanceCounterDescriptionFlagBitsKHR_map[1ULL<<i] << " | ";
26160              else
26161                  _OUT << VkPerformanceCounterDescriptionFlagBitsKHR_map[1ULL<<i];
26162          }
26163      }
26164      if (commaNeeded)
26165        _OUT << "\"" << ",";
26166      else
26167        _OUT << "\""<< "";
26168      _OUT << std::endl;
26169 }
print_VkPerformanceCounterDescriptionFlagsKHR(const VkPerformanceCounterDescriptionFlagsKHR * obj,const std::string & str,bool commaNeeded=true)26170 static void print_VkPerformanceCounterDescriptionFlagsKHR(const VkPerformanceCounterDescriptionFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
26171      PRINT_SPACE
26172      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26173      const int max_bits = 64; // We don't expect the number to be larger.
26174      std::bitset<max_bits> b(obj);
26175      _OUT << "\"";
26176      if (obj == 0) _OUT << "0";
26177      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
26178          if (b[i] == 1) {
26179              bitCount++;
26180              if (bitCount < b.count())
26181                  _OUT << VkPerformanceCounterDescriptionFlagBitsKHR_map[1ULL<<i] << " | ";
26182              else
26183                  _OUT << VkPerformanceCounterDescriptionFlagBitsKHR_map[1ULL<<i];
26184          }
26185      }
26186      if (commaNeeded)
26187        _OUT << "\"" << ",";
26188      else
26189        _OUT << "\""<< "";
26190      _OUT << std::endl;
26191 }
26192 
print_VkAcquireProfilingLockFlagsKHR(VkAcquireProfilingLockFlagsKHR obj,const std::string & str,bool commaNeeded=true)26193 static void print_VkAcquireProfilingLockFlagsKHR(VkAcquireProfilingLockFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
26194      PRINT_SPACE
26195      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26196      const int max_bits = 64; // We don't expect the number to be larger.
26197      std::bitset<max_bits> b(obj);
26198      _OUT << "\"";
26199      if (obj == 0) _OUT << "0";
26200      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
26201          if (b[i] == 1) {
26202              bitCount++;
26203              if (bitCount < b.count())
26204                  _OUT << VkAcquireProfilingLockFlagBitsKHR_map[1ULL<<i] << " | ";
26205              else
26206                  _OUT << VkAcquireProfilingLockFlagBitsKHR_map[1ULL<<i];
26207          }
26208      }
26209      if (commaNeeded)
26210        _OUT << "\"" << ",";
26211      else
26212        _OUT << "\""<< "";
26213      _OUT << std::endl;
26214 }
print_VkAcquireProfilingLockFlagsKHR(const VkAcquireProfilingLockFlagsKHR * obj,const std::string & str,bool commaNeeded=true)26215 static void print_VkAcquireProfilingLockFlagsKHR(const VkAcquireProfilingLockFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
26216      PRINT_SPACE
26217      if (str != "") _OUT << "\"" << str << "\"" << " : ";
26218      const int max_bits = 64; // We don't expect the number to be larger.
26219      std::bitset<max_bits> b(obj);
26220      _OUT << "\"";
26221      if (obj == 0) _OUT << "0";
26222      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
26223          if (b[i] == 1) {
26224              bitCount++;
26225              if (bitCount < b.count())
26226                  _OUT << VkAcquireProfilingLockFlagBitsKHR_map[1ULL<<i] << " | ";
26227              else
26228                  _OUT << VkAcquireProfilingLockFlagBitsKHR_map[1ULL<<i];
26229          }
26230      }
26231      if (commaNeeded)
26232        _OUT << "\"" << ",";
26233      else
26234        _OUT << "\""<< "";
26235      _OUT << std::endl;
26236 }
26237 
print_VkPhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePerformanceQueryFeaturesKHR obj,const std::string & s,bool commaNeeded=true)26238 static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(VkPhysicalDevicePerformanceQueryFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
26239      PRINT_SPACE
26240      _OUT << "{" << std::endl;
26241      INDENT(4);
26242 
26243      print_VkStructureType(obj.sType, "sType", 1);
26244 
26245       if (obj.pNext) {
26246          dumpPNextChain(obj.pNext);
26247       } else {
26248          PRINT_SPACE
26249          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26250      }
26251 
26252      print_VkBool32(obj.performanceCounterQueryPools, "performanceCounterQueryPools", 1);
26253 
26254      print_VkBool32(obj.performanceCounterMultipleQueryPools, "performanceCounterMultipleQueryPools", 0);
26255 
26256      INDENT(-4);
26257      PRINT_SPACE
26258      if (commaNeeded)
26259          _OUT << "}," << std::endl;
26260      else
26261          _OUT << "}" << std::endl;
26262 }
print_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDevicePerformanceQueryFeaturesKHR * obj,const std::string & s,bool commaNeeded=true)26263 static void print_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDevicePerformanceQueryFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
26264      PRINT_SPACE
26265      _OUT << "{" << std::endl;
26266      INDENT(4);
26267 
26268      print_VkStructureType(obj->sType, "sType", 1);
26269 
26270       if (obj->pNext) {
26271          dumpPNextChain(obj->pNext);
26272       } else {
26273          PRINT_SPACE
26274          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26275      }
26276 
26277      print_VkBool32(obj->performanceCounterQueryPools, "performanceCounterQueryPools", 1);
26278 
26279      print_VkBool32(obj->performanceCounterMultipleQueryPools, "performanceCounterMultipleQueryPools", 0);
26280 
26281      INDENT(-4);
26282      PRINT_SPACE
26283      if (commaNeeded)
26284          _OUT << "}," << std::endl;
26285      else
26286          _OUT << "}" << std::endl;
26287 }
26288 
print_VkPhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevicePerformanceQueryPropertiesKHR obj,const std::string & s,bool commaNeeded=true)26289 static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(VkPhysicalDevicePerformanceQueryPropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
26290      PRINT_SPACE
26291      _OUT << "{" << std::endl;
26292      INDENT(4);
26293 
26294      print_VkStructureType(obj.sType, "sType", 1);
26295 
26296       if (obj.pNext) {
26297          dumpPNextChain(obj.pNext);
26298       } else {
26299          PRINT_SPACE
26300          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26301      }
26302 
26303      print_VkBool32(obj.allowCommandBufferQueryCopies, "allowCommandBufferQueryCopies", 0);
26304 
26305      INDENT(-4);
26306      PRINT_SPACE
26307      if (commaNeeded)
26308          _OUT << "}," << std::endl;
26309      else
26310          _OUT << "}" << std::endl;
26311 }
print_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysicalDevicePerformanceQueryPropertiesKHR * obj,const std::string & s,bool commaNeeded=true)26312 static void print_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysicalDevicePerformanceQueryPropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
26313      PRINT_SPACE
26314      _OUT << "{" << std::endl;
26315      INDENT(4);
26316 
26317      print_VkStructureType(obj->sType, "sType", 1);
26318 
26319       if (obj->pNext) {
26320          dumpPNextChain(obj->pNext);
26321       } else {
26322          PRINT_SPACE
26323          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26324      }
26325 
26326      print_VkBool32(obj->allowCommandBufferQueryCopies, "allowCommandBufferQueryCopies", 0);
26327 
26328      INDENT(-4);
26329      PRINT_SPACE
26330      if (commaNeeded)
26331          _OUT << "}," << std::endl;
26332      else
26333          _OUT << "}" << std::endl;
26334 }
26335 
print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj,const std::string & s,bool commaNeeded=true)26336 static void print_VkPerformanceCounterKHR(VkPerformanceCounterKHR obj, const std::string& s, bool commaNeeded=true) {
26337      PRINT_SPACE
26338      _OUT << "{" << std::endl;
26339      INDENT(4);
26340 
26341      print_VkStructureType(obj.sType, "sType", 1);
26342 
26343       if (obj.pNext) {
26344          dumpPNextChain(obj.pNext);
26345       } else {
26346          PRINT_SPACE
26347          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26348      }
26349 
26350      print_VkPerformanceCounterUnitKHR(obj.unit, "unit", 1);
26351 
26352      print_VkPerformanceCounterScopeKHR(obj.scope, "scope", 1);
26353 
26354      print_VkPerformanceCounterStorageKHR(obj.storage, "storage", 1);
26355 
26356      PRINT_SPACE
26357      _OUT << "\"uuid\":" << std::endl;
26358      PRINT_SPACE
26359        _OUT << "[" << std::endl;
26360        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
26361            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
26362            print_uint8_t(obj.uuid[i], "", isCommaNeeded);
26363        }
26364        PRINT_SPACE
26365        _OUT << "]" << "" << std::endl;
26366 
26367      INDENT(-4);
26368      PRINT_SPACE
26369      if (commaNeeded)
26370          _OUT << "}," << std::endl;
26371      else
26372          _OUT << "}" << std::endl;
26373 }
print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj,const std::string & s,bool commaNeeded=true)26374 static void print_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * obj, const std::string& s, bool commaNeeded=true) {
26375      PRINT_SPACE
26376      _OUT << "{" << std::endl;
26377      INDENT(4);
26378 
26379      print_VkStructureType(obj->sType, "sType", 1);
26380 
26381       if (obj->pNext) {
26382          dumpPNextChain(obj->pNext);
26383       } else {
26384          PRINT_SPACE
26385          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26386      }
26387 
26388      print_VkPerformanceCounterUnitKHR(obj->unit, "unit", 1);
26389 
26390      print_VkPerformanceCounterScopeKHR(obj->scope, "scope", 1);
26391 
26392      print_VkPerformanceCounterStorageKHR(obj->storage, "storage", 1);
26393 
26394      PRINT_SPACE
26395      _OUT << "\"uuid\":" << std::endl;
26396      PRINT_SPACE
26397        _OUT << "[" << std::endl;
26398        for (unsigned int i = 0; i < VK_UUID_SIZE; i++) {
26399            bool isCommaNeeded = (i+1) != VK_UUID_SIZE;
26400            print_uint8_t(obj->uuid[i], "", isCommaNeeded);
26401        }
26402        PRINT_SPACE
26403        _OUT << "]" << "" << std::endl;
26404 
26405      INDENT(-4);
26406      PRINT_SPACE
26407      if (commaNeeded)
26408          _OUT << "}," << std::endl;
26409      else
26410          _OUT << "}" << std::endl;
26411 }
26412 
print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescriptionKHR obj,const std::string & s,bool commaNeeded=true)26413 static void print_VkPerformanceCounterDescriptionKHR(VkPerformanceCounterDescriptionKHR obj, const std::string& s, bool commaNeeded=true) {
26414      PRINT_SPACE
26415      _OUT << "{" << std::endl;
26416      INDENT(4);
26417 
26418      print_VkStructureType(obj.sType, "sType", 1);
26419 
26420       if (obj.pNext) {
26421          dumpPNextChain(obj.pNext);
26422       } else {
26423          PRINT_SPACE
26424          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26425      }
26426 
26427      print_VkPerformanceCounterDescriptionFlagsKHR(obj.flags, "flags", 1);
26428 
26429      PRINT_SPACE
26430      _OUT << "\"name\":" << std::endl;
26431      PRINT_SPACE
26432        _OUT << "[" << std::endl;
26433        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
26434            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
26435            print_char(obj.name[i], "", isCommaNeeded);
26436        }
26437        PRINT_SPACE
26438        _OUT << "]" << "," << std::endl;
26439 
26440      PRINT_SPACE
26441      _OUT << "\"category\":" << std::endl;
26442      PRINT_SPACE
26443        _OUT << "[" << std::endl;
26444        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
26445            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
26446            print_char(obj.category[i], "", isCommaNeeded);
26447        }
26448        PRINT_SPACE
26449        _OUT << "]" << "," << std::endl;
26450 
26451      PRINT_SPACE
26452      _OUT << "\"description\":" << std::endl;
26453      PRINT_SPACE
26454        _OUT << "[" << std::endl;
26455        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
26456            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
26457            print_char(obj.description[i], "", isCommaNeeded);
26458        }
26459        PRINT_SPACE
26460        _OUT << "]" << "" << std::endl;
26461 
26462      INDENT(-4);
26463      PRINT_SPACE
26464      if (commaNeeded)
26465          _OUT << "}," << std::endl;
26466      else
26467          _OUT << "}" << std::endl;
26468 }
print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR * obj,const std::string & s,bool commaNeeded=true)26469 static void print_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR * obj, const std::string& s, bool commaNeeded=true) {
26470      PRINT_SPACE
26471      _OUT << "{" << std::endl;
26472      INDENT(4);
26473 
26474      print_VkStructureType(obj->sType, "sType", 1);
26475 
26476       if (obj->pNext) {
26477          dumpPNextChain(obj->pNext);
26478       } else {
26479          PRINT_SPACE
26480          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26481      }
26482 
26483      print_VkPerformanceCounterDescriptionFlagsKHR(obj->flags, "flags", 1);
26484 
26485      PRINT_SPACE
26486      _OUT << "\"name\":" << std::endl;
26487      PRINT_SPACE
26488        _OUT << "[" << std::endl;
26489        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
26490            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
26491            print_char(obj->name[i], "", isCommaNeeded);
26492        }
26493        PRINT_SPACE
26494        _OUT << "]" << "," << std::endl;
26495 
26496      PRINT_SPACE
26497      _OUT << "\"category\":" << std::endl;
26498      PRINT_SPACE
26499        _OUT << "[" << std::endl;
26500        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
26501            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
26502            print_char(obj->category[i], "", isCommaNeeded);
26503        }
26504        PRINT_SPACE
26505        _OUT << "]" << "," << std::endl;
26506 
26507      PRINT_SPACE
26508      _OUT << "\"description\":" << std::endl;
26509      PRINT_SPACE
26510        _OUT << "[" << std::endl;
26511        for (unsigned int i = 0; i < VK_MAX_DESCRIPTION_SIZE; i++) {
26512            bool isCommaNeeded = (i+1) != VK_MAX_DESCRIPTION_SIZE;
26513            print_char(obj->description[i], "", isCommaNeeded);
26514        }
26515        PRINT_SPACE
26516        _OUT << "]" << "" << std::endl;
26517 
26518      INDENT(-4);
26519      PRINT_SPACE
26520      if (commaNeeded)
26521          _OUT << "}," << std::endl;
26522      else
26523          _OUT << "}" << std::endl;
26524 }
26525 
print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)26526 static void print_VkQueryPoolPerformanceCreateInfoKHR(VkQueryPoolPerformanceCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
26527      PRINT_SPACE
26528      _OUT << "{" << std::endl;
26529      INDENT(4);
26530 
26531      print_VkStructureType(obj.sType, "sType", 1);
26532 
26533       if (obj.pNext) {
26534          dumpPNextChain(obj.pNext);
26535       } else {
26536          PRINT_SPACE
26537          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26538      }
26539 
26540      print_uint32_t(obj.queueFamilyIndex, "queueFamilyIndex", 1);
26541 
26542      print_uint32_t(obj.counterIndexCount, "counterIndexCount", 1);
26543 
26544      PRINT_SPACE
26545      _OUT << "\"pCounterIndices\":" << std::endl;
26546      PRINT_SPACE
26547      if (obj.pCounterIndices) {
26548        _OUT << "[" << std::endl;
26549        for (unsigned int i = 0; i < obj.counterIndexCount; i++) {
26550            bool isCommaNeeded = (i+1) != obj.counterIndexCount;
26551            print_uint32_t(obj.pCounterIndices[i], "", isCommaNeeded);
26552        }
26553        PRINT_SPACE
26554        _OUT << "]" << "" << std::endl;
26555      } else {
26556        _OUT << "\"NULL\"" << "" << std::endl;
26557      }
26558 
26559      INDENT(-4);
26560      PRINT_SPACE
26561      if (commaNeeded)
26562          _OUT << "}," << std::endl;
26563      else
26564          _OUT << "}" << std::endl;
26565 }
print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)26566 static void print_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
26567      PRINT_SPACE
26568      _OUT << "{" << std::endl;
26569      INDENT(4);
26570 
26571      print_VkStructureType(obj->sType, "sType", 1);
26572 
26573       if (obj->pNext) {
26574          dumpPNextChain(obj->pNext);
26575       } else {
26576          PRINT_SPACE
26577          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26578      }
26579 
26580      print_uint32_t(obj->queueFamilyIndex, "queueFamilyIndex", 1);
26581 
26582      print_uint32_t(obj->counterIndexCount, "counterIndexCount", 1);
26583 
26584      PRINT_SPACE
26585      _OUT << "\"pCounterIndices\":" << std::endl;
26586      PRINT_SPACE
26587      if (obj->pCounterIndices) {
26588        _OUT << "[" << std::endl;
26589        for (unsigned int i = 0; i < obj->counterIndexCount; i++) {
26590            bool isCommaNeeded = (i+1) != obj->counterIndexCount;
26591            print_uint32_t(obj->pCounterIndices[i], "", isCommaNeeded);
26592        }
26593        PRINT_SPACE
26594        _OUT << "]" << "" << std::endl;
26595      } else {
26596        _OUT << "\"NULL\"" << "" << std::endl;
26597      }
26598 
26599      INDENT(-4);
26600      PRINT_SPACE
26601      if (commaNeeded)
26602          _OUT << "}," << std::endl;
26603      else
26604          _OUT << "}" << std::endl;
26605 }
26606 
print_VkPerformanceCounterResultKHR(VkPerformanceCounterResultKHR obj,const std::string & s,bool commaNeeded=true)26607 static void print_VkPerformanceCounterResultKHR(VkPerformanceCounterResultKHR obj, const std::string& s, bool commaNeeded=true) {
26608      PRINT_SPACE
26609      _OUT << "{" << std::endl;
26610      INDENT(4);
26611 
26612      print_int32_t(obj.int32, "int32", 1);
26613 
26614      print_int64_t(obj.int64, "int64", 1);
26615 
26616      print_uint32_t(obj.uint32, "uint32", 1);
26617 
26618      print_uint64_t(obj.uint64, "uint64", 1);
26619 
26620      print_float(obj.float32, "float32", 1);
26621 
26622      print_double(obj.float64, "float64", 0);
26623 
26624      INDENT(-4);
26625      PRINT_SPACE
26626      if (commaNeeded)
26627          _OUT << "}," << std::endl;
26628      else
26629          _OUT << "}" << std::endl;
26630 }
print_VkPerformanceCounterResultKHR(const VkPerformanceCounterResultKHR * obj,const std::string & s,bool commaNeeded=true)26631 static void print_VkPerformanceCounterResultKHR(const VkPerformanceCounterResultKHR * obj, const std::string& s, bool commaNeeded=true) {
26632      PRINT_SPACE
26633      _OUT << "{" << std::endl;
26634      INDENT(4);
26635 
26636      print_int32_t(obj->int32, "int32", 1);
26637 
26638      print_int64_t(obj->int64, "int64", 1);
26639 
26640      print_uint32_t(obj->uint32, "uint32", 1);
26641 
26642      print_uint64_t(obj->uint64, "uint64", 1);
26643 
26644      print_float(obj->float32, "float32", 1);
26645 
26646      print_double(obj->float64, "float64", 0);
26647 
26648      INDENT(-4);
26649      PRINT_SPACE
26650      if (commaNeeded)
26651          _OUT << "}," << std::endl;
26652      else
26653          _OUT << "}" << std::endl;
26654 }
26655 
print_VkAcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR obj,const std::string & s,bool commaNeeded=true)26656 static void print_VkAcquireProfilingLockInfoKHR(VkAcquireProfilingLockInfoKHR obj, const std::string& s, bool commaNeeded=true) {
26657      PRINT_SPACE
26658      _OUT << "{" << std::endl;
26659      INDENT(4);
26660 
26661      print_VkStructureType(obj.sType, "sType", 1);
26662 
26663       if (obj.pNext) {
26664          dumpPNextChain(obj.pNext);
26665       } else {
26666          PRINT_SPACE
26667          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26668      }
26669 
26670      print_VkAcquireProfilingLockFlagsKHR(obj.flags, "flags", 1);
26671 
26672      print_uint64_t(obj.timeout, "timeout", 0);
26673 
26674      INDENT(-4);
26675      PRINT_SPACE
26676      if (commaNeeded)
26677          _OUT << "}," << std::endl;
26678      else
26679          _OUT << "}" << std::endl;
26680 }
print_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR * obj,const std::string & s,bool commaNeeded=true)26681 static void print_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
26682      PRINT_SPACE
26683      _OUT << "{" << std::endl;
26684      INDENT(4);
26685 
26686      print_VkStructureType(obj->sType, "sType", 1);
26687 
26688       if (obj->pNext) {
26689          dumpPNextChain(obj->pNext);
26690       } else {
26691          PRINT_SPACE
26692          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26693      }
26694 
26695      print_VkAcquireProfilingLockFlagsKHR(obj->flags, "flags", 1);
26696 
26697      print_uint64_t(obj->timeout, "timeout", 0);
26698 
26699      INDENT(-4);
26700      PRINT_SPACE
26701      if (commaNeeded)
26702          _OUT << "}," << std::endl;
26703      else
26704          _OUT << "}" << std::endl;
26705 }
26706 
print_VkPerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKHR obj,const std::string & s,bool commaNeeded=true)26707 static void print_VkPerformanceQuerySubmitInfoKHR(VkPerformanceQuerySubmitInfoKHR obj, const std::string& s, bool commaNeeded=true) {
26708      PRINT_SPACE
26709      _OUT << "{" << std::endl;
26710      INDENT(4);
26711 
26712      print_VkStructureType(obj.sType, "sType", 1);
26713 
26714       if (obj.pNext) {
26715          dumpPNextChain(obj.pNext);
26716       } else {
26717          PRINT_SPACE
26718          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26719      }
26720 
26721      print_uint32_t(obj.counterPassIndex, "counterPassIndex", 0);
26722 
26723      INDENT(-4);
26724      PRINT_SPACE
26725      if (commaNeeded)
26726          _OUT << "}," << std::endl;
26727      else
26728          _OUT << "}" << std::endl;
26729 }
print_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR * obj,const std::string & s,bool commaNeeded=true)26730 static void print_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
26731      PRINT_SPACE
26732      _OUT << "{" << std::endl;
26733      INDENT(4);
26734 
26735      print_VkStructureType(obj->sType, "sType", 1);
26736 
26737       if (obj->pNext) {
26738          dumpPNextChain(obj->pNext);
26739       } else {
26740          PRINT_SPACE
26741          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26742      }
26743 
26744      print_uint32_t(obj->counterPassIndex, "counterPassIndex", 0);
26745 
26746      INDENT(-4);
26747      PRINT_SPACE
26748      if (commaNeeded)
26749          _OUT << "}," << std::endl;
26750      else
26751          _OUT << "}" << std::endl;
26752 }
26753 
print_VkPerformanceQueryReservationInfoKHR(VkPerformanceQueryReservationInfoKHR obj,const std::string & s,bool commaNeeded=true)26754 static void print_VkPerformanceQueryReservationInfoKHR(VkPerformanceQueryReservationInfoKHR obj, const std::string& s, bool commaNeeded=true) {
26755      PRINT_SPACE
26756      _OUT << "{" << std::endl;
26757      INDENT(4);
26758 
26759      print_VkStructureType(obj.sType, "sType", 1);
26760 
26761       if (obj.pNext) {
26762          dumpPNextChain(obj.pNext);
26763       } else {
26764          PRINT_SPACE
26765          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26766      }
26767 
26768      print_uint32_t(obj.maxPerformanceQueriesPerPool, "maxPerformanceQueriesPerPool", 0);
26769 
26770      INDENT(-4);
26771      PRINT_SPACE
26772      if (commaNeeded)
26773          _OUT << "}," << std::endl;
26774      else
26775          _OUT << "}" << std::endl;
26776 }
print_VkPerformanceQueryReservationInfoKHR(const VkPerformanceQueryReservationInfoKHR * obj,const std::string & s,bool commaNeeded=true)26777 static void print_VkPerformanceQueryReservationInfoKHR(const VkPerformanceQueryReservationInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
26778      PRINT_SPACE
26779      _OUT << "{" << std::endl;
26780      INDENT(4);
26781 
26782      print_VkStructureType(obj->sType, "sType", 1);
26783 
26784       if (obj->pNext) {
26785          dumpPNextChain(obj->pNext);
26786       } else {
26787          PRINT_SPACE
26788          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26789      }
26790 
26791      print_uint32_t(obj->maxPerformanceQueriesPerPool, "maxPerformanceQueriesPerPool", 0);
26792 
26793      INDENT(-4);
26794      PRINT_SPACE
26795      if (commaNeeded)
26796          _OUT << "}," << std::endl;
26797      else
26798          _OUT << "}" << std::endl;
26799 }
26800 
print_VkPhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KHR obj,const std::string & s,bool commaNeeded=true)26801 static void print_VkPhysicalDeviceSurfaceInfo2KHR(VkPhysicalDeviceSurfaceInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
26802      PRINT_SPACE
26803      _OUT << "{" << std::endl;
26804      INDENT(4);
26805 
26806      print_VkStructureType(obj.sType, "sType", 1);
26807 
26808       if (obj.pNext) {
26809          dumpPNextChain(obj.pNext);
26810       } else {
26811          PRINT_SPACE
26812          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26813      }
26814 
26815      // CTS : required value
26816      PRINT_SPACE    _OUT << "\"" << "surface" << "\"" << " : " << "\"" << "\"" << std::endl;
26817 
26818      INDENT(-4);
26819      PRINT_SPACE
26820      if (commaNeeded)
26821          _OUT << "}," << std::endl;
26822      else
26823          _OUT << "}" << std::endl;
26824 }
print_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR * obj,const std::string & s,bool commaNeeded=true)26825 static void print_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
26826      PRINT_SPACE
26827      _OUT << "{" << std::endl;
26828      INDENT(4);
26829 
26830      print_VkStructureType(obj->sType, "sType", 1);
26831 
26832       if (obj->pNext) {
26833          dumpPNextChain(obj->pNext);
26834       } else {
26835          PRINT_SPACE
26836          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26837      }
26838 
26839      // CTS : required value
26840      PRINT_SPACE    _OUT << "\"" << "surface" << "\"" << " : " << "\"" << "\"" << std::endl;
26841 
26842      INDENT(-4);
26843      PRINT_SPACE
26844      if (commaNeeded)
26845          _OUT << "}," << std::endl;
26846      else
26847          _OUT << "}" << std::endl;
26848 }
26849 
print_VkSurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR obj,const std::string & s,bool commaNeeded=true)26850 static void print_VkSurfaceCapabilities2KHR(VkSurfaceCapabilities2KHR obj, const std::string& s, bool commaNeeded=true) {
26851      PRINT_SPACE
26852      _OUT << "{" << std::endl;
26853      INDENT(4);
26854 
26855      print_VkStructureType(obj.sType, "sType", 1);
26856 
26857       if (obj.pNext) {
26858          dumpPNextChain(obj.pNext);
26859       } else {
26860          PRINT_SPACE
26861          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26862      }
26863 
26864      PRINT_SPACE
26865      _OUT << "\"surfaceCapabilities\": " << std::endl;
26866      {
26867            print_VkSurfaceCapabilitiesKHR(obj.surfaceCapabilities, "surfaceCapabilities", 0);
26868      }
26869 
26870      INDENT(-4);
26871      PRINT_SPACE
26872      if (commaNeeded)
26873          _OUT << "}," << std::endl;
26874      else
26875          _OUT << "}" << std::endl;
26876 }
print_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * obj,const std::string & s,bool commaNeeded=true)26877 static void print_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * obj, const std::string& s, bool commaNeeded=true) {
26878      PRINT_SPACE
26879      _OUT << "{" << std::endl;
26880      INDENT(4);
26881 
26882      print_VkStructureType(obj->sType, "sType", 1);
26883 
26884       if (obj->pNext) {
26885          dumpPNextChain(obj->pNext);
26886       } else {
26887          PRINT_SPACE
26888          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26889      }
26890 
26891      PRINT_SPACE
26892      _OUT << "\"surfaceCapabilities\": " << std::endl;
26893      {
26894            print_VkSurfaceCapabilitiesKHR(obj->surfaceCapabilities, "surfaceCapabilities", 0);
26895      }
26896 
26897      INDENT(-4);
26898      PRINT_SPACE
26899      if (commaNeeded)
26900          _OUT << "}," << std::endl;
26901      else
26902          _OUT << "}" << std::endl;
26903 }
26904 
print_VkSurfaceFormat2KHR(VkSurfaceFormat2KHR obj,const std::string & s,bool commaNeeded=true)26905 static void print_VkSurfaceFormat2KHR(VkSurfaceFormat2KHR obj, const std::string& s, bool commaNeeded=true) {
26906      PRINT_SPACE
26907      _OUT << "{" << std::endl;
26908      INDENT(4);
26909 
26910      print_VkStructureType(obj.sType, "sType", 1);
26911 
26912       if (obj.pNext) {
26913          dumpPNextChain(obj.pNext);
26914       } else {
26915          PRINT_SPACE
26916          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26917      }
26918 
26919      PRINT_SPACE
26920      _OUT << "\"surfaceFormat\": " << std::endl;
26921      {
26922            print_VkSurfaceFormatKHR(obj.surfaceFormat, "surfaceFormat", 0);
26923      }
26924 
26925      INDENT(-4);
26926      PRINT_SPACE
26927      if (commaNeeded)
26928          _OUT << "}," << std::endl;
26929      else
26930          _OUT << "}" << std::endl;
26931 }
print_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * obj,const std::string & s,bool commaNeeded=true)26932 static void print_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * obj, const std::string& s, bool commaNeeded=true) {
26933      PRINT_SPACE
26934      _OUT << "{" << std::endl;
26935      INDENT(4);
26936 
26937      print_VkStructureType(obj->sType, "sType", 1);
26938 
26939       if (obj->pNext) {
26940          dumpPNextChain(obj->pNext);
26941       } else {
26942          PRINT_SPACE
26943          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26944      }
26945 
26946      PRINT_SPACE
26947      _OUT << "\"surfaceFormat\": " << std::endl;
26948      {
26949            print_VkSurfaceFormatKHR(obj->surfaceFormat, "surfaceFormat", 0);
26950      }
26951 
26952      INDENT(-4);
26953      PRINT_SPACE
26954      if (commaNeeded)
26955          _OUT << "}," << std::endl;
26956      else
26957          _OUT << "}" << std::endl;
26958 }
26959 
print_VkDisplayProperties2KHR(VkDisplayProperties2KHR obj,const std::string & s,bool commaNeeded=true)26960 static void print_VkDisplayProperties2KHR(VkDisplayProperties2KHR obj, const std::string& s, bool commaNeeded=true) {
26961      PRINT_SPACE
26962      _OUT << "{" << std::endl;
26963      INDENT(4);
26964 
26965      print_VkStructureType(obj.sType, "sType", 1);
26966 
26967       if (obj.pNext) {
26968          dumpPNextChain(obj.pNext);
26969       } else {
26970          PRINT_SPACE
26971          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26972      }
26973 
26974      PRINT_SPACE
26975      _OUT << "\"displayProperties\": " << std::endl;
26976      {
26977            print_VkDisplayPropertiesKHR(obj.displayProperties, "displayProperties", 0);
26978      }
26979 
26980      INDENT(-4);
26981      PRINT_SPACE
26982      if (commaNeeded)
26983          _OUT << "}," << std::endl;
26984      else
26985          _OUT << "}" << std::endl;
26986 }
print_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * obj,const std::string & s,bool commaNeeded=true)26987 static void print_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * obj, const std::string& s, bool commaNeeded=true) {
26988      PRINT_SPACE
26989      _OUT << "{" << std::endl;
26990      INDENT(4);
26991 
26992      print_VkStructureType(obj->sType, "sType", 1);
26993 
26994       if (obj->pNext) {
26995          dumpPNextChain(obj->pNext);
26996       } else {
26997          PRINT_SPACE
26998          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
26999      }
27000 
27001      PRINT_SPACE
27002      _OUT << "\"displayProperties\": " << std::endl;
27003      {
27004            print_VkDisplayPropertiesKHR(obj->displayProperties, "displayProperties", 0);
27005      }
27006 
27007      INDENT(-4);
27008      PRINT_SPACE
27009      if (commaNeeded)
27010          _OUT << "}," << std::endl;
27011      else
27012          _OUT << "}" << std::endl;
27013 }
27014 
print_VkDisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR obj,const std::string & s,bool commaNeeded=true)27015 static void print_VkDisplayPlaneProperties2KHR(VkDisplayPlaneProperties2KHR obj, const std::string& s, bool commaNeeded=true) {
27016      PRINT_SPACE
27017      _OUT << "{" << std::endl;
27018      INDENT(4);
27019 
27020      print_VkStructureType(obj.sType, "sType", 1);
27021 
27022       if (obj.pNext) {
27023          dumpPNextChain(obj.pNext);
27024       } else {
27025          PRINT_SPACE
27026          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27027      }
27028 
27029      PRINT_SPACE
27030      _OUT << "\"displayPlaneProperties\": " << std::endl;
27031      {
27032            print_VkDisplayPlanePropertiesKHR(obj.displayPlaneProperties, "displayPlaneProperties", 0);
27033      }
27034 
27035      INDENT(-4);
27036      PRINT_SPACE
27037      if (commaNeeded)
27038          _OUT << "}," << std::endl;
27039      else
27040          _OUT << "}" << std::endl;
27041 }
print_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR * obj,const std::string & s,bool commaNeeded=true)27042 static void print_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR * obj, const std::string& s, bool commaNeeded=true) {
27043      PRINT_SPACE
27044      _OUT << "{" << std::endl;
27045      INDENT(4);
27046 
27047      print_VkStructureType(obj->sType, "sType", 1);
27048 
27049       if (obj->pNext) {
27050          dumpPNextChain(obj->pNext);
27051       } else {
27052          PRINT_SPACE
27053          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27054      }
27055 
27056      PRINT_SPACE
27057      _OUT << "\"displayPlaneProperties\": " << std::endl;
27058      {
27059            print_VkDisplayPlanePropertiesKHR(obj->displayPlaneProperties, "displayPlaneProperties", 0);
27060      }
27061 
27062      INDENT(-4);
27063      PRINT_SPACE
27064      if (commaNeeded)
27065          _OUT << "}," << std::endl;
27066      else
27067          _OUT << "}" << std::endl;
27068 }
27069 
print_VkDisplayModeProperties2KHR(VkDisplayModeProperties2KHR obj,const std::string & s,bool commaNeeded=true)27070 static void print_VkDisplayModeProperties2KHR(VkDisplayModeProperties2KHR obj, const std::string& s, bool commaNeeded=true) {
27071      PRINT_SPACE
27072      _OUT << "{" << std::endl;
27073      INDENT(4);
27074 
27075      print_VkStructureType(obj.sType, "sType", 1);
27076 
27077       if (obj.pNext) {
27078          dumpPNextChain(obj.pNext);
27079       } else {
27080          PRINT_SPACE
27081          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27082      }
27083 
27084      PRINT_SPACE
27085      _OUT << "\"displayModeProperties\": " << std::endl;
27086      {
27087            print_VkDisplayModePropertiesKHR(obj.displayModeProperties, "displayModeProperties", 0);
27088      }
27089 
27090      INDENT(-4);
27091      PRINT_SPACE
27092      if (commaNeeded)
27093          _OUT << "}," << std::endl;
27094      else
27095          _OUT << "}" << std::endl;
27096 }
print_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR * obj,const std::string & s,bool commaNeeded=true)27097 static void print_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR * obj, const std::string& s, bool commaNeeded=true) {
27098      PRINT_SPACE
27099      _OUT << "{" << std::endl;
27100      INDENT(4);
27101 
27102      print_VkStructureType(obj->sType, "sType", 1);
27103 
27104       if (obj->pNext) {
27105          dumpPNextChain(obj->pNext);
27106       } else {
27107          PRINT_SPACE
27108          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27109      }
27110 
27111      PRINT_SPACE
27112      _OUT << "\"displayModeProperties\": " << std::endl;
27113      {
27114            print_VkDisplayModePropertiesKHR(obj->displayModeProperties, "displayModeProperties", 0);
27115      }
27116 
27117      INDENT(-4);
27118      PRINT_SPACE
27119      if (commaNeeded)
27120          _OUT << "}," << std::endl;
27121      else
27122          _OUT << "}" << std::endl;
27123 }
27124 
print_VkDisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR obj,const std::string & s,bool commaNeeded=true)27125 static void print_VkDisplayPlaneInfo2KHR(VkDisplayPlaneInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
27126      PRINT_SPACE
27127      _OUT << "{" << std::endl;
27128      INDENT(4);
27129 
27130      print_VkStructureType(obj.sType, "sType", 1);
27131 
27132       if (obj.pNext) {
27133          dumpPNextChain(obj.pNext);
27134       } else {
27135          PRINT_SPACE
27136          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27137      }
27138 
27139      // CTS : required value
27140      PRINT_SPACE    _OUT << "\"" << "mode" << "\"" << " : " << "\"" << "\"," << std::endl;
27141 
27142      print_uint32_t(obj.planeIndex, "planeIndex", 0);
27143 
27144      INDENT(-4);
27145      PRINT_SPACE
27146      if (commaNeeded)
27147          _OUT << "}," << std::endl;
27148      else
27149          _OUT << "}" << std::endl;
27150 }
print_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * obj,const std::string & s,bool commaNeeded=true)27151 static void print_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
27152      PRINT_SPACE
27153      _OUT << "{" << std::endl;
27154      INDENT(4);
27155 
27156      print_VkStructureType(obj->sType, "sType", 1);
27157 
27158       if (obj->pNext) {
27159          dumpPNextChain(obj->pNext);
27160       } else {
27161          PRINT_SPACE
27162          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27163      }
27164 
27165      // CTS : required value
27166      PRINT_SPACE    _OUT << "\"" << "mode" << "\"" << " : " << "\"" << "\"," << std::endl;
27167 
27168      print_uint32_t(obj->planeIndex, "planeIndex", 0);
27169 
27170      INDENT(-4);
27171      PRINT_SPACE
27172      if (commaNeeded)
27173          _OUT << "}," << std::endl;
27174      else
27175          _OUT << "}" << std::endl;
27176 }
27177 
print_VkDisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR obj,const std::string & s,bool commaNeeded=true)27178 static void print_VkDisplayPlaneCapabilities2KHR(VkDisplayPlaneCapabilities2KHR obj, const std::string& s, bool commaNeeded=true) {
27179      PRINT_SPACE
27180      _OUT << "{" << std::endl;
27181      INDENT(4);
27182 
27183      print_VkStructureType(obj.sType, "sType", 1);
27184 
27185       if (obj.pNext) {
27186          dumpPNextChain(obj.pNext);
27187       } else {
27188          PRINT_SPACE
27189          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27190      }
27191 
27192      PRINT_SPACE
27193      _OUT << "\"capabilities\": " << std::endl;
27194      {
27195            print_VkDisplayPlaneCapabilitiesKHR(obj.capabilities, "capabilities", 0);
27196      }
27197 
27198      INDENT(-4);
27199      PRINT_SPACE
27200      if (commaNeeded)
27201          _OUT << "}," << std::endl;
27202      else
27203          _OUT << "}" << std::endl;
27204 }
print_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR * obj,const std::string & s,bool commaNeeded=true)27205 static void print_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR * obj, const std::string& s, bool commaNeeded=true) {
27206      PRINT_SPACE
27207      _OUT << "{" << std::endl;
27208      INDENT(4);
27209 
27210      print_VkStructureType(obj->sType, "sType", 1);
27211 
27212       if (obj->pNext) {
27213          dumpPNextChain(obj->pNext);
27214       } else {
27215          PRINT_SPACE
27216          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27217      }
27218 
27219      PRINT_SPACE
27220      _OUT << "\"capabilities\": " << std::endl;
27221      {
27222            print_VkDisplayPlaneCapabilitiesKHR(obj->capabilities, "capabilities", 0);
27223      }
27224 
27225      INDENT(-4);
27226      PRINT_SPACE
27227      if (commaNeeded)
27228          _OUT << "}," << std::endl;
27229      else
27230          _OUT << "}" << std::endl;
27231 }
27232 
print_VkPhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderClockFeaturesKHR obj,const std::string & s,bool commaNeeded=true)27233 static void print_VkPhysicalDeviceShaderClockFeaturesKHR(VkPhysicalDeviceShaderClockFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
27234      PRINT_SPACE
27235      _OUT << "{" << std::endl;
27236      INDENT(4);
27237 
27238      print_VkStructureType(obj.sType, "sType", 1);
27239 
27240       if (obj.pNext) {
27241          dumpPNextChain(obj.pNext);
27242       } else {
27243          PRINT_SPACE
27244          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27245      }
27246 
27247      print_VkBool32(obj.shaderSubgroupClock, "shaderSubgroupClock", 1);
27248 
27249      print_VkBool32(obj.shaderDeviceClock, "shaderDeviceClock", 0);
27250 
27251      INDENT(-4);
27252      PRINT_SPACE
27253      if (commaNeeded)
27254          _OUT << "}," << std::endl;
27255      else
27256          _OUT << "}" << std::endl;
27257 }
print_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceShaderClockFeaturesKHR * obj,const std::string & s,bool commaNeeded=true)27258 static void print_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceShaderClockFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
27259      PRINT_SPACE
27260      _OUT << "{" << std::endl;
27261      INDENT(4);
27262 
27263      print_VkStructureType(obj->sType, "sType", 1);
27264 
27265       if (obj->pNext) {
27266          dumpPNextChain(obj->pNext);
27267       } else {
27268          PRINT_SPACE
27269          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27270      }
27271 
27272      print_VkBool32(obj->shaderSubgroupClock, "shaderSubgroupClock", 1);
27273 
27274      print_VkBool32(obj->shaderDeviceClock, "shaderDeviceClock", 0);
27275 
27276      INDENT(-4);
27277      PRINT_SPACE
27278      if (commaNeeded)
27279          _OUT << "}," << std::endl;
27280      else
27281          _OUT << "}" << std::endl;
27282 }
27283 
print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR obj,const std::string & s,bool commaNeeded=true)27284 static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
27285      PRINT_SPACE
27286      _OUT << "{" << std::endl;
27287      INDENT(4);
27288 
27289      print_VkStructureType(obj.sType, "sType", 1);
27290 
27291       if (obj.pNext) {
27292          dumpPNextChain(obj.pNext);
27293       } else {
27294          PRINT_SPACE
27295          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27296      }
27297 
27298      print_VkBool32(obj.shaderTerminateInvocation, "shaderTerminateInvocation", 0);
27299 
27300      INDENT(-4);
27301      PRINT_SPACE
27302      if (commaNeeded)
27303          _OUT << "}," << std::endl;
27304      else
27305          _OUT << "}" << std::endl;
27306 }
print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR * obj,const std::string & s,bool commaNeeded=true)27307 static void print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR(const VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
27308      PRINT_SPACE
27309      _OUT << "{" << std::endl;
27310      INDENT(4);
27311 
27312      print_VkStructureType(obj->sType, "sType", 1);
27313 
27314       if (obj->pNext) {
27315          dumpPNextChain(obj->pNext);
27316       } else {
27317          PRINT_SPACE
27318          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27319      }
27320 
27321      print_VkBool32(obj->shaderTerminateInvocation, "shaderTerminateInvocation", 0);
27322 
27323      INDENT(-4);
27324      PRINT_SPACE
27325      if (commaNeeded)
27326          _OUT << "}," << std::endl;
27327      else
27328          _OUT << "}" << std::endl;
27329 }
27330 
27331 static std::map<deUint64, std::string> VkFragmentShadingRateCombinerOpKHR_map = {
27332     std::make_pair(0, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR"),
27333     std::make_pair(1, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR"),
27334     std::make_pair(2, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR"),
27335     std::make_pair(3, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR"),
27336     std::make_pair(4, "VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR"),
27337 };
print_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR obj,const std::string & str,bool commaNeeded=true)27338 static void print_VkFragmentShadingRateCombinerOpKHR(VkFragmentShadingRateCombinerOpKHR obj, const std::string& str, bool commaNeeded=true) {
27339      PRINT_SPACE
27340      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27341      if (commaNeeded)
27342          _OUT << "\"" <<  VkFragmentShadingRateCombinerOpKHR_map[obj] << "\"," << std::endl;
27343      else
27344          _OUT << "\"" << VkFragmentShadingRateCombinerOpKHR_map[obj] << "\"" << std::endl;
27345 }
print_VkFragmentShadingRateCombinerOpKHR(const VkFragmentShadingRateCombinerOpKHR * obj,const std::string & str,bool commaNeeded=true)27346 static void print_VkFragmentShadingRateCombinerOpKHR(const VkFragmentShadingRateCombinerOpKHR * obj, const std::string& str, bool commaNeeded=true) {
27347      PRINT_SPACE
27348      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27349      if (commaNeeded)
27350          _OUT << "\"" <<  VkFragmentShadingRateCombinerOpKHR_map[*obj] << "\"," << std::endl;
27351      else
27352          _OUT << "\"" << VkFragmentShadingRateCombinerOpKHR_map[*obj] << "\"" << std::endl;
27353 }
27354 
print_VkFragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAttachmentInfoKHR obj,const std::string & s,bool commaNeeded=true)27355 static void print_VkFragmentShadingRateAttachmentInfoKHR(VkFragmentShadingRateAttachmentInfoKHR obj, const std::string& s, bool commaNeeded=true) {
27356      PRINT_SPACE
27357      _OUT << "{" << std::endl;
27358      INDENT(4);
27359 
27360      print_VkStructureType(obj.sType, "sType", 1);
27361 
27362       if (obj.pNext) {
27363          dumpPNextChain(obj.pNext);
27364       } else {
27365          PRINT_SPACE
27366          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27367      }
27368 
27369      PRINT_SPACE
27370      _OUT << "\"pFragmentShadingRateAttachment\": " << std::endl;
27371      if (obj.pFragmentShadingRateAttachment) {
27372            print_VkAttachmentReference2(obj.pFragmentShadingRateAttachment, "pFragmentShadingRateAttachment", 1);
27373      }
27374      else
27375      {
27376          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
27377      }
27378 
27379      PRINT_SPACE
27380      _OUT << "\"shadingRateAttachmentTexelSize\": " << std::endl;
27381      {
27382            print_VkExtent2D(obj.shadingRateAttachmentTexelSize, "shadingRateAttachmentTexelSize", 0);
27383      }
27384 
27385      INDENT(-4);
27386      PRINT_SPACE
27387      if (commaNeeded)
27388          _OUT << "}," << std::endl;
27389      else
27390          _OUT << "}" << std::endl;
27391 }
print_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShadingRateAttachmentInfoKHR * obj,const std::string & s,bool commaNeeded=true)27392 static void print_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShadingRateAttachmentInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
27393      PRINT_SPACE
27394      _OUT << "{" << std::endl;
27395      INDENT(4);
27396 
27397      print_VkStructureType(obj->sType, "sType", 1);
27398 
27399       if (obj->pNext) {
27400          dumpPNextChain(obj->pNext);
27401       } else {
27402          PRINT_SPACE
27403          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27404      }
27405 
27406      PRINT_SPACE
27407      _OUT << "\"pFragmentShadingRateAttachment\": " << std::endl;
27408      if (obj->pFragmentShadingRateAttachment) {
27409            print_VkAttachmentReference2(obj->pFragmentShadingRateAttachment, "pFragmentShadingRateAttachment", 1);
27410      }
27411      else
27412      {
27413          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
27414      }
27415 
27416      PRINT_SPACE
27417      _OUT << "\"shadingRateAttachmentTexelSize\": " << std::endl;
27418      {
27419            print_VkExtent2D(obj->shadingRateAttachmentTexelSize, "shadingRateAttachmentTexelSize", 0);
27420      }
27421 
27422      INDENT(-4);
27423      PRINT_SPACE
27424      if (commaNeeded)
27425          _OUT << "}," << std::endl;
27426      else
27427          _OUT << "}" << std::endl;
27428 }
27429 
print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFragmentShadingRateStateCreateInfoKHR obj,const std::string & s,bool commaNeeded=true)27430 static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(VkPipelineFragmentShadingRateStateCreateInfoKHR obj, const std::string& s, bool commaNeeded=true) {
27431      PRINT_SPACE
27432      _OUT << "{" << std::endl;
27433      INDENT(4);
27434 
27435      print_VkStructureType(obj.sType, "sType", 1);
27436 
27437       if (obj.pNext) {
27438          dumpPNextChain(obj.pNext);
27439       } else {
27440          PRINT_SPACE
27441          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27442      }
27443 
27444      PRINT_SPACE
27445      _OUT << "\"fragmentSize\": " << std::endl;
27446      {
27447            print_VkExtent2D(obj.fragmentSize, "fragmentSize", 1);
27448      }
27449 
27450      PRINT_SPACE
27451      _OUT << "\"combinerOps\":" << std::endl;
27452      PRINT_SPACE
27453        _OUT << "[" << std::endl;
27454        for (unsigned int i = 0; i < 2; i++) {
27455            bool isCommaNeeded = (i+1) != 2;
27456            print_VkFragmentShadingRateCombinerOpKHR(obj.combinerOps[i], "", isCommaNeeded);
27457        }
27458        PRINT_SPACE
27459        _OUT << "]" << "" << std::endl;
27460 
27461      INDENT(-4);
27462      PRINT_SPACE
27463      if (commaNeeded)
27464          _OUT << "}," << std::endl;
27465      else
27466          _OUT << "}" << std::endl;
27467 }
print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipelineFragmentShadingRateStateCreateInfoKHR * obj,const std::string & s,bool commaNeeded=true)27468 static void print_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipelineFragmentShadingRateStateCreateInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
27469      PRINT_SPACE
27470      _OUT << "{" << std::endl;
27471      INDENT(4);
27472 
27473      print_VkStructureType(obj->sType, "sType", 1);
27474 
27475       if (obj->pNext) {
27476          dumpPNextChain(obj->pNext);
27477       } else {
27478          PRINT_SPACE
27479          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27480      }
27481 
27482      PRINT_SPACE
27483      _OUT << "\"fragmentSize\": " << std::endl;
27484      {
27485            print_VkExtent2D(obj->fragmentSize, "fragmentSize", 1);
27486      }
27487 
27488      PRINT_SPACE
27489      _OUT << "\"combinerOps\":" << std::endl;
27490      PRINT_SPACE
27491        _OUT << "[" << std::endl;
27492        for (unsigned int i = 0; i < 2; i++) {
27493            bool isCommaNeeded = (i+1) != 2;
27494            print_VkFragmentShadingRateCombinerOpKHR(obj->combinerOps[i], "", isCommaNeeded);
27495        }
27496        PRINT_SPACE
27497        _OUT << "]" << "" << std::endl;
27498 
27499      INDENT(-4);
27500      PRINT_SPACE
27501      if (commaNeeded)
27502          _OUT << "}," << std::endl;
27503      else
27504          _OUT << "}" << std::endl;
27505 }
27506 
print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDeviceFragmentShadingRateFeaturesKHR obj,const std::string & s,bool commaNeeded=true)27507 static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(VkPhysicalDeviceFragmentShadingRateFeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
27508      PRINT_SPACE
27509      _OUT << "{" << std::endl;
27510      INDENT(4);
27511 
27512      print_VkStructureType(obj.sType, "sType", 1);
27513 
27514       if (obj.pNext) {
27515          dumpPNextChain(obj.pNext);
27516       } else {
27517          PRINT_SPACE
27518          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27519      }
27520 
27521      print_VkBool32(obj.pipelineFragmentShadingRate, "pipelineFragmentShadingRate", 1);
27522 
27523      print_VkBool32(obj.primitiveFragmentShadingRate, "primitiveFragmentShadingRate", 1);
27524 
27525      print_VkBool32(obj.attachmentFragmentShadingRate, "attachmentFragmentShadingRate", 0);
27526 
27527      INDENT(-4);
27528      PRINT_SPACE
27529      if (commaNeeded)
27530          _OUT << "}," << std::endl;
27531      else
27532          _OUT << "}" << std::endl;
27533 }
print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * obj,const std::string & s,bool commaNeeded=true)27534 static void print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
27535      PRINT_SPACE
27536      _OUT << "{" << std::endl;
27537      INDENT(4);
27538 
27539      print_VkStructureType(obj->sType, "sType", 1);
27540 
27541       if (obj->pNext) {
27542          dumpPNextChain(obj->pNext);
27543       } else {
27544          PRINT_SPACE
27545          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27546      }
27547 
27548      print_VkBool32(obj->pipelineFragmentShadingRate, "pipelineFragmentShadingRate", 1);
27549 
27550      print_VkBool32(obj->primitiveFragmentShadingRate, "primitiveFragmentShadingRate", 1);
27551 
27552      print_VkBool32(obj->attachmentFragmentShadingRate, "attachmentFragmentShadingRate", 0);
27553 
27554      INDENT(-4);
27555      PRINT_SPACE
27556      if (commaNeeded)
27557          _OUT << "}," << std::endl;
27558      else
27559          _OUT << "}" << std::endl;
27560 }
27561 
print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDeviceFragmentShadingRatePropertiesKHR obj,const std::string & s,bool commaNeeded=true)27562 static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(VkPhysicalDeviceFragmentShadingRatePropertiesKHR obj, const std::string& s, bool commaNeeded=true) {
27563      PRINT_SPACE
27564      _OUT << "{" << std::endl;
27565      INDENT(4);
27566 
27567      print_VkStructureType(obj.sType, "sType", 1);
27568 
27569       if (obj.pNext) {
27570          dumpPNextChain(obj.pNext);
27571       } else {
27572          PRINT_SPACE
27573          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27574      }
27575 
27576      PRINT_SPACE
27577      _OUT << "\"minFragmentShadingRateAttachmentTexelSize\": " << std::endl;
27578      {
27579            print_VkExtent2D(obj.minFragmentShadingRateAttachmentTexelSize, "minFragmentShadingRateAttachmentTexelSize", 1);
27580      }
27581 
27582      PRINT_SPACE
27583      _OUT << "\"maxFragmentShadingRateAttachmentTexelSize\": " << std::endl;
27584      {
27585            print_VkExtent2D(obj.maxFragmentShadingRateAttachmentTexelSize, "maxFragmentShadingRateAttachmentTexelSize", 1);
27586      }
27587 
27588      print_uint32_t(obj.maxFragmentShadingRateAttachmentTexelSizeAspectRatio, "maxFragmentShadingRateAttachmentTexelSizeAspectRatio", 1);
27589 
27590      print_VkBool32(obj.primitiveFragmentShadingRateWithMultipleViewports, "primitiveFragmentShadingRateWithMultipleViewports", 1);
27591 
27592      print_VkBool32(obj.layeredShadingRateAttachments, "layeredShadingRateAttachments", 1);
27593 
27594      print_VkBool32(obj.fragmentShadingRateNonTrivialCombinerOps, "fragmentShadingRateNonTrivialCombinerOps", 1);
27595 
27596      PRINT_SPACE
27597      _OUT << "\"maxFragmentSize\": " << std::endl;
27598      {
27599            print_VkExtent2D(obj.maxFragmentSize, "maxFragmentSize", 1);
27600      }
27601 
27602      print_uint32_t(obj.maxFragmentSizeAspectRatio, "maxFragmentSizeAspectRatio", 1);
27603 
27604      print_uint32_t(obj.maxFragmentShadingRateCoverageSamples, "maxFragmentShadingRateCoverageSamples", 1);
27605 
27606      print_VkSampleCountFlagBits(obj.maxFragmentShadingRateRasterizationSamples, "maxFragmentShadingRateRasterizationSamples", 1);
27607 
27608      print_VkBool32(obj.fragmentShadingRateWithShaderDepthStencilWrites, "fragmentShadingRateWithShaderDepthStencilWrites", 1);
27609 
27610      print_VkBool32(obj.fragmentShadingRateWithSampleMask, "fragmentShadingRateWithSampleMask", 1);
27611 
27612      print_VkBool32(obj.fragmentShadingRateWithShaderSampleMask, "fragmentShadingRateWithShaderSampleMask", 1);
27613 
27614      print_VkBool32(obj.fragmentShadingRateWithConservativeRasterization, "fragmentShadingRateWithConservativeRasterization", 1);
27615 
27616      print_VkBool32(obj.fragmentShadingRateWithFragmentShaderInterlock, "fragmentShadingRateWithFragmentShaderInterlock", 1);
27617 
27618      print_VkBool32(obj.fragmentShadingRateWithCustomSampleLocations, "fragmentShadingRateWithCustomSampleLocations", 1);
27619 
27620      print_VkBool32(obj.fragmentShadingRateStrictMultiplyCombiner, "fragmentShadingRateStrictMultiplyCombiner", 0);
27621 
27622      INDENT(-4);
27623      PRINT_SPACE
27624      if (commaNeeded)
27625          _OUT << "}," << std::endl;
27626      else
27627          _OUT << "}" << std::endl;
27628 }
print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * obj,const std::string & s,bool commaNeeded=true)27629 static void print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * obj, const std::string& s, bool commaNeeded=true) {
27630      PRINT_SPACE
27631      _OUT << "{" << std::endl;
27632      INDENT(4);
27633 
27634      print_VkStructureType(obj->sType, "sType", 1);
27635 
27636       if (obj->pNext) {
27637          dumpPNextChain(obj->pNext);
27638       } else {
27639          PRINT_SPACE
27640          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27641      }
27642 
27643      PRINT_SPACE
27644      _OUT << "\"minFragmentShadingRateAttachmentTexelSize\": " << std::endl;
27645      {
27646            print_VkExtent2D(obj->minFragmentShadingRateAttachmentTexelSize, "minFragmentShadingRateAttachmentTexelSize", 1);
27647      }
27648 
27649      PRINT_SPACE
27650      _OUT << "\"maxFragmentShadingRateAttachmentTexelSize\": " << std::endl;
27651      {
27652            print_VkExtent2D(obj->maxFragmentShadingRateAttachmentTexelSize, "maxFragmentShadingRateAttachmentTexelSize", 1);
27653      }
27654 
27655      print_uint32_t(obj->maxFragmentShadingRateAttachmentTexelSizeAspectRatio, "maxFragmentShadingRateAttachmentTexelSizeAspectRatio", 1);
27656 
27657      print_VkBool32(obj->primitiveFragmentShadingRateWithMultipleViewports, "primitiveFragmentShadingRateWithMultipleViewports", 1);
27658 
27659      print_VkBool32(obj->layeredShadingRateAttachments, "layeredShadingRateAttachments", 1);
27660 
27661      print_VkBool32(obj->fragmentShadingRateNonTrivialCombinerOps, "fragmentShadingRateNonTrivialCombinerOps", 1);
27662 
27663      PRINT_SPACE
27664      _OUT << "\"maxFragmentSize\": " << std::endl;
27665      {
27666            print_VkExtent2D(obj->maxFragmentSize, "maxFragmentSize", 1);
27667      }
27668 
27669      print_uint32_t(obj->maxFragmentSizeAspectRatio, "maxFragmentSizeAspectRatio", 1);
27670 
27671      print_uint32_t(obj->maxFragmentShadingRateCoverageSamples, "maxFragmentShadingRateCoverageSamples", 1);
27672 
27673      print_VkSampleCountFlagBits(obj->maxFragmentShadingRateRasterizationSamples, "maxFragmentShadingRateRasterizationSamples", 1);
27674 
27675      print_VkBool32(obj->fragmentShadingRateWithShaderDepthStencilWrites, "fragmentShadingRateWithShaderDepthStencilWrites", 1);
27676 
27677      print_VkBool32(obj->fragmentShadingRateWithSampleMask, "fragmentShadingRateWithSampleMask", 1);
27678 
27679      print_VkBool32(obj->fragmentShadingRateWithShaderSampleMask, "fragmentShadingRateWithShaderSampleMask", 1);
27680 
27681      print_VkBool32(obj->fragmentShadingRateWithConservativeRasterization, "fragmentShadingRateWithConservativeRasterization", 1);
27682 
27683      print_VkBool32(obj->fragmentShadingRateWithFragmentShaderInterlock, "fragmentShadingRateWithFragmentShaderInterlock", 1);
27684 
27685      print_VkBool32(obj->fragmentShadingRateWithCustomSampleLocations, "fragmentShadingRateWithCustomSampleLocations", 1);
27686 
27687      print_VkBool32(obj->fragmentShadingRateStrictMultiplyCombiner, "fragmentShadingRateStrictMultiplyCombiner", 0);
27688 
27689      INDENT(-4);
27690      PRINT_SPACE
27691      if (commaNeeded)
27692          _OUT << "}," << std::endl;
27693      else
27694          _OUT << "}" << std::endl;
27695 }
27696 
print_VkPhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmentShadingRateKHR obj,const std::string & s,bool commaNeeded=true)27697 static void print_VkPhysicalDeviceFragmentShadingRateKHR(VkPhysicalDeviceFragmentShadingRateKHR obj, const std::string& s, bool commaNeeded=true) {
27698      PRINT_SPACE
27699      _OUT << "{" << std::endl;
27700      INDENT(4);
27701 
27702      print_VkStructureType(obj.sType, "sType", 1);
27703 
27704       if (obj.pNext) {
27705          dumpPNextChain(obj.pNext);
27706       } else {
27707          PRINT_SPACE
27708          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27709      }
27710 
27711      print_VkSampleCountFlags(obj.sampleCounts, "sampleCounts", 1);
27712 
27713      PRINT_SPACE
27714      _OUT << "\"fragmentSize\": " << std::endl;
27715      {
27716            print_VkExtent2D(obj.fragmentSize, "fragmentSize", 0);
27717      }
27718 
27719      INDENT(-4);
27720      PRINT_SPACE
27721      if (commaNeeded)
27722          _OUT << "}," << std::endl;
27723      else
27724          _OUT << "}" << std::endl;
27725 }
print_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceFragmentShadingRateKHR * obj,const std::string & s,bool commaNeeded=true)27726 static void print_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceFragmentShadingRateKHR * obj, const std::string& s, bool commaNeeded=true) {
27727      PRINT_SPACE
27728      _OUT << "{" << std::endl;
27729      INDENT(4);
27730 
27731      print_VkStructureType(obj->sType, "sType", 1);
27732 
27733       if (obj->pNext) {
27734          dumpPNextChain(obj->pNext);
27735       } else {
27736          PRINT_SPACE
27737          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27738      }
27739 
27740      print_VkSampleCountFlags(obj->sampleCounts, "sampleCounts", 1);
27741 
27742      PRINT_SPACE
27743      _OUT << "\"fragmentSize\": " << std::endl;
27744      {
27745            print_VkExtent2D(obj->fragmentSize, "fragmentSize", 0);
27746      }
27747 
27748      INDENT(-4);
27749      PRINT_SPACE
27750      if (commaNeeded)
27751          _OUT << "}," << std::endl;
27752      else
27753          _OUT << "}" << std::endl;
27754 }
27755 
27756 static std::map<deUint64, std::string> VkRefreshObjectFlagBitsKHR_map = {
27757 };
print_VkRefreshObjectFlagBitsKHR(VkRefreshObjectFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)27758 static void print_VkRefreshObjectFlagBitsKHR(VkRefreshObjectFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
27759      PRINT_SPACE
27760      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27761      if (commaNeeded)
27762          _OUT << "\"" <<  VkRefreshObjectFlagBitsKHR_map[obj] << "\"," << std::endl;
27763      else
27764          _OUT << "\"" << VkRefreshObjectFlagBitsKHR_map[obj] << "\"" << std::endl;
27765 }
print_VkRefreshObjectFlagBitsKHR(const VkRefreshObjectFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)27766 static void print_VkRefreshObjectFlagBitsKHR(const VkRefreshObjectFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
27767      PRINT_SPACE
27768      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27769      if (commaNeeded)
27770          _OUT << "\"" <<  VkRefreshObjectFlagBitsKHR_map[*obj] << "\"," << std::endl;
27771      else
27772          _OUT << "\"" << VkRefreshObjectFlagBitsKHR_map[*obj] << "\"" << std::endl;
27773 }
27774 
print_VkRefreshObjectFlagsKHR(VkRefreshObjectFlagsKHR obj,const std::string & str,bool commaNeeded=true)27775 static void print_VkRefreshObjectFlagsKHR(VkRefreshObjectFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
27776      PRINT_SPACE
27777      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27778      const int max_bits = 64; // We don't expect the number to be larger.
27779      std::bitset<max_bits> b(obj);
27780      _OUT << "\"";
27781      if (obj == 0) _OUT << "0";
27782      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
27783          if (b[i] == 1) {
27784              bitCount++;
27785              if (bitCount < b.count())
27786                  _OUT << VkRefreshObjectFlagBitsKHR_map[1ULL<<i] << " | ";
27787              else
27788                  _OUT << VkRefreshObjectFlagBitsKHR_map[1ULL<<i];
27789          }
27790      }
27791      if (commaNeeded)
27792        _OUT << "\"" << ",";
27793      else
27794        _OUT << "\""<< "";
27795      _OUT << std::endl;
27796 }
print_VkRefreshObjectFlagsKHR(const VkRefreshObjectFlagsKHR * obj,const std::string & str,bool commaNeeded=true)27797 static void print_VkRefreshObjectFlagsKHR(const VkRefreshObjectFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
27798      PRINT_SPACE
27799      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27800      const int max_bits = 64; // We don't expect the number to be larger.
27801      std::bitset<max_bits> b(obj);
27802      _OUT << "\"";
27803      if (obj == 0) _OUT << "0";
27804      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
27805          if (b[i] == 1) {
27806              bitCount++;
27807              if (bitCount < b.count())
27808                  _OUT << VkRefreshObjectFlagBitsKHR_map[1ULL<<i] << " | ";
27809              else
27810                  _OUT << VkRefreshObjectFlagBitsKHR_map[1ULL<<i];
27811          }
27812      }
27813      if (commaNeeded)
27814        _OUT << "\"" << ",";
27815      else
27816        _OUT << "\""<< "";
27817      _OUT << std::endl;
27818 }
27819 
print_VkRefreshObjectKHR(VkRefreshObjectKHR obj,const std::string & s,bool commaNeeded=true)27820 static void print_VkRefreshObjectKHR(VkRefreshObjectKHR obj, const std::string& s, bool commaNeeded=true) {
27821      PRINT_SPACE
27822      _OUT << "{" << std::endl;
27823      INDENT(4);
27824 
27825      print_VkObjectType(obj.objectType, "objectType", 1);
27826 
27827      print_uint64_t(obj.objectHandle, "objectHandle", 1);
27828 
27829      print_VkRefreshObjectFlagsKHR(obj.flags, "flags", 0);
27830 
27831      INDENT(-4);
27832      PRINT_SPACE
27833      if (commaNeeded)
27834          _OUT << "}," << std::endl;
27835      else
27836          _OUT << "}" << std::endl;
27837 }
print_VkRefreshObjectKHR(const VkRefreshObjectKHR * obj,const std::string & s,bool commaNeeded=true)27838 static void print_VkRefreshObjectKHR(const VkRefreshObjectKHR * obj, const std::string& s, bool commaNeeded=true) {
27839      PRINT_SPACE
27840      _OUT << "{" << std::endl;
27841      INDENT(4);
27842 
27843      print_VkObjectType(obj->objectType, "objectType", 1);
27844 
27845      print_uint64_t(obj->objectHandle, "objectHandle", 1);
27846 
27847      print_VkRefreshObjectFlagsKHR(obj->flags, "flags", 0);
27848 
27849      INDENT(-4);
27850      PRINT_SPACE
27851      if (commaNeeded)
27852          _OUT << "}," << std::endl;
27853      else
27854          _OUT << "}" << std::endl;
27855 }
27856 
print_VkRefreshObjectListKHR(VkRefreshObjectListKHR obj,const std::string & s,bool commaNeeded=true)27857 static void print_VkRefreshObjectListKHR(VkRefreshObjectListKHR obj, const std::string& s, bool commaNeeded=true) {
27858      PRINT_SPACE
27859      _OUT << "{" << std::endl;
27860      INDENT(4);
27861 
27862      print_VkStructureType(obj.sType, "sType", 1);
27863 
27864       if (obj.pNext) {
27865          dumpPNextChain(obj.pNext);
27866       } else {
27867          PRINT_SPACE
27868          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27869      }
27870 
27871      print_uint32_t(obj.objectCount, "objectCount", 1);
27872 
27873      PRINT_SPACE
27874      _OUT << "\"pObjects\": " << std::endl;
27875      if (obj.pObjects) {
27876          PRINT_SPACE
27877          _OUT << "[" << std::endl;
27878          for (unsigned int i = 0; i < obj.objectCount; i++) {
27879            if (i+1 == obj.objectCount)
27880                print_VkRefreshObjectKHR(obj.pObjects[i], "pObjects", 0);
27881            else
27882                print_VkRefreshObjectKHR(obj.pObjects[i], "pObjects", 1);
27883          }
27884          PRINT_SPACE
27885          _OUT << "]" << std::endl;
27886     }
27887      else
27888      {
27889          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
27890      }
27891 
27892      INDENT(-4);
27893      PRINT_SPACE
27894      if (commaNeeded)
27895          _OUT << "}," << std::endl;
27896      else
27897          _OUT << "}" << std::endl;
27898 }
print_VkRefreshObjectListKHR(const VkRefreshObjectListKHR * obj,const std::string & s,bool commaNeeded=true)27899 static void print_VkRefreshObjectListKHR(const VkRefreshObjectListKHR * obj, const std::string& s, bool commaNeeded=true) {
27900      PRINT_SPACE
27901      _OUT << "{" << std::endl;
27902      INDENT(4);
27903 
27904      print_VkStructureType(obj->sType, "sType", 1);
27905 
27906       if (obj->pNext) {
27907          dumpPNextChain(obj->pNext);
27908       } else {
27909          PRINT_SPACE
27910          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
27911      }
27912 
27913      print_uint32_t(obj->objectCount, "objectCount", 1);
27914 
27915      PRINT_SPACE
27916      _OUT << "\"pObjects\": " << std::endl;
27917      if (obj->pObjects) {
27918          PRINT_SPACE
27919          _OUT << "[" << std::endl;
27920          for (unsigned int i = 0; i < obj->objectCount; i++) {
27921            if (i+1 == obj->objectCount)
27922                print_VkRefreshObjectKHR(obj->pObjects[i], "pObjects", 0);
27923            else
27924                print_VkRefreshObjectKHR(obj->pObjects[i], "pObjects", 1);
27925          }
27926          PRINT_SPACE
27927          _OUT << "]" << std::endl;
27928     }
27929      else
27930      {
27931          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
27932      }
27933 
27934      INDENT(-4);
27935      PRINT_SPACE
27936      if (commaNeeded)
27937          _OUT << "}," << std::endl;
27938      else
27939          _OUT << "}" << std::endl;
27940 }
27941 
print_VkFlags64(VkFlags64 obj,const std::string & str,bool commaNeeded=true)27942 static void print_VkFlags64(VkFlags64 obj, const std::string& str, bool commaNeeded=true) {
27943      PRINT_SPACE
27944      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
27945 }
print_VkFlags64(const VkFlags64 * obj,const std::string & str,bool commaNeeded=true)27946 static void print_VkFlags64(const VkFlags64 * obj, const std::string& str, bool commaNeeded=true) {
27947      PRINT_SPACE
27948      _OUT << "\"" << str << "\"" << " : " << "\"" << obj << "\"" << (commaNeeded ? "," : "") << std::endl;
27949 }
27950 
27951 static std::map<deUint64, std::string> VkPipelineStageFlagBits2KHR_map = {
27952     std::make_pair(0, "VK_PIPELINE_STAGE_2_NONE_KHR"),
27953     std::make_pair(1ULL << 0, "VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR"),
27954     std::make_pair(1ULL << 1, "VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR"),
27955     std::make_pair(1ULL << 2, "VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR"),
27956     std::make_pair(1ULL << 3, "VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR"),
27957     std::make_pair(1ULL << 4, "VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR"),
27958     std::make_pair(1ULL << 5, "VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR"),
27959     std::make_pair(1ULL << 6, "VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR"),
27960     std::make_pair(1ULL << 7, "VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR"),
27961     std::make_pair(1ULL << 8, "VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR"),
27962     std::make_pair(1ULL << 9, "VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR"),
27963     std::make_pair(1ULL << 10, "VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR"),
27964     std::make_pair(1ULL << 11, "VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR"),
27965     std::make_pair(1ULL << 12, "VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR"),
27966     std::make_pair(1ULL << 13, "VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR"),
27967     std::make_pair(1ULL << 14, "VK_PIPELINE_STAGE_2_HOST_BIT_KHR"),
27968     std::make_pair(1ULL << 15, "VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR"),
27969     std::make_pair(1ULL << 16, "VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR"),
27970     std::make_pair(1ULL << 32, "VK_PIPELINE_STAGE_2_COPY_BIT_KHR"),
27971     std::make_pair(1ULL << 33, "VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR"),
27972     std::make_pair(1ULL << 34, "VK_PIPELINE_STAGE_2_BLIT_BIT_KHR"),
27973     std::make_pair(1ULL << 35, "VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR"),
27974     std::make_pair(1ULL << 36, "VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR"),
27975     std::make_pair(1ULL << 37, "VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR"),
27976     std::make_pair(1ULL << 38, "VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR"),
27977     std::make_pair(1ULL << 26, "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR"),
27978     std::make_pair(1ULL << 27, "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR"),
27979     std::make_pair(1ULL << 24, "VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT"),
27980     std::make_pair(1ULL << 18, "VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT"),
27981     std::make_pair(1ULL << 17, "VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV"),
27982     std::make_pair(1ULL << 22, "VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
27983     std::make_pair(1ULL << 25, "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR"),
27984     std::make_pair(1ULL << 21, "VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR"),
27985     std::make_pair(1ULL << 23, "VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT"),
27986     std::make_pair(1ULL << 19, "VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV"),
27987     std::make_pair(1ULL << 20, "VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV"),
27988     std::make_pair(1ULL << 39, "VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI"),
27989     std::make_pair(1ULL << 40, "VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI"),
27990     std::make_pair(1ULL << 28, "VK_PIPELINE_STAGE_2_RESERVED_387_BIT_KHR"),
27991 };
print_VkPipelineStageFlagBits2KHR(VkPipelineStageFlagBits2KHR obj,const std::string & str,bool commaNeeded=true)27992 static void print_VkPipelineStageFlagBits2KHR(VkPipelineStageFlagBits2KHR obj, const std::string& str, bool commaNeeded=true) {
27993      PRINT_SPACE
27994      if (str != "") _OUT << "\"" << str << "\"" << " : ";
27995      if (commaNeeded)
27996          _OUT << "\"" <<  VkPipelineStageFlagBits2KHR_map[obj] << "\"," << std::endl;
27997      else
27998          _OUT << "\"" << VkPipelineStageFlagBits2KHR_map[obj] << "\"" << std::endl;
27999 }
print_VkPipelineStageFlagBits2KHR(const VkPipelineStageFlagBits2KHR * obj,const std::string & str,bool commaNeeded=true)28000 static void print_VkPipelineStageFlagBits2KHR(const VkPipelineStageFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true) {
28001      PRINT_SPACE
28002      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28003      if (commaNeeded)
28004          _OUT << "\"" <<  VkPipelineStageFlagBits2KHR_map[*obj] << "\"," << std::endl;
28005      else
28006          _OUT << "\"" << VkPipelineStageFlagBits2KHR_map[*obj] << "\"" << std::endl;
28007 }
28008 
28009 static std::map<deUint64, std::string> VkAccessFlagBits2KHR_map = {
28010     std::make_pair(0, "VK_ACCESS_2_NONE_KHR"),
28011     std::make_pair(1ULL << 0, "VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR"),
28012     std::make_pair(1ULL << 1, "VK_ACCESS_2_INDEX_READ_BIT_KHR"),
28013     std::make_pair(1ULL << 2, "VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR"),
28014     std::make_pair(1ULL << 3, "VK_ACCESS_2_UNIFORM_READ_BIT_KHR"),
28015     std::make_pair(1ULL << 4, "VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR"),
28016     std::make_pair(1ULL << 5, "VK_ACCESS_2_SHADER_READ_BIT_KHR"),
28017     std::make_pair(1ULL << 6, "VK_ACCESS_2_SHADER_WRITE_BIT_KHR"),
28018     std::make_pair(1ULL << 7, "VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR"),
28019     std::make_pair(1ULL << 8, "VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR"),
28020     std::make_pair(1ULL << 9, "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR"),
28021     std::make_pair(1ULL << 10, "VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR"),
28022     std::make_pair(1ULL << 11, "VK_ACCESS_2_TRANSFER_READ_BIT_KHR"),
28023     std::make_pair(1ULL << 12, "VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR"),
28024     std::make_pair(1ULL << 13, "VK_ACCESS_2_HOST_READ_BIT_KHR"),
28025     std::make_pair(1ULL << 14, "VK_ACCESS_2_HOST_WRITE_BIT_KHR"),
28026     std::make_pair(1ULL << 15, "VK_ACCESS_2_MEMORY_READ_BIT_KHR"),
28027     std::make_pair(1ULL << 16, "VK_ACCESS_2_MEMORY_WRITE_BIT_KHR"),
28028     std::make_pair(1ULL << 32, "VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR"),
28029     std::make_pair(1ULL << 33, "VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR"),
28030     std::make_pair(1ULL << 34, "VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR"),
28031     std::make_pair(1ULL << 35, "VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR"),
28032     std::make_pair(1ULL << 36, "VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR"),
28033     std::make_pair(1ULL << 37, "VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR"),
28034     std::make_pair(1ULL << 38, "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR"),
28035     std::make_pair(1ULL << 25, "VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT"),
28036     std::make_pair(1ULL << 26, "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT"),
28037     std::make_pair(1ULL << 27, "VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT"),
28038     std::make_pair(1ULL << 20, "VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT"),
28039     std::make_pair(1ULL << 17, "VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV"),
28040     std::make_pair(1ULL << 18, "VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV"),
28041     std::make_pair(1ULL << 23, "VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR"),
28042     std::make_pair(1ULL << 21, "VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR"),
28043     std::make_pair(1ULL << 22, "VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR"),
28044     std::make_pair(1ULL << 24, "VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT"),
28045     std::make_pair(1ULL << 19, "VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT"),
28046     std::make_pair(1ULL << 41, "VK_ACCESS_2_RESERVED_41_BIT_AMD"),
28047     std::make_pair(1ULL << 39, "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI"),
28048     std::make_pair(1ULL << 40, "VK_ACCESS_2_RESERVED_387_BIT_KHR"),
28049 };
print_VkAccessFlagBits2KHR(VkAccessFlagBits2KHR obj,const std::string & str,bool commaNeeded=true)28050 static void print_VkAccessFlagBits2KHR(VkAccessFlagBits2KHR obj, const std::string& str, bool commaNeeded=true) {
28051      PRINT_SPACE
28052      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28053      if (commaNeeded)
28054          _OUT << "\"" <<  VkAccessFlagBits2KHR_map[obj] << "\"," << std::endl;
28055      else
28056          _OUT << "\"" << VkAccessFlagBits2KHR_map[obj] << "\"" << std::endl;
28057 }
print_VkAccessFlagBits2KHR(const VkAccessFlagBits2KHR * obj,const std::string & str,bool commaNeeded=true)28058 static void print_VkAccessFlagBits2KHR(const VkAccessFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true) {
28059      PRINT_SPACE
28060      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28061      if (commaNeeded)
28062          _OUT << "\"" <<  VkAccessFlagBits2KHR_map[*obj] << "\"," << std::endl;
28063      else
28064          _OUT << "\"" << VkAccessFlagBits2KHR_map[*obj] << "\"" << std::endl;
28065 }
28066 
28067 static std::map<deUint64, std::string> VkSubmitFlagBitsKHR_map = {
28068     std::make_pair(1ULL << 0, "VK_SUBMIT_PROTECTED_BIT_KHR"),
28069 };
print_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR obj,const std::string & str,bool commaNeeded=true)28070 static void print_VkSubmitFlagBitsKHR(VkSubmitFlagBitsKHR obj, const std::string& str, bool commaNeeded=true) {
28071      PRINT_SPACE
28072      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28073      if (commaNeeded)
28074          _OUT << "\"" <<  VkSubmitFlagBitsKHR_map[obj] << "\"," << std::endl;
28075      else
28076          _OUT << "\"" << VkSubmitFlagBitsKHR_map[obj] << "\"" << std::endl;
28077 }
print_VkSubmitFlagBitsKHR(const VkSubmitFlagBitsKHR * obj,const std::string & str,bool commaNeeded=true)28078 static void print_VkSubmitFlagBitsKHR(const VkSubmitFlagBitsKHR * obj, const std::string& str, bool commaNeeded=true) {
28079      PRINT_SPACE
28080      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28081      if (commaNeeded)
28082          _OUT << "\"" <<  VkSubmitFlagBitsKHR_map[*obj] << "\"," << std::endl;
28083      else
28084          _OUT << "\"" << VkSubmitFlagBitsKHR_map[*obj] << "\"" << std::endl;
28085 }
28086 
print_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR obj,const std::string & str,bool commaNeeded=true)28087 static void print_VkPipelineStageFlags2KHR(VkPipelineStageFlags2KHR obj, const std::string& str, bool commaNeeded=true) {
28088      PRINT_SPACE
28089      if (commaNeeded)
28090          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
28091      else
28092          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
28093 }
print_VkPipelineStageFlags2KHR(const VkPipelineStageFlags2KHR * obj,const std::string & str,bool commaNeeded=true)28094 static void print_VkPipelineStageFlags2KHR(const VkPipelineStageFlags2KHR * obj, const std::string& str, bool commaNeeded=true) {
28095      PRINT_SPACE
28096      if (commaNeeded)
28097          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
28098      else
28099          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
28100 }
28101 
print_VkAccessFlags2KHR(VkAccessFlags2KHR obj,const std::string & str,bool commaNeeded=true)28102 static void print_VkAccessFlags2KHR(VkAccessFlags2KHR obj, const std::string& str, bool commaNeeded=true) {
28103      PRINT_SPACE
28104      if (commaNeeded)
28105          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
28106      else
28107          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
28108 }
print_VkAccessFlags2KHR(const VkAccessFlags2KHR * obj,const std::string & str,bool commaNeeded=true)28109 static void print_VkAccessFlags2KHR(const VkAccessFlags2KHR * obj, const std::string& str, bool commaNeeded=true) {
28110      PRINT_SPACE
28111      if (commaNeeded)
28112          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
28113      else
28114          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
28115 }
28116 
print_VkSubmitFlagsKHR(VkSubmitFlagsKHR obj,const std::string & str,bool commaNeeded=true)28117 static void print_VkSubmitFlagsKHR(VkSubmitFlagsKHR obj, const std::string& str, bool commaNeeded=true) {
28118      PRINT_SPACE
28119      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28120      const int max_bits = 64; // We don't expect the number to be larger.
28121      std::bitset<max_bits> b(obj);
28122      _OUT << "\"";
28123      if (obj == 0) _OUT << "0";
28124      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
28125          if (b[i] == 1) {
28126              bitCount++;
28127              if (bitCount < b.count())
28128                  _OUT << VkSubmitFlagBitsKHR_map[1ULL<<i] << " | ";
28129              else
28130                  _OUT << VkSubmitFlagBitsKHR_map[1ULL<<i];
28131          }
28132      }
28133      if (commaNeeded)
28134        _OUT << "\"" << ",";
28135      else
28136        _OUT << "\""<< "";
28137      _OUT << std::endl;
28138 }
print_VkSubmitFlagsKHR(const VkSubmitFlagsKHR * obj,const std::string & str,bool commaNeeded=true)28139 static void print_VkSubmitFlagsKHR(const VkSubmitFlagsKHR * obj, const std::string& str, bool commaNeeded=true) {
28140      PRINT_SPACE
28141      if (str != "") _OUT << "\"" << str << "\"" << " : ";
28142      const int max_bits = 64; // We don't expect the number to be larger.
28143      std::bitset<max_bits> b(obj);
28144      _OUT << "\"";
28145      if (obj == 0) _OUT << "0";
28146      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
28147          if (b[i] == 1) {
28148              bitCount++;
28149              if (bitCount < b.count())
28150                  _OUT << VkSubmitFlagBitsKHR_map[1ULL<<i] << " | ";
28151              else
28152                  _OUT << VkSubmitFlagBitsKHR_map[1ULL<<i];
28153          }
28154      }
28155      if (commaNeeded)
28156        _OUT << "\"" << ",";
28157      else
28158        _OUT << "\""<< "";
28159      _OUT << std::endl;
28160 }
28161 
print_VkMemoryBarrier2KHR(VkMemoryBarrier2KHR obj,const std::string & s,bool commaNeeded=true)28162 static void print_VkMemoryBarrier2KHR(VkMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded=true) {
28163      PRINT_SPACE
28164      _OUT << "{" << std::endl;
28165      INDENT(4);
28166 
28167      print_VkStructureType(obj.sType, "sType", 1);
28168 
28169       if (obj.pNext) {
28170          dumpPNextChain(obj.pNext);
28171       } else {
28172          PRINT_SPACE
28173          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28174      }
28175 
28176      print_VkPipelineStageFlags2KHR(obj.srcStageMask, "srcStageMask", 1);
28177 
28178      print_VkAccessFlags2KHR(obj.srcAccessMask, "srcAccessMask", 1);
28179 
28180      print_VkPipelineStageFlags2KHR(obj.dstStageMask, "dstStageMask", 1);
28181 
28182      print_VkAccessFlags2KHR(obj.dstAccessMask, "dstAccessMask", 0);
28183 
28184      INDENT(-4);
28185      PRINT_SPACE
28186      if (commaNeeded)
28187          _OUT << "}," << std::endl;
28188      else
28189          _OUT << "}" << std::endl;
28190 }
print_VkMemoryBarrier2KHR(const VkMemoryBarrier2KHR * obj,const std::string & s,bool commaNeeded=true)28191 static void print_VkMemoryBarrier2KHR(const VkMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded=true) {
28192      PRINT_SPACE
28193      _OUT << "{" << std::endl;
28194      INDENT(4);
28195 
28196      print_VkStructureType(obj->sType, "sType", 1);
28197 
28198       if (obj->pNext) {
28199          dumpPNextChain(obj->pNext);
28200       } else {
28201          PRINT_SPACE
28202          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28203      }
28204 
28205      print_VkPipelineStageFlags2KHR(obj->srcStageMask, "srcStageMask", 1);
28206 
28207      print_VkAccessFlags2KHR(obj->srcAccessMask, "srcAccessMask", 1);
28208 
28209      print_VkPipelineStageFlags2KHR(obj->dstStageMask, "dstStageMask", 1);
28210 
28211      print_VkAccessFlags2KHR(obj->dstAccessMask, "dstAccessMask", 0);
28212 
28213      INDENT(-4);
28214      PRINT_SPACE
28215      if (commaNeeded)
28216          _OUT << "}," << std::endl;
28217      else
28218          _OUT << "}" << std::endl;
28219 }
28220 
print_VkBufferMemoryBarrier2KHR(VkBufferMemoryBarrier2KHR obj,const std::string & s,bool commaNeeded=true)28221 static void print_VkBufferMemoryBarrier2KHR(VkBufferMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded=true) {
28222      PRINT_SPACE
28223      _OUT << "{" << std::endl;
28224      INDENT(4);
28225 
28226      print_VkStructureType(obj.sType, "sType", 1);
28227 
28228       if (obj.pNext) {
28229          dumpPNextChain(obj.pNext);
28230       } else {
28231          PRINT_SPACE
28232          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28233      }
28234 
28235      print_VkPipelineStageFlags2KHR(obj.srcStageMask, "srcStageMask", 1);
28236 
28237      print_VkAccessFlags2KHR(obj.srcAccessMask, "srcAccessMask", 1);
28238 
28239      print_VkPipelineStageFlags2KHR(obj.dstStageMask, "dstStageMask", 1);
28240 
28241      print_VkAccessFlags2KHR(obj.dstAccessMask, "dstAccessMask", 1);
28242 
28243      print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
28244 
28245      print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
28246 
28247      // CTS : required value
28248      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
28249 
28250      print_VkDeviceSize(obj.offset, "offset", 1);
28251 
28252      print_VkDeviceSize(obj.size, "size", 0);
28253 
28254      INDENT(-4);
28255      PRINT_SPACE
28256      if (commaNeeded)
28257          _OUT << "}," << std::endl;
28258      else
28259          _OUT << "}" << std::endl;
28260 }
print_VkBufferMemoryBarrier2KHR(const VkBufferMemoryBarrier2KHR * obj,const std::string & s,bool commaNeeded=true)28261 static void print_VkBufferMemoryBarrier2KHR(const VkBufferMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded=true) {
28262      PRINT_SPACE
28263      _OUT << "{" << std::endl;
28264      INDENT(4);
28265 
28266      print_VkStructureType(obj->sType, "sType", 1);
28267 
28268       if (obj->pNext) {
28269          dumpPNextChain(obj->pNext);
28270       } else {
28271          PRINT_SPACE
28272          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28273      }
28274 
28275      print_VkPipelineStageFlags2KHR(obj->srcStageMask, "srcStageMask", 1);
28276 
28277      print_VkAccessFlags2KHR(obj->srcAccessMask, "srcAccessMask", 1);
28278 
28279      print_VkPipelineStageFlags2KHR(obj->dstStageMask, "dstStageMask", 1);
28280 
28281      print_VkAccessFlags2KHR(obj->dstAccessMask, "dstAccessMask", 1);
28282 
28283      print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
28284 
28285      print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
28286 
28287      // CTS : required value
28288      PRINT_SPACE    _OUT << "\"" << "buffer" << "\"" << " : " << "\"" << "\"," << std::endl;
28289 
28290      print_VkDeviceSize(obj->offset, "offset", 1);
28291 
28292      print_VkDeviceSize(obj->size, "size", 0);
28293 
28294      INDENT(-4);
28295      PRINT_SPACE
28296      if (commaNeeded)
28297          _OUT << "}," << std::endl;
28298      else
28299          _OUT << "}" << std::endl;
28300 }
28301 
print_VkImageMemoryBarrier2KHR(VkImageMemoryBarrier2KHR obj,const std::string & s,bool commaNeeded=true)28302 static void print_VkImageMemoryBarrier2KHR(VkImageMemoryBarrier2KHR obj, const std::string& s, bool commaNeeded=true) {
28303      PRINT_SPACE
28304      _OUT << "{" << std::endl;
28305      INDENT(4);
28306 
28307      print_VkStructureType(obj.sType, "sType", 1);
28308 
28309       if (obj.pNext) {
28310          dumpPNextChain(obj.pNext);
28311       } else {
28312          PRINT_SPACE
28313          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28314      }
28315 
28316      print_VkPipelineStageFlags2KHR(obj.srcStageMask, "srcStageMask", 1);
28317 
28318      print_VkAccessFlags2KHR(obj.srcAccessMask, "srcAccessMask", 1);
28319 
28320      print_VkPipelineStageFlags2KHR(obj.dstStageMask, "dstStageMask", 1);
28321 
28322      print_VkAccessFlags2KHR(obj.dstAccessMask, "dstAccessMask", 1);
28323 
28324      print_VkImageLayout(obj.oldLayout, "oldLayout", 1);
28325 
28326      print_VkImageLayout(obj.newLayout, "newLayout", 1);
28327 
28328      print_uint32_t(obj.srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
28329 
28330      print_uint32_t(obj.dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
28331 
28332      // CTS : required value
28333      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
28334 
28335      PRINT_SPACE
28336      _OUT << "\"subresourceRange\": " << std::endl;
28337      {
28338            print_VkImageSubresourceRange(obj.subresourceRange, "subresourceRange", 0);
28339      }
28340 
28341      INDENT(-4);
28342      PRINT_SPACE
28343      if (commaNeeded)
28344          _OUT << "}," << std::endl;
28345      else
28346          _OUT << "}" << std::endl;
28347 }
print_VkImageMemoryBarrier2KHR(const VkImageMemoryBarrier2KHR * obj,const std::string & s,bool commaNeeded=true)28348 static void print_VkImageMemoryBarrier2KHR(const VkImageMemoryBarrier2KHR * obj, const std::string& s, bool commaNeeded=true) {
28349      PRINT_SPACE
28350      _OUT << "{" << std::endl;
28351      INDENT(4);
28352 
28353      print_VkStructureType(obj->sType, "sType", 1);
28354 
28355       if (obj->pNext) {
28356          dumpPNextChain(obj->pNext);
28357       } else {
28358          PRINT_SPACE
28359          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28360      }
28361 
28362      print_VkPipelineStageFlags2KHR(obj->srcStageMask, "srcStageMask", 1);
28363 
28364      print_VkAccessFlags2KHR(obj->srcAccessMask, "srcAccessMask", 1);
28365 
28366      print_VkPipelineStageFlags2KHR(obj->dstStageMask, "dstStageMask", 1);
28367 
28368      print_VkAccessFlags2KHR(obj->dstAccessMask, "dstAccessMask", 1);
28369 
28370      print_VkImageLayout(obj->oldLayout, "oldLayout", 1);
28371 
28372      print_VkImageLayout(obj->newLayout, "newLayout", 1);
28373 
28374      print_uint32_t(obj->srcQueueFamilyIndex, "srcQueueFamilyIndex", 1);
28375 
28376      print_uint32_t(obj->dstQueueFamilyIndex, "dstQueueFamilyIndex", 1);
28377 
28378      // CTS : required value
28379      PRINT_SPACE    _OUT << "\"" << "image" << "\"" << " : " << "\"" << "\"," << std::endl;
28380 
28381      PRINT_SPACE
28382      _OUT << "\"subresourceRange\": " << std::endl;
28383      {
28384            print_VkImageSubresourceRange(obj->subresourceRange, "subresourceRange", 0);
28385      }
28386 
28387      INDENT(-4);
28388      PRINT_SPACE
28389      if (commaNeeded)
28390          _OUT << "}," << std::endl;
28391      else
28392          _OUT << "}" << std::endl;
28393 }
28394 
print_VkDependencyInfoKHR(VkDependencyInfoKHR obj,const std::string & s,bool commaNeeded=true)28395 static void print_VkDependencyInfoKHR(VkDependencyInfoKHR obj, const std::string& s, bool commaNeeded=true) {
28396      PRINT_SPACE
28397      _OUT << "{" << std::endl;
28398      INDENT(4);
28399 
28400      print_VkStructureType(obj.sType, "sType", 1);
28401 
28402       if (obj.pNext) {
28403          dumpPNextChain(obj.pNext);
28404       } else {
28405          PRINT_SPACE
28406          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28407      }
28408 
28409      print_VkDependencyFlags(obj.dependencyFlags, "dependencyFlags", 1);
28410 
28411      print_uint32_t(obj.memoryBarrierCount, "memoryBarrierCount", 1);
28412 
28413      PRINT_SPACE
28414      _OUT << "\"pMemoryBarriers\": " << std::endl;
28415      if (obj.pMemoryBarriers) {
28416          PRINT_SPACE
28417          _OUT << "[" << std::endl;
28418          for (unsigned int i = 0; i < obj.memoryBarrierCount; i++) {
28419            if (i+1 == obj.memoryBarrierCount)
28420                print_VkMemoryBarrier2KHR(obj.pMemoryBarriers[i], "pMemoryBarriers", 0);
28421            else
28422                print_VkMemoryBarrier2KHR(obj.pMemoryBarriers[i], "pMemoryBarriers", 1);
28423          }
28424          PRINT_SPACE
28425          _OUT << "]," << std::endl;
28426     }
28427      else
28428      {
28429          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28430      }
28431 
28432      print_uint32_t(obj.bufferMemoryBarrierCount, "bufferMemoryBarrierCount", 1);
28433 
28434      PRINT_SPACE
28435      _OUT << "\"pBufferMemoryBarriers\": " << std::endl;
28436      if (obj.pBufferMemoryBarriers) {
28437          PRINT_SPACE
28438          _OUT << "[" << std::endl;
28439          for (unsigned int i = 0; i < obj.bufferMemoryBarrierCount; i++) {
28440            if (i+1 == obj.bufferMemoryBarrierCount)
28441                print_VkBufferMemoryBarrier2KHR(obj.pBufferMemoryBarriers[i], "pBufferMemoryBarriers", 0);
28442            else
28443                print_VkBufferMemoryBarrier2KHR(obj.pBufferMemoryBarriers[i], "pBufferMemoryBarriers", 1);
28444          }
28445          PRINT_SPACE
28446          _OUT << "]," << std::endl;
28447     }
28448      else
28449      {
28450          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28451      }
28452 
28453      print_uint32_t(obj.imageMemoryBarrierCount, "imageMemoryBarrierCount", 1);
28454 
28455      PRINT_SPACE
28456      _OUT << "\"pImageMemoryBarriers\": " << std::endl;
28457      if (obj.pImageMemoryBarriers) {
28458          PRINT_SPACE
28459          _OUT << "[" << std::endl;
28460          for (unsigned int i = 0; i < obj.imageMemoryBarrierCount; i++) {
28461            if (i+1 == obj.imageMemoryBarrierCount)
28462                print_VkImageMemoryBarrier2KHR(obj.pImageMemoryBarriers[i], "pImageMemoryBarriers", 0);
28463            else
28464                print_VkImageMemoryBarrier2KHR(obj.pImageMemoryBarriers[i], "pImageMemoryBarriers", 1);
28465          }
28466          PRINT_SPACE
28467          _OUT << "]" << std::endl;
28468     }
28469      else
28470      {
28471          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
28472      }
28473 
28474      INDENT(-4);
28475      PRINT_SPACE
28476      if (commaNeeded)
28477          _OUT << "}," << std::endl;
28478      else
28479          _OUT << "}" << std::endl;
28480 }
print_VkDependencyInfoKHR(const VkDependencyInfoKHR * obj,const std::string & s,bool commaNeeded=true)28481 static void print_VkDependencyInfoKHR(const VkDependencyInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
28482      PRINT_SPACE
28483      _OUT << "{" << std::endl;
28484      INDENT(4);
28485 
28486      print_VkStructureType(obj->sType, "sType", 1);
28487 
28488       if (obj->pNext) {
28489          dumpPNextChain(obj->pNext);
28490       } else {
28491          PRINT_SPACE
28492          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28493      }
28494 
28495      print_VkDependencyFlags(obj->dependencyFlags, "dependencyFlags", 1);
28496 
28497      print_uint32_t(obj->memoryBarrierCount, "memoryBarrierCount", 1);
28498 
28499      PRINT_SPACE
28500      _OUT << "\"pMemoryBarriers\": " << std::endl;
28501      if (obj->pMemoryBarriers) {
28502          PRINT_SPACE
28503          _OUT << "[" << std::endl;
28504          for (unsigned int i = 0; i < obj->memoryBarrierCount; i++) {
28505            if (i+1 == obj->memoryBarrierCount)
28506                print_VkMemoryBarrier2KHR(obj->pMemoryBarriers[i], "pMemoryBarriers", 0);
28507            else
28508                print_VkMemoryBarrier2KHR(obj->pMemoryBarriers[i], "pMemoryBarriers", 1);
28509          }
28510          PRINT_SPACE
28511          _OUT << "]," << std::endl;
28512     }
28513      else
28514      {
28515          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28516      }
28517 
28518      print_uint32_t(obj->bufferMemoryBarrierCount, "bufferMemoryBarrierCount", 1);
28519 
28520      PRINT_SPACE
28521      _OUT << "\"pBufferMemoryBarriers\": " << std::endl;
28522      if (obj->pBufferMemoryBarriers) {
28523          PRINT_SPACE
28524          _OUT << "[" << std::endl;
28525          for (unsigned int i = 0; i < obj->bufferMemoryBarrierCount; i++) {
28526            if (i+1 == obj->bufferMemoryBarrierCount)
28527                print_VkBufferMemoryBarrier2KHR(obj->pBufferMemoryBarriers[i], "pBufferMemoryBarriers", 0);
28528            else
28529                print_VkBufferMemoryBarrier2KHR(obj->pBufferMemoryBarriers[i], "pBufferMemoryBarriers", 1);
28530          }
28531          PRINT_SPACE
28532          _OUT << "]," << std::endl;
28533     }
28534      else
28535      {
28536          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28537      }
28538 
28539      print_uint32_t(obj->imageMemoryBarrierCount, "imageMemoryBarrierCount", 1);
28540 
28541      PRINT_SPACE
28542      _OUT << "\"pImageMemoryBarriers\": " << std::endl;
28543      if (obj->pImageMemoryBarriers) {
28544          PRINT_SPACE
28545          _OUT << "[" << std::endl;
28546          for (unsigned int i = 0; i < obj->imageMemoryBarrierCount; i++) {
28547            if (i+1 == obj->imageMemoryBarrierCount)
28548                print_VkImageMemoryBarrier2KHR(obj->pImageMemoryBarriers[i], "pImageMemoryBarriers", 0);
28549            else
28550                print_VkImageMemoryBarrier2KHR(obj->pImageMemoryBarriers[i], "pImageMemoryBarriers", 1);
28551          }
28552          PRINT_SPACE
28553          _OUT << "]" << std::endl;
28554     }
28555      else
28556      {
28557          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
28558      }
28559 
28560      INDENT(-4);
28561      PRINT_SPACE
28562      if (commaNeeded)
28563          _OUT << "}," << std::endl;
28564      else
28565          _OUT << "}" << std::endl;
28566 }
28567 
print_VkSemaphoreSubmitInfoKHR(VkSemaphoreSubmitInfoKHR obj,const std::string & s,bool commaNeeded=true)28568 static void print_VkSemaphoreSubmitInfoKHR(VkSemaphoreSubmitInfoKHR obj, const std::string& s, bool commaNeeded=true) {
28569      PRINT_SPACE
28570      _OUT << "{" << std::endl;
28571      INDENT(4);
28572 
28573      print_VkStructureType(obj.sType, "sType", 1);
28574 
28575       if (obj.pNext) {
28576          dumpPNextChain(obj.pNext);
28577       } else {
28578          PRINT_SPACE
28579          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28580      }
28581 
28582      // CTS : required value
28583      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
28584 
28585      print_uint64_t(obj.value, "value", 1);
28586 
28587      print_VkPipelineStageFlags2KHR(obj.stageMask, "stageMask", 1);
28588 
28589      print_uint32_t(obj.deviceIndex, "deviceIndex", 0);
28590 
28591      INDENT(-4);
28592      PRINT_SPACE
28593      if (commaNeeded)
28594          _OUT << "}," << std::endl;
28595      else
28596          _OUT << "}" << std::endl;
28597 }
print_VkSemaphoreSubmitInfoKHR(const VkSemaphoreSubmitInfoKHR * obj,const std::string & s,bool commaNeeded=true)28598 static void print_VkSemaphoreSubmitInfoKHR(const VkSemaphoreSubmitInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
28599      PRINT_SPACE
28600      _OUT << "{" << std::endl;
28601      INDENT(4);
28602 
28603      print_VkStructureType(obj->sType, "sType", 1);
28604 
28605       if (obj->pNext) {
28606          dumpPNextChain(obj->pNext);
28607       } else {
28608          PRINT_SPACE
28609          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28610      }
28611 
28612      // CTS : required value
28613      PRINT_SPACE    _OUT << "\"" << "semaphore" << "\"" << " : " << "\"" << "\"," << std::endl;
28614 
28615      print_uint64_t(obj->value, "value", 1);
28616 
28617      print_VkPipelineStageFlags2KHR(obj->stageMask, "stageMask", 1);
28618 
28619      print_uint32_t(obj->deviceIndex, "deviceIndex", 0);
28620 
28621      INDENT(-4);
28622      PRINT_SPACE
28623      if (commaNeeded)
28624          _OUT << "}," << std::endl;
28625      else
28626          _OUT << "}" << std::endl;
28627 }
28628 
print_VkCommandBufferSubmitInfoKHR(VkCommandBufferSubmitInfoKHR obj,const std::string & s,bool commaNeeded=true)28629 static void print_VkCommandBufferSubmitInfoKHR(VkCommandBufferSubmitInfoKHR obj, const std::string& s, bool commaNeeded=true) {
28630      PRINT_SPACE
28631      _OUT << "{" << std::endl;
28632      INDENT(4);
28633 
28634      print_VkStructureType(obj.sType, "sType", 1);
28635 
28636       if (obj.pNext) {
28637          dumpPNextChain(obj.pNext);
28638       } else {
28639          PRINT_SPACE
28640          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28641      }
28642 
28643      // CTS : required value
28644      PRINT_SPACE    _OUT << "\"" << "commandBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
28645 
28646      print_uint32_t(obj.deviceMask, "deviceMask", 0);
28647 
28648      INDENT(-4);
28649      PRINT_SPACE
28650      if (commaNeeded)
28651          _OUT << "}," << std::endl;
28652      else
28653          _OUT << "}" << std::endl;
28654 }
print_VkCommandBufferSubmitInfoKHR(const VkCommandBufferSubmitInfoKHR * obj,const std::string & s,bool commaNeeded=true)28655 static void print_VkCommandBufferSubmitInfoKHR(const VkCommandBufferSubmitInfoKHR * obj, const std::string& s, bool commaNeeded=true) {
28656      PRINT_SPACE
28657      _OUT << "{" << std::endl;
28658      INDENT(4);
28659 
28660      print_VkStructureType(obj->sType, "sType", 1);
28661 
28662       if (obj->pNext) {
28663          dumpPNextChain(obj->pNext);
28664       } else {
28665          PRINT_SPACE
28666          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28667      }
28668 
28669      // CTS : required value
28670      PRINT_SPACE    _OUT << "\"" << "commandBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
28671 
28672      print_uint32_t(obj->deviceMask, "deviceMask", 0);
28673 
28674      INDENT(-4);
28675      PRINT_SPACE
28676      if (commaNeeded)
28677          _OUT << "}," << std::endl;
28678      else
28679          _OUT << "}" << std::endl;
28680 }
28681 
print_VkSubmitInfo2KHR(VkSubmitInfo2KHR obj,const std::string & s,bool commaNeeded=true)28682 static void print_VkSubmitInfo2KHR(VkSubmitInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
28683      PRINT_SPACE
28684      _OUT << "{" << std::endl;
28685      INDENT(4);
28686 
28687      print_VkStructureType(obj.sType, "sType", 1);
28688 
28689       if (obj.pNext) {
28690          dumpPNextChain(obj.pNext);
28691       } else {
28692          PRINT_SPACE
28693          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28694      }
28695 
28696      print_VkSubmitFlagsKHR(obj.flags, "flags", 1);
28697 
28698      print_uint32_t(obj.waitSemaphoreInfoCount, "waitSemaphoreInfoCount", 1);
28699 
28700      PRINT_SPACE
28701      _OUT << "\"pWaitSemaphoreInfos\": " << std::endl;
28702      if (obj.pWaitSemaphoreInfos) {
28703          PRINT_SPACE
28704          _OUT << "[" << std::endl;
28705          for (unsigned int i = 0; i < obj.waitSemaphoreInfoCount; i++) {
28706            if (i+1 == obj.waitSemaphoreInfoCount)
28707                print_VkSemaphoreSubmitInfoKHR(obj.pWaitSemaphoreInfos[i], "pWaitSemaphoreInfos", 0);
28708            else
28709                print_VkSemaphoreSubmitInfoKHR(obj.pWaitSemaphoreInfos[i], "pWaitSemaphoreInfos", 1);
28710          }
28711          PRINT_SPACE
28712          _OUT << "]," << std::endl;
28713     }
28714      else
28715      {
28716          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28717      }
28718 
28719      print_uint32_t(obj.commandBufferInfoCount, "commandBufferInfoCount", 1);
28720 
28721      PRINT_SPACE
28722      _OUT << "\"pCommandBufferInfos\": " << std::endl;
28723      if (obj.pCommandBufferInfos) {
28724          PRINT_SPACE
28725          _OUT << "[" << std::endl;
28726          for (unsigned int i = 0; i < obj.commandBufferInfoCount; i++) {
28727            if (i+1 == obj.commandBufferInfoCount)
28728                print_VkCommandBufferSubmitInfoKHR(obj.pCommandBufferInfos[i], "pCommandBufferInfos", 0);
28729            else
28730                print_VkCommandBufferSubmitInfoKHR(obj.pCommandBufferInfos[i], "pCommandBufferInfos", 1);
28731          }
28732          PRINT_SPACE
28733          _OUT << "]," << std::endl;
28734     }
28735      else
28736      {
28737          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28738      }
28739 
28740      print_uint32_t(obj.signalSemaphoreInfoCount, "signalSemaphoreInfoCount", 1);
28741 
28742      PRINT_SPACE
28743      _OUT << "\"pSignalSemaphoreInfos\": " << std::endl;
28744      if (obj.pSignalSemaphoreInfos) {
28745          PRINT_SPACE
28746          _OUT << "[" << std::endl;
28747          for (unsigned int i = 0; i < obj.signalSemaphoreInfoCount; i++) {
28748            if (i+1 == obj.signalSemaphoreInfoCount)
28749                print_VkSemaphoreSubmitInfoKHR(obj.pSignalSemaphoreInfos[i], "pSignalSemaphoreInfos", 0);
28750            else
28751                print_VkSemaphoreSubmitInfoKHR(obj.pSignalSemaphoreInfos[i], "pSignalSemaphoreInfos", 1);
28752          }
28753          PRINT_SPACE
28754          _OUT << "]" << std::endl;
28755     }
28756      else
28757      {
28758          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
28759      }
28760 
28761      INDENT(-4);
28762      PRINT_SPACE
28763      if (commaNeeded)
28764          _OUT << "}," << std::endl;
28765      else
28766          _OUT << "}" << std::endl;
28767 }
print_VkSubmitInfo2KHR(const VkSubmitInfo2KHR * obj,const std::string & s,bool commaNeeded=true)28768 static void print_VkSubmitInfo2KHR(const VkSubmitInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
28769      PRINT_SPACE
28770      _OUT << "{" << std::endl;
28771      INDENT(4);
28772 
28773      print_VkStructureType(obj->sType, "sType", 1);
28774 
28775       if (obj->pNext) {
28776          dumpPNextChain(obj->pNext);
28777       } else {
28778          PRINT_SPACE
28779          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28780      }
28781 
28782      print_VkSubmitFlagsKHR(obj->flags, "flags", 1);
28783 
28784      print_uint32_t(obj->waitSemaphoreInfoCount, "waitSemaphoreInfoCount", 1);
28785 
28786      PRINT_SPACE
28787      _OUT << "\"pWaitSemaphoreInfos\": " << std::endl;
28788      if (obj->pWaitSemaphoreInfos) {
28789          PRINT_SPACE
28790          _OUT << "[" << std::endl;
28791          for (unsigned int i = 0; i < obj->waitSemaphoreInfoCount; i++) {
28792            if (i+1 == obj->waitSemaphoreInfoCount)
28793                print_VkSemaphoreSubmitInfoKHR(obj->pWaitSemaphoreInfos[i], "pWaitSemaphoreInfos", 0);
28794            else
28795                print_VkSemaphoreSubmitInfoKHR(obj->pWaitSemaphoreInfos[i], "pWaitSemaphoreInfos", 1);
28796          }
28797          PRINT_SPACE
28798          _OUT << "]," << std::endl;
28799     }
28800      else
28801      {
28802          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28803      }
28804 
28805      print_uint32_t(obj->commandBufferInfoCount, "commandBufferInfoCount", 1);
28806 
28807      PRINT_SPACE
28808      _OUT << "\"pCommandBufferInfos\": " << std::endl;
28809      if (obj->pCommandBufferInfos) {
28810          PRINT_SPACE
28811          _OUT << "[" << std::endl;
28812          for (unsigned int i = 0; i < obj->commandBufferInfoCount; i++) {
28813            if (i+1 == obj->commandBufferInfoCount)
28814                print_VkCommandBufferSubmitInfoKHR(obj->pCommandBufferInfos[i], "pCommandBufferInfos", 0);
28815            else
28816                print_VkCommandBufferSubmitInfoKHR(obj->pCommandBufferInfos[i], "pCommandBufferInfos", 1);
28817          }
28818          PRINT_SPACE
28819          _OUT << "]," << std::endl;
28820     }
28821      else
28822      {
28823          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
28824      }
28825 
28826      print_uint32_t(obj->signalSemaphoreInfoCount, "signalSemaphoreInfoCount", 1);
28827 
28828      PRINT_SPACE
28829      _OUT << "\"pSignalSemaphoreInfos\": " << std::endl;
28830      if (obj->pSignalSemaphoreInfos) {
28831          PRINT_SPACE
28832          _OUT << "[" << std::endl;
28833          for (unsigned int i = 0; i < obj->signalSemaphoreInfoCount; i++) {
28834            if (i+1 == obj->signalSemaphoreInfoCount)
28835                print_VkSemaphoreSubmitInfoKHR(obj->pSignalSemaphoreInfos[i], "pSignalSemaphoreInfos", 0);
28836            else
28837                print_VkSemaphoreSubmitInfoKHR(obj->pSignalSemaphoreInfos[i], "pSignalSemaphoreInfos", 1);
28838          }
28839          PRINT_SPACE
28840          _OUT << "]" << std::endl;
28841     }
28842      else
28843      {
28844          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
28845      }
28846 
28847      INDENT(-4);
28848      PRINT_SPACE
28849      if (commaNeeded)
28850          _OUT << "}," << std::endl;
28851      else
28852          _OUT << "}" << std::endl;
28853 }
28854 
print_VkPhysicalDeviceSynchronization2FeaturesKHR(VkPhysicalDeviceSynchronization2FeaturesKHR obj,const std::string & s,bool commaNeeded=true)28855 static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(VkPhysicalDeviceSynchronization2FeaturesKHR obj, const std::string& s, bool commaNeeded=true) {
28856      PRINT_SPACE
28857      _OUT << "{" << std::endl;
28858      INDENT(4);
28859 
28860      print_VkStructureType(obj.sType, "sType", 1);
28861 
28862       if (obj.pNext) {
28863          dumpPNextChain(obj.pNext);
28864       } else {
28865          PRINT_SPACE
28866          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28867      }
28868 
28869      print_VkBool32(obj.synchronization2, "synchronization2", 0);
28870 
28871      INDENT(-4);
28872      PRINT_SPACE
28873      if (commaNeeded)
28874          _OUT << "}," << std::endl;
28875      else
28876          _OUT << "}" << std::endl;
28877 }
print_VkPhysicalDeviceSynchronization2FeaturesKHR(const VkPhysicalDeviceSynchronization2FeaturesKHR * obj,const std::string & s,bool commaNeeded=true)28878 static void print_VkPhysicalDeviceSynchronization2FeaturesKHR(const VkPhysicalDeviceSynchronization2FeaturesKHR * obj, const std::string& s, bool commaNeeded=true) {
28879      PRINT_SPACE
28880      _OUT << "{" << std::endl;
28881      INDENT(4);
28882 
28883      print_VkStructureType(obj->sType, "sType", 1);
28884 
28885       if (obj->pNext) {
28886          dumpPNextChain(obj->pNext);
28887       } else {
28888          PRINT_SPACE
28889          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28890      }
28891 
28892      print_VkBool32(obj->synchronization2, "synchronization2", 0);
28893 
28894      INDENT(-4);
28895      PRINT_SPACE
28896      if (commaNeeded)
28897          _OUT << "}," << std::endl;
28898      else
28899          _OUT << "}" << std::endl;
28900 }
28901 
print_VkQueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointProperties2NV obj,const std::string & s,bool commaNeeded=true)28902 static void print_VkQueueFamilyCheckpointProperties2NV(VkQueueFamilyCheckpointProperties2NV obj, const std::string& s, bool commaNeeded=true) {
28903      PRINT_SPACE
28904      _OUT << "{" << std::endl;
28905      INDENT(4);
28906 
28907      print_VkStructureType(obj.sType, "sType", 1);
28908 
28909       if (obj.pNext) {
28910          dumpPNextChain(obj.pNext);
28911       } else {
28912          PRINT_SPACE
28913          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28914      }
28915 
28916      print_VkPipelineStageFlags2KHR(obj.checkpointExecutionStageMask, "checkpointExecutionStageMask", 0);
28917 
28918      INDENT(-4);
28919      PRINT_SPACE
28920      if (commaNeeded)
28921          _OUT << "}," << std::endl;
28922      else
28923          _OUT << "}" << std::endl;
28924 }
print_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV * obj,const std::string & s,bool commaNeeded=true)28925 static void print_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV * obj, const std::string& s, bool commaNeeded=true) {
28926      PRINT_SPACE
28927      _OUT << "{" << std::endl;
28928      INDENT(4);
28929 
28930      print_VkStructureType(obj->sType, "sType", 1);
28931 
28932       if (obj->pNext) {
28933          dumpPNextChain(obj->pNext);
28934       } else {
28935          PRINT_SPACE
28936          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28937      }
28938 
28939      print_VkPipelineStageFlags2KHR(obj->checkpointExecutionStageMask, "checkpointExecutionStageMask", 0);
28940 
28941      INDENT(-4);
28942      PRINT_SPACE
28943      if (commaNeeded)
28944          _OUT << "}," << std::endl;
28945      else
28946          _OUT << "}" << std::endl;
28947 }
28948 
print_VkCheckpointData2NV(VkCheckpointData2NV obj,const std::string & s,bool commaNeeded=true)28949 static void print_VkCheckpointData2NV(VkCheckpointData2NV obj, const std::string& s, bool commaNeeded=true) {
28950      PRINT_SPACE
28951      _OUT << "{" << std::endl;
28952      INDENT(4);
28953 
28954      print_VkStructureType(obj.sType, "sType", 1);
28955 
28956       if (obj.pNext) {
28957          dumpPNextChain(obj.pNext);
28958       } else {
28959          PRINT_SPACE
28960          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28961      }
28962 
28963      print_VkPipelineStageFlags2KHR(obj.stage, "stage", 1);
28964 
28965      /** Note: Ignoring void* data. **/
28966 
28967      INDENT(-4);
28968      PRINT_SPACE
28969      if (commaNeeded)
28970          _OUT << "}," << std::endl;
28971      else
28972          _OUT << "}" << std::endl;
28973 }
print_VkCheckpointData2NV(const VkCheckpointData2NV * obj,const std::string & s,bool commaNeeded=true)28974 static void print_VkCheckpointData2NV(const VkCheckpointData2NV * obj, const std::string& s, bool commaNeeded=true) {
28975      PRINT_SPACE
28976      _OUT << "{" << std::endl;
28977      INDENT(4);
28978 
28979      print_VkStructureType(obj->sType, "sType", 1);
28980 
28981       if (obj->pNext) {
28982          dumpPNextChain(obj->pNext);
28983       } else {
28984          PRINT_SPACE
28985          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
28986      }
28987 
28988      print_VkPipelineStageFlags2KHR(obj->stage, "stage", 1);
28989 
28990      /** Note: Ignoring void* data. **/
28991 
28992      INDENT(-4);
28993      PRINT_SPACE
28994      if (commaNeeded)
28995          _OUT << "}," << std::endl;
28996      else
28997          _OUT << "}" << std::endl;
28998 }
28999 
print_VkBufferCopy2KHR(VkBufferCopy2KHR obj,const std::string & s,bool commaNeeded=true)29000 static void print_VkBufferCopy2KHR(VkBufferCopy2KHR obj, const std::string& s, bool commaNeeded=true) {
29001      PRINT_SPACE
29002      _OUT << "{" << std::endl;
29003      INDENT(4);
29004 
29005      print_VkStructureType(obj.sType, "sType", 1);
29006 
29007       if (obj.pNext) {
29008          dumpPNextChain(obj.pNext);
29009       } else {
29010          PRINT_SPACE
29011          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29012      }
29013 
29014      print_VkDeviceSize(obj.srcOffset, "srcOffset", 1);
29015 
29016      print_VkDeviceSize(obj.dstOffset, "dstOffset", 1);
29017 
29018      print_VkDeviceSize(obj.size, "size", 0);
29019 
29020      INDENT(-4);
29021      PRINT_SPACE
29022      if (commaNeeded)
29023          _OUT << "}," << std::endl;
29024      else
29025          _OUT << "}" << std::endl;
29026 }
print_VkBufferCopy2KHR(const VkBufferCopy2KHR * obj,const std::string & s,bool commaNeeded=true)29027 static void print_VkBufferCopy2KHR(const VkBufferCopy2KHR * obj, const std::string& s, bool commaNeeded=true) {
29028      PRINT_SPACE
29029      _OUT << "{" << std::endl;
29030      INDENT(4);
29031 
29032      print_VkStructureType(obj->sType, "sType", 1);
29033 
29034       if (obj->pNext) {
29035          dumpPNextChain(obj->pNext);
29036       } else {
29037          PRINT_SPACE
29038          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29039      }
29040 
29041      print_VkDeviceSize(obj->srcOffset, "srcOffset", 1);
29042 
29043      print_VkDeviceSize(obj->dstOffset, "dstOffset", 1);
29044 
29045      print_VkDeviceSize(obj->size, "size", 0);
29046 
29047      INDENT(-4);
29048      PRINT_SPACE
29049      if (commaNeeded)
29050          _OUT << "}," << std::endl;
29051      else
29052          _OUT << "}" << std::endl;
29053 }
29054 
print_VkCopyBufferInfo2KHR(VkCopyBufferInfo2KHR obj,const std::string & s,bool commaNeeded=true)29055 static void print_VkCopyBufferInfo2KHR(VkCopyBufferInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
29056      PRINT_SPACE
29057      _OUT << "{" << std::endl;
29058      INDENT(4);
29059 
29060      print_VkStructureType(obj.sType, "sType", 1);
29061 
29062       if (obj.pNext) {
29063          dumpPNextChain(obj.pNext);
29064       } else {
29065          PRINT_SPACE
29066          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29067      }
29068 
29069      // CTS : required value
29070      PRINT_SPACE    _OUT << "\"" << "srcBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29071 
29072      // CTS : required value
29073      PRINT_SPACE    _OUT << "\"" << "dstBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29074 
29075      print_uint32_t(obj.regionCount, "regionCount", 1);
29076 
29077      PRINT_SPACE
29078      _OUT << "\"pRegions\": " << std::endl;
29079      if (obj.pRegions) {
29080          PRINT_SPACE
29081          _OUT << "[" << std::endl;
29082          for (unsigned int i = 0; i < obj.regionCount; i++) {
29083            if (i+1 == obj.regionCount)
29084                print_VkBufferCopy2KHR(obj.pRegions[i], "pRegions", 0);
29085            else
29086                print_VkBufferCopy2KHR(obj.pRegions[i], "pRegions", 1);
29087          }
29088          PRINT_SPACE
29089          _OUT << "]" << std::endl;
29090     }
29091      else
29092      {
29093          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29094      }
29095 
29096      INDENT(-4);
29097      PRINT_SPACE
29098      if (commaNeeded)
29099          _OUT << "}," << std::endl;
29100      else
29101          _OUT << "}" << std::endl;
29102 }
print_VkCopyBufferInfo2KHR(const VkCopyBufferInfo2KHR * obj,const std::string & s,bool commaNeeded=true)29103 static void print_VkCopyBufferInfo2KHR(const VkCopyBufferInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
29104      PRINT_SPACE
29105      _OUT << "{" << std::endl;
29106      INDENT(4);
29107 
29108      print_VkStructureType(obj->sType, "sType", 1);
29109 
29110       if (obj->pNext) {
29111          dumpPNextChain(obj->pNext);
29112       } else {
29113          PRINT_SPACE
29114          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29115      }
29116 
29117      // CTS : required value
29118      PRINT_SPACE    _OUT << "\"" << "srcBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29119 
29120      // CTS : required value
29121      PRINT_SPACE    _OUT << "\"" << "dstBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29122 
29123      print_uint32_t(obj->regionCount, "regionCount", 1);
29124 
29125      PRINT_SPACE
29126      _OUT << "\"pRegions\": " << std::endl;
29127      if (obj->pRegions) {
29128          PRINT_SPACE
29129          _OUT << "[" << std::endl;
29130          for (unsigned int i = 0; i < obj->regionCount; i++) {
29131            if (i+1 == obj->regionCount)
29132                print_VkBufferCopy2KHR(obj->pRegions[i], "pRegions", 0);
29133            else
29134                print_VkBufferCopy2KHR(obj->pRegions[i], "pRegions", 1);
29135          }
29136          PRINT_SPACE
29137          _OUT << "]" << std::endl;
29138     }
29139      else
29140      {
29141          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29142      }
29143 
29144      INDENT(-4);
29145      PRINT_SPACE
29146      if (commaNeeded)
29147          _OUT << "}," << std::endl;
29148      else
29149          _OUT << "}" << std::endl;
29150 }
29151 
print_VkImageCopy2KHR(VkImageCopy2KHR obj,const std::string & s,bool commaNeeded=true)29152 static void print_VkImageCopy2KHR(VkImageCopy2KHR obj, const std::string& s, bool commaNeeded=true) {
29153      PRINT_SPACE
29154      _OUT << "{" << std::endl;
29155      INDENT(4);
29156 
29157      print_VkStructureType(obj.sType, "sType", 1);
29158 
29159       if (obj.pNext) {
29160          dumpPNextChain(obj.pNext);
29161       } else {
29162          PRINT_SPACE
29163          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29164      }
29165 
29166      PRINT_SPACE
29167      _OUT << "\"srcSubresource\": " << std::endl;
29168      {
29169            print_VkImageSubresourceLayers(obj.srcSubresource, "srcSubresource", 1);
29170      }
29171 
29172      PRINT_SPACE
29173      _OUT << "\"srcOffset\": " << std::endl;
29174      {
29175            print_VkOffset3D(obj.srcOffset, "srcOffset", 1);
29176      }
29177 
29178      PRINT_SPACE
29179      _OUT << "\"dstSubresource\": " << std::endl;
29180      {
29181            print_VkImageSubresourceLayers(obj.dstSubresource, "dstSubresource", 1);
29182      }
29183 
29184      PRINT_SPACE
29185      _OUT << "\"dstOffset\": " << std::endl;
29186      {
29187            print_VkOffset3D(obj.dstOffset, "dstOffset", 1);
29188      }
29189 
29190      PRINT_SPACE
29191      _OUT << "\"extent\": " << std::endl;
29192      {
29193            print_VkExtent3D(obj.extent, "extent", 0);
29194      }
29195 
29196      INDENT(-4);
29197      PRINT_SPACE
29198      if (commaNeeded)
29199          _OUT << "}," << std::endl;
29200      else
29201          _OUT << "}" << std::endl;
29202 }
print_VkImageCopy2KHR(const VkImageCopy2KHR * obj,const std::string & s,bool commaNeeded=true)29203 static void print_VkImageCopy2KHR(const VkImageCopy2KHR * obj, const std::string& s, bool commaNeeded=true) {
29204      PRINT_SPACE
29205      _OUT << "{" << std::endl;
29206      INDENT(4);
29207 
29208      print_VkStructureType(obj->sType, "sType", 1);
29209 
29210       if (obj->pNext) {
29211          dumpPNextChain(obj->pNext);
29212       } else {
29213          PRINT_SPACE
29214          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29215      }
29216 
29217      PRINT_SPACE
29218      _OUT << "\"srcSubresource\": " << std::endl;
29219      {
29220            print_VkImageSubresourceLayers(obj->srcSubresource, "srcSubresource", 1);
29221      }
29222 
29223      PRINT_SPACE
29224      _OUT << "\"srcOffset\": " << std::endl;
29225      {
29226            print_VkOffset3D(obj->srcOffset, "srcOffset", 1);
29227      }
29228 
29229      PRINT_SPACE
29230      _OUT << "\"dstSubresource\": " << std::endl;
29231      {
29232            print_VkImageSubresourceLayers(obj->dstSubresource, "dstSubresource", 1);
29233      }
29234 
29235      PRINT_SPACE
29236      _OUT << "\"dstOffset\": " << std::endl;
29237      {
29238            print_VkOffset3D(obj->dstOffset, "dstOffset", 1);
29239      }
29240 
29241      PRINT_SPACE
29242      _OUT << "\"extent\": " << std::endl;
29243      {
29244            print_VkExtent3D(obj->extent, "extent", 0);
29245      }
29246 
29247      INDENT(-4);
29248      PRINT_SPACE
29249      if (commaNeeded)
29250          _OUT << "}," << std::endl;
29251      else
29252          _OUT << "}" << std::endl;
29253 }
29254 
print_VkCopyImageInfo2KHR(VkCopyImageInfo2KHR obj,const std::string & s,bool commaNeeded=true)29255 static void print_VkCopyImageInfo2KHR(VkCopyImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
29256      PRINT_SPACE
29257      _OUT << "{" << std::endl;
29258      INDENT(4);
29259 
29260      print_VkStructureType(obj.sType, "sType", 1);
29261 
29262       if (obj.pNext) {
29263          dumpPNextChain(obj.pNext);
29264       } else {
29265          PRINT_SPACE
29266          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29267      }
29268 
29269      // CTS : required value
29270      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29271 
29272      print_VkImageLayout(obj.srcImageLayout, "srcImageLayout", 1);
29273 
29274      // CTS : required value
29275      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29276 
29277      print_VkImageLayout(obj.dstImageLayout, "dstImageLayout", 1);
29278 
29279      print_uint32_t(obj.regionCount, "regionCount", 1);
29280 
29281      PRINT_SPACE
29282      _OUT << "\"pRegions\": " << std::endl;
29283      if (obj.pRegions) {
29284          PRINT_SPACE
29285          _OUT << "[" << std::endl;
29286          for (unsigned int i = 0; i < obj.regionCount; i++) {
29287            if (i+1 == obj.regionCount)
29288                print_VkImageCopy2KHR(obj.pRegions[i], "pRegions", 0);
29289            else
29290                print_VkImageCopy2KHR(obj.pRegions[i], "pRegions", 1);
29291          }
29292          PRINT_SPACE
29293          _OUT << "]" << std::endl;
29294     }
29295      else
29296      {
29297          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29298      }
29299 
29300      INDENT(-4);
29301      PRINT_SPACE
29302      if (commaNeeded)
29303          _OUT << "}," << std::endl;
29304      else
29305          _OUT << "}" << std::endl;
29306 }
print_VkCopyImageInfo2KHR(const VkCopyImageInfo2KHR * obj,const std::string & s,bool commaNeeded=true)29307 static void print_VkCopyImageInfo2KHR(const VkCopyImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
29308      PRINT_SPACE
29309      _OUT << "{" << std::endl;
29310      INDENT(4);
29311 
29312      print_VkStructureType(obj->sType, "sType", 1);
29313 
29314       if (obj->pNext) {
29315          dumpPNextChain(obj->pNext);
29316       } else {
29317          PRINT_SPACE
29318          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29319      }
29320 
29321      // CTS : required value
29322      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29323 
29324      print_VkImageLayout(obj->srcImageLayout, "srcImageLayout", 1);
29325 
29326      // CTS : required value
29327      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29328 
29329      print_VkImageLayout(obj->dstImageLayout, "dstImageLayout", 1);
29330 
29331      print_uint32_t(obj->regionCount, "regionCount", 1);
29332 
29333      PRINT_SPACE
29334      _OUT << "\"pRegions\": " << std::endl;
29335      if (obj->pRegions) {
29336          PRINT_SPACE
29337          _OUT << "[" << std::endl;
29338          for (unsigned int i = 0; i < obj->regionCount; i++) {
29339            if (i+1 == obj->regionCount)
29340                print_VkImageCopy2KHR(obj->pRegions[i], "pRegions", 0);
29341            else
29342                print_VkImageCopy2KHR(obj->pRegions[i], "pRegions", 1);
29343          }
29344          PRINT_SPACE
29345          _OUT << "]" << std::endl;
29346     }
29347      else
29348      {
29349          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29350      }
29351 
29352      INDENT(-4);
29353      PRINT_SPACE
29354      if (commaNeeded)
29355          _OUT << "}," << std::endl;
29356      else
29357          _OUT << "}" << std::endl;
29358 }
29359 
print_VkBufferImageCopy2KHR(VkBufferImageCopy2KHR obj,const std::string & s,bool commaNeeded=true)29360 static void print_VkBufferImageCopy2KHR(VkBufferImageCopy2KHR obj, const std::string& s, bool commaNeeded=true) {
29361      PRINT_SPACE
29362      _OUT << "{" << std::endl;
29363      INDENT(4);
29364 
29365      print_VkStructureType(obj.sType, "sType", 1);
29366 
29367       if (obj.pNext) {
29368          dumpPNextChain(obj.pNext);
29369       } else {
29370          PRINT_SPACE
29371          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29372      }
29373 
29374      print_VkDeviceSize(obj.bufferOffset, "bufferOffset", 1);
29375 
29376      print_uint32_t(obj.bufferRowLength, "bufferRowLength", 1);
29377 
29378      print_uint32_t(obj.bufferImageHeight, "bufferImageHeight", 1);
29379 
29380      PRINT_SPACE
29381      _OUT << "\"imageSubresource\": " << std::endl;
29382      {
29383            print_VkImageSubresourceLayers(obj.imageSubresource, "imageSubresource", 1);
29384      }
29385 
29386      PRINT_SPACE
29387      _OUT << "\"imageOffset\": " << std::endl;
29388      {
29389            print_VkOffset3D(obj.imageOffset, "imageOffset", 1);
29390      }
29391 
29392      PRINT_SPACE
29393      _OUT << "\"imageExtent\": " << std::endl;
29394      {
29395            print_VkExtent3D(obj.imageExtent, "imageExtent", 0);
29396      }
29397 
29398      INDENT(-4);
29399      PRINT_SPACE
29400      if (commaNeeded)
29401          _OUT << "}," << std::endl;
29402      else
29403          _OUT << "}" << std::endl;
29404 }
print_VkBufferImageCopy2KHR(const VkBufferImageCopy2KHR * obj,const std::string & s,bool commaNeeded=true)29405 static void print_VkBufferImageCopy2KHR(const VkBufferImageCopy2KHR * obj, const std::string& s, bool commaNeeded=true) {
29406      PRINT_SPACE
29407      _OUT << "{" << std::endl;
29408      INDENT(4);
29409 
29410      print_VkStructureType(obj->sType, "sType", 1);
29411 
29412       if (obj->pNext) {
29413          dumpPNextChain(obj->pNext);
29414       } else {
29415          PRINT_SPACE
29416          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29417      }
29418 
29419      print_VkDeviceSize(obj->bufferOffset, "bufferOffset", 1);
29420 
29421      print_uint32_t(obj->bufferRowLength, "bufferRowLength", 1);
29422 
29423      print_uint32_t(obj->bufferImageHeight, "bufferImageHeight", 1);
29424 
29425      PRINT_SPACE
29426      _OUT << "\"imageSubresource\": " << std::endl;
29427      {
29428            print_VkImageSubresourceLayers(obj->imageSubresource, "imageSubresource", 1);
29429      }
29430 
29431      PRINT_SPACE
29432      _OUT << "\"imageOffset\": " << std::endl;
29433      {
29434            print_VkOffset3D(obj->imageOffset, "imageOffset", 1);
29435      }
29436 
29437      PRINT_SPACE
29438      _OUT << "\"imageExtent\": " << std::endl;
29439      {
29440            print_VkExtent3D(obj->imageExtent, "imageExtent", 0);
29441      }
29442 
29443      INDENT(-4);
29444      PRINT_SPACE
29445      if (commaNeeded)
29446          _OUT << "}," << std::endl;
29447      else
29448          _OUT << "}" << std::endl;
29449 }
29450 
print_VkCopyBufferToImageInfo2KHR(VkCopyBufferToImageInfo2KHR obj,const std::string & s,bool commaNeeded=true)29451 static void print_VkCopyBufferToImageInfo2KHR(VkCopyBufferToImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
29452      PRINT_SPACE
29453      _OUT << "{" << std::endl;
29454      INDENT(4);
29455 
29456      print_VkStructureType(obj.sType, "sType", 1);
29457 
29458       if (obj.pNext) {
29459          dumpPNextChain(obj.pNext);
29460       } else {
29461          PRINT_SPACE
29462          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29463      }
29464 
29465      // CTS : required value
29466      PRINT_SPACE    _OUT << "\"" << "srcBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29467 
29468      // CTS : required value
29469      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29470 
29471      print_VkImageLayout(obj.dstImageLayout, "dstImageLayout", 1);
29472 
29473      print_uint32_t(obj.regionCount, "regionCount", 1);
29474 
29475      PRINT_SPACE
29476      _OUT << "\"pRegions\": " << std::endl;
29477      if (obj.pRegions) {
29478          PRINT_SPACE
29479          _OUT << "[" << std::endl;
29480          for (unsigned int i = 0; i < obj.regionCount; i++) {
29481            if (i+1 == obj.regionCount)
29482                print_VkBufferImageCopy2KHR(obj.pRegions[i], "pRegions", 0);
29483            else
29484                print_VkBufferImageCopy2KHR(obj.pRegions[i], "pRegions", 1);
29485          }
29486          PRINT_SPACE
29487          _OUT << "]" << std::endl;
29488     }
29489      else
29490      {
29491          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29492      }
29493 
29494      INDENT(-4);
29495      PRINT_SPACE
29496      if (commaNeeded)
29497          _OUT << "}," << std::endl;
29498      else
29499          _OUT << "}" << std::endl;
29500 }
print_VkCopyBufferToImageInfo2KHR(const VkCopyBufferToImageInfo2KHR * obj,const std::string & s,bool commaNeeded=true)29501 static void print_VkCopyBufferToImageInfo2KHR(const VkCopyBufferToImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
29502      PRINT_SPACE
29503      _OUT << "{" << std::endl;
29504      INDENT(4);
29505 
29506      print_VkStructureType(obj->sType, "sType", 1);
29507 
29508       if (obj->pNext) {
29509          dumpPNextChain(obj->pNext);
29510       } else {
29511          PRINT_SPACE
29512          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29513      }
29514 
29515      // CTS : required value
29516      PRINT_SPACE    _OUT << "\"" << "srcBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29517 
29518      // CTS : required value
29519      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29520 
29521      print_VkImageLayout(obj->dstImageLayout, "dstImageLayout", 1);
29522 
29523      print_uint32_t(obj->regionCount, "regionCount", 1);
29524 
29525      PRINT_SPACE
29526      _OUT << "\"pRegions\": " << std::endl;
29527      if (obj->pRegions) {
29528          PRINT_SPACE
29529          _OUT << "[" << std::endl;
29530          for (unsigned int i = 0; i < obj->regionCount; i++) {
29531            if (i+1 == obj->regionCount)
29532                print_VkBufferImageCopy2KHR(obj->pRegions[i], "pRegions", 0);
29533            else
29534                print_VkBufferImageCopy2KHR(obj->pRegions[i], "pRegions", 1);
29535          }
29536          PRINT_SPACE
29537          _OUT << "]" << std::endl;
29538     }
29539      else
29540      {
29541          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29542      }
29543 
29544      INDENT(-4);
29545      PRINT_SPACE
29546      if (commaNeeded)
29547          _OUT << "}," << std::endl;
29548      else
29549          _OUT << "}" << std::endl;
29550 }
29551 
print_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR obj,const std::string & s,bool commaNeeded=true)29552 static void print_VkCopyImageToBufferInfo2KHR(VkCopyImageToBufferInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
29553      PRINT_SPACE
29554      _OUT << "{" << std::endl;
29555      INDENT(4);
29556 
29557      print_VkStructureType(obj.sType, "sType", 1);
29558 
29559       if (obj.pNext) {
29560          dumpPNextChain(obj.pNext);
29561       } else {
29562          PRINT_SPACE
29563          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29564      }
29565 
29566      // CTS : required value
29567      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29568 
29569      print_VkImageLayout(obj.srcImageLayout, "srcImageLayout", 1);
29570 
29571      // CTS : required value
29572      PRINT_SPACE    _OUT << "\"" << "dstBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29573 
29574      print_uint32_t(obj.regionCount, "regionCount", 1);
29575 
29576      PRINT_SPACE
29577      _OUT << "\"pRegions\": " << std::endl;
29578      if (obj.pRegions) {
29579          PRINT_SPACE
29580          _OUT << "[" << std::endl;
29581          for (unsigned int i = 0; i < obj.regionCount; i++) {
29582            if (i+1 == obj.regionCount)
29583                print_VkBufferImageCopy2KHR(obj.pRegions[i], "pRegions", 0);
29584            else
29585                print_VkBufferImageCopy2KHR(obj.pRegions[i], "pRegions", 1);
29586          }
29587          PRINT_SPACE
29588          _OUT << "]" << std::endl;
29589     }
29590      else
29591      {
29592          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29593      }
29594 
29595      INDENT(-4);
29596      PRINT_SPACE
29597      if (commaNeeded)
29598          _OUT << "}," << std::endl;
29599      else
29600          _OUT << "}" << std::endl;
29601 }
print_VkCopyImageToBufferInfo2KHR(const VkCopyImageToBufferInfo2KHR * obj,const std::string & s,bool commaNeeded=true)29602 static void print_VkCopyImageToBufferInfo2KHR(const VkCopyImageToBufferInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
29603      PRINT_SPACE
29604      _OUT << "{" << std::endl;
29605      INDENT(4);
29606 
29607      print_VkStructureType(obj->sType, "sType", 1);
29608 
29609       if (obj->pNext) {
29610          dumpPNextChain(obj->pNext);
29611       } else {
29612          PRINT_SPACE
29613          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29614      }
29615 
29616      // CTS : required value
29617      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29618 
29619      print_VkImageLayout(obj->srcImageLayout, "srcImageLayout", 1);
29620 
29621      // CTS : required value
29622      PRINT_SPACE    _OUT << "\"" << "dstBuffer" << "\"" << " : " << "\"" << "\"," << std::endl;
29623 
29624      print_uint32_t(obj->regionCount, "regionCount", 1);
29625 
29626      PRINT_SPACE
29627      _OUT << "\"pRegions\": " << std::endl;
29628      if (obj->pRegions) {
29629          PRINT_SPACE
29630          _OUT << "[" << std::endl;
29631          for (unsigned int i = 0; i < obj->regionCount; i++) {
29632            if (i+1 == obj->regionCount)
29633                print_VkBufferImageCopy2KHR(obj->pRegions[i], "pRegions", 0);
29634            else
29635                print_VkBufferImageCopy2KHR(obj->pRegions[i], "pRegions", 1);
29636          }
29637          PRINT_SPACE
29638          _OUT << "]" << std::endl;
29639     }
29640      else
29641      {
29642          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
29643      }
29644 
29645      INDENT(-4);
29646      PRINT_SPACE
29647      if (commaNeeded)
29648          _OUT << "}," << std::endl;
29649      else
29650          _OUT << "}" << std::endl;
29651 }
29652 
print_VkImageBlit2KHR(VkImageBlit2KHR obj,const std::string & s,bool commaNeeded=true)29653 static void print_VkImageBlit2KHR(VkImageBlit2KHR obj, const std::string& s, bool commaNeeded=true) {
29654      PRINT_SPACE
29655      _OUT << "{" << std::endl;
29656      INDENT(4);
29657 
29658      print_VkStructureType(obj.sType, "sType", 1);
29659 
29660       if (obj.pNext) {
29661          dumpPNextChain(obj.pNext);
29662       } else {
29663          PRINT_SPACE
29664          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29665      }
29666 
29667      PRINT_SPACE
29668      _OUT << "\"srcSubresource\": " << std::endl;
29669      {
29670            print_VkImageSubresourceLayers(obj.srcSubresource, "srcSubresource", 1);
29671      }
29672 
29673      PRINT_SPACE
29674      _OUT << "\"srcOffsets\":" << std::endl;
29675      PRINT_SPACE
29676        _OUT << "[" << std::endl;
29677        for (unsigned int i = 0; i < 2; i++) {
29678            bool isCommaNeeded = (i+1) != 2;
29679            print_VkOffset3D(obj.srcOffsets[i], "", isCommaNeeded);
29680        }
29681        PRINT_SPACE
29682        _OUT << "]" << "," << std::endl;
29683 
29684      PRINT_SPACE
29685      _OUT << "\"dstSubresource\": " << std::endl;
29686      {
29687            print_VkImageSubresourceLayers(obj.dstSubresource, "dstSubresource", 1);
29688      }
29689 
29690      PRINT_SPACE
29691      _OUT << "\"dstOffsets\":" << std::endl;
29692      PRINT_SPACE
29693        _OUT << "[" << std::endl;
29694        for (unsigned int i = 0; i < 2; i++) {
29695            bool isCommaNeeded = (i+1) != 2;
29696            print_VkOffset3D(obj.dstOffsets[i], "", isCommaNeeded);
29697        }
29698        PRINT_SPACE
29699        _OUT << "]" << "" << std::endl;
29700 
29701      INDENT(-4);
29702      PRINT_SPACE
29703      if (commaNeeded)
29704          _OUT << "}," << std::endl;
29705      else
29706          _OUT << "}" << std::endl;
29707 }
print_VkImageBlit2KHR(const VkImageBlit2KHR * obj,const std::string & s,bool commaNeeded=true)29708 static void print_VkImageBlit2KHR(const VkImageBlit2KHR * obj, const std::string& s, bool commaNeeded=true) {
29709      PRINT_SPACE
29710      _OUT << "{" << std::endl;
29711      INDENT(4);
29712 
29713      print_VkStructureType(obj->sType, "sType", 1);
29714 
29715       if (obj->pNext) {
29716          dumpPNextChain(obj->pNext);
29717       } else {
29718          PRINT_SPACE
29719          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29720      }
29721 
29722      PRINT_SPACE
29723      _OUT << "\"srcSubresource\": " << std::endl;
29724      {
29725            print_VkImageSubresourceLayers(obj->srcSubresource, "srcSubresource", 1);
29726      }
29727 
29728      PRINT_SPACE
29729      _OUT << "\"srcOffsets\":" << std::endl;
29730      PRINT_SPACE
29731        _OUT << "[" << std::endl;
29732        for (unsigned int i = 0; i < 2; i++) {
29733            bool isCommaNeeded = (i+1) != 2;
29734            print_VkOffset3D(obj->srcOffsets[i], "", isCommaNeeded);
29735        }
29736        PRINT_SPACE
29737        _OUT << "]" << "," << std::endl;
29738 
29739      PRINT_SPACE
29740      _OUT << "\"dstSubresource\": " << std::endl;
29741      {
29742            print_VkImageSubresourceLayers(obj->dstSubresource, "dstSubresource", 1);
29743      }
29744 
29745      PRINT_SPACE
29746      _OUT << "\"dstOffsets\":" << std::endl;
29747      PRINT_SPACE
29748        _OUT << "[" << std::endl;
29749        for (unsigned int i = 0; i < 2; i++) {
29750            bool isCommaNeeded = (i+1) != 2;
29751            print_VkOffset3D(obj->dstOffsets[i], "", isCommaNeeded);
29752        }
29753        PRINT_SPACE
29754        _OUT << "]" << "" << std::endl;
29755 
29756      INDENT(-4);
29757      PRINT_SPACE
29758      if (commaNeeded)
29759          _OUT << "}," << std::endl;
29760      else
29761          _OUT << "}" << std::endl;
29762 }
29763 
print_VkBlitImageInfo2KHR(VkBlitImageInfo2KHR obj,const std::string & s,bool commaNeeded=true)29764 static void print_VkBlitImageInfo2KHR(VkBlitImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
29765      PRINT_SPACE
29766      _OUT << "{" << std::endl;
29767      INDENT(4);
29768 
29769      print_VkStructureType(obj.sType, "sType", 1);
29770 
29771       if (obj.pNext) {
29772          dumpPNextChain(obj.pNext);
29773       } else {
29774          PRINT_SPACE
29775          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29776      }
29777 
29778      // CTS : required value
29779      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29780 
29781      print_VkImageLayout(obj.srcImageLayout, "srcImageLayout", 1);
29782 
29783      // CTS : required value
29784      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29785 
29786      print_VkImageLayout(obj.dstImageLayout, "dstImageLayout", 1);
29787 
29788      print_uint32_t(obj.regionCount, "regionCount", 1);
29789 
29790      PRINT_SPACE
29791      _OUT << "\"pRegions\": " << std::endl;
29792      if (obj.pRegions) {
29793          PRINT_SPACE
29794          _OUT << "[" << std::endl;
29795          for (unsigned int i = 0; i < obj.regionCount; i++) {
29796            if (i+1 == obj.regionCount)
29797                print_VkImageBlit2KHR(obj.pRegions[i], "pRegions", 0);
29798            else
29799                print_VkImageBlit2KHR(obj.pRegions[i], "pRegions", 1);
29800          }
29801          PRINT_SPACE
29802          _OUT << "]," << std::endl;
29803     }
29804      else
29805      {
29806          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
29807      }
29808 
29809      print_VkFilter(obj.filter, "filter", 0);
29810 
29811      INDENT(-4);
29812      PRINT_SPACE
29813      if (commaNeeded)
29814          _OUT << "}," << std::endl;
29815      else
29816          _OUT << "}" << std::endl;
29817 }
print_VkBlitImageInfo2KHR(const VkBlitImageInfo2KHR * obj,const std::string & s,bool commaNeeded=true)29818 static void print_VkBlitImageInfo2KHR(const VkBlitImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
29819      PRINT_SPACE
29820      _OUT << "{" << std::endl;
29821      INDENT(4);
29822 
29823      print_VkStructureType(obj->sType, "sType", 1);
29824 
29825       if (obj->pNext) {
29826          dumpPNextChain(obj->pNext);
29827       } else {
29828          PRINT_SPACE
29829          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29830      }
29831 
29832      // CTS : required value
29833      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29834 
29835      print_VkImageLayout(obj->srcImageLayout, "srcImageLayout", 1);
29836 
29837      // CTS : required value
29838      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29839 
29840      print_VkImageLayout(obj->dstImageLayout, "dstImageLayout", 1);
29841 
29842      print_uint32_t(obj->regionCount, "regionCount", 1);
29843 
29844      PRINT_SPACE
29845      _OUT << "\"pRegions\": " << std::endl;
29846      if (obj->pRegions) {
29847          PRINT_SPACE
29848          _OUT << "[" << std::endl;
29849          for (unsigned int i = 0; i < obj->regionCount; i++) {
29850            if (i+1 == obj->regionCount)
29851                print_VkImageBlit2KHR(obj->pRegions[i], "pRegions", 0);
29852            else
29853                print_VkImageBlit2KHR(obj->pRegions[i], "pRegions", 1);
29854          }
29855          PRINT_SPACE
29856          _OUT << "]," << std::endl;
29857     }
29858      else
29859      {
29860          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
29861      }
29862 
29863      print_VkFilter(obj->filter, "filter", 0);
29864 
29865      INDENT(-4);
29866      PRINT_SPACE
29867      if (commaNeeded)
29868          _OUT << "}," << std::endl;
29869      else
29870          _OUT << "}" << std::endl;
29871 }
29872 
print_VkImageResolve2KHR(VkImageResolve2KHR obj,const std::string & s,bool commaNeeded=true)29873 static void print_VkImageResolve2KHR(VkImageResolve2KHR obj, const std::string& s, bool commaNeeded=true) {
29874      PRINT_SPACE
29875      _OUT << "{" << std::endl;
29876      INDENT(4);
29877 
29878      print_VkStructureType(obj.sType, "sType", 1);
29879 
29880       if (obj.pNext) {
29881          dumpPNextChain(obj.pNext);
29882       } else {
29883          PRINT_SPACE
29884          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29885      }
29886 
29887      PRINT_SPACE
29888      _OUT << "\"srcSubresource\": " << std::endl;
29889      {
29890            print_VkImageSubresourceLayers(obj.srcSubresource, "srcSubresource", 1);
29891      }
29892 
29893      PRINT_SPACE
29894      _OUT << "\"srcOffset\": " << std::endl;
29895      {
29896            print_VkOffset3D(obj.srcOffset, "srcOffset", 1);
29897      }
29898 
29899      PRINT_SPACE
29900      _OUT << "\"dstSubresource\": " << std::endl;
29901      {
29902            print_VkImageSubresourceLayers(obj.dstSubresource, "dstSubresource", 1);
29903      }
29904 
29905      PRINT_SPACE
29906      _OUT << "\"dstOffset\": " << std::endl;
29907      {
29908            print_VkOffset3D(obj.dstOffset, "dstOffset", 1);
29909      }
29910 
29911      PRINT_SPACE
29912      _OUT << "\"extent\": " << std::endl;
29913      {
29914            print_VkExtent3D(obj.extent, "extent", 0);
29915      }
29916 
29917      INDENT(-4);
29918      PRINT_SPACE
29919      if (commaNeeded)
29920          _OUT << "}," << std::endl;
29921      else
29922          _OUT << "}" << std::endl;
29923 }
print_VkImageResolve2KHR(const VkImageResolve2KHR * obj,const std::string & s,bool commaNeeded=true)29924 static void print_VkImageResolve2KHR(const VkImageResolve2KHR * obj, const std::string& s, bool commaNeeded=true) {
29925      PRINT_SPACE
29926      _OUT << "{" << std::endl;
29927      INDENT(4);
29928 
29929      print_VkStructureType(obj->sType, "sType", 1);
29930 
29931       if (obj->pNext) {
29932          dumpPNextChain(obj->pNext);
29933       } else {
29934          PRINT_SPACE
29935          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29936      }
29937 
29938      PRINT_SPACE
29939      _OUT << "\"srcSubresource\": " << std::endl;
29940      {
29941            print_VkImageSubresourceLayers(obj->srcSubresource, "srcSubresource", 1);
29942      }
29943 
29944      PRINT_SPACE
29945      _OUT << "\"srcOffset\": " << std::endl;
29946      {
29947            print_VkOffset3D(obj->srcOffset, "srcOffset", 1);
29948      }
29949 
29950      PRINT_SPACE
29951      _OUT << "\"dstSubresource\": " << std::endl;
29952      {
29953            print_VkImageSubresourceLayers(obj->dstSubresource, "dstSubresource", 1);
29954      }
29955 
29956      PRINT_SPACE
29957      _OUT << "\"dstOffset\": " << std::endl;
29958      {
29959            print_VkOffset3D(obj->dstOffset, "dstOffset", 1);
29960      }
29961 
29962      PRINT_SPACE
29963      _OUT << "\"extent\": " << std::endl;
29964      {
29965            print_VkExtent3D(obj->extent, "extent", 0);
29966      }
29967 
29968      INDENT(-4);
29969      PRINT_SPACE
29970      if (commaNeeded)
29971          _OUT << "}," << std::endl;
29972      else
29973          _OUT << "}" << std::endl;
29974 }
29975 
print_VkResolveImageInfo2KHR(VkResolveImageInfo2KHR obj,const std::string & s,bool commaNeeded=true)29976 static void print_VkResolveImageInfo2KHR(VkResolveImageInfo2KHR obj, const std::string& s, bool commaNeeded=true) {
29977      PRINT_SPACE
29978      _OUT << "{" << std::endl;
29979      INDENT(4);
29980 
29981      print_VkStructureType(obj.sType, "sType", 1);
29982 
29983       if (obj.pNext) {
29984          dumpPNextChain(obj.pNext);
29985       } else {
29986          PRINT_SPACE
29987          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
29988      }
29989 
29990      // CTS : required value
29991      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29992 
29993      print_VkImageLayout(obj.srcImageLayout, "srcImageLayout", 1);
29994 
29995      // CTS : required value
29996      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
29997 
29998      print_VkImageLayout(obj.dstImageLayout, "dstImageLayout", 1);
29999 
30000      print_uint32_t(obj.regionCount, "regionCount", 1);
30001 
30002      PRINT_SPACE
30003      _OUT << "\"pRegions\": " << std::endl;
30004      if (obj.pRegions) {
30005          PRINT_SPACE
30006          _OUT << "[" << std::endl;
30007          for (unsigned int i = 0; i < obj.regionCount; i++) {
30008            if (i+1 == obj.regionCount)
30009                print_VkImageResolve2KHR(obj.pRegions[i], "pRegions", 0);
30010            else
30011                print_VkImageResolve2KHR(obj.pRegions[i], "pRegions", 1);
30012          }
30013          PRINT_SPACE
30014          _OUT << "]" << std::endl;
30015     }
30016      else
30017      {
30018          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
30019      }
30020 
30021      INDENT(-4);
30022      PRINT_SPACE
30023      if (commaNeeded)
30024          _OUT << "}," << std::endl;
30025      else
30026          _OUT << "}" << std::endl;
30027 }
print_VkResolveImageInfo2KHR(const VkResolveImageInfo2KHR * obj,const std::string & s,bool commaNeeded=true)30028 static void print_VkResolveImageInfo2KHR(const VkResolveImageInfo2KHR * obj, const std::string& s, bool commaNeeded=true) {
30029      PRINT_SPACE
30030      _OUT << "{" << std::endl;
30031      INDENT(4);
30032 
30033      print_VkStructureType(obj->sType, "sType", 1);
30034 
30035       if (obj->pNext) {
30036          dumpPNextChain(obj->pNext);
30037       } else {
30038          PRINT_SPACE
30039          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30040      }
30041 
30042      // CTS : required value
30043      PRINT_SPACE    _OUT << "\"" << "srcImage" << "\"" << " : " << "\"" << "\"," << std::endl;
30044 
30045      print_VkImageLayout(obj->srcImageLayout, "srcImageLayout", 1);
30046 
30047      // CTS : required value
30048      PRINT_SPACE    _OUT << "\"" << "dstImage" << "\"" << " : " << "\"" << "\"," << std::endl;
30049 
30050      print_VkImageLayout(obj->dstImageLayout, "dstImageLayout", 1);
30051 
30052      print_uint32_t(obj->regionCount, "regionCount", 1);
30053 
30054      PRINT_SPACE
30055      _OUT << "\"pRegions\": " << std::endl;
30056      if (obj->pRegions) {
30057          PRINT_SPACE
30058          _OUT << "[" << std::endl;
30059          for (unsigned int i = 0; i < obj->regionCount; i++) {
30060            if (i+1 == obj->regionCount)
30061                print_VkImageResolve2KHR(obj->pRegions[i], "pRegions", 0);
30062            else
30063                print_VkImageResolve2KHR(obj->pRegions[i], "pRegions", 1);
30064          }
30065          PRINT_SPACE
30066          _OUT << "]" << std::endl;
30067     }
30068      else
30069      {
30070          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
30071      }
30072 
30073      INDENT(-4);
30074      PRINT_SPACE
30075      if (commaNeeded)
30076          _OUT << "}," << std::endl;
30077      else
30078          _OUT << "}" << std::endl;
30079 }
30080 
print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT obj,const std::string & s,bool commaNeeded=true)30081 static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
30082      PRINT_SPACE
30083      _OUT << "{" << std::endl;
30084      INDENT(4);
30085 
30086      print_VkStructureType(obj.sType, "sType", 1);
30087 
30088       if (obj.pNext) {
30089          dumpPNextChain(obj.pNext);
30090       } else {
30091          PRINT_SPACE
30092          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30093      }
30094 
30095      print_VkBool32(obj.textureCompressionASTC_HDR, "textureCompressionASTC_HDR", 0);
30096 
30097      INDENT(-4);
30098      PRINT_SPACE
30099      if (commaNeeded)
30100          _OUT << "}," << std::endl;
30101      else
30102          _OUT << "}" << std::endl;
30103 }
print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)30104 static void print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT(const VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
30105      PRINT_SPACE
30106      _OUT << "{" << std::endl;
30107      INDENT(4);
30108 
30109      print_VkStructureType(obj->sType, "sType", 1);
30110 
30111       if (obj->pNext) {
30112          dumpPNextChain(obj->pNext);
30113       } else {
30114          PRINT_SPACE
30115          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30116      }
30117 
30118      print_VkBool32(obj->textureCompressionASTC_HDR, "textureCompressionASTC_HDR", 0);
30119 
30120      INDENT(-4);
30121      PRINT_SPACE
30122      if (commaNeeded)
30123          _OUT << "}," << std::endl;
30124      else
30125          _OUT << "}" << std::endl;
30126 }
30127 
print_VkImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT obj,const std::string & s,bool commaNeeded=true)30128 static void print_VkImageViewASTCDecodeModeEXT(VkImageViewASTCDecodeModeEXT obj, const std::string& s, bool commaNeeded=true) {
30129      PRINT_SPACE
30130      _OUT << "{" << std::endl;
30131      INDENT(4);
30132 
30133      print_VkStructureType(obj.sType, "sType", 1);
30134 
30135       if (obj.pNext) {
30136          dumpPNextChain(obj.pNext);
30137       } else {
30138          PRINT_SPACE
30139          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30140      }
30141 
30142      print_VkFormat(obj.decodeMode, "decodeMode", 0);
30143 
30144      INDENT(-4);
30145      PRINT_SPACE
30146      if (commaNeeded)
30147          _OUT << "}," << std::endl;
30148      else
30149          _OUT << "}" << std::endl;
30150 }
print_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT * obj,const std::string & s,bool commaNeeded=true)30151 static void print_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT * obj, const std::string& s, bool commaNeeded=true) {
30152      PRINT_SPACE
30153      _OUT << "{" << std::endl;
30154      INDENT(4);
30155 
30156      print_VkStructureType(obj->sType, "sType", 1);
30157 
30158       if (obj->pNext) {
30159          dumpPNextChain(obj->pNext);
30160       } else {
30161          PRINT_SPACE
30162          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30163      }
30164 
30165      print_VkFormat(obj->decodeMode, "decodeMode", 0);
30166 
30167      INDENT(-4);
30168      PRINT_SPACE
30169      if (commaNeeded)
30170          _OUT << "}," << std::endl;
30171      else
30172          _OUT << "}" << std::endl;
30173 }
30174 
print_VkPhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDecodeFeaturesEXT obj,const std::string & s,bool commaNeeded=true)30175 static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(VkPhysicalDeviceASTCDecodeFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
30176      PRINT_SPACE
30177      _OUT << "{" << std::endl;
30178      INDENT(4);
30179 
30180      print_VkStructureType(obj.sType, "sType", 1);
30181 
30182       if (obj.pNext) {
30183          dumpPNextChain(obj.pNext);
30184       } else {
30185          PRINT_SPACE
30186          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30187      }
30188 
30189      print_VkBool32(obj.decodeModeSharedExponent, "decodeModeSharedExponent", 0);
30190 
30191      INDENT(-4);
30192      PRINT_SPACE
30193      if (commaNeeded)
30194          _OUT << "}," << std::endl;
30195      else
30196          _OUT << "}" << std::endl;
30197 }
print_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceASTCDecodeFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)30198 static void print_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceASTCDecodeFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
30199      PRINT_SPACE
30200      _OUT << "{" << std::endl;
30201      INDENT(4);
30202 
30203      print_VkStructureType(obj->sType, "sType", 1);
30204 
30205       if (obj->pNext) {
30206          dumpPNextChain(obj->pNext);
30207       } else {
30208          PRINT_SPACE
30209          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30210      }
30211 
30212      print_VkBool32(obj->decodeModeSharedExponent, "decodeModeSharedExponent", 0);
30213 
30214      INDENT(-4);
30215      PRINT_SPACE
30216      if (commaNeeded)
30217          _OUT << "}," << std::endl;
30218      else
30219          _OUT << "}" << std::endl;
30220 }
30221 
30222 static std::map<deUint64, std::string> VkSurfaceCounterFlagBitsEXT_map = {
30223     std::make_pair(1ULL << 0, "VK_SURFACE_COUNTER_VBLANK_BIT_EXT"),
30224 };
print_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT obj,const std::string & str,bool commaNeeded=true)30225 static void print_VkSurfaceCounterFlagBitsEXT(VkSurfaceCounterFlagBitsEXT obj, const std::string& str, bool commaNeeded=true) {
30226      PRINT_SPACE
30227      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30228      if (commaNeeded)
30229          _OUT << "\"" <<  VkSurfaceCounterFlagBitsEXT_map[obj] << "\"," << std::endl;
30230      else
30231          _OUT << "\"" << VkSurfaceCounterFlagBitsEXT_map[obj] << "\"" << std::endl;
30232 }
print_VkSurfaceCounterFlagBitsEXT(const VkSurfaceCounterFlagBitsEXT * obj,const std::string & str,bool commaNeeded=true)30233 static void print_VkSurfaceCounterFlagBitsEXT(const VkSurfaceCounterFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true) {
30234      PRINT_SPACE
30235      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30236      if (commaNeeded)
30237          _OUT << "\"" <<  VkSurfaceCounterFlagBitsEXT_map[*obj] << "\"," << std::endl;
30238      else
30239          _OUT << "\"" << VkSurfaceCounterFlagBitsEXT_map[*obj] << "\"" << std::endl;
30240 }
30241 
print_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT obj,const std::string & str,bool commaNeeded=true)30242 static void print_VkSurfaceCounterFlagsEXT(VkSurfaceCounterFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
30243      PRINT_SPACE
30244      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30245      const int max_bits = 64; // We don't expect the number to be larger.
30246      std::bitset<max_bits> b(obj);
30247      _OUT << "\"";
30248      if (obj == 0) _OUT << "0";
30249      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
30250          if (b[i] == 1) {
30251              bitCount++;
30252              if (bitCount < b.count())
30253                  _OUT << VkSurfaceCounterFlagBitsEXT_map[1ULL<<i] << " | ";
30254              else
30255                  _OUT << VkSurfaceCounterFlagBitsEXT_map[1ULL<<i];
30256          }
30257      }
30258      if (commaNeeded)
30259        _OUT << "\"" << ",";
30260      else
30261        _OUT << "\""<< "";
30262      _OUT << std::endl;
30263 }
print_VkSurfaceCounterFlagsEXT(const VkSurfaceCounterFlagsEXT * obj,const std::string & str,bool commaNeeded=true)30264 static void print_VkSurfaceCounterFlagsEXT(const VkSurfaceCounterFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
30265      PRINT_SPACE
30266      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30267      const int max_bits = 64; // We don't expect the number to be larger.
30268      std::bitset<max_bits> b(obj);
30269      _OUT << "\"";
30270      if (obj == 0) _OUT << "0";
30271      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
30272          if (b[i] == 1) {
30273              bitCount++;
30274              if (bitCount < b.count())
30275                  _OUT << VkSurfaceCounterFlagBitsEXT_map[1ULL<<i] << " | ";
30276              else
30277                  _OUT << VkSurfaceCounterFlagBitsEXT_map[1ULL<<i];
30278          }
30279      }
30280      if (commaNeeded)
30281        _OUT << "\"" << ",";
30282      else
30283        _OUT << "\""<< "";
30284      _OUT << std::endl;
30285 }
30286 
print_VkSurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT obj,const std::string & s,bool commaNeeded=true)30287 static void print_VkSurfaceCapabilities2EXT(VkSurfaceCapabilities2EXT obj, const std::string& s, bool commaNeeded=true) {
30288      PRINT_SPACE
30289      _OUT << "{" << std::endl;
30290      INDENT(4);
30291 
30292      print_VkStructureType(obj.sType, "sType", 1);
30293 
30294       if (obj.pNext) {
30295          dumpPNextChain(obj.pNext);
30296       } else {
30297          PRINT_SPACE
30298          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30299      }
30300 
30301      print_uint32_t(obj.minImageCount, "minImageCount", 1);
30302 
30303      print_uint32_t(obj.maxImageCount, "maxImageCount", 1);
30304 
30305      PRINT_SPACE
30306      _OUT << "\"currentExtent\": " << std::endl;
30307      {
30308            print_VkExtent2D(obj.currentExtent, "currentExtent", 1);
30309      }
30310 
30311      PRINT_SPACE
30312      _OUT << "\"minImageExtent\": " << std::endl;
30313      {
30314            print_VkExtent2D(obj.minImageExtent, "minImageExtent", 1);
30315      }
30316 
30317      PRINT_SPACE
30318      _OUT << "\"maxImageExtent\": " << std::endl;
30319      {
30320            print_VkExtent2D(obj.maxImageExtent, "maxImageExtent", 1);
30321      }
30322 
30323      print_uint32_t(obj.maxImageArrayLayers, "maxImageArrayLayers", 1);
30324 
30325      print_VkSurfaceTransformFlagsKHR(obj.supportedTransforms, "supportedTransforms", 1);
30326 
30327      print_VkSurfaceTransformFlagBitsKHR(obj.currentTransform, "currentTransform", 1);
30328 
30329      print_VkCompositeAlphaFlagsKHR(obj.supportedCompositeAlpha, "supportedCompositeAlpha", 1);
30330 
30331      print_VkImageUsageFlags(obj.supportedUsageFlags, "supportedUsageFlags", 1);
30332 
30333      print_VkSurfaceCounterFlagsEXT(obj.supportedSurfaceCounters, "supportedSurfaceCounters", 0);
30334 
30335      INDENT(-4);
30336      PRINT_SPACE
30337      if (commaNeeded)
30338          _OUT << "}," << std::endl;
30339      else
30340          _OUT << "}" << std::endl;
30341 }
print_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT * obj,const std::string & s,bool commaNeeded=true)30342 static void print_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT * obj, const std::string& s, bool commaNeeded=true) {
30343      PRINT_SPACE
30344      _OUT << "{" << std::endl;
30345      INDENT(4);
30346 
30347      print_VkStructureType(obj->sType, "sType", 1);
30348 
30349       if (obj->pNext) {
30350          dumpPNextChain(obj->pNext);
30351       } else {
30352          PRINT_SPACE
30353          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30354      }
30355 
30356      print_uint32_t(obj->minImageCount, "minImageCount", 1);
30357 
30358      print_uint32_t(obj->maxImageCount, "maxImageCount", 1);
30359 
30360      PRINT_SPACE
30361      _OUT << "\"currentExtent\": " << std::endl;
30362      {
30363            print_VkExtent2D(obj->currentExtent, "currentExtent", 1);
30364      }
30365 
30366      PRINT_SPACE
30367      _OUT << "\"minImageExtent\": " << std::endl;
30368      {
30369            print_VkExtent2D(obj->minImageExtent, "minImageExtent", 1);
30370      }
30371 
30372      PRINT_SPACE
30373      _OUT << "\"maxImageExtent\": " << std::endl;
30374      {
30375            print_VkExtent2D(obj->maxImageExtent, "maxImageExtent", 1);
30376      }
30377 
30378      print_uint32_t(obj->maxImageArrayLayers, "maxImageArrayLayers", 1);
30379 
30380      print_VkSurfaceTransformFlagsKHR(obj->supportedTransforms, "supportedTransforms", 1);
30381 
30382      print_VkSurfaceTransformFlagBitsKHR(obj->currentTransform, "currentTransform", 1);
30383 
30384      print_VkCompositeAlphaFlagsKHR(obj->supportedCompositeAlpha, "supportedCompositeAlpha", 1);
30385 
30386      print_VkImageUsageFlags(obj->supportedUsageFlags, "supportedUsageFlags", 1);
30387 
30388      print_VkSurfaceCounterFlagsEXT(obj->supportedSurfaceCounters, "supportedSurfaceCounters", 0);
30389 
30390      INDENT(-4);
30391      PRINT_SPACE
30392      if (commaNeeded)
30393          _OUT << "}," << std::endl;
30394      else
30395          _OUT << "}" << std::endl;
30396 }
30397 
30398 static std::map<deUint64, std::string> VkDisplayPowerStateEXT_map = {
30399     std::make_pair(0, "VK_DISPLAY_POWER_STATE_OFF_EXT"),
30400     std::make_pair(1, "VK_DISPLAY_POWER_STATE_SUSPEND_EXT"),
30401     std::make_pair(2, "VK_DISPLAY_POWER_STATE_ON_EXT"),
30402 };
print_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT obj,const std::string & str,bool commaNeeded=true)30403 static void print_VkDisplayPowerStateEXT(VkDisplayPowerStateEXT obj, const std::string& str, bool commaNeeded=true) {
30404      PRINT_SPACE
30405      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30406      if (commaNeeded)
30407          _OUT << "\"" <<  VkDisplayPowerStateEXT_map[obj] << "\"," << std::endl;
30408      else
30409          _OUT << "\"" << VkDisplayPowerStateEXT_map[obj] << "\"" << std::endl;
30410 }
print_VkDisplayPowerStateEXT(const VkDisplayPowerStateEXT * obj,const std::string & str,bool commaNeeded=true)30411 static void print_VkDisplayPowerStateEXT(const VkDisplayPowerStateEXT * obj, const std::string& str, bool commaNeeded=true) {
30412      PRINT_SPACE
30413      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30414      if (commaNeeded)
30415          _OUT << "\"" <<  VkDisplayPowerStateEXT_map[*obj] << "\"," << std::endl;
30416      else
30417          _OUT << "\"" << VkDisplayPowerStateEXT_map[*obj] << "\"" << std::endl;
30418 }
30419 
30420 static std::map<deUint64, std::string> VkDeviceEventTypeEXT_map = {
30421     std::make_pair(0, "VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT"),
30422 };
print_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT obj,const std::string & str,bool commaNeeded=true)30423 static void print_VkDeviceEventTypeEXT(VkDeviceEventTypeEXT obj, const std::string& str, bool commaNeeded=true) {
30424      PRINT_SPACE
30425      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30426      if (commaNeeded)
30427          _OUT << "\"" <<  VkDeviceEventTypeEXT_map[obj] << "\"," << std::endl;
30428      else
30429          _OUT << "\"" << VkDeviceEventTypeEXT_map[obj] << "\"" << std::endl;
30430 }
print_VkDeviceEventTypeEXT(const VkDeviceEventTypeEXT * obj,const std::string & str,bool commaNeeded=true)30431 static void print_VkDeviceEventTypeEXT(const VkDeviceEventTypeEXT * obj, const std::string& str, bool commaNeeded=true) {
30432      PRINT_SPACE
30433      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30434      if (commaNeeded)
30435          _OUT << "\"" <<  VkDeviceEventTypeEXT_map[*obj] << "\"," << std::endl;
30436      else
30437          _OUT << "\"" << VkDeviceEventTypeEXT_map[*obj] << "\"" << std::endl;
30438 }
30439 
30440 static std::map<deUint64, std::string> VkDisplayEventTypeEXT_map = {
30441     std::make_pair(0, "VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT"),
30442 };
print_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT obj,const std::string & str,bool commaNeeded=true)30443 static void print_VkDisplayEventTypeEXT(VkDisplayEventTypeEXT obj, const std::string& str, bool commaNeeded=true) {
30444      PRINT_SPACE
30445      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30446      if (commaNeeded)
30447          _OUT << "\"" <<  VkDisplayEventTypeEXT_map[obj] << "\"," << std::endl;
30448      else
30449          _OUT << "\"" << VkDisplayEventTypeEXT_map[obj] << "\"" << std::endl;
30450 }
print_VkDisplayEventTypeEXT(const VkDisplayEventTypeEXT * obj,const std::string & str,bool commaNeeded=true)30451 static void print_VkDisplayEventTypeEXT(const VkDisplayEventTypeEXT * obj, const std::string& str, bool commaNeeded=true) {
30452      PRINT_SPACE
30453      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30454      if (commaNeeded)
30455          _OUT << "\"" <<  VkDisplayEventTypeEXT_map[*obj] << "\"," << std::endl;
30456      else
30457          _OUT << "\"" << VkDisplayEventTypeEXT_map[*obj] << "\"" << std::endl;
30458 }
30459 
print_VkDisplayPowerInfoEXT(VkDisplayPowerInfoEXT obj,const std::string & s,bool commaNeeded=true)30460 static void print_VkDisplayPowerInfoEXT(VkDisplayPowerInfoEXT obj, const std::string& s, bool commaNeeded=true) {
30461      PRINT_SPACE
30462      _OUT << "{" << std::endl;
30463      INDENT(4);
30464 
30465      print_VkStructureType(obj.sType, "sType", 1);
30466 
30467       if (obj.pNext) {
30468          dumpPNextChain(obj.pNext);
30469       } else {
30470          PRINT_SPACE
30471          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30472      }
30473 
30474      print_VkDisplayPowerStateEXT(obj.powerState, "powerState", 0);
30475 
30476      INDENT(-4);
30477      PRINT_SPACE
30478      if (commaNeeded)
30479          _OUT << "}," << std::endl;
30480      else
30481          _OUT << "}" << std::endl;
30482 }
print_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * obj,const std::string & s,bool commaNeeded=true)30483 static void print_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
30484      PRINT_SPACE
30485      _OUT << "{" << std::endl;
30486      INDENT(4);
30487 
30488      print_VkStructureType(obj->sType, "sType", 1);
30489 
30490       if (obj->pNext) {
30491          dumpPNextChain(obj->pNext);
30492       } else {
30493          PRINT_SPACE
30494          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30495      }
30496 
30497      print_VkDisplayPowerStateEXT(obj->powerState, "powerState", 0);
30498 
30499      INDENT(-4);
30500      PRINT_SPACE
30501      if (commaNeeded)
30502          _OUT << "}," << std::endl;
30503      else
30504          _OUT << "}" << std::endl;
30505 }
30506 
print_VkDeviceEventInfoEXT(VkDeviceEventInfoEXT obj,const std::string & s,bool commaNeeded=true)30507 static void print_VkDeviceEventInfoEXT(VkDeviceEventInfoEXT obj, const std::string& s, bool commaNeeded=true) {
30508      PRINT_SPACE
30509      _OUT << "{" << std::endl;
30510      INDENT(4);
30511 
30512      print_VkStructureType(obj.sType, "sType", 1);
30513 
30514       if (obj.pNext) {
30515          dumpPNextChain(obj.pNext);
30516       } else {
30517          PRINT_SPACE
30518          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30519      }
30520 
30521      print_VkDeviceEventTypeEXT(obj.deviceEvent, "deviceEvent", 0);
30522 
30523      INDENT(-4);
30524      PRINT_SPACE
30525      if (commaNeeded)
30526          _OUT << "}," << std::endl;
30527      else
30528          _OUT << "}" << std::endl;
30529 }
print_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * obj,const std::string & s,bool commaNeeded=true)30530 static void print_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
30531      PRINT_SPACE
30532      _OUT << "{" << std::endl;
30533      INDENT(4);
30534 
30535      print_VkStructureType(obj->sType, "sType", 1);
30536 
30537       if (obj->pNext) {
30538          dumpPNextChain(obj->pNext);
30539       } else {
30540          PRINT_SPACE
30541          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30542      }
30543 
30544      print_VkDeviceEventTypeEXT(obj->deviceEvent, "deviceEvent", 0);
30545 
30546      INDENT(-4);
30547      PRINT_SPACE
30548      if (commaNeeded)
30549          _OUT << "}," << std::endl;
30550      else
30551          _OUT << "}" << std::endl;
30552 }
30553 
print_VkDisplayEventInfoEXT(VkDisplayEventInfoEXT obj,const std::string & s,bool commaNeeded=true)30554 static void print_VkDisplayEventInfoEXT(VkDisplayEventInfoEXT obj, const std::string& s, bool commaNeeded=true) {
30555      PRINT_SPACE
30556      _OUT << "{" << std::endl;
30557      INDENT(4);
30558 
30559      print_VkStructureType(obj.sType, "sType", 1);
30560 
30561       if (obj.pNext) {
30562          dumpPNextChain(obj.pNext);
30563       } else {
30564          PRINT_SPACE
30565          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30566      }
30567 
30568      print_VkDisplayEventTypeEXT(obj.displayEvent, "displayEvent", 0);
30569 
30570      INDENT(-4);
30571      PRINT_SPACE
30572      if (commaNeeded)
30573          _OUT << "}," << std::endl;
30574      else
30575          _OUT << "}" << std::endl;
30576 }
print_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * obj,const std::string & s,bool commaNeeded=true)30577 static void print_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
30578      PRINT_SPACE
30579      _OUT << "{" << std::endl;
30580      INDENT(4);
30581 
30582      print_VkStructureType(obj->sType, "sType", 1);
30583 
30584       if (obj->pNext) {
30585          dumpPNextChain(obj->pNext);
30586       } else {
30587          PRINT_SPACE
30588          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30589      }
30590 
30591      print_VkDisplayEventTypeEXT(obj->displayEvent, "displayEvent", 0);
30592 
30593      INDENT(-4);
30594      PRINT_SPACE
30595      if (commaNeeded)
30596          _OUT << "}," << std::endl;
30597      else
30598          _OUT << "}" << std::endl;
30599 }
30600 
print_VkSwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)30601 static void print_VkSwapchainCounterCreateInfoEXT(VkSwapchainCounterCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
30602      PRINT_SPACE
30603      _OUT << "{" << std::endl;
30604      INDENT(4);
30605 
30606      print_VkStructureType(obj.sType, "sType", 1);
30607 
30608       if (obj.pNext) {
30609          dumpPNextChain(obj.pNext);
30610       } else {
30611          PRINT_SPACE
30612          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30613      }
30614 
30615      print_VkSurfaceCounterFlagsEXT(obj.surfaceCounters, "surfaceCounters", 0);
30616 
30617      INDENT(-4);
30618      PRINT_SPACE
30619      if (commaNeeded)
30620          _OUT << "}," << std::endl;
30621      else
30622          _OUT << "}" << std::endl;
30623 }
print_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)30624 static void print_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
30625      PRINT_SPACE
30626      _OUT << "{" << std::endl;
30627      INDENT(4);
30628 
30629      print_VkStructureType(obj->sType, "sType", 1);
30630 
30631       if (obj->pNext) {
30632          dumpPNextChain(obj->pNext);
30633       } else {
30634          PRINT_SPACE
30635          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30636      }
30637 
30638      print_VkSurfaceCounterFlagsEXT(obj->surfaceCounters, "surfaceCounters", 0);
30639 
30640      INDENT(-4);
30641      PRINT_SPACE
30642      if (commaNeeded)
30643          _OUT << "}," << std::endl;
30644      else
30645          _OUT << "}" << std::endl;
30646 }
30647 
30648 static std::map<deUint64, std::string> VkDiscardRectangleModeEXT_map = {
30649     std::make_pair(0, "VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT"),
30650     std::make_pair(1, "VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT"),
30651 };
print_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT obj,const std::string & str,bool commaNeeded=true)30652 static void print_VkDiscardRectangleModeEXT(VkDiscardRectangleModeEXT obj, const std::string& str, bool commaNeeded=true) {
30653      PRINT_SPACE
30654      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30655      if (commaNeeded)
30656          _OUT << "\"" <<  VkDiscardRectangleModeEXT_map[obj] << "\"," << std::endl;
30657      else
30658          _OUT << "\"" << VkDiscardRectangleModeEXT_map[obj] << "\"" << std::endl;
30659 }
print_VkDiscardRectangleModeEXT(const VkDiscardRectangleModeEXT * obj,const std::string & str,bool commaNeeded=true)30660 static void print_VkDiscardRectangleModeEXT(const VkDiscardRectangleModeEXT * obj, const std::string& str, bool commaNeeded=true) {
30661      PRINT_SPACE
30662      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30663      if (commaNeeded)
30664          _OUT << "\"" <<  VkDiscardRectangleModeEXT_map[*obj] << "\"," << std::endl;
30665      else
30666          _OUT << "\"" << VkDiscardRectangleModeEXT_map[*obj] << "\"" << std::endl;
30667 }
30668 
print_VkPipelineDiscardRectangleStateCreateFlagsEXT(VkPipelineDiscardRectangleStateCreateFlagsEXT obj,const std::string & str,bool commaNeeded=true)30669 static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(VkPipelineDiscardRectangleStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
30670      PRINT_SPACE
30671      if (commaNeeded)
30672          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
30673      else
30674          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
30675 }
print_VkPipelineDiscardRectangleStateCreateFlagsEXT(const VkPipelineDiscardRectangleStateCreateFlagsEXT * obj,const std::string & str,bool commaNeeded=true)30676 static void print_VkPipelineDiscardRectangleStateCreateFlagsEXT(const VkPipelineDiscardRectangleStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
30677      PRINT_SPACE
30678      if (commaNeeded)
30679          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
30680      else
30681          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
30682 }
30683 
print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDeviceDiscardRectanglePropertiesEXT obj,const std::string & s,bool commaNeeded=true)30684 static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(VkPhysicalDeviceDiscardRectanglePropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
30685      PRINT_SPACE
30686      _OUT << "{" << std::endl;
30687      INDENT(4);
30688 
30689      print_VkStructureType(obj.sType, "sType", 1);
30690 
30691       if (obj.pNext) {
30692          dumpPNextChain(obj.pNext);
30693       } else {
30694          PRINT_SPACE
30695          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30696      }
30697 
30698      print_uint32_t(obj.maxDiscardRectangles, "maxDiscardRectangles", 0);
30699 
30700      INDENT(-4);
30701      PRINT_SPACE
30702      if (commaNeeded)
30703          _OUT << "}," << std::endl;
30704      else
30705          _OUT << "}" << std::endl;
30706 }
print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysicalDeviceDiscardRectanglePropertiesEXT * obj,const std::string & s,bool commaNeeded=true)30707 static void print_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysicalDeviceDiscardRectanglePropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
30708      PRINT_SPACE
30709      _OUT << "{" << std::endl;
30710      INDENT(4);
30711 
30712      print_VkStructureType(obj->sType, "sType", 1);
30713 
30714       if (obj->pNext) {
30715          dumpPNextChain(obj->pNext);
30716       } else {
30717          PRINT_SPACE
30718          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30719      }
30720 
30721      print_uint32_t(obj->maxDiscardRectangles, "maxDiscardRectangles", 0);
30722 
30723      INDENT(-4);
30724      PRINT_SPACE
30725      if (commaNeeded)
30726          _OUT << "}," << std::endl;
30727      else
30728          _OUT << "}" << std::endl;
30729 }
30730 
print_VkPipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscardRectangleStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)30731 static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(VkPipelineDiscardRectangleStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
30732      PRINT_SPACE
30733      _OUT << "{" << std::endl;
30734      INDENT(4);
30735 
30736      print_VkStructureType(obj.sType, "sType", 1);
30737 
30738       if (obj.pNext) {
30739          dumpPNextChain(obj.pNext);
30740       } else {
30741          PRINT_SPACE
30742          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30743      }
30744 
30745      print_VkPipelineDiscardRectangleStateCreateFlagsEXT(obj.flags, "flags", 1);
30746 
30747      print_VkDiscardRectangleModeEXT(obj.discardRectangleMode, "discardRectangleMode", 1);
30748 
30749      print_uint32_t(obj.discardRectangleCount, "discardRectangleCount", 1);
30750 
30751      PRINT_SPACE
30752      _OUT << "\"pDiscardRectangles\": " << std::endl;
30753      if (obj.pDiscardRectangles) {
30754          PRINT_SPACE
30755          _OUT << "[" << std::endl;
30756          for (unsigned int i = 0; i < obj.discardRectangleCount; i++) {
30757            if (i+1 == obj.discardRectangleCount)
30758                print_VkRect2D(obj.pDiscardRectangles[i], "pDiscardRectangles", 0);
30759            else
30760                print_VkRect2D(obj.pDiscardRectangles[i], "pDiscardRectangles", 1);
30761          }
30762          PRINT_SPACE
30763          _OUT << "]" << std::endl;
30764     }
30765      else
30766      {
30767          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
30768      }
30769 
30770      INDENT(-4);
30771      PRINT_SPACE
30772      if (commaNeeded)
30773          _OUT << "}," << std::endl;
30774      else
30775          _OUT << "}" << std::endl;
30776 }
print_VkPipelineDiscardRectangleStateCreateInfoEXT(const VkPipelineDiscardRectangleStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)30777 static void print_VkPipelineDiscardRectangleStateCreateInfoEXT(const VkPipelineDiscardRectangleStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
30778      PRINT_SPACE
30779      _OUT << "{" << std::endl;
30780      INDENT(4);
30781 
30782      print_VkStructureType(obj->sType, "sType", 1);
30783 
30784       if (obj->pNext) {
30785          dumpPNextChain(obj->pNext);
30786       } else {
30787          PRINT_SPACE
30788          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30789      }
30790 
30791      print_VkPipelineDiscardRectangleStateCreateFlagsEXT(obj->flags, "flags", 1);
30792 
30793      print_VkDiscardRectangleModeEXT(obj->discardRectangleMode, "discardRectangleMode", 1);
30794 
30795      print_uint32_t(obj->discardRectangleCount, "discardRectangleCount", 1);
30796 
30797      PRINT_SPACE
30798      _OUT << "\"pDiscardRectangles\": " << std::endl;
30799      if (obj->pDiscardRectangles) {
30800          PRINT_SPACE
30801          _OUT << "[" << std::endl;
30802          for (unsigned int i = 0; i < obj->discardRectangleCount; i++) {
30803            if (i+1 == obj->discardRectangleCount)
30804                print_VkRect2D(obj->pDiscardRectangles[i], "pDiscardRectangles", 0);
30805            else
30806                print_VkRect2D(obj->pDiscardRectangles[i], "pDiscardRectangles", 1);
30807          }
30808          PRINT_SPACE
30809          _OUT << "]" << std::endl;
30810     }
30811      else
30812      {
30813          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
30814      }
30815 
30816      INDENT(-4);
30817      PRINT_SPACE
30818      if (commaNeeded)
30819          _OUT << "}," << std::endl;
30820      else
30821          _OUT << "}" << std::endl;
30822 }
30823 
30824 static std::map<deUint64, std::string> VkConservativeRasterizationModeEXT_map = {
30825     std::make_pair(0, "VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT"),
30826     std::make_pair(1, "VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT"),
30827     std::make_pair(2, "VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT"),
30828 };
print_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT obj,const std::string & str,bool commaNeeded=true)30829 static void print_VkConservativeRasterizationModeEXT(VkConservativeRasterizationModeEXT obj, const std::string& str, bool commaNeeded=true) {
30830      PRINT_SPACE
30831      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30832      if (commaNeeded)
30833          _OUT << "\"" <<  VkConservativeRasterizationModeEXT_map[obj] << "\"," << std::endl;
30834      else
30835          _OUT << "\"" << VkConservativeRasterizationModeEXT_map[obj] << "\"" << std::endl;
30836 }
print_VkConservativeRasterizationModeEXT(const VkConservativeRasterizationModeEXT * obj,const std::string & str,bool commaNeeded=true)30837 static void print_VkConservativeRasterizationModeEXT(const VkConservativeRasterizationModeEXT * obj, const std::string& str, bool commaNeeded=true) {
30838      PRINT_SPACE
30839      if (str != "") _OUT << "\"" << str << "\"" << " : ";
30840      if (commaNeeded)
30841          _OUT << "\"" <<  VkConservativeRasterizationModeEXT_map[*obj] << "\"," << std::endl;
30842      else
30843          _OUT << "\"" << VkConservativeRasterizationModeEXT_map[*obj] << "\"" << std::endl;
30844 }
30845 
print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(VkPipelineRasterizationConservativeStateCreateFlagsEXT obj,const std::string & str,bool commaNeeded=true)30846 static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(VkPipelineRasterizationConservativeStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
30847      PRINT_SPACE
30848      if (commaNeeded)
30849          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
30850      else
30851          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
30852 }
print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(const VkPipelineRasterizationConservativeStateCreateFlagsEXT * obj,const std::string & str,bool commaNeeded=true)30853 static void print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(const VkPipelineRasterizationConservativeStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
30854      PRINT_SPACE
30855      if (commaNeeded)
30856          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
30857      else
30858          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
30859 }
30860 
print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysicalDeviceConservativeRasterizationPropertiesEXT obj,const std::string & s,bool commaNeeded=true)30861 static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(VkPhysicalDeviceConservativeRasterizationPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
30862      PRINT_SPACE
30863      _OUT << "{" << std::endl;
30864      INDENT(4);
30865 
30866      print_VkStructureType(obj.sType, "sType", 1);
30867 
30868       if (obj.pNext) {
30869          dumpPNextChain(obj.pNext);
30870       } else {
30871          PRINT_SPACE
30872          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30873      }
30874 
30875      print_float(obj.primitiveOverestimationSize, "primitiveOverestimationSize", 1);
30876 
30877      print_float(obj.maxExtraPrimitiveOverestimationSize, "maxExtraPrimitiveOverestimationSize", 1);
30878 
30879      print_float(obj.extraPrimitiveOverestimationSizeGranularity, "extraPrimitiveOverestimationSizeGranularity", 1);
30880 
30881      print_VkBool32(obj.primitiveUnderestimation, "primitiveUnderestimation", 1);
30882 
30883      print_VkBool32(obj.conservativePointAndLineRasterization, "conservativePointAndLineRasterization", 1);
30884 
30885      print_VkBool32(obj.degenerateTrianglesRasterized, "degenerateTrianglesRasterized", 1);
30886 
30887      print_VkBool32(obj.degenerateLinesRasterized, "degenerateLinesRasterized", 1);
30888 
30889      print_VkBool32(obj.fullyCoveredFragmentShaderInputVariable, "fullyCoveredFragmentShaderInputVariable", 1);
30890 
30891      print_VkBool32(obj.conservativeRasterizationPostDepthCoverage, "conservativeRasterizationPostDepthCoverage", 0);
30892 
30893      INDENT(-4);
30894      PRINT_SPACE
30895      if (commaNeeded)
30896          _OUT << "}," << std::endl;
30897      else
30898          _OUT << "}" << std::endl;
30899 }
print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)30900 static void print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
30901      PRINT_SPACE
30902      _OUT << "{" << std::endl;
30903      INDENT(4);
30904 
30905      print_VkStructureType(obj->sType, "sType", 1);
30906 
30907       if (obj->pNext) {
30908          dumpPNextChain(obj->pNext);
30909       } else {
30910          PRINT_SPACE
30911          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30912      }
30913 
30914      print_float(obj->primitiveOverestimationSize, "primitiveOverestimationSize", 1);
30915 
30916      print_float(obj->maxExtraPrimitiveOverestimationSize, "maxExtraPrimitiveOverestimationSize", 1);
30917 
30918      print_float(obj->extraPrimitiveOverestimationSizeGranularity, "extraPrimitiveOverestimationSizeGranularity", 1);
30919 
30920      print_VkBool32(obj->primitiveUnderestimation, "primitiveUnderestimation", 1);
30921 
30922      print_VkBool32(obj->conservativePointAndLineRasterization, "conservativePointAndLineRasterization", 1);
30923 
30924      print_VkBool32(obj->degenerateTrianglesRasterized, "degenerateTrianglesRasterized", 1);
30925 
30926      print_VkBool32(obj->degenerateLinesRasterized, "degenerateLinesRasterized", 1);
30927 
30928      print_VkBool32(obj->fullyCoveredFragmentShaderInputVariable, "fullyCoveredFragmentShaderInputVariable", 1);
30929 
30930      print_VkBool32(obj->conservativeRasterizationPostDepthCoverage, "conservativeRasterizationPostDepthCoverage", 0);
30931 
30932      INDENT(-4);
30933      PRINT_SPACE
30934      if (commaNeeded)
30935          _OUT << "}," << std::endl;
30936      else
30937          _OUT << "}" << std::endl;
30938 }
30939 
print_VkPipelineRasterizationConservativeStateCreateInfoEXT(VkPipelineRasterizationConservativeStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)30940 static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(VkPipelineRasterizationConservativeStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
30941      PRINT_SPACE
30942      _OUT << "{" << std::endl;
30943      INDENT(4);
30944 
30945      print_VkStructureType(obj.sType, "sType", 1);
30946 
30947       if (obj.pNext) {
30948          dumpPNextChain(obj.pNext);
30949       } else {
30950          PRINT_SPACE
30951          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30952      }
30953 
30954      print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(obj.flags, "flags", 1);
30955 
30956      print_VkConservativeRasterizationModeEXT(obj.conservativeRasterizationMode, "conservativeRasterizationMode", 1);
30957 
30958      print_float(obj.extraPrimitiveOverestimationSize, "extraPrimitiveOverestimationSize", 0);
30959 
30960      INDENT(-4);
30961      PRINT_SPACE
30962      if (commaNeeded)
30963          _OUT << "}," << std::endl;
30964      else
30965          _OUT << "}" << std::endl;
30966 }
print_VkPipelineRasterizationConservativeStateCreateInfoEXT(const VkPipelineRasterizationConservativeStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)30967 static void print_VkPipelineRasterizationConservativeStateCreateInfoEXT(const VkPipelineRasterizationConservativeStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
30968      PRINT_SPACE
30969      _OUT << "{" << std::endl;
30970      INDENT(4);
30971 
30972      print_VkStructureType(obj->sType, "sType", 1);
30973 
30974       if (obj->pNext) {
30975          dumpPNextChain(obj->pNext);
30976       } else {
30977          PRINT_SPACE
30978          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
30979      }
30980 
30981      print_VkPipelineRasterizationConservativeStateCreateFlagsEXT(obj->flags, "flags", 1);
30982 
30983      print_VkConservativeRasterizationModeEXT(obj->conservativeRasterizationMode, "conservativeRasterizationMode", 1);
30984 
30985      print_float(obj->extraPrimitiveOverestimationSize, "extraPrimitiveOverestimationSize", 0);
30986 
30987      INDENT(-4);
30988      PRINT_SPACE
30989      if (commaNeeded)
30990          _OUT << "}," << std::endl;
30991      else
30992          _OUT << "}" << std::endl;
30993 }
30994 
print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(VkPipelineRasterizationDepthClipStateCreateFlagsEXT obj,const std::string & str,bool commaNeeded=true)30995 static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(VkPipelineRasterizationDepthClipStateCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
30996      PRINT_SPACE
30997      if (commaNeeded)
30998          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
30999      else
31000          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
31001 }
print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(const VkPipelineRasterizationDepthClipStateCreateFlagsEXT * obj,const std::string & str,bool commaNeeded=true)31002 static void print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(const VkPipelineRasterizationDepthClipStateCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
31003      PRINT_SPACE
31004      if (commaNeeded)
31005          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
31006      else
31007          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
31008 }
31009 
print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDepthClipEnableFeaturesEXT obj,const std::string & s,bool commaNeeded=true)31010 static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(VkPhysicalDeviceDepthClipEnableFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
31011      PRINT_SPACE
31012      _OUT << "{" << std::endl;
31013      INDENT(4);
31014 
31015      print_VkStructureType(obj.sType, "sType", 1);
31016 
31017       if (obj.pNext) {
31018          dumpPNextChain(obj.pNext);
31019       } else {
31020          PRINT_SPACE
31021          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31022      }
31023 
31024      print_VkBool32(obj.depthClipEnable, "depthClipEnable", 0);
31025 
31026      INDENT(-4);
31027      PRINT_SPACE
31028      if (commaNeeded)
31029          _OUT << "}," << std::endl;
31030      else
31031          _OUT << "}" << std::endl;
31032 }
print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDeviceDepthClipEnableFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)31033 static void print_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDeviceDepthClipEnableFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
31034      PRINT_SPACE
31035      _OUT << "{" << std::endl;
31036      INDENT(4);
31037 
31038      print_VkStructureType(obj->sType, "sType", 1);
31039 
31040       if (obj->pNext) {
31041          dumpPNextChain(obj->pNext);
31042       } else {
31043          PRINT_SPACE
31044          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31045      }
31046 
31047      print_VkBool32(obj->depthClipEnable, "depthClipEnable", 0);
31048 
31049      INDENT(-4);
31050      PRINT_SPACE
31051      if (commaNeeded)
31052          _OUT << "}," << std::endl;
31053      else
31054          _OUT << "}" << std::endl;
31055 }
31056 
print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineRasterizationDepthClipStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)31057 static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(VkPipelineRasterizationDepthClipStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
31058      PRINT_SPACE
31059      _OUT << "{" << std::endl;
31060      INDENT(4);
31061 
31062      print_VkStructureType(obj.sType, "sType", 1);
31063 
31064       if (obj.pNext) {
31065          dumpPNextChain(obj.pNext);
31066       } else {
31067          PRINT_SPACE
31068          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31069      }
31070 
31071      print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(obj.flags, "flags", 1);
31072 
31073      print_VkBool32(obj.depthClipEnable, "depthClipEnable", 0);
31074 
31075      INDENT(-4);
31076      PRINT_SPACE
31077      if (commaNeeded)
31078          _OUT << "}," << std::endl;
31079      else
31080          _OUT << "}" << std::endl;
31081 }
print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPipelineRasterizationDepthClipStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)31082 static void print_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPipelineRasterizationDepthClipStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
31083      PRINT_SPACE
31084      _OUT << "{" << std::endl;
31085      INDENT(4);
31086 
31087      print_VkStructureType(obj->sType, "sType", 1);
31088 
31089       if (obj->pNext) {
31090          dumpPNextChain(obj->pNext);
31091       } else {
31092          PRINT_SPACE
31093          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31094      }
31095 
31096      print_VkPipelineRasterizationDepthClipStateCreateFlagsEXT(obj->flags, "flags", 1);
31097 
31098      print_VkBool32(obj->depthClipEnable, "depthClipEnable", 0);
31099 
31100      INDENT(-4);
31101      PRINT_SPACE
31102      if (commaNeeded)
31103          _OUT << "}," << std::endl;
31104      else
31105          _OUT << "}" << std::endl;
31106 }
31107 
print_VkXYColorEXT(VkXYColorEXT obj,const std::string & s,bool commaNeeded=true)31108 static void print_VkXYColorEXT(VkXYColorEXT obj, const std::string& s, bool commaNeeded=true) {
31109      PRINT_SPACE
31110      _OUT << "{" << std::endl;
31111      INDENT(4);
31112 
31113      print_float(obj.x, "x", 1);
31114 
31115      print_float(obj.y, "y", 0);
31116 
31117      INDENT(-4);
31118      PRINT_SPACE
31119      if (commaNeeded)
31120          _OUT << "}," << std::endl;
31121      else
31122          _OUT << "}" << std::endl;
31123 }
print_VkXYColorEXT(const VkXYColorEXT * obj,const std::string & s,bool commaNeeded=true)31124 static void print_VkXYColorEXT(const VkXYColorEXT * obj, const std::string& s, bool commaNeeded=true) {
31125      PRINT_SPACE
31126      _OUT << "{" << std::endl;
31127      INDENT(4);
31128 
31129      print_float(obj->x, "x", 1);
31130 
31131      print_float(obj->y, "y", 0);
31132 
31133      INDENT(-4);
31134      PRINT_SPACE
31135      if (commaNeeded)
31136          _OUT << "}," << std::endl;
31137      else
31138          _OUT << "}" << std::endl;
31139 }
31140 
print_VkHdrMetadataEXT(VkHdrMetadataEXT obj,const std::string & s,bool commaNeeded=true)31141 static void print_VkHdrMetadataEXT(VkHdrMetadataEXT obj, const std::string& s, bool commaNeeded=true) {
31142      PRINT_SPACE
31143      _OUT << "{" << std::endl;
31144      INDENT(4);
31145 
31146      print_VkStructureType(obj.sType, "sType", 1);
31147 
31148       if (obj.pNext) {
31149          dumpPNextChain(obj.pNext);
31150       } else {
31151          PRINT_SPACE
31152          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31153      }
31154 
31155      PRINT_SPACE
31156      _OUT << "\"displayPrimaryRed\": " << std::endl;
31157      {
31158            print_VkXYColorEXT(obj.displayPrimaryRed, "displayPrimaryRed", 1);
31159      }
31160 
31161      PRINT_SPACE
31162      _OUT << "\"displayPrimaryGreen\": " << std::endl;
31163      {
31164            print_VkXYColorEXT(obj.displayPrimaryGreen, "displayPrimaryGreen", 1);
31165      }
31166 
31167      PRINT_SPACE
31168      _OUT << "\"displayPrimaryBlue\": " << std::endl;
31169      {
31170            print_VkXYColorEXT(obj.displayPrimaryBlue, "displayPrimaryBlue", 1);
31171      }
31172 
31173      PRINT_SPACE
31174      _OUT << "\"whitePoint\": " << std::endl;
31175      {
31176            print_VkXYColorEXT(obj.whitePoint, "whitePoint", 1);
31177      }
31178 
31179      print_float(obj.maxLuminance, "maxLuminance", 1);
31180 
31181      print_float(obj.minLuminance, "minLuminance", 1);
31182 
31183      print_float(obj.maxContentLightLevel, "maxContentLightLevel", 1);
31184 
31185      print_float(obj.maxFrameAverageLightLevel, "maxFrameAverageLightLevel", 0);
31186 
31187      INDENT(-4);
31188      PRINT_SPACE
31189      if (commaNeeded)
31190          _OUT << "}," << std::endl;
31191      else
31192          _OUT << "}" << std::endl;
31193 }
print_VkHdrMetadataEXT(const VkHdrMetadataEXT * obj,const std::string & s,bool commaNeeded=true)31194 static void print_VkHdrMetadataEXT(const VkHdrMetadataEXT * obj, const std::string& s, bool commaNeeded=true) {
31195      PRINT_SPACE
31196      _OUT << "{" << std::endl;
31197      INDENT(4);
31198 
31199      print_VkStructureType(obj->sType, "sType", 1);
31200 
31201       if (obj->pNext) {
31202          dumpPNextChain(obj->pNext);
31203       } else {
31204          PRINT_SPACE
31205          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31206      }
31207 
31208      PRINT_SPACE
31209      _OUT << "\"displayPrimaryRed\": " << std::endl;
31210      {
31211            print_VkXYColorEXT(obj->displayPrimaryRed, "displayPrimaryRed", 1);
31212      }
31213 
31214      PRINT_SPACE
31215      _OUT << "\"displayPrimaryGreen\": " << std::endl;
31216      {
31217            print_VkXYColorEXT(obj->displayPrimaryGreen, "displayPrimaryGreen", 1);
31218      }
31219 
31220      PRINT_SPACE
31221      _OUT << "\"displayPrimaryBlue\": " << std::endl;
31222      {
31223            print_VkXYColorEXT(obj->displayPrimaryBlue, "displayPrimaryBlue", 1);
31224      }
31225 
31226      PRINT_SPACE
31227      _OUT << "\"whitePoint\": " << std::endl;
31228      {
31229            print_VkXYColorEXT(obj->whitePoint, "whitePoint", 1);
31230      }
31231 
31232      print_float(obj->maxLuminance, "maxLuminance", 1);
31233 
31234      print_float(obj->minLuminance, "minLuminance", 1);
31235 
31236      print_float(obj->maxContentLightLevel, "maxContentLightLevel", 1);
31237 
31238      print_float(obj->maxFrameAverageLightLevel, "maxFrameAverageLightLevel", 0);
31239 
31240      INDENT(-4);
31241      PRINT_SPACE
31242      if (commaNeeded)
31243          _OUT << "}," << std::endl;
31244      else
31245          _OUT << "}" << std::endl;
31246 }
31247 
print_VkDebugUtilsMessengerEXT(VkDebugUtilsMessengerEXT obj,const std::string & str,bool commaNeeded=true)31248 static void print_VkDebugUtilsMessengerEXT(VkDebugUtilsMessengerEXT obj, const std::string& str, bool commaNeeded=true) {
31249      PRINT_SPACE
31250      if (commaNeeded)
31251          _OUT << "\"" << str << "\"" << "," << std::endl;
31252      else
31253          _OUT << "\"" << str << "\"" << std::endl;
31254 }
print_VkDebugUtilsMessengerEXT(const VkDebugUtilsMessengerEXT * obj,const std::string & str,bool commaNeeded=true)31255 static void print_VkDebugUtilsMessengerEXT(const VkDebugUtilsMessengerEXT * obj, const std::string& str, bool commaNeeded=true) {
31256      PRINT_SPACE
31257      if (commaNeeded)
31258          _OUT << "\"" << str << "\"" << "," << std::endl;
31259      else
31260          _OUT << "\"" << str << "\"" << std::endl;
31261 }
31262 
31263 static std::map<deUint64, std::string> VkDebugUtilsMessageSeverityFlagBitsEXT_map = {
31264     std::make_pair(1ULL << 0, "VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT"),
31265     std::make_pair(1ULL << 4, "VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT"),
31266     std::make_pair(1ULL << 8, "VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT"),
31267     std::make_pair(1ULL << 12, "VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT"),
31268 };
print_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT obj,const std::string & str,bool commaNeeded=true)31269 static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(VkDebugUtilsMessageSeverityFlagBitsEXT obj, const std::string& str, bool commaNeeded=true) {
31270      PRINT_SPACE
31271      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31272      if (commaNeeded)
31273          _OUT << "\"" <<  VkDebugUtilsMessageSeverityFlagBitsEXT_map[obj] << "\"," << std::endl;
31274      else
31275          _OUT << "\"" << VkDebugUtilsMessageSeverityFlagBitsEXT_map[obj] << "\"" << std::endl;
31276 }
print_VkDebugUtilsMessageSeverityFlagBitsEXT(const VkDebugUtilsMessageSeverityFlagBitsEXT * obj,const std::string & str,bool commaNeeded=true)31277 static void print_VkDebugUtilsMessageSeverityFlagBitsEXT(const VkDebugUtilsMessageSeverityFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true) {
31278      PRINT_SPACE
31279      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31280      if (commaNeeded)
31281          _OUT << "\"" <<  VkDebugUtilsMessageSeverityFlagBitsEXT_map[*obj] << "\"," << std::endl;
31282      else
31283          _OUT << "\"" << VkDebugUtilsMessageSeverityFlagBitsEXT_map[*obj] << "\"" << std::endl;
31284 }
31285 
31286 static std::map<deUint64, std::string> VkDebugUtilsMessageTypeFlagBitsEXT_map = {
31287     std::make_pair(1ULL << 0, "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT"),
31288     std::make_pair(1ULL << 1, "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT"),
31289     std::make_pair(1ULL << 2, "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT"),
31290 };
print_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT obj,const std::string & str,bool commaNeeded=true)31291 static void print_VkDebugUtilsMessageTypeFlagBitsEXT(VkDebugUtilsMessageTypeFlagBitsEXT obj, const std::string& str, bool commaNeeded=true) {
31292      PRINT_SPACE
31293      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31294      if (commaNeeded)
31295          _OUT << "\"" <<  VkDebugUtilsMessageTypeFlagBitsEXT_map[obj] << "\"," << std::endl;
31296      else
31297          _OUT << "\"" << VkDebugUtilsMessageTypeFlagBitsEXT_map[obj] << "\"" << std::endl;
31298 }
print_VkDebugUtilsMessageTypeFlagBitsEXT(const VkDebugUtilsMessageTypeFlagBitsEXT * obj,const std::string & str,bool commaNeeded=true)31299 static void print_VkDebugUtilsMessageTypeFlagBitsEXT(const VkDebugUtilsMessageTypeFlagBitsEXT * obj, const std::string& str, bool commaNeeded=true) {
31300      PRINT_SPACE
31301      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31302      if (commaNeeded)
31303          _OUT << "\"" <<  VkDebugUtilsMessageTypeFlagBitsEXT_map[*obj] << "\"," << std::endl;
31304      else
31305          _OUT << "\"" << VkDebugUtilsMessageTypeFlagBitsEXT_map[*obj] << "\"" << std::endl;
31306 }
31307 
print_VkDebugUtilsMessengerCallbackDataFlagsEXT(VkDebugUtilsMessengerCallbackDataFlagsEXT obj,const std::string & str,bool commaNeeded=true)31308 static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(VkDebugUtilsMessengerCallbackDataFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
31309      PRINT_SPACE
31310      if (commaNeeded)
31311          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
31312      else
31313          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
31314 }
print_VkDebugUtilsMessengerCallbackDataFlagsEXT(const VkDebugUtilsMessengerCallbackDataFlagsEXT * obj,const std::string & str,bool commaNeeded=true)31315 static void print_VkDebugUtilsMessengerCallbackDataFlagsEXT(const VkDebugUtilsMessengerCallbackDataFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
31316      PRINT_SPACE
31317      if (commaNeeded)
31318          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
31319      else
31320          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
31321 }
31322 
print_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT obj,const std::string & str,bool commaNeeded=true)31323 static void print_VkDebugUtilsMessageTypeFlagsEXT(VkDebugUtilsMessageTypeFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
31324      PRINT_SPACE
31325      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31326      const int max_bits = 64; // We don't expect the number to be larger.
31327      std::bitset<max_bits> b(obj);
31328      _OUT << "\"";
31329      if (obj == 0) _OUT << "0";
31330      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
31331          if (b[i] == 1) {
31332              bitCount++;
31333              if (bitCount < b.count())
31334                  _OUT << VkDebugUtilsMessageTypeFlagBitsEXT_map[1ULL<<i] << " | ";
31335              else
31336                  _OUT << VkDebugUtilsMessageTypeFlagBitsEXT_map[1ULL<<i];
31337          }
31338      }
31339      if (commaNeeded)
31340        _OUT << "\"" << ",";
31341      else
31342        _OUT << "\""<< "";
31343      _OUT << std::endl;
31344 }
print_VkDebugUtilsMessageTypeFlagsEXT(const VkDebugUtilsMessageTypeFlagsEXT * obj,const std::string & str,bool commaNeeded=true)31345 static void print_VkDebugUtilsMessageTypeFlagsEXT(const VkDebugUtilsMessageTypeFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
31346      PRINT_SPACE
31347      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31348      const int max_bits = 64; // We don't expect the number to be larger.
31349      std::bitset<max_bits> b(obj);
31350      _OUT << "\"";
31351      if (obj == 0) _OUT << "0";
31352      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
31353          if (b[i] == 1) {
31354              bitCount++;
31355              if (bitCount < b.count())
31356                  _OUT << VkDebugUtilsMessageTypeFlagBitsEXT_map[1ULL<<i] << " | ";
31357              else
31358                  _OUT << VkDebugUtilsMessageTypeFlagBitsEXT_map[1ULL<<i];
31359          }
31360      }
31361      if (commaNeeded)
31362        _OUT << "\"" << ",";
31363      else
31364        _OUT << "\""<< "";
31365      _OUT << std::endl;
31366 }
31367 
print_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT obj,const std::string & str,bool commaNeeded=true)31368 static void print_VkDebugUtilsMessageSeverityFlagsEXT(VkDebugUtilsMessageSeverityFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
31369      PRINT_SPACE
31370      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31371      const int max_bits = 64; // We don't expect the number to be larger.
31372      std::bitset<max_bits> b(obj);
31373      _OUT << "\"";
31374      if (obj == 0) _OUT << "0";
31375      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
31376          if (b[i] == 1) {
31377              bitCount++;
31378              if (bitCount < b.count())
31379                  _OUT << VkDebugUtilsMessageSeverityFlagBitsEXT_map[1ULL<<i] << " | ";
31380              else
31381                  _OUT << VkDebugUtilsMessageSeverityFlagBitsEXT_map[1ULL<<i];
31382          }
31383      }
31384      if (commaNeeded)
31385        _OUT << "\"" << ",";
31386      else
31387        _OUT << "\""<< "";
31388      _OUT << std::endl;
31389 }
print_VkDebugUtilsMessageSeverityFlagsEXT(const VkDebugUtilsMessageSeverityFlagsEXT * obj,const std::string & str,bool commaNeeded=true)31390 static void print_VkDebugUtilsMessageSeverityFlagsEXT(const VkDebugUtilsMessageSeverityFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
31391      PRINT_SPACE
31392      if (str != "") _OUT << "\"" << str << "\"" << " : ";
31393      const int max_bits = 64; // We don't expect the number to be larger.
31394      std::bitset<max_bits> b(obj);
31395      _OUT << "\"";
31396      if (obj == 0) _OUT << "0";
31397      for (unsigned int i = 0, bitCount = 0; i < b.size(); i++) {
31398          if (b[i] == 1) {
31399              bitCount++;
31400              if (bitCount < b.count())
31401                  _OUT << VkDebugUtilsMessageSeverityFlagBitsEXT_map[1ULL<<i] << " | ";
31402              else
31403                  _OUT << VkDebugUtilsMessageSeverityFlagBitsEXT_map[1ULL<<i];
31404          }
31405      }
31406      if (commaNeeded)
31407        _OUT << "\"" << ",";
31408      else
31409        _OUT << "\""<< "";
31410      _OUT << std::endl;
31411 }
31412 
print_VkDebugUtilsMessengerCreateFlagsEXT(VkDebugUtilsMessengerCreateFlagsEXT obj,const std::string & str,bool commaNeeded=true)31413 static void print_VkDebugUtilsMessengerCreateFlagsEXT(VkDebugUtilsMessengerCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
31414      PRINT_SPACE
31415      if (commaNeeded)
31416          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
31417      else
31418          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
31419 }
print_VkDebugUtilsMessengerCreateFlagsEXT(const VkDebugUtilsMessengerCreateFlagsEXT * obj,const std::string & str,bool commaNeeded=true)31420 static void print_VkDebugUtilsMessengerCreateFlagsEXT(const VkDebugUtilsMessengerCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
31421      PRINT_SPACE
31422      if (commaNeeded)
31423          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
31424      else
31425          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
31426 }
31427 
print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj,const std::string & s,bool commaNeeded=true)31428 static void print_VkDebugUtilsLabelEXT(VkDebugUtilsLabelEXT obj, const std::string& s, bool commaNeeded=true) {
31429      PRINT_SPACE
31430      _OUT << "{" << std::endl;
31431      INDENT(4);
31432 
31433      print_VkStructureType(obj.sType, "sType", 1);
31434 
31435       if (obj.pNext) {
31436          dumpPNextChain(obj.pNext);
31437       } else {
31438          PRINT_SPACE
31439          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31440      }
31441 
31442      print_char(obj.pLabelName, "pLabelName", 1);
31443 
31444      PRINT_SPACE
31445      _OUT << "\"color\":" << std::endl;
31446      PRINT_SPACE
31447        _OUT << "[" << std::endl;
31448        for (unsigned int i = 0; i < 4; i++) {
31449            bool isCommaNeeded = (i+1) != 4;
31450            print_float(obj.color[i], "", isCommaNeeded);
31451        }
31452        PRINT_SPACE
31453        _OUT << "]" << "" << std::endl;
31454 
31455      INDENT(-4);
31456      PRINT_SPACE
31457      if (commaNeeded)
31458          _OUT << "}," << std::endl;
31459      else
31460          _OUT << "}" << std::endl;
31461 }
print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj,const std::string & s,bool commaNeeded=true)31462 static void print_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * obj, const std::string& s, bool commaNeeded=true) {
31463      PRINT_SPACE
31464      _OUT << "{" << std::endl;
31465      INDENT(4);
31466 
31467      print_VkStructureType(obj->sType, "sType", 1);
31468 
31469       if (obj->pNext) {
31470          dumpPNextChain(obj->pNext);
31471       } else {
31472          PRINT_SPACE
31473          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31474      }
31475 
31476      print_char(obj->pLabelName, "pLabelName", 1);
31477 
31478      PRINT_SPACE
31479      _OUT << "\"color\":" << std::endl;
31480      PRINT_SPACE
31481        _OUT << "[" << std::endl;
31482        for (unsigned int i = 0; i < 4; i++) {
31483            bool isCommaNeeded = (i+1) != 4;
31484            print_float(obj->color[i], "", isCommaNeeded);
31485        }
31486        PRINT_SPACE
31487        _OUT << "]" << "" << std::endl;
31488 
31489      INDENT(-4);
31490      PRINT_SPACE
31491      if (commaNeeded)
31492          _OUT << "}," << std::endl;
31493      else
31494          _OUT << "}" << std::endl;
31495 }
31496 
print_VkDebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT obj,const std::string & s,bool commaNeeded=true)31497 static void print_VkDebugUtilsObjectNameInfoEXT(VkDebugUtilsObjectNameInfoEXT obj, const std::string& s, bool commaNeeded=true) {
31498      PRINT_SPACE
31499      _OUT << "{" << std::endl;
31500      INDENT(4);
31501 
31502      print_VkStructureType(obj.sType, "sType", 1);
31503 
31504       if (obj.pNext) {
31505          dumpPNextChain(obj.pNext);
31506       } else {
31507          PRINT_SPACE
31508          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31509      }
31510 
31511      print_VkObjectType(obj.objectType, "objectType", 1);
31512 
31513      print_uint64_t(obj.objectHandle, "objectHandle", 1);
31514 
31515      print_char(obj.pObjectName, "pObjectName", 0);
31516 
31517      INDENT(-4);
31518      PRINT_SPACE
31519      if (commaNeeded)
31520          _OUT << "}," << std::endl;
31521      else
31522          _OUT << "}" << std::endl;
31523 }
print_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT * obj,const std::string & s,bool commaNeeded=true)31524 static void print_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
31525      PRINT_SPACE
31526      _OUT << "{" << std::endl;
31527      INDENT(4);
31528 
31529      print_VkStructureType(obj->sType, "sType", 1);
31530 
31531       if (obj->pNext) {
31532          dumpPNextChain(obj->pNext);
31533       } else {
31534          PRINT_SPACE
31535          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31536      }
31537 
31538      print_VkObjectType(obj->objectType, "objectType", 1);
31539 
31540      print_uint64_t(obj->objectHandle, "objectHandle", 1);
31541 
31542      print_char(obj->pObjectName, "pObjectName", 0);
31543 
31544      INDENT(-4);
31545      PRINT_SPACE
31546      if (commaNeeded)
31547          _OUT << "}," << std::endl;
31548      else
31549          _OUT << "}" << std::endl;
31550 }
31551 
print_VkDebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCallbackDataEXT obj,const std::string & s,bool commaNeeded=true)31552 static void print_VkDebugUtilsMessengerCallbackDataEXT(VkDebugUtilsMessengerCallbackDataEXT obj, const std::string& s, bool commaNeeded=true) {
31553      PRINT_SPACE
31554      _OUT << "{" << std::endl;
31555      INDENT(4);
31556 
31557      print_VkStructureType(obj.sType, "sType", 1);
31558 
31559       if (obj.pNext) {
31560          dumpPNextChain(obj.pNext);
31561       } else {
31562          PRINT_SPACE
31563          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31564      }
31565 
31566      print_VkDebugUtilsMessengerCallbackDataFlagsEXT(obj.flags, "flags", 1);
31567 
31568      print_char(obj.pMessageIdName, "pMessageIdName", 1);
31569 
31570      print_int32_t(obj.messageIdNumber, "messageIdNumber", 1);
31571 
31572      print_char(obj.pMessage, "pMessage", 1);
31573 
31574      print_uint32_t(obj.queueLabelCount, "queueLabelCount", 1);
31575 
31576      PRINT_SPACE
31577      _OUT << "\"pQueueLabels\": " << std::endl;
31578      if (obj.pQueueLabels) {
31579          PRINT_SPACE
31580          _OUT << "[" << std::endl;
31581          for (unsigned int i = 0; i < obj.queueLabelCount; i++) {
31582            if (i+1 == obj.queueLabelCount)
31583                print_VkDebugUtilsLabelEXT(obj.pQueueLabels[i], "pQueueLabels", 0);
31584            else
31585                print_VkDebugUtilsLabelEXT(obj.pQueueLabels[i], "pQueueLabels", 1);
31586          }
31587          PRINT_SPACE
31588          _OUT << "]," << std::endl;
31589     }
31590      else
31591      {
31592          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
31593      }
31594 
31595      print_uint32_t(obj.cmdBufLabelCount, "cmdBufLabelCount", 1);
31596 
31597      PRINT_SPACE
31598      _OUT << "\"pCmdBufLabels\": " << std::endl;
31599      if (obj.pCmdBufLabels) {
31600          PRINT_SPACE
31601          _OUT << "[" << std::endl;
31602          for (unsigned int i = 0; i < obj.cmdBufLabelCount; i++) {
31603            if (i+1 == obj.cmdBufLabelCount)
31604                print_VkDebugUtilsLabelEXT(obj.pCmdBufLabels[i], "pCmdBufLabels", 0);
31605            else
31606                print_VkDebugUtilsLabelEXT(obj.pCmdBufLabels[i], "pCmdBufLabels", 1);
31607          }
31608          PRINT_SPACE
31609          _OUT << "]," << std::endl;
31610     }
31611      else
31612      {
31613          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
31614      }
31615 
31616      print_uint32_t(obj.objectCount, "objectCount", 1);
31617 
31618      PRINT_SPACE
31619      _OUT << "\"pObjects\": " << std::endl;
31620      if (obj.pObjects) {
31621          PRINT_SPACE
31622          _OUT << "[" << std::endl;
31623          for (unsigned int i = 0; i < obj.objectCount; i++) {
31624            if (i+1 == obj.objectCount)
31625                print_VkDebugUtilsObjectNameInfoEXT(obj.pObjects[i], "pObjects", 0);
31626            else
31627                print_VkDebugUtilsObjectNameInfoEXT(obj.pObjects[i], "pObjects", 1);
31628          }
31629          PRINT_SPACE
31630          _OUT << "]" << std::endl;
31631     }
31632      else
31633      {
31634          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
31635      }
31636 
31637      INDENT(-4);
31638      PRINT_SPACE
31639      if (commaNeeded)
31640          _OUT << "}," << std::endl;
31641      else
31642          _OUT << "}" << std::endl;
31643 }
print_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT * obj,const std::string & s,bool commaNeeded=true)31644 static void print_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT * obj, const std::string& s, bool commaNeeded=true) {
31645      PRINT_SPACE
31646      _OUT << "{" << std::endl;
31647      INDENT(4);
31648 
31649      print_VkStructureType(obj->sType, "sType", 1);
31650 
31651       if (obj->pNext) {
31652          dumpPNextChain(obj->pNext);
31653       } else {
31654          PRINT_SPACE
31655          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31656      }
31657 
31658      print_VkDebugUtilsMessengerCallbackDataFlagsEXT(obj->flags, "flags", 1);
31659 
31660      print_char(obj->pMessageIdName, "pMessageIdName", 1);
31661 
31662      print_int32_t(obj->messageIdNumber, "messageIdNumber", 1);
31663 
31664      print_char(obj->pMessage, "pMessage", 1);
31665 
31666      print_uint32_t(obj->queueLabelCount, "queueLabelCount", 1);
31667 
31668      PRINT_SPACE
31669      _OUT << "\"pQueueLabels\": " << std::endl;
31670      if (obj->pQueueLabels) {
31671          PRINT_SPACE
31672          _OUT << "[" << std::endl;
31673          for (unsigned int i = 0; i < obj->queueLabelCount; i++) {
31674            if (i+1 == obj->queueLabelCount)
31675                print_VkDebugUtilsLabelEXT(obj->pQueueLabels[i], "pQueueLabels", 0);
31676            else
31677                print_VkDebugUtilsLabelEXT(obj->pQueueLabels[i], "pQueueLabels", 1);
31678          }
31679          PRINT_SPACE
31680          _OUT << "]," << std::endl;
31681     }
31682      else
31683      {
31684          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
31685      }
31686 
31687      print_uint32_t(obj->cmdBufLabelCount, "cmdBufLabelCount", 1);
31688 
31689      PRINT_SPACE
31690      _OUT << "\"pCmdBufLabels\": " << std::endl;
31691      if (obj->pCmdBufLabels) {
31692          PRINT_SPACE
31693          _OUT << "[" << std::endl;
31694          for (unsigned int i = 0; i < obj->cmdBufLabelCount; i++) {
31695            if (i+1 == obj->cmdBufLabelCount)
31696                print_VkDebugUtilsLabelEXT(obj->pCmdBufLabels[i], "pCmdBufLabels", 0);
31697            else
31698                print_VkDebugUtilsLabelEXT(obj->pCmdBufLabels[i], "pCmdBufLabels", 1);
31699          }
31700          PRINT_SPACE
31701          _OUT << "]," << std::endl;
31702     }
31703      else
31704      {
31705          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
31706      }
31707 
31708      print_uint32_t(obj->objectCount, "objectCount", 1);
31709 
31710      PRINT_SPACE
31711      _OUT << "\"pObjects\": " << std::endl;
31712      if (obj->pObjects) {
31713          PRINT_SPACE
31714          _OUT << "[" << std::endl;
31715          for (unsigned int i = 0; i < obj->objectCount; i++) {
31716            if (i+1 == obj->objectCount)
31717                print_VkDebugUtilsObjectNameInfoEXT(obj->pObjects[i], "pObjects", 0);
31718            else
31719                print_VkDebugUtilsObjectNameInfoEXT(obj->pObjects[i], "pObjects", 1);
31720          }
31721          PRINT_SPACE
31722          _OUT << "]" << std::endl;
31723     }
31724      else
31725      {
31726          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
31727      }
31728 
31729      INDENT(-4);
31730      PRINT_SPACE
31731      if (commaNeeded)
31732          _OUT << "}," << std::endl;
31733      else
31734          _OUT << "}" << std::endl;
31735 }
31736 
print_VkDebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)31737 static void print_VkDebugUtilsMessengerCreateInfoEXT(VkDebugUtilsMessengerCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
31738      PRINT_SPACE
31739      _OUT << "{" << std::endl;
31740      INDENT(4);
31741 
31742      print_VkStructureType(obj.sType, "sType", 1);
31743 
31744       if (obj.pNext) {
31745          dumpPNextChain(obj.pNext);
31746       } else {
31747          PRINT_SPACE
31748          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31749      }
31750 
31751      print_VkDebugUtilsMessengerCreateFlagsEXT(obj.flags, "flags", 1);
31752 
31753      print_VkDebugUtilsMessageSeverityFlagsEXT(obj.messageSeverity, "messageSeverity", 1);
31754 
31755      print_VkDebugUtilsMessageTypeFlagsEXT(obj.messageType, "messageType", 1);
31756 
31757      /** Note: Ignoring function pointer (PFN_vkDebugUtilsMessengerCallbackEXT). **/
31758 
31759      /** Note: Ignoring void* data. **/
31760 
31761      INDENT(-4);
31762      PRINT_SPACE
31763      if (commaNeeded)
31764          _OUT << "}," << std::endl;
31765      else
31766          _OUT << "}" << std::endl;
31767 }
print_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)31768 static void print_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
31769      PRINT_SPACE
31770      _OUT << "{" << std::endl;
31771      INDENT(4);
31772 
31773      print_VkStructureType(obj->sType, "sType", 1);
31774 
31775       if (obj->pNext) {
31776          dumpPNextChain(obj->pNext);
31777       } else {
31778          PRINT_SPACE
31779          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31780      }
31781 
31782      print_VkDebugUtilsMessengerCreateFlagsEXT(obj->flags, "flags", 1);
31783 
31784      print_VkDebugUtilsMessageSeverityFlagsEXT(obj->messageSeverity, "messageSeverity", 1);
31785 
31786      print_VkDebugUtilsMessageTypeFlagsEXT(obj->messageType, "messageType", 1);
31787 
31788      /** Note: Ignoring function pointer (PFN_vkDebugUtilsMessengerCallbackEXT). **/
31789 
31790      /** Note: Ignoring void* data. **/
31791 
31792      INDENT(-4);
31793      PRINT_SPACE
31794      if (commaNeeded)
31795          _OUT << "}," << std::endl;
31796      else
31797          _OUT << "}" << std::endl;
31798 }
31799 
print_VkDebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT obj,const std::string & s,bool commaNeeded=true)31800 static void print_VkDebugUtilsObjectTagInfoEXT(VkDebugUtilsObjectTagInfoEXT obj, const std::string& s, bool commaNeeded=true) {
31801      PRINT_SPACE
31802      _OUT << "{" << std::endl;
31803      INDENT(4);
31804 
31805      print_VkStructureType(obj.sType, "sType", 1);
31806 
31807       if (obj.pNext) {
31808          dumpPNextChain(obj.pNext);
31809       } else {
31810          PRINT_SPACE
31811          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31812      }
31813 
31814      print_VkObjectType(obj.objectType, "objectType", 1);
31815 
31816      print_uint64_t(obj.objectHandle, "objectHandle", 1);
31817 
31818      print_uint64_t(obj.tagName, "tagName", 1);
31819 
31820      print_size_t(obj.tagSize, "tagSize", 1);
31821 
31822      /** Note: Ignoring void* data. **/
31823 
31824      INDENT(-4);
31825      PRINT_SPACE
31826      if (commaNeeded)
31827          _OUT << "}," << std::endl;
31828      else
31829          _OUT << "}" << std::endl;
31830 }
print_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT * obj,const std::string & s,bool commaNeeded=true)31831 static void print_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
31832      PRINT_SPACE
31833      _OUT << "{" << std::endl;
31834      INDENT(4);
31835 
31836      print_VkStructureType(obj->sType, "sType", 1);
31837 
31838       if (obj->pNext) {
31839          dumpPNextChain(obj->pNext);
31840       } else {
31841          PRINT_SPACE
31842          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31843      }
31844 
31845      print_VkObjectType(obj->objectType, "objectType", 1);
31846 
31847      print_uint64_t(obj->objectHandle, "objectHandle", 1);
31848 
31849      print_uint64_t(obj->tagName, "tagName", 1);
31850 
31851      print_size_t(obj->tagSize, "tagSize", 1);
31852 
31853      /** Note: Ignoring void* data. **/
31854 
31855      INDENT(-4);
31856      PRINT_SPACE
31857      if (commaNeeded)
31858          _OUT << "}," << std::endl;
31859      else
31860          _OUT << "}" << std::endl;
31861 }
31862 
print_VkSampleLocationEXT(VkSampleLocationEXT obj,const std::string & s,bool commaNeeded=true)31863 static void print_VkSampleLocationEXT(VkSampleLocationEXT obj, const std::string& s, bool commaNeeded=true) {
31864      PRINT_SPACE
31865      _OUT << "{" << std::endl;
31866      INDENT(4);
31867 
31868      print_float(obj.x, "x", 1);
31869 
31870      print_float(obj.y, "y", 0);
31871 
31872      INDENT(-4);
31873      PRINT_SPACE
31874      if (commaNeeded)
31875          _OUT << "}," << std::endl;
31876      else
31877          _OUT << "}" << std::endl;
31878 }
print_VkSampleLocationEXT(const VkSampleLocationEXT * obj,const std::string & s,bool commaNeeded=true)31879 static void print_VkSampleLocationEXT(const VkSampleLocationEXT * obj, const std::string& s, bool commaNeeded=true) {
31880      PRINT_SPACE
31881      _OUT << "{" << std::endl;
31882      INDENT(4);
31883 
31884      print_float(obj->x, "x", 1);
31885 
31886      print_float(obj->y, "y", 0);
31887 
31888      INDENT(-4);
31889      PRINT_SPACE
31890      if (commaNeeded)
31891          _OUT << "}," << std::endl;
31892      else
31893          _OUT << "}" << std::endl;
31894 }
31895 
print_VkSampleLocationsInfoEXT(VkSampleLocationsInfoEXT obj,const std::string & s,bool commaNeeded=true)31896 static void print_VkSampleLocationsInfoEXT(VkSampleLocationsInfoEXT obj, const std::string& s, bool commaNeeded=true) {
31897      PRINT_SPACE
31898      _OUT << "{" << std::endl;
31899      INDENT(4);
31900 
31901      print_VkStructureType(obj.sType, "sType", 1);
31902 
31903       if (obj.pNext) {
31904          dumpPNextChain(obj.pNext);
31905       } else {
31906          PRINT_SPACE
31907          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31908      }
31909 
31910      print_VkSampleCountFlagBits(obj.sampleLocationsPerPixel, "sampleLocationsPerPixel", 1);
31911 
31912      PRINT_SPACE
31913      _OUT << "\"sampleLocationGridSize\": " << std::endl;
31914      {
31915            print_VkExtent2D(obj.sampleLocationGridSize, "sampleLocationGridSize", 1);
31916      }
31917 
31918      print_uint32_t(obj.sampleLocationsCount, "sampleLocationsCount", 1);
31919 
31920      PRINT_SPACE
31921      _OUT << "\"pSampleLocations\": " << std::endl;
31922      if (obj.pSampleLocations) {
31923          PRINT_SPACE
31924          _OUT << "[" << std::endl;
31925          for (unsigned int i = 0; i < obj.sampleLocationsCount; i++) {
31926            if (i+1 == obj.sampleLocationsCount)
31927                print_VkSampleLocationEXT(obj.pSampleLocations[i], "pSampleLocations", 0);
31928            else
31929                print_VkSampleLocationEXT(obj.pSampleLocations[i], "pSampleLocations", 1);
31930          }
31931          PRINT_SPACE
31932          _OUT << "]" << std::endl;
31933     }
31934      else
31935      {
31936          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
31937      }
31938 
31939      INDENT(-4);
31940      PRINT_SPACE
31941      if (commaNeeded)
31942          _OUT << "}," << std::endl;
31943      else
31944          _OUT << "}" << std::endl;
31945 }
print_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * obj,const std::string & s,bool commaNeeded=true)31946 static void print_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
31947      PRINT_SPACE
31948      _OUT << "{" << std::endl;
31949      INDENT(4);
31950 
31951      print_VkStructureType(obj->sType, "sType", 1);
31952 
31953       if (obj->pNext) {
31954          dumpPNextChain(obj->pNext);
31955       } else {
31956          PRINT_SPACE
31957          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
31958      }
31959 
31960      print_VkSampleCountFlagBits(obj->sampleLocationsPerPixel, "sampleLocationsPerPixel", 1);
31961 
31962      PRINT_SPACE
31963      _OUT << "\"sampleLocationGridSize\": " << std::endl;
31964      {
31965            print_VkExtent2D(obj->sampleLocationGridSize, "sampleLocationGridSize", 1);
31966      }
31967 
31968      print_uint32_t(obj->sampleLocationsCount, "sampleLocationsCount", 1);
31969 
31970      PRINT_SPACE
31971      _OUT << "\"pSampleLocations\": " << std::endl;
31972      if (obj->pSampleLocations) {
31973          PRINT_SPACE
31974          _OUT << "[" << std::endl;
31975          for (unsigned int i = 0; i < obj->sampleLocationsCount; i++) {
31976            if (i+1 == obj->sampleLocationsCount)
31977                print_VkSampleLocationEXT(obj->pSampleLocations[i], "pSampleLocations", 0);
31978            else
31979                print_VkSampleLocationEXT(obj->pSampleLocations[i], "pSampleLocations", 1);
31980          }
31981          PRINT_SPACE
31982          _OUT << "]" << std::endl;
31983     }
31984      else
31985      {
31986          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
31987      }
31988 
31989      INDENT(-4);
31990      PRINT_SPACE
31991      if (commaNeeded)
31992          _OUT << "}," << std::endl;
31993      else
31994          _OUT << "}" << std::endl;
31995 }
31996 
print_VkAttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT obj,const std::string & s,bool commaNeeded=true)31997 static void print_VkAttachmentSampleLocationsEXT(VkAttachmentSampleLocationsEXT obj, const std::string& s, bool commaNeeded=true) {
31998      PRINT_SPACE
31999      _OUT << "{" << std::endl;
32000      INDENT(4);
32001 
32002      print_uint32_t(obj.attachmentIndex, "attachmentIndex", 1);
32003 
32004      PRINT_SPACE
32005      _OUT << "\"sampleLocationsInfo\": " << std::endl;
32006      {
32007            print_VkSampleLocationsInfoEXT(obj.sampleLocationsInfo, "sampleLocationsInfo", 0);
32008      }
32009 
32010      INDENT(-4);
32011      PRINT_SPACE
32012      if (commaNeeded)
32013          _OUT << "}," << std::endl;
32014      else
32015          _OUT << "}" << std::endl;
32016 }
print_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT * obj,const std::string & s,bool commaNeeded=true)32017 static void print_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT * obj, const std::string& s, bool commaNeeded=true) {
32018      PRINT_SPACE
32019      _OUT << "{" << std::endl;
32020      INDENT(4);
32021 
32022      print_uint32_t(obj->attachmentIndex, "attachmentIndex", 1);
32023 
32024      PRINT_SPACE
32025      _OUT << "\"sampleLocationsInfo\": " << std::endl;
32026      {
32027            print_VkSampleLocationsInfoEXT(obj->sampleLocationsInfo, "sampleLocationsInfo", 0);
32028      }
32029 
32030      INDENT(-4);
32031      PRINT_SPACE
32032      if (commaNeeded)
32033          _OUT << "}," << std::endl;
32034      else
32035          _OUT << "}" << std::endl;
32036 }
32037 
print_VkSubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT obj,const std::string & s,bool commaNeeded=true)32038 static void print_VkSubpassSampleLocationsEXT(VkSubpassSampleLocationsEXT obj, const std::string& s, bool commaNeeded=true) {
32039      PRINT_SPACE
32040      _OUT << "{" << std::endl;
32041      INDENT(4);
32042 
32043      print_uint32_t(obj.subpassIndex, "subpassIndex", 1);
32044 
32045      PRINT_SPACE
32046      _OUT << "\"sampleLocationsInfo\": " << std::endl;
32047      {
32048            print_VkSampleLocationsInfoEXT(obj.sampleLocationsInfo, "sampleLocationsInfo", 0);
32049      }
32050 
32051      INDENT(-4);
32052      PRINT_SPACE
32053      if (commaNeeded)
32054          _OUT << "}," << std::endl;
32055      else
32056          _OUT << "}" << std::endl;
32057 }
print_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT * obj,const std::string & s,bool commaNeeded=true)32058 static void print_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT * obj, const std::string& s, bool commaNeeded=true) {
32059      PRINT_SPACE
32060      _OUT << "{" << std::endl;
32061      INDENT(4);
32062 
32063      print_uint32_t(obj->subpassIndex, "subpassIndex", 1);
32064 
32065      PRINT_SPACE
32066      _OUT << "\"sampleLocationsInfo\": " << std::endl;
32067      {
32068            print_VkSampleLocationsInfoEXT(obj->sampleLocationsInfo, "sampleLocationsInfo", 0);
32069      }
32070 
32071      INDENT(-4);
32072      PRINT_SPACE
32073      if (commaNeeded)
32074          _OUT << "}," << std::endl;
32075      else
32076          _OUT << "}" << std::endl;
32077 }
32078 
print_VkRenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLocationsBeginInfoEXT obj,const std::string & s,bool commaNeeded=true)32079 static void print_VkRenderPassSampleLocationsBeginInfoEXT(VkRenderPassSampleLocationsBeginInfoEXT obj, const std::string& s, bool commaNeeded=true) {
32080      PRINT_SPACE
32081      _OUT << "{" << std::endl;
32082      INDENT(4);
32083 
32084      print_VkStructureType(obj.sType, "sType", 1);
32085 
32086       if (obj.pNext) {
32087          dumpPNextChain(obj.pNext);
32088       } else {
32089          PRINT_SPACE
32090          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32091      }
32092 
32093      print_uint32_t(obj.attachmentInitialSampleLocationsCount, "attachmentInitialSampleLocationsCount", 1);
32094 
32095      PRINT_SPACE
32096      _OUT << "\"pAttachmentInitialSampleLocations\": " << std::endl;
32097      if (obj.pAttachmentInitialSampleLocations) {
32098          PRINT_SPACE
32099          _OUT << "[" << std::endl;
32100          for (unsigned int i = 0; i < obj.attachmentInitialSampleLocationsCount; i++) {
32101            if (i+1 == obj.attachmentInitialSampleLocationsCount)
32102                print_VkAttachmentSampleLocationsEXT(obj.pAttachmentInitialSampleLocations[i], "pAttachmentInitialSampleLocations", 0);
32103            else
32104                print_VkAttachmentSampleLocationsEXT(obj.pAttachmentInitialSampleLocations[i], "pAttachmentInitialSampleLocations", 1);
32105          }
32106          PRINT_SPACE
32107          _OUT << "]," << std::endl;
32108     }
32109      else
32110      {
32111          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
32112      }
32113 
32114      print_uint32_t(obj.postSubpassSampleLocationsCount, "postSubpassSampleLocationsCount", 1);
32115 
32116      PRINT_SPACE
32117      _OUT << "\"pPostSubpassSampleLocations\": " << std::endl;
32118      if (obj.pPostSubpassSampleLocations) {
32119          PRINT_SPACE
32120          _OUT << "[" << std::endl;
32121          for (unsigned int i = 0; i < obj.postSubpassSampleLocationsCount; i++) {
32122            if (i+1 == obj.postSubpassSampleLocationsCount)
32123                print_VkSubpassSampleLocationsEXT(obj.pPostSubpassSampleLocations[i], "pPostSubpassSampleLocations", 0);
32124            else
32125                print_VkSubpassSampleLocationsEXT(obj.pPostSubpassSampleLocations[i], "pPostSubpassSampleLocations", 1);
32126          }
32127          PRINT_SPACE
32128          _OUT << "]" << std::endl;
32129     }
32130      else
32131      {
32132          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
32133      }
32134 
32135      INDENT(-4);
32136      PRINT_SPACE
32137      if (commaNeeded)
32138          _OUT << "}," << std::endl;
32139      else
32140          _OUT << "}" << std::endl;
32141 }
print_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSampleLocationsBeginInfoEXT * obj,const std::string & s,bool commaNeeded=true)32142 static void print_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSampleLocationsBeginInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
32143      PRINT_SPACE
32144      _OUT << "{" << std::endl;
32145      INDENT(4);
32146 
32147      print_VkStructureType(obj->sType, "sType", 1);
32148 
32149       if (obj->pNext) {
32150          dumpPNextChain(obj->pNext);
32151       } else {
32152          PRINT_SPACE
32153          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32154      }
32155 
32156      print_uint32_t(obj->attachmentInitialSampleLocationsCount, "attachmentInitialSampleLocationsCount", 1);
32157 
32158      PRINT_SPACE
32159      _OUT << "\"pAttachmentInitialSampleLocations\": " << std::endl;
32160      if (obj->pAttachmentInitialSampleLocations) {
32161          PRINT_SPACE
32162          _OUT << "[" << std::endl;
32163          for (unsigned int i = 0; i < obj->attachmentInitialSampleLocationsCount; i++) {
32164            if (i+1 == obj->attachmentInitialSampleLocationsCount)
32165                print_VkAttachmentSampleLocationsEXT(obj->pAttachmentInitialSampleLocations[i], "pAttachmentInitialSampleLocations", 0);
32166            else
32167                print_VkAttachmentSampleLocationsEXT(obj->pAttachmentInitialSampleLocations[i], "pAttachmentInitialSampleLocations", 1);
32168          }
32169          PRINT_SPACE
32170          _OUT << "]," << std::endl;
32171     }
32172      else
32173      {
32174          PRINT_SPACE _OUT << "\"NULL\""<< ","<< std::endl;
32175      }
32176 
32177      print_uint32_t(obj->postSubpassSampleLocationsCount, "postSubpassSampleLocationsCount", 1);
32178 
32179      PRINT_SPACE
32180      _OUT << "\"pPostSubpassSampleLocations\": " << std::endl;
32181      if (obj->pPostSubpassSampleLocations) {
32182          PRINT_SPACE
32183          _OUT << "[" << std::endl;
32184          for (unsigned int i = 0; i < obj->postSubpassSampleLocationsCount; i++) {
32185            if (i+1 == obj->postSubpassSampleLocationsCount)
32186                print_VkSubpassSampleLocationsEXT(obj->pPostSubpassSampleLocations[i], "pPostSubpassSampleLocations", 0);
32187            else
32188                print_VkSubpassSampleLocationsEXT(obj->pPostSubpassSampleLocations[i], "pPostSubpassSampleLocations", 1);
32189          }
32190          PRINT_SPACE
32191          _OUT << "]" << std::endl;
32192     }
32193      else
32194      {
32195          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
32196      }
32197 
32198      INDENT(-4);
32199      PRINT_SPACE
32200      if (commaNeeded)
32201          _OUT << "}," << std::endl;
32202      else
32203          _OUT << "}" << std::endl;
32204 }
32205 
print_VkPipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLocationsStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)32206 static void print_VkPipelineSampleLocationsStateCreateInfoEXT(VkPipelineSampleLocationsStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
32207      PRINT_SPACE
32208      _OUT << "{" << std::endl;
32209      INDENT(4);
32210 
32211      print_VkStructureType(obj.sType, "sType", 1);
32212 
32213       if (obj.pNext) {
32214          dumpPNextChain(obj.pNext);
32215       } else {
32216          PRINT_SPACE
32217          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32218      }
32219 
32220      print_VkBool32(obj.sampleLocationsEnable, "sampleLocationsEnable", 1);
32221 
32222      PRINT_SPACE
32223      _OUT << "\"sampleLocationsInfo\": " << std::endl;
32224      {
32225            print_VkSampleLocationsInfoEXT(obj.sampleLocationsInfo, "sampleLocationsInfo", 0);
32226      }
32227 
32228      INDENT(-4);
32229      PRINT_SPACE
32230      if (commaNeeded)
32231          _OUT << "}," << std::endl;
32232      else
32233          _OUT << "}" << std::endl;
32234 }
print_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSampleLocationsStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)32235 static void print_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSampleLocationsStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
32236      PRINT_SPACE
32237      _OUT << "{" << std::endl;
32238      INDENT(4);
32239 
32240      print_VkStructureType(obj->sType, "sType", 1);
32241 
32242       if (obj->pNext) {
32243          dumpPNextChain(obj->pNext);
32244       } else {
32245          PRINT_SPACE
32246          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32247      }
32248 
32249      print_VkBool32(obj->sampleLocationsEnable, "sampleLocationsEnable", 1);
32250 
32251      PRINT_SPACE
32252      _OUT << "\"sampleLocationsInfo\": " << std::endl;
32253      {
32254            print_VkSampleLocationsInfoEXT(obj->sampleLocationsInfo, "sampleLocationsInfo", 0);
32255      }
32256 
32257      INDENT(-4);
32258      PRINT_SPACE
32259      if (commaNeeded)
32260          _OUT << "}," << std::endl;
32261      else
32262          _OUT << "}" << std::endl;
32263 }
32264 
print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceSampleLocationsPropertiesEXT obj,const std::string & s,bool commaNeeded=true)32265 static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(VkPhysicalDeviceSampleLocationsPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
32266      PRINT_SPACE
32267      _OUT << "{" << std::endl;
32268      INDENT(4);
32269 
32270      print_VkStructureType(obj.sType, "sType", 1);
32271 
32272       if (obj.pNext) {
32273          dumpPNextChain(obj.pNext);
32274       } else {
32275          PRINT_SPACE
32276          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32277      }
32278 
32279      print_VkSampleCountFlags(obj.sampleLocationSampleCounts, "sampleLocationSampleCounts", 1);
32280 
32281      PRINT_SPACE
32282      _OUT << "\"maxSampleLocationGridSize\": " << std::endl;
32283      {
32284            print_VkExtent2D(obj.maxSampleLocationGridSize, "maxSampleLocationGridSize", 1);
32285      }
32286 
32287      PRINT_SPACE
32288      _OUT << "\"sampleLocationCoordinateRange\":" << std::endl;
32289      PRINT_SPACE
32290        _OUT << "[" << std::endl;
32291        for (unsigned int i = 0; i < 2; i++) {
32292            bool isCommaNeeded = (i+1) != 2;
32293            print_float(obj.sampleLocationCoordinateRange[i], "", isCommaNeeded);
32294        }
32295        PRINT_SPACE
32296        _OUT << "]" << "," << std::endl;
32297 
32298      print_uint32_t(obj.sampleLocationSubPixelBits, "sampleLocationSubPixelBits", 1);
32299 
32300      print_VkBool32(obj.variableSampleLocations, "variableSampleLocations", 0);
32301 
32302      INDENT(-4);
32303      PRINT_SPACE
32304      if (commaNeeded)
32305          _OUT << "}," << std::endl;
32306      else
32307          _OUT << "}" << std::endl;
32308 }
print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalDeviceSampleLocationsPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)32309 static void print_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalDeviceSampleLocationsPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
32310      PRINT_SPACE
32311      _OUT << "{" << std::endl;
32312      INDENT(4);
32313 
32314      print_VkStructureType(obj->sType, "sType", 1);
32315 
32316       if (obj->pNext) {
32317          dumpPNextChain(obj->pNext);
32318       } else {
32319          PRINT_SPACE
32320          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32321      }
32322 
32323      print_VkSampleCountFlags(obj->sampleLocationSampleCounts, "sampleLocationSampleCounts", 1);
32324 
32325      PRINT_SPACE
32326      _OUT << "\"maxSampleLocationGridSize\": " << std::endl;
32327      {
32328            print_VkExtent2D(obj->maxSampleLocationGridSize, "maxSampleLocationGridSize", 1);
32329      }
32330 
32331      PRINT_SPACE
32332      _OUT << "\"sampleLocationCoordinateRange\":" << std::endl;
32333      PRINT_SPACE
32334        _OUT << "[" << std::endl;
32335        for (unsigned int i = 0; i < 2; i++) {
32336            bool isCommaNeeded = (i+1) != 2;
32337            print_float(obj->sampleLocationCoordinateRange[i], "", isCommaNeeded);
32338        }
32339        PRINT_SPACE
32340        _OUT << "]" << "," << std::endl;
32341 
32342      print_uint32_t(obj->sampleLocationSubPixelBits, "sampleLocationSubPixelBits", 1);
32343 
32344      print_VkBool32(obj->variableSampleLocations, "variableSampleLocations", 0);
32345 
32346      INDENT(-4);
32347      PRINT_SPACE
32348      if (commaNeeded)
32349          _OUT << "}," << std::endl;
32350      else
32351          _OUT << "}" << std::endl;
32352 }
32353 
print_VkMultisamplePropertiesEXT(VkMultisamplePropertiesEXT obj,const std::string & s,bool commaNeeded=true)32354 static void print_VkMultisamplePropertiesEXT(VkMultisamplePropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
32355      PRINT_SPACE
32356      _OUT << "{" << std::endl;
32357      INDENT(4);
32358 
32359      print_VkStructureType(obj.sType, "sType", 1);
32360 
32361       if (obj.pNext) {
32362          dumpPNextChain(obj.pNext);
32363       } else {
32364          PRINT_SPACE
32365          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32366      }
32367 
32368      PRINT_SPACE
32369      _OUT << "\"maxSampleLocationGridSize\": " << std::endl;
32370      {
32371            print_VkExtent2D(obj.maxSampleLocationGridSize, "maxSampleLocationGridSize", 0);
32372      }
32373 
32374      INDENT(-4);
32375      PRINT_SPACE
32376      if (commaNeeded)
32377          _OUT << "}," << std::endl;
32378      else
32379          _OUT << "}" << std::endl;
32380 }
print_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT * obj,const std::string & s,bool commaNeeded=true)32381 static void print_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
32382      PRINT_SPACE
32383      _OUT << "{" << std::endl;
32384      INDENT(4);
32385 
32386      print_VkStructureType(obj->sType, "sType", 1);
32387 
32388       if (obj->pNext) {
32389          dumpPNextChain(obj->pNext);
32390       } else {
32391          PRINT_SPACE
32392          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32393      }
32394 
32395      PRINT_SPACE
32396      _OUT << "\"maxSampleLocationGridSize\": " << std::endl;
32397      {
32398            print_VkExtent2D(obj->maxSampleLocationGridSize, "maxSampleLocationGridSize", 0);
32399      }
32400 
32401      INDENT(-4);
32402      PRINT_SPACE
32403      if (commaNeeded)
32404          _OUT << "}," << std::endl;
32405      else
32406          _OUT << "}" << std::endl;
32407 }
32408 
32409 static std::map<deUint64, std::string> VkBlendOverlapEXT_map = {
32410     std::make_pair(0, "VK_BLEND_OVERLAP_UNCORRELATED_EXT"),
32411     std::make_pair(1, "VK_BLEND_OVERLAP_DISJOINT_EXT"),
32412     std::make_pair(2, "VK_BLEND_OVERLAP_CONJOINT_EXT"),
32413 };
print_VkBlendOverlapEXT(VkBlendOverlapEXT obj,const std::string & str,bool commaNeeded=true)32414 static void print_VkBlendOverlapEXT(VkBlendOverlapEXT obj, const std::string& str, bool commaNeeded=true) {
32415      PRINT_SPACE
32416      if (str != "") _OUT << "\"" << str << "\"" << " : ";
32417      if (commaNeeded)
32418          _OUT << "\"" <<  VkBlendOverlapEXT_map[obj] << "\"," << std::endl;
32419      else
32420          _OUT << "\"" << VkBlendOverlapEXT_map[obj] << "\"" << std::endl;
32421 }
print_VkBlendOverlapEXT(const VkBlendOverlapEXT * obj,const std::string & str,bool commaNeeded=true)32422 static void print_VkBlendOverlapEXT(const VkBlendOverlapEXT * obj, const std::string& str, bool commaNeeded=true) {
32423      PRINT_SPACE
32424      if (str != "") _OUT << "\"" << str << "\"" << " : ";
32425      if (commaNeeded)
32426          _OUT << "\"" <<  VkBlendOverlapEXT_map[*obj] << "\"," << std::endl;
32427      else
32428          _OUT << "\"" << VkBlendOverlapEXT_map[*obj] << "\"" << std::endl;
32429 }
32430 
print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT obj,const std::string & s,bool commaNeeded=true)32431 static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
32432      PRINT_SPACE
32433      _OUT << "{" << std::endl;
32434      INDENT(4);
32435 
32436      print_VkStructureType(obj.sType, "sType", 1);
32437 
32438       if (obj.pNext) {
32439          dumpPNextChain(obj.pNext);
32440       } else {
32441          PRINT_SPACE
32442          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32443      }
32444 
32445      print_VkBool32(obj.advancedBlendCoherentOperations, "advancedBlendCoherentOperations", 0);
32446 
32447      INDENT(-4);
32448      PRINT_SPACE
32449      if (commaNeeded)
32450          _OUT << "}," << std::endl;
32451      else
32452          _OUT << "}" << std::endl;
32453 }
print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)32454 static void print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
32455      PRINT_SPACE
32456      _OUT << "{" << std::endl;
32457      INDENT(4);
32458 
32459      print_VkStructureType(obj->sType, "sType", 1);
32460 
32461       if (obj->pNext) {
32462          dumpPNextChain(obj->pNext);
32463       } else {
32464          PRINT_SPACE
32465          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32466      }
32467 
32468      print_VkBool32(obj->advancedBlendCoherentOperations, "advancedBlendCoherentOperations", 0);
32469 
32470      INDENT(-4);
32471      PRINT_SPACE
32472      if (commaNeeded)
32473          _OUT << "}," << std::endl;
32474      else
32475          _OUT << "}" << std::endl;
32476 }
32477 
print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT obj,const std::string & s,bool commaNeeded=true)32478 static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
32479      PRINT_SPACE
32480      _OUT << "{" << std::endl;
32481      INDENT(4);
32482 
32483      print_VkStructureType(obj.sType, "sType", 1);
32484 
32485       if (obj.pNext) {
32486          dumpPNextChain(obj.pNext);
32487       } else {
32488          PRINT_SPACE
32489          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32490      }
32491 
32492      print_uint32_t(obj.advancedBlendMaxColorAttachments, "advancedBlendMaxColorAttachments", 1);
32493 
32494      print_VkBool32(obj.advancedBlendIndependentBlend, "advancedBlendIndependentBlend", 1);
32495 
32496      print_VkBool32(obj.advancedBlendNonPremultipliedSrcColor, "advancedBlendNonPremultipliedSrcColor", 1);
32497 
32498      print_VkBool32(obj.advancedBlendNonPremultipliedDstColor, "advancedBlendNonPremultipliedDstColor", 1);
32499 
32500      print_VkBool32(obj.advancedBlendCorrelatedOverlap, "advancedBlendCorrelatedOverlap", 1);
32501 
32502      print_VkBool32(obj.advancedBlendAllOperations, "advancedBlendAllOperations", 0);
32503 
32504      INDENT(-4);
32505      PRINT_SPACE
32506      if (commaNeeded)
32507          _OUT << "}," << std::endl;
32508      else
32509          _OUT << "}" << std::endl;
32510 }
print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)32511 static void print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
32512      PRINT_SPACE
32513      _OUT << "{" << std::endl;
32514      INDENT(4);
32515 
32516      print_VkStructureType(obj->sType, "sType", 1);
32517 
32518       if (obj->pNext) {
32519          dumpPNextChain(obj->pNext);
32520       } else {
32521          PRINT_SPACE
32522          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32523      }
32524 
32525      print_uint32_t(obj->advancedBlendMaxColorAttachments, "advancedBlendMaxColorAttachments", 1);
32526 
32527      print_VkBool32(obj->advancedBlendIndependentBlend, "advancedBlendIndependentBlend", 1);
32528 
32529      print_VkBool32(obj->advancedBlendNonPremultipliedSrcColor, "advancedBlendNonPremultipliedSrcColor", 1);
32530 
32531      print_VkBool32(obj->advancedBlendNonPremultipliedDstColor, "advancedBlendNonPremultipliedDstColor", 1);
32532 
32533      print_VkBool32(obj->advancedBlendCorrelatedOverlap, "advancedBlendCorrelatedOverlap", 1);
32534 
32535      print_VkBool32(obj->advancedBlendAllOperations, "advancedBlendAllOperations", 0);
32536 
32537      INDENT(-4);
32538      PRINT_SPACE
32539      if (commaNeeded)
32540          _OUT << "}," << std::endl;
32541      else
32542          _OUT << "}" << std::endl;
32543 }
32544 
print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColorBlendAdvancedStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)32545 static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(VkPipelineColorBlendAdvancedStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
32546      PRINT_SPACE
32547      _OUT << "{" << std::endl;
32548      INDENT(4);
32549 
32550      print_VkStructureType(obj.sType, "sType", 1);
32551 
32552       if (obj.pNext) {
32553          dumpPNextChain(obj.pNext);
32554       } else {
32555          PRINT_SPACE
32556          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32557      }
32558 
32559      print_VkBool32(obj.srcPremultiplied, "srcPremultiplied", 1);
32560 
32561      print_VkBool32(obj.dstPremultiplied, "dstPremultiplied", 1);
32562 
32563      print_VkBlendOverlapEXT(obj.blendOverlap, "blendOverlap", 0);
32564 
32565      INDENT(-4);
32566      PRINT_SPACE
32567      if (commaNeeded)
32568          _OUT << "}," << std::endl;
32569      else
32570          _OUT << "}" << std::endl;
32571 }
print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(const VkPipelineColorBlendAdvancedStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)32572 static void print_VkPipelineColorBlendAdvancedStateCreateInfoEXT(const VkPipelineColorBlendAdvancedStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
32573      PRINT_SPACE
32574      _OUT << "{" << std::endl;
32575      INDENT(4);
32576 
32577      print_VkStructureType(obj->sType, "sType", 1);
32578 
32579       if (obj->pNext) {
32580          dumpPNextChain(obj->pNext);
32581       } else {
32582          PRINT_SPACE
32583          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32584      }
32585 
32586      print_VkBool32(obj->srcPremultiplied, "srcPremultiplied", 1);
32587 
32588      print_VkBool32(obj->dstPremultiplied, "dstPremultiplied", 1);
32589 
32590      print_VkBlendOverlapEXT(obj->blendOverlap, "blendOverlap", 0);
32591 
32592      INDENT(-4);
32593      PRINT_SPACE
32594      if (commaNeeded)
32595          _OUT << "}," << std::endl;
32596      else
32597          _OUT << "}" << std::endl;
32598 }
32599 
32600 static std::map<deUint64, std::string> VkFormatFeatureFlagBits2KHR_map = {
32601     std::make_pair(1ULL << 0, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR"),
32602     std::make_pair(1ULL << 1, "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR"),
32603     std::make_pair(1ULL << 2, "VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR"),
32604     std::make_pair(1ULL << 3, "VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR"),
32605     std::make_pair(1ULL << 4, "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT_KHR"),
32606     std::make_pair(1ULL << 5, "VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT_KHR"),
32607     std::make_pair(1ULL << 6, "VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT_KHR"),
32608     std::make_pair(1ULL << 7, "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT_KHR"),
32609     std::make_pair(1ULL << 8, "VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT_KHR"),
32610     std::make_pair(1ULL << 9, "VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT_KHR"),
32611     std::make_pair(1ULL << 10, "VK_FORMAT_FEATURE_2_BLIT_SRC_BIT_KHR"),
32612     std::make_pair(1ULL << 11, "VK_FORMAT_FEATURE_2_BLIT_DST_BIT_KHR"),
32613     std::make_pair(1ULL << 12, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT_KHR"),
32614     std::make_pair(1ULL << 13, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT"),
32615     std::make_pair(1ULL << 14, "VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT_KHR"),
32616     std::make_pair(1ULL << 15, "VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT_KHR"),
32617     std::make_pair(1ULL << 16, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR"),
32618     std::make_pair(1ULL << 17, "VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT_KHR"),
32619     std::make_pair(1ULL << 18, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR"),
32620     std::make_pair(1ULL << 19, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR"),
32621     std::make_pair(1ULL << 20, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR"),
32622     std::make_pair(1ULL << 21, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR"),
32623     std::make_pair(1ULL << 22, "VK_FORMAT_FEATURE_2_DISJOINT_BIT_KHR"),
32624     std::make_pair(1ULL << 23, "VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT_KHR"),
32625     std::make_pair(1ULL << 31, "VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT_KHR"),
32626     std::make_pair(1ULL << 32, "VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT_KHR"),
32627     std::make_pair(1ULL << 33, "VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR"),
32628     std::make_pair(1ULL << 25, "VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR"),
32629     std::make_pair(1ULL << 26, "VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR"),
32630     std::make_pair(1ULL << 29, "VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR"),
32631     std::make_pair(1ULL << 24, "VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT"),
32632     std::make_pair(1ULL << 30, "VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
32633     std::make_pair(1ULL << 27, "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR"),
32634     std::make_pair(1ULL << 28, "VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR"),
32635 };
print_VkFormatFeatureFlagBits2KHR(VkFormatFeatureFlagBits2KHR obj,const std::string & str,bool commaNeeded=true)32636 static void print_VkFormatFeatureFlagBits2KHR(VkFormatFeatureFlagBits2KHR obj, const std::string& str, bool commaNeeded=true) {
32637      PRINT_SPACE
32638      if (str != "") _OUT << "\"" << str << "\"" << " : ";
32639      if (commaNeeded)
32640          _OUT << "\"" <<  VkFormatFeatureFlagBits2KHR_map[obj] << "\"," << std::endl;
32641      else
32642          _OUT << "\"" << VkFormatFeatureFlagBits2KHR_map[obj] << "\"" << std::endl;
32643 }
print_VkFormatFeatureFlagBits2KHR(const VkFormatFeatureFlagBits2KHR * obj,const std::string & str,bool commaNeeded=true)32644 static void print_VkFormatFeatureFlagBits2KHR(const VkFormatFeatureFlagBits2KHR * obj, const std::string& str, bool commaNeeded=true) {
32645      PRINT_SPACE
32646      if (str != "") _OUT << "\"" << str << "\"" << " : ";
32647      if (commaNeeded)
32648          _OUT << "\"" <<  VkFormatFeatureFlagBits2KHR_map[*obj] << "\"," << std::endl;
32649      else
32650          _OUT << "\"" << VkFormatFeatureFlagBits2KHR_map[*obj] << "\"" << std::endl;
32651 }
32652 
print_VkFormatFeatureFlags2KHR(VkFormatFeatureFlags2KHR obj,const std::string & str,bool commaNeeded=true)32653 static void print_VkFormatFeatureFlags2KHR(VkFormatFeatureFlags2KHR obj, const std::string& str, bool commaNeeded=true) {
32654      PRINT_SPACE
32655      if (commaNeeded)
32656          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
32657      else
32658          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
32659 }
print_VkFormatFeatureFlags2KHR(const VkFormatFeatureFlags2KHR * obj,const std::string & str,bool commaNeeded=true)32660 static void print_VkFormatFeatureFlags2KHR(const VkFormatFeatureFlags2KHR * obj, const std::string& str, bool commaNeeded=true) {
32661      PRINT_SPACE
32662      if (commaNeeded)
32663          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
32664      else
32665          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
32666 }
32667 
print_VkDrmFormatModifierPropertiesEXT(VkDrmFormatModifierPropertiesEXT obj,const std::string & s,bool commaNeeded=true)32668 static void print_VkDrmFormatModifierPropertiesEXT(VkDrmFormatModifierPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
32669      PRINT_SPACE
32670      _OUT << "{" << std::endl;
32671      INDENT(4);
32672 
32673      print_uint64_t(obj.drmFormatModifier, "drmFormatModifier", 1);
32674 
32675      print_uint32_t(obj.drmFormatModifierPlaneCount, "drmFormatModifierPlaneCount", 1);
32676 
32677      print_VkFormatFeatureFlags(obj.drmFormatModifierTilingFeatures, "drmFormatModifierTilingFeatures", 0);
32678 
32679      INDENT(-4);
32680      PRINT_SPACE
32681      if (commaNeeded)
32682          _OUT << "}," << std::endl;
32683      else
32684          _OUT << "}" << std::endl;
32685 }
print_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)32686 static void print_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
32687      PRINT_SPACE
32688      _OUT << "{" << std::endl;
32689      INDENT(4);
32690 
32691      print_uint64_t(obj->drmFormatModifier, "drmFormatModifier", 1);
32692 
32693      print_uint32_t(obj->drmFormatModifierPlaneCount, "drmFormatModifierPlaneCount", 1);
32694 
32695      print_VkFormatFeatureFlags(obj->drmFormatModifierTilingFeatures, "drmFormatModifierTilingFeatures", 0);
32696 
32697      INDENT(-4);
32698      PRINT_SPACE
32699      if (commaNeeded)
32700          _OUT << "}," << std::endl;
32701      else
32702          _OUT << "}" << std::endl;
32703 }
32704 
print_VkDrmFormatModifierPropertiesListEXT(VkDrmFormatModifierPropertiesListEXT obj,const std::string & s,bool commaNeeded=true)32705 static void print_VkDrmFormatModifierPropertiesListEXT(VkDrmFormatModifierPropertiesListEXT obj, const std::string& s, bool commaNeeded=true) {
32706      PRINT_SPACE
32707      _OUT << "{" << std::endl;
32708      INDENT(4);
32709 
32710      print_VkStructureType(obj.sType, "sType", 1);
32711 
32712       if (obj.pNext) {
32713          dumpPNextChain(obj.pNext);
32714       } else {
32715          PRINT_SPACE
32716          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32717      }
32718 
32719      print_uint32_t(obj.drmFormatModifierCount, "drmFormatModifierCount", 1);
32720 
32721      PRINT_SPACE
32722      _OUT << "\"pDrmFormatModifierProperties\": " << std::endl;
32723      if (obj.pDrmFormatModifierProperties) {
32724          PRINT_SPACE
32725          _OUT << "[" << std::endl;
32726          for (unsigned int i = 0; i < obj.drmFormatModifierCount; i++) {
32727            if (i+1 == obj.drmFormatModifierCount)
32728                print_VkDrmFormatModifierPropertiesEXT(obj.pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 0);
32729            else
32730                print_VkDrmFormatModifierPropertiesEXT(obj.pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 1);
32731          }
32732          PRINT_SPACE
32733          _OUT << "]" << std::endl;
32734     }
32735      else
32736      {
32737          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
32738      }
32739 
32740      INDENT(-4);
32741      PRINT_SPACE
32742      if (commaNeeded)
32743          _OUT << "}," << std::endl;
32744      else
32745          _OUT << "}" << std::endl;
32746 }
print_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT * obj,const std::string & s,bool commaNeeded=true)32747 static void print_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT * obj, const std::string& s, bool commaNeeded=true) {
32748      PRINT_SPACE
32749      _OUT << "{" << std::endl;
32750      INDENT(4);
32751 
32752      print_VkStructureType(obj->sType, "sType", 1);
32753 
32754       if (obj->pNext) {
32755          dumpPNextChain(obj->pNext);
32756       } else {
32757          PRINT_SPACE
32758          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32759      }
32760 
32761      print_uint32_t(obj->drmFormatModifierCount, "drmFormatModifierCount", 1);
32762 
32763      PRINT_SPACE
32764      _OUT << "\"pDrmFormatModifierProperties\": " << std::endl;
32765      if (obj->pDrmFormatModifierProperties) {
32766          PRINT_SPACE
32767          _OUT << "[" << std::endl;
32768          for (unsigned int i = 0; i < obj->drmFormatModifierCount; i++) {
32769            if (i+1 == obj->drmFormatModifierCount)
32770                print_VkDrmFormatModifierPropertiesEXT(obj->pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 0);
32771            else
32772                print_VkDrmFormatModifierPropertiesEXT(obj->pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 1);
32773          }
32774          PRINT_SPACE
32775          _OUT << "]" << std::endl;
32776     }
32777      else
32778      {
32779          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
32780      }
32781 
32782      INDENT(-4);
32783      PRINT_SPACE
32784      if (commaNeeded)
32785          _OUT << "}," << std::endl;
32786      else
32787          _OUT << "}" << std::endl;
32788 }
32789 
print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDeviceImageDrmFormatModifierInfoEXT obj,const std::string & s,bool commaNeeded=true)32790 static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(VkPhysicalDeviceImageDrmFormatModifierInfoEXT obj, const std::string& s, bool commaNeeded=true) {
32791      PRINT_SPACE
32792      _OUT << "{" << std::endl;
32793      INDENT(4);
32794 
32795      print_VkStructureType(obj.sType, "sType", 1);
32796 
32797       if (obj.pNext) {
32798          dumpPNextChain(obj.pNext);
32799       } else {
32800          PRINT_SPACE
32801          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32802      }
32803 
32804      print_uint64_t(obj.drmFormatModifier, "drmFormatModifier", 1);
32805 
32806      print_VkSharingMode(obj.sharingMode, "sharingMode", 1);
32807 
32808      print_uint32_t(obj.queueFamilyIndexCount, "queueFamilyIndexCount", 1);
32809 
32810      PRINT_SPACE
32811      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
32812      PRINT_SPACE
32813      if (obj.pQueueFamilyIndices) {
32814        _OUT << "[" << std::endl;
32815        for (unsigned int i = 0; i < obj.queueFamilyIndexCount; i++) {
32816            bool isCommaNeeded = (i+1) != obj.queueFamilyIndexCount;
32817            print_uint32_t(obj.pQueueFamilyIndices[i], "", isCommaNeeded);
32818        }
32819        PRINT_SPACE
32820        _OUT << "]" << "" << std::endl;
32821      } else {
32822        _OUT << "\"NULL\"" << "" << std::endl;
32823      }
32824 
32825      INDENT(-4);
32826      PRINT_SPACE
32827      if (commaNeeded)
32828          _OUT << "}," << std::endl;
32829      else
32830          _OUT << "}" << std::endl;
32831 }
print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * obj,const std::string & s,bool commaNeeded=true)32832 static void print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
32833      PRINT_SPACE
32834      _OUT << "{" << std::endl;
32835      INDENT(4);
32836 
32837      print_VkStructureType(obj->sType, "sType", 1);
32838 
32839       if (obj->pNext) {
32840          dumpPNextChain(obj->pNext);
32841       } else {
32842          PRINT_SPACE
32843          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32844      }
32845 
32846      print_uint64_t(obj->drmFormatModifier, "drmFormatModifier", 1);
32847 
32848      print_VkSharingMode(obj->sharingMode, "sharingMode", 1);
32849 
32850      print_uint32_t(obj->queueFamilyIndexCount, "queueFamilyIndexCount", 1);
32851 
32852      PRINT_SPACE
32853      _OUT << "\"pQueueFamilyIndices\":" << std::endl;
32854      PRINT_SPACE
32855      if (obj->pQueueFamilyIndices) {
32856        _OUT << "[" << std::endl;
32857        for (unsigned int i = 0; i < obj->queueFamilyIndexCount; i++) {
32858            bool isCommaNeeded = (i+1) != obj->queueFamilyIndexCount;
32859            print_uint32_t(obj->pQueueFamilyIndices[i], "", isCommaNeeded);
32860        }
32861        PRINT_SPACE
32862        _OUT << "]" << "" << std::endl;
32863      } else {
32864        _OUT << "\"NULL\"" << "" << std::endl;
32865      }
32866 
32867      INDENT(-4);
32868      PRINT_SPACE
32869      if (commaNeeded)
32870          _OUT << "}," << std::endl;
32871      else
32872          _OUT << "}" << std::endl;
32873 }
32874 
print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModifierListCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)32875 static void print_VkImageDrmFormatModifierListCreateInfoEXT(VkImageDrmFormatModifierListCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
32876      PRINT_SPACE
32877      _OUT << "{" << std::endl;
32878      INDENT(4);
32879 
32880      print_VkStructureType(obj.sType, "sType", 1);
32881 
32882       if (obj.pNext) {
32883          dumpPNextChain(obj.pNext);
32884       } else {
32885          PRINT_SPACE
32886          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32887      }
32888 
32889      print_uint32_t(obj.drmFormatModifierCount, "drmFormatModifierCount", 1);
32890 
32891      PRINT_SPACE
32892      _OUT << "\"pDrmFormatModifiers\":" << std::endl;
32893      PRINT_SPACE
32894      if (obj.pDrmFormatModifiers) {
32895        _OUT << "[" << std::endl;
32896        for (unsigned int i = 0; i < obj.drmFormatModifierCount; i++) {
32897            bool isCommaNeeded = (i+1) != obj.drmFormatModifierCount;
32898            print_uint64_t(obj.pDrmFormatModifiers[i], "", isCommaNeeded);
32899        }
32900        PRINT_SPACE
32901        _OUT << "]" << "" << std::endl;
32902      } else {
32903        _OUT << "\"NULL\"" << "" << std::endl;
32904      }
32905 
32906      INDENT(-4);
32907      PRINT_SPACE
32908      if (commaNeeded)
32909          _OUT << "}," << std::endl;
32910      else
32911          _OUT << "}" << std::endl;
32912 }
print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmFormatModifierListCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)32913 static void print_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmFormatModifierListCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
32914      PRINT_SPACE
32915      _OUT << "{" << std::endl;
32916      INDENT(4);
32917 
32918      print_VkStructureType(obj->sType, "sType", 1);
32919 
32920       if (obj->pNext) {
32921          dumpPNextChain(obj->pNext);
32922       } else {
32923          PRINT_SPACE
32924          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32925      }
32926 
32927      print_uint32_t(obj->drmFormatModifierCount, "drmFormatModifierCount", 1);
32928 
32929      PRINT_SPACE
32930      _OUT << "\"pDrmFormatModifiers\":" << std::endl;
32931      PRINT_SPACE
32932      if (obj->pDrmFormatModifiers) {
32933        _OUT << "[" << std::endl;
32934        for (unsigned int i = 0; i < obj->drmFormatModifierCount; i++) {
32935            bool isCommaNeeded = (i+1) != obj->drmFormatModifierCount;
32936            print_uint64_t(obj->pDrmFormatModifiers[i], "", isCommaNeeded);
32937        }
32938        PRINT_SPACE
32939        _OUT << "]" << "" << std::endl;
32940      } else {
32941        _OUT << "\"NULL\"" << "" << std::endl;
32942      }
32943 
32944      INDENT(-4);
32945      PRINT_SPACE
32946      if (commaNeeded)
32947          _OUT << "}," << std::endl;
32948      else
32949          _OUT << "}" << std::endl;
32950 }
32951 
print_VkImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormatModifierExplicitCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)32952 static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(VkImageDrmFormatModifierExplicitCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
32953      PRINT_SPACE
32954      _OUT << "{" << std::endl;
32955      INDENT(4);
32956 
32957      print_VkStructureType(obj.sType, "sType", 1);
32958 
32959       if (obj.pNext) {
32960          dumpPNextChain(obj.pNext);
32961       } else {
32962          PRINT_SPACE
32963          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
32964      }
32965 
32966      print_uint64_t(obj.drmFormatModifier, "drmFormatModifier", 1);
32967 
32968      print_uint32_t(obj.drmFormatModifierPlaneCount, "drmFormatModifierPlaneCount", 1);
32969 
32970      PRINT_SPACE
32971      _OUT << "\"pPlaneLayouts\": " << std::endl;
32972      if (obj.pPlaneLayouts) {
32973          PRINT_SPACE
32974          _OUT << "[" << std::endl;
32975          for (unsigned int i = 0; i < obj.drmFormatModifierPlaneCount; i++) {
32976            if (i+1 == obj.drmFormatModifierPlaneCount)
32977                print_VkSubresourceLayout(obj.pPlaneLayouts[i], "pPlaneLayouts", 0);
32978            else
32979                print_VkSubresourceLayout(obj.pPlaneLayouts[i], "pPlaneLayouts", 1);
32980          }
32981          PRINT_SPACE
32982          _OUT << "]" << std::endl;
32983     }
32984      else
32985      {
32986          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
32987      }
32988 
32989      INDENT(-4);
32990      PRINT_SPACE
32991      if (commaNeeded)
32992          _OUT << "}," << std::endl;
32993      else
32994          _OUT << "}" << std::endl;
32995 }
print_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrmFormatModifierExplicitCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)32996 static void print_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrmFormatModifierExplicitCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
32997      PRINT_SPACE
32998      _OUT << "{" << std::endl;
32999      INDENT(4);
33000 
33001      print_VkStructureType(obj->sType, "sType", 1);
33002 
33003       if (obj->pNext) {
33004          dumpPNextChain(obj->pNext);
33005       } else {
33006          PRINT_SPACE
33007          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33008      }
33009 
33010      print_uint64_t(obj->drmFormatModifier, "drmFormatModifier", 1);
33011 
33012      print_uint32_t(obj->drmFormatModifierPlaneCount, "drmFormatModifierPlaneCount", 1);
33013 
33014      PRINT_SPACE
33015      _OUT << "\"pPlaneLayouts\": " << std::endl;
33016      if (obj->pPlaneLayouts) {
33017          PRINT_SPACE
33018          _OUT << "[" << std::endl;
33019          for (unsigned int i = 0; i < obj->drmFormatModifierPlaneCount; i++) {
33020            if (i+1 == obj->drmFormatModifierPlaneCount)
33021                print_VkSubresourceLayout(obj->pPlaneLayouts[i], "pPlaneLayouts", 0);
33022            else
33023                print_VkSubresourceLayout(obj->pPlaneLayouts[i], "pPlaneLayouts", 1);
33024          }
33025          PRINT_SPACE
33026          _OUT << "]" << std::endl;
33027     }
33028      else
33029      {
33030          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
33031      }
33032 
33033      INDENT(-4);
33034      PRINT_SPACE
33035      if (commaNeeded)
33036          _OUT << "}," << std::endl;
33037      else
33038          _OUT << "}" << std::endl;
33039 }
33040 
print_VkImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifierPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33041 static void print_VkImageDrmFormatModifierPropertiesEXT(VkImageDrmFormatModifierPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33042      PRINT_SPACE
33043      _OUT << "{" << std::endl;
33044      INDENT(4);
33045 
33046      print_VkStructureType(obj.sType, "sType", 1);
33047 
33048       if (obj.pNext) {
33049          dumpPNextChain(obj.pNext);
33050       } else {
33051          PRINT_SPACE
33052          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33053      }
33054 
33055      print_uint64_t(obj.drmFormatModifier, "drmFormatModifier", 0);
33056 
33057      INDENT(-4);
33058      PRINT_SPACE
33059      if (commaNeeded)
33060          _OUT << "}," << std::endl;
33061      else
33062          _OUT << "}" << std::endl;
33063 }
print_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatModifierPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33064 static void print_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatModifierPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33065      PRINT_SPACE
33066      _OUT << "{" << std::endl;
33067      INDENT(4);
33068 
33069      print_VkStructureType(obj->sType, "sType", 1);
33070 
33071       if (obj->pNext) {
33072          dumpPNextChain(obj->pNext);
33073       } else {
33074          PRINT_SPACE
33075          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33076      }
33077 
33078      print_uint64_t(obj->drmFormatModifier, "drmFormatModifier", 0);
33079 
33080      INDENT(-4);
33081      PRINT_SPACE
33082      if (commaNeeded)
33083          _OUT << "}," << std::endl;
33084      else
33085          _OUT << "}" << std::endl;
33086 }
33087 
print_VkDrmFormatModifierProperties2EXT(VkDrmFormatModifierProperties2EXT obj,const std::string & s,bool commaNeeded=true)33088 static void print_VkDrmFormatModifierProperties2EXT(VkDrmFormatModifierProperties2EXT obj, const std::string& s, bool commaNeeded=true) {
33089      PRINT_SPACE
33090      _OUT << "{" << std::endl;
33091      INDENT(4);
33092 
33093      print_uint64_t(obj.drmFormatModifier, "drmFormatModifier", 1);
33094 
33095      print_uint32_t(obj.drmFormatModifierPlaneCount, "drmFormatModifierPlaneCount", 1);
33096 
33097      print_VkFormatFeatureFlags2KHR(obj.drmFormatModifierTilingFeatures, "drmFormatModifierTilingFeatures", 0);
33098 
33099      INDENT(-4);
33100      PRINT_SPACE
33101      if (commaNeeded)
33102          _OUT << "}," << std::endl;
33103      else
33104          _OUT << "}" << std::endl;
33105 }
print_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT * obj,const std::string & s,bool commaNeeded=true)33106 static void print_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT * obj, const std::string& s, bool commaNeeded=true) {
33107      PRINT_SPACE
33108      _OUT << "{" << std::endl;
33109      INDENT(4);
33110 
33111      print_uint64_t(obj->drmFormatModifier, "drmFormatModifier", 1);
33112 
33113      print_uint32_t(obj->drmFormatModifierPlaneCount, "drmFormatModifierPlaneCount", 1);
33114 
33115      print_VkFormatFeatureFlags2KHR(obj->drmFormatModifierTilingFeatures, "drmFormatModifierTilingFeatures", 0);
33116 
33117      INDENT(-4);
33118      PRINT_SPACE
33119      if (commaNeeded)
33120          _OUT << "}," << std::endl;
33121      else
33122          _OUT << "}" << std::endl;
33123 }
33124 
print_VkDrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPropertiesList2EXT obj,const std::string & s,bool commaNeeded=true)33125 static void print_VkDrmFormatModifierPropertiesList2EXT(VkDrmFormatModifierPropertiesList2EXT obj, const std::string& s, bool commaNeeded=true) {
33126      PRINT_SPACE
33127      _OUT << "{" << std::endl;
33128      INDENT(4);
33129 
33130      print_VkStructureType(obj.sType, "sType", 1);
33131 
33132       if (obj.pNext) {
33133          dumpPNextChain(obj.pNext);
33134       } else {
33135          PRINT_SPACE
33136          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33137      }
33138 
33139      print_uint32_t(obj.drmFormatModifierCount, "drmFormatModifierCount", 1);
33140 
33141      PRINT_SPACE
33142      _OUT << "\"pDrmFormatModifierProperties\": " << std::endl;
33143      if (obj.pDrmFormatModifierProperties) {
33144          PRINT_SPACE
33145          _OUT << "[" << std::endl;
33146          for (unsigned int i = 0; i < obj.drmFormatModifierCount; i++) {
33147            if (i+1 == obj.drmFormatModifierCount)
33148                print_VkDrmFormatModifierProperties2EXT(obj.pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 0);
33149            else
33150                print_VkDrmFormatModifierProperties2EXT(obj.pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 1);
33151          }
33152          PRINT_SPACE
33153          _OUT << "]" << std::endl;
33154     }
33155      else
33156      {
33157          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
33158      }
33159 
33160      INDENT(-4);
33161      PRINT_SPACE
33162      if (commaNeeded)
33163          _OUT << "}," << std::endl;
33164      else
33165          _OUT << "}" << std::endl;
33166 }
print_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifierPropertiesList2EXT * obj,const std::string & s,bool commaNeeded=true)33167 static void print_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifierPropertiesList2EXT * obj, const std::string& s, bool commaNeeded=true) {
33168      PRINT_SPACE
33169      _OUT << "{" << std::endl;
33170      INDENT(4);
33171 
33172      print_VkStructureType(obj->sType, "sType", 1);
33173 
33174       if (obj->pNext) {
33175          dumpPNextChain(obj->pNext);
33176       } else {
33177          PRINT_SPACE
33178          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33179      }
33180 
33181      print_uint32_t(obj->drmFormatModifierCount, "drmFormatModifierCount", 1);
33182 
33183      PRINT_SPACE
33184      _OUT << "\"pDrmFormatModifierProperties\": " << std::endl;
33185      if (obj->pDrmFormatModifierProperties) {
33186          PRINT_SPACE
33187          _OUT << "[" << std::endl;
33188          for (unsigned int i = 0; i < obj->drmFormatModifierCount; i++) {
33189            if (i+1 == obj->drmFormatModifierCount)
33190                print_VkDrmFormatModifierProperties2EXT(obj->pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 0);
33191            else
33192                print_VkDrmFormatModifierProperties2EXT(obj->pDrmFormatModifierProperties[i], "pDrmFormatModifierProperties", 1);
33193          }
33194          PRINT_SPACE
33195          _OUT << "]" << std::endl;
33196     }
33197      else
33198      {
33199          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
33200      }
33201 
33202      INDENT(-4);
33203      PRINT_SPACE
33204      if (commaNeeded)
33205          _OUT << "}," << std::endl;
33206      else
33207          _OUT << "}" << std::endl;
33208 }
33209 
print_VkPhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceImageViewImageFormatInfoEXT obj,const std::string & s,bool commaNeeded=true)33210 static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(VkPhysicalDeviceImageViewImageFormatInfoEXT obj, const std::string& s, bool commaNeeded=true) {
33211      PRINT_SPACE
33212      _OUT << "{" << std::endl;
33213      INDENT(4);
33214 
33215      print_VkStructureType(obj.sType, "sType", 1);
33216 
33217       if (obj.pNext) {
33218          dumpPNextChain(obj.pNext);
33219       } else {
33220          PRINT_SPACE
33221          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33222      }
33223 
33224      print_VkImageViewType(obj.imageViewType, "imageViewType", 0);
33225 
33226      INDENT(-4);
33227      PRINT_SPACE
33228      if (commaNeeded)
33229          _OUT << "}," << std::endl;
33230      else
33231          _OUT << "}" << std::endl;
33232 }
print_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDeviceImageViewImageFormatInfoEXT * obj,const std::string & s,bool commaNeeded=true)33233 static void print_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDeviceImageViewImageFormatInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
33234      PRINT_SPACE
33235      _OUT << "{" << std::endl;
33236      INDENT(4);
33237 
33238      print_VkStructureType(obj->sType, "sType", 1);
33239 
33240       if (obj->pNext) {
33241          dumpPNextChain(obj->pNext);
33242       } else {
33243          PRINT_SPACE
33244          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33245      }
33246 
33247      print_VkImageViewType(obj->imageViewType, "imageViewType", 0);
33248 
33249      INDENT(-4);
33250      PRINT_SPACE
33251      if (commaNeeded)
33252          _OUT << "}," << std::endl;
33253      else
33254          _OUT << "}" << std::endl;
33255 }
33256 
print_VkFilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicImageViewImageFormatPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33257 static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(VkFilterCubicImageViewImageFormatPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33258      PRINT_SPACE
33259      _OUT << "{" << std::endl;
33260      INDENT(4);
33261 
33262      print_VkStructureType(obj.sType, "sType", 1);
33263 
33264       if (obj.pNext) {
33265          dumpPNextChain(obj.pNext);
33266       } else {
33267          PRINT_SPACE
33268          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33269      }
33270 
33271      print_VkBool32(obj.filterCubic, "filterCubic", 1);
33272 
33273      print_VkBool32(obj.filterCubicMinmax, "filterCubicMinmax", 0);
33274 
33275      INDENT(-4);
33276      PRINT_SPACE
33277      if (commaNeeded)
33278          _OUT << "}," << std::endl;
33279      else
33280          _OUT << "}" << std::endl;
33281 }
print_VkFilterCubicImageViewImageFormatPropertiesEXT(const VkFilterCubicImageViewImageFormatPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33282 static void print_VkFilterCubicImageViewImageFormatPropertiesEXT(const VkFilterCubicImageViewImageFormatPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33283      PRINT_SPACE
33284      _OUT << "{" << std::endl;
33285      INDENT(4);
33286 
33287      print_VkStructureType(obj->sType, "sType", 1);
33288 
33289       if (obj->pNext) {
33290          dumpPNextChain(obj->pNext);
33291       } else {
33292          PRINT_SPACE
33293          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33294      }
33295 
33296      print_VkBool32(obj->filterCubic, "filterCubic", 1);
33297 
33298      print_VkBool32(obj->filterCubicMinmax, "filterCubicMinmax", 0);
33299 
33300      INDENT(-4);
33301      PRINT_SPACE
33302      if (commaNeeded)
33303          _OUT << "}," << std::endl;
33304      else
33305          _OUT << "}" << std::endl;
33306 }
33307 
33308 static std::map<deUint64, std::string> VkQueueGlobalPriorityEXT_map = {
33309     std::make_pair(128, "VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT"),
33310     std::make_pair(256, "VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT"),
33311     std::make_pair(512, "VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT"),
33312     std::make_pair(1024, "VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT"),
33313 };
print_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT obj,const std::string & str,bool commaNeeded=true)33314 static void print_VkQueueGlobalPriorityEXT(VkQueueGlobalPriorityEXT obj, const std::string& str, bool commaNeeded=true) {
33315      PRINT_SPACE
33316      if (str != "") _OUT << "\"" << str << "\"" << " : ";
33317      if (commaNeeded)
33318          _OUT << "\"" <<  VkQueueGlobalPriorityEXT_map[obj] << "\"," << std::endl;
33319      else
33320          _OUT << "\"" << VkQueueGlobalPriorityEXT_map[obj] << "\"" << std::endl;
33321 }
print_VkQueueGlobalPriorityEXT(const VkQueueGlobalPriorityEXT * obj,const std::string & str,bool commaNeeded=true)33322 static void print_VkQueueGlobalPriorityEXT(const VkQueueGlobalPriorityEXT * obj, const std::string& str, bool commaNeeded=true) {
33323      PRINT_SPACE
33324      if (str != "") _OUT << "\"" << str << "\"" << " : ";
33325      if (commaNeeded)
33326          _OUT << "\"" <<  VkQueueGlobalPriorityEXT_map[*obj] << "\"," << std::endl;
33327      else
33328          _OUT << "\"" << VkQueueGlobalPriorityEXT_map[*obj] << "\"" << std::endl;
33329 }
33330 
print_VkDeviceQueueGlobalPriorityCreateInfoEXT(VkDeviceQueueGlobalPriorityCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)33331 static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(VkDeviceQueueGlobalPriorityCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
33332      PRINT_SPACE
33333      _OUT << "{" << std::endl;
33334      INDENT(4);
33335 
33336      print_VkStructureType(obj.sType, "sType", 1);
33337 
33338       if (obj.pNext) {
33339          dumpPNextChain(obj.pNext);
33340       } else {
33341          PRINT_SPACE
33342          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33343      }
33344 
33345      print_VkQueueGlobalPriorityEXT(obj.globalPriority, "globalPriority", 0);
33346 
33347      INDENT(-4);
33348      PRINT_SPACE
33349      if (commaNeeded)
33350          _OUT << "}," << std::endl;
33351      else
33352          _OUT << "}" << std::endl;
33353 }
print_VkDeviceQueueGlobalPriorityCreateInfoEXT(const VkDeviceQueueGlobalPriorityCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)33354 static void print_VkDeviceQueueGlobalPriorityCreateInfoEXT(const VkDeviceQueueGlobalPriorityCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
33355      PRINT_SPACE
33356      _OUT << "{" << std::endl;
33357      INDENT(4);
33358 
33359      print_VkStructureType(obj->sType, "sType", 1);
33360 
33361       if (obj->pNext) {
33362          dumpPNextChain(obj->pNext);
33363       } else {
33364          PRINT_SPACE
33365          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33366      }
33367 
33368      print_VkQueueGlobalPriorityEXT(obj->globalPriority, "globalPriority", 0);
33369 
33370      INDENT(-4);
33371      PRINT_SPACE
33372      if (commaNeeded)
33373          _OUT << "}," << std::endl;
33374      else
33375          _OUT << "}" << std::endl;
33376 }
33377 
print_VkImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfoEXT obj,const std::string & s,bool commaNeeded=true)33378 static void print_VkImportMemoryHostPointerInfoEXT(VkImportMemoryHostPointerInfoEXT obj, const std::string& s, bool commaNeeded=true) {
33379      PRINT_SPACE
33380      _OUT << "{" << std::endl;
33381      INDENT(4);
33382 
33383      print_VkStructureType(obj.sType, "sType", 1);
33384 
33385       if (obj.pNext) {
33386          dumpPNextChain(obj.pNext);
33387       } else {
33388          PRINT_SPACE
33389          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33390      }
33391 
33392      print_VkExternalMemoryHandleTypeFlagBits(obj.handleType, "handleType", 1);
33393 
33394      /** Note: Ignoring void* data. **/
33395 
33396      INDENT(-4);
33397      PRINT_SPACE
33398      if (commaNeeded)
33399          _OUT << "}," << std::endl;
33400      else
33401          _OUT << "}" << std::endl;
33402 }
print_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT * obj,const std::string & s,bool commaNeeded=true)33403 static void print_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
33404      PRINT_SPACE
33405      _OUT << "{" << std::endl;
33406      INDENT(4);
33407 
33408      print_VkStructureType(obj->sType, "sType", 1);
33409 
33410       if (obj->pNext) {
33411          dumpPNextChain(obj->pNext);
33412       } else {
33413          PRINT_SPACE
33414          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33415      }
33416 
33417      print_VkExternalMemoryHandleTypeFlagBits(obj->handleType, "handleType", 1);
33418 
33419      /** Note: Ignoring void* data. **/
33420 
33421      INDENT(-4);
33422      PRINT_SPACE
33423      if (commaNeeded)
33424          _OUT << "}," << std::endl;
33425      else
33426          _OUT << "}" << std::endl;
33427 }
33428 
print_VkMemoryHostPointerPropertiesEXT(VkMemoryHostPointerPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33429 static void print_VkMemoryHostPointerPropertiesEXT(VkMemoryHostPointerPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33430      PRINT_SPACE
33431      _OUT << "{" << std::endl;
33432      INDENT(4);
33433 
33434      print_VkStructureType(obj.sType, "sType", 1);
33435 
33436       if (obj.pNext) {
33437          dumpPNextChain(obj.pNext);
33438       } else {
33439          PRINT_SPACE
33440          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33441      }
33442 
33443      print_uint32_t(obj.memoryTypeBits, "memoryTypeBits", 0);
33444 
33445      INDENT(-4);
33446      PRINT_SPACE
33447      if (commaNeeded)
33448          _OUT << "}," << std::endl;
33449      else
33450          _OUT << "}" << std::endl;
33451 }
print_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33452 static void print_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33453      PRINT_SPACE
33454      _OUT << "{" << std::endl;
33455      INDENT(4);
33456 
33457      print_VkStructureType(obj->sType, "sType", 1);
33458 
33459       if (obj->pNext) {
33460          dumpPNextChain(obj->pNext);
33461       } else {
33462          PRINT_SPACE
33463          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33464      }
33465 
33466      print_uint32_t(obj->memoryTypeBits, "memoryTypeBits", 0);
33467 
33468      INDENT(-4);
33469      PRINT_SPACE
33470      if (commaNeeded)
33471          _OUT << "}," << std::endl;
33472      else
33473          _OUT << "}" << std::endl;
33474 }
33475 
print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDeviceExternalMemoryHostPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33476 static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(VkPhysicalDeviceExternalMemoryHostPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33477      PRINT_SPACE
33478      _OUT << "{" << std::endl;
33479      INDENT(4);
33480 
33481      print_VkStructureType(obj.sType, "sType", 1);
33482 
33483       if (obj.pNext) {
33484          dumpPNextChain(obj.pNext);
33485       } else {
33486          PRINT_SPACE
33487          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33488      }
33489 
33490      print_VkDeviceSize(obj.minImportedHostPointerAlignment, "minImportedHostPointerAlignment", 0);
33491 
33492      INDENT(-4);
33493      PRINT_SPACE
33494      if (commaNeeded)
33495          _OUT << "}," << std::endl;
33496      else
33497          _OUT << "}" << std::endl;
33498 }
print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33499 static void print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33500      PRINT_SPACE
33501      _OUT << "{" << std::endl;
33502      INDENT(4);
33503 
33504      print_VkStructureType(obj->sType, "sType", 1);
33505 
33506       if (obj->pNext) {
33507          dumpPNextChain(obj->pNext);
33508       } else {
33509          PRINT_SPACE
33510          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33511      }
33512 
33513      print_VkDeviceSize(obj->minImportedHostPointerAlignment, "minImportedHostPointerAlignment", 0);
33514 
33515      INDENT(-4);
33516      PRINT_SPACE
33517      if (commaNeeded)
33518          _OUT << "}," << std::endl;
33519      else
33520          _OUT << "}" << std::endl;
33521 }
33522 
33523 static std::map<deUint64, std::string> VkTimeDomainEXT_map = {
33524     std::make_pair(0, "VK_TIME_DOMAIN_DEVICE_EXT"),
33525     std::make_pair(1, "VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT"),
33526     std::make_pair(2, "VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT"),
33527     std::make_pair(3, "VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT"),
33528 };
print_VkTimeDomainEXT(VkTimeDomainEXT obj,const std::string & str,bool commaNeeded=true)33529 static void print_VkTimeDomainEXT(VkTimeDomainEXT obj, const std::string& str, bool commaNeeded=true) {
33530      PRINT_SPACE
33531      if (str != "") _OUT << "\"" << str << "\"" << " : ";
33532      if (commaNeeded)
33533          _OUT << "\"" <<  VkTimeDomainEXT_map[obj] << "\"," << std::endl;
33534      else
33535          _OUT << "\"" << VkTimeDomainEXT_map[obj] << "\"" << std::endl;
33536 }
print_VkTimeDomainEXT(const VkTimeDomainEXT * obj,const std::string & str,bool commaNeeded=true)33537 static void print_VkTimeDomainEXT(const VkTimeDomainEXT * obj, const std::string& str, bool commaNeeded=true) {
33538      PRINT_SPACE
33539      if (str != "") _OUT << "\"" << str << "\"" << " : ";
33540      if (commaNeeded)
33541          _OUT << "\"" <<  VkTimeDomainEXT_map[*obj] << "\"," << std::endl;
33542      else
33543          _OUT << "\"" << VkTimeDomainEXT_map[*obj] << "\"" << std::endl;
33544 }
33545 
print_VkCalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT obj,const std::string & s,bool commaNeeded=true)33546 static void print_VkCalibratedTimestampInfoEXT(VkCalibratedTimestampInfoEXT obj, const std::string& s, bool commaNeeded=true) {
33547      PRINT_SPACE
33548      _OUT << "{" << std::endl;
33549      INDENT(4);
33550 
33551      print_VkStructureType(obj.sType, "sType", 1);
33552 
33553       if (obj.pNext) {
33554          dumpPNextChain(obj.pNext);
33555       } else {
33556          PRINT_SPACE
33557          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33558      }
33559 
33560      print_VkTimeDomainEXT(obj.timeDomain, "timeDomain", 0);
33561 
33562      INDENT(-4);
33563      PRINT_SPACE
33564      if (commaNeeded)
33565          _OUT << "}," << std::endl;
33566      else
33567          _OUT << "}" << std::endl;
33568 }
print_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT * obj,const std::string & s,bool commaNeeded=true)33569 static void print_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
33570      PRINT_SPACE
33571      _OUT << "{" << std::endl;
33572      INDENT(4);
33573 
33574      print_VkStructureType(obj->sType, "sType", 1);
33575 
33576       if (obj->pNext) {
33577          dumpPNextChain(obj->pNext);
33578       } else {
33579          PRINT_SPACE
33580          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33581      }
33582 
33583      print_VkTimeDomainEXT(obj->timeDomain, "timeDomain", 0);
33584 
33585      INDENT(-4);
33586      PRINT_SPACE
33587      if (commaNeeded)
33588          _OUT << "}," << std::endl;
33589      else
33590          _OUT << "}" << std::endl;
33591 }
33592 
print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33593 static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33594      PRINT_SPACE
33595      _OUT << "{" << std::endl;
33596      INDENT(4);
33597 
33598      print_VkStructureType(obj.sType, "sType", 1);
33599 
33600       if (obj.pNext) {
33601          dumpPNextChain(obj.pNext);
33602       } else {
33603          PRINT_SPACE
33604          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33605      }
33606 
33607      print_uint32_t(obj.maxVertexAttribDivisor, "maxVertexAttribDivisor", 0);
33608 
33609      INDENT(-4);
33610      PRINT_SPACE
33611      if (commaNeeded)
33612          _OUT << "}," << std::endl;
33613      else
33614          _OUT << "}" << std::endl;
33615 }
print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33616 static void print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33617      PRINT_SPACE
33618      _OUT << "{" << std::endl;
33619      INDENT(4);
33620 
33621      print_VkStructureType(obj->sType, "sType", 1);
33622 
33623       if (obj->pNext) {
33624          dumpPNextChain(obj->pNext);
33625       } else {
33626          PRINT_SPACE
33627          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33628      }
33629 
33630      print_uint32_t(obj->maxVertexAttribDivisor, "maxVertexAttribDivisor", 0);
33631 
33632      INDENT(-4);
33633      PRINT_SPACE
33634      if (commaNeeded)
33635          _OUT << "}," << std::endl;
33636      else
33637          _OUT << "}" << std::endl;
33638 }
33639 
print_VkVertexInputBindingDivisorDescriptionEXT(VkVertexInputBindingDivisorDescriptionEXT obj,const std::string & s,bool commaNeeded=true)33640 static void print_VkVertexInputBindingDivisorDescriptionEXT(VkVertexInputBindingDivisorDescriptionEXT obj, const std::string& s, bool commaNeeded=true) {
33641      PRINT_SPACE
33642      _OUT << "{" << std::endl;
33643      INDENT(4);
33644 
33645      print_uint32_t(obj.binding, "binding", 1);
33646 
33647      print_uint32_t(obj.divisor, "divisor", 0);
33648 
33649      INDENT(-4);
33650      PRINT_SPACE
33651      if (commaNeeded)
33652          _OUT << "}," << std::endl;
33653      else
33654          _OUT << "}" << std::endl;
33655 }
print_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputBindingDivisorDescriptionEXT * obj,const std::string & s,bool commaNeeded=true)33656 static void print_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputBindingDivisorDescriptionEXT * obj, const std::string& s, bool commaNeeded=true) {
33657      PRINT_SPACE
33658      _OUT << "{" << std::endl;
33659      INDENT(4);
33660 
33661      print_uint32_t(obj->binding, "binding", 1);
33662 
33663      print_uint32_t(obj->divisor, "divisor", 0);
33664 
33665      INDENT(-4);
33666      PRINT_SPACE
33667      if (commaNeeded)
33668          _OUT << "}," << std::endl;
33669      else
33670          _OUT << "}" << std::endl;
33671 }
33672 
print_VkPipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVertexInputDivisorStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)33673 static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(VkPipelineVertexInputDivisorStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
33674      PRINT_SPACE
33675      _OUT << "{" << std::endl;
33676      INDENT(4);
33677 
33678      print_VkStructureType(obj.sType, "sType", 1);
33679 
33680       if (obj.pNext) {
33681          dumpPNextChain(obj.pNext);
33682       } else {
33683          PRINT_SPACE
33684          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33685      }
33686 
33687      print_uint32_t(obj.vertexBindingDivisorCount, "vertexBindingDivisorCount", 1);
33688 
33689      PRINT_SPACE
33690      _OUT << "\"pVertexBindingDivisors\": " << std::endl;
33691      if (obj.pVertexBindingDivisors) {
33692          PRINT_SPACE
33693          _OUT << "[" << std::endl;
33694          for (unsigned int i = 0; i < obj.vertexBindingDivisorCount; i++) {
33695            if (i+1 == obj.vertexBindingDivisorCount)
33696                print_VkVertexInputBindingDivisorDescriptionEXT(obj.pVertexBindingDivisors[i], "pVertexBindingDivisors", 0);
33697            else
33698                print_VkVertexInputBindingDivisorDescriptionEXT(obj.pVertexBindingDivisors[i], "pVertexBindingDivisors", 1);
33699          }
33700          PRINT_SPACE
33701          _OUT << "]" << std::endl;
33702     }
33703      else
33704      {
33705          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
33706      }
33707 
33708      INDENT(-4);
33709      PRINT_SPACE
33710      if (commaNeeded)
33711          _OUT << "}," << std::endl;
33712      else
33713          _OUT << "}" << std::endl;
33714 }
print_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelineVertexInputDivisorStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)33715 static void print_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelineVertexInputDivisorStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
33716      PRINT_SPACE
33717      _OUT << "{" << std::endl;
33718      INDENT(4);
33719 
33720      print_VkStructureType(obj->sType, "sType", 1);
33721 
33722       if (obj->pNext) {
33723          dumpPNextChain(obj->pNext);
33724       } else {
33725          PRINT_SPACE
33726          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33727      }
33728 
33729      print_uint32_t(obj->vertexBindingDivisorCount, "vertexBindingDivisorCount", 1);
33730 
33731      PRINT_SPACE
33732      _OUT << "\"pVertexBindingDivisors\": " << std::endl;
33733      if (obj->pVertexBindingDivisors) {
33734          PRINT_SPACE
33735          _OUT << "[" << std::endl;
33736          for (unsigned int i = 0; i < obj->vertexBindingDivisorCount; i++) {
33737            if (i+1 == obj->vertexBindingDivisorCount)
33738                print_VkVertexInputBindingDivisorDescriptionEXT(obj->pVertexBindingDivisors[i], "pVertexBindingDivisors", 0);
33739            else
33740                print_VkVertexInputBindingDivisorDescriptionEXT(obj->pVertexBindingDivisors[i], "pVertexBindingDivisors", 1);
33741          }
33742          PRINT_SPACE
33743          _OUT << "]" << std::endl;
33744     }
33745      else
33746      {
33747          PRINT_SPACE _OUT << "\"NULL\""<< ""<< std::endl;
33748      }
33749 
33750      INDENT(-4);
33751      PRINT_SPACE
33752      if (commaNeeded)
33753          _OUT << "}," << std::endl;
33754      else
33755          _OUT << "}" << std::endl;
33756 }
33757 
print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT obj,const std::string & s,bool commaNeeded=true)33758 static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
33759      PRINT_SPACE
33760      _OUT << "{" << std::endl;
33761      INDENT(4);
33762 
33763      print_VkStructureType(obj.sType, "sType", 1);
33764 
33765       if (obj.pNext) {
33766          dumpPNextChain(obj.pNext);
33767       } else {
33768          PRINT_SPACE
33769          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33770      }
33771 
33772      print_VkBool32(obj.vertexAttributeInstanceRateDivisor, "vertexAttributeInstanceRateDivisor", 1);
33773 
33774      print_VkBool32(obj.vertexAttributeInstanceRateZeroDivisor, "vertexAttributeInstanceRateZeroDivisor", 0);
33775 
33776      INDENT(-4);
33777      PRINT_SPACE
33778      if (commaNeeded)
33779          _OUT << "}," << std::endl;
33780      else
33781          _OUT << "}" << std::endl;
33782 }
print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)33783 static void print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
33784      PRINT_SPACE
33785      _OUT << "{" << std::endl;
33786      INDENT(4);
33787 
33788      print_VkStructureType(obj->sType, "sType", 1);
33789 
33790       if (obj->pNext) {
33791          dumpPNextChain(obj->pNext);
33792       } else {
33793          PRINT_SPACE
33794          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33795      }
33796 
33797      print_VkBool32(obj->vertexAttributeInstanceRateDivisor, "vertexAttributeInstanceRateDivisor", 1);
33798 
33799      print_VkBool32(obj->vertexAttributeInstanceRateZeroDivisor, "vertexAttributeInstanceRateZeroDivisor", 0);
33800 
33801      INDENT(-4);
33802      PRINT_SPACE
33803      if (commaNeeded)
33804          _OUT << "}," << std::endl;
33805      else
33806          _OUT << "}" << std::endl;
33807 }
33808 
print_VkPhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBusInfoPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33809 static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(VkPhysicalDevicePCIBusInfoPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33810      PRINT_SPACE
33811      _OUT << "{" << std::endl;
33812      INDENT(4);
33813 
33814      print_VkStructureType(obj.sType, "sType", 1);
33815 
33816       if (obj.pNext) {
33817          dumpPNextChain(obj.pNext);
33818       } else {
33819          PRINT_SPACE
33820          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33821      }
33822 
33823      print_uint32_t(obj.pciDomain, "pciDomain", 1);
33824 
33825      print_uint32_t(obj.pciBus, "pciBus", 1);
33826 
33827      print_uint32_t(obj.pciDevice, "pciDevice", 1);
33828 
33829      print_uint32_t(obj.pciFunction, "pciFunction", 0);
33830 
33831      INDENT(-4);
33832      PRINT_SPACE
33833      if (commaNeeded)
33834          _OUT << "}," << std::endl;
33835      else
33836          _OUT << "}" << std::endl;
33837 }
print_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevicePCIBusInfoPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33838 static void print_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevicePCIBusInfoPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33839      PRINT_SPACE
33840      _OUT << "{" << std::endl;
33841      INDENT(4);
33842 
33843      print_VkStructureType(obj->sType, "sType", 1);
33844 
33845       if (obj->pNext) {
33846          dumpPNextChain(obj->pNext);
33847       } else {
33848          PRINT_SPACE
33849          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33850      }
33851 
33852      print_uint32_t(obj->pciDomain, "pciDomain", 1);
33853 
33854      print_uint32_t(obj->pciBus, "pciBus", 1);
33855 
33856      print_uint32_t(obj->pciDevice, "pciDevice", 1);
33857 
33858      print_uint32_t(obj->pciFunction, "pciFunction", 0);
33859 
33860      INDENT(-4);
33861      PRINT_SPACE
33862      if (commaNeeded)
33863          _OUT << "}," << std::endl;
33864      else
33865          _OUT << "}" << std::endl;
33866 }
33867 
print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(VkPhysicalDeviceSubgroupSizeControlFeaturesEXT obj,const std::string & s,bool commaNeeded=true)33868 static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(VkPhysicalDeviceSubgroupSizeControlFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
33869      PRINT_SPACE
33870      _OUT << "{" << std::endl;
33871      INDENT(4);
33872 
33873      print_VkStructureType(obj.sType, "sType", 1);
33874 
33875       if (obj.pNext) {
33876          dumpPNextChain(obj.pNext);
33877       } else {
33878          PRINT_SPACE
33879          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33880      }
33881 
33882      print_VkBool32(obj.subgroupSizeControl, "subgroupSizeControl", 1);
33883 
33884      print_VkBool32(obj.computeFullSubgroups, "computeFullSubgroups", 0);
33885 
33886      INDENT(-4);
33887      PRINT_SPACE
33888      if (commaNeeded)
33889          _OUT << "}," << std::endl;
33890      else
33891          _OUT << "}" << std::endl;
33892 }
print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)33893 static void print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT(const VkPhysicalDeviceSubgroupSizeControlFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
33894      PRINT_SPACE
33895      _OUT << "{" << std::endl;
33896      INDENT(4);
33897 
33898      print_VkStructureType(obj->sType, "sType", 1);
33899 
33900       if (obj->pNext) {
33901          dumpPNextChain(obj->pNext);
33902       } else {
33903          PRINT_SPACE
33904          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33905      }
33906 
33907      print_VkBool32(obj->subgroupSizeControl, "subgroupSizeControl", 1);
33908 
33909      print_VkBool32(obj->computeFullSubgroups, "computeFullSubgroups", 0);
33910 
33911      INDENT(-4);
33912      PRINT_SPACE
33913      if (commaNeeded)
33914          _OUT << "}," << std::endl;
33915      else
33916          _OUT << "}" << std::endl;
33917 }
33918 
print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT obj,const std::string & s,bool commaNeeded=true)33919 static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(VkPhysicalDeviceSubgroupSizeControlPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
33920      PRINT_SPACE
33921      _OUT << "{" << std::endl;
33922      INDENT(4);
33923 
33924      print_VkStructureType(obj.sType, "sType", 1);
33925 
33926       if (obj.pNext) {
33927          dumpPNextChain(obj.pNext);
33928       } else {
33929          PRINT_SPACE
33930          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33931      }
33932 
33933      print_uint32_t(obj.minSubgroupSize, "minSubgroupSize", 1);
33934 
33935      print_uint32_t(obj.maxSubgroupSize, "maxSubgroupSize", 1);
33936 
33937      print_uint32_t(obj.maxComputeWorkgroupSubgroups, "maxComputeWorkgroupSubgroups", 1);
33938 
33939      print_VkShaderStageFlags(obj.requiredSubgroupSizeStages, "requiredSubgroupSizeStages", 0);
33940 
33941      INDENT(-4);
33942      PRINT_SPACE
33943      if (commaNeeded)
33944          _OUT << "}," << std::endl;
33945      else
33946          _OUT << "}" << std::endl;
33947 }
print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)33948 static void print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT(const VkPhysicalDeviceSubgroupSizeControlPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
33949      PRINT_SPACE
33950      _OUT << "{" << std::endl;
33951      INDENT(4);
33952 
33953      print_VkStructureType(obj->sType, "sType", 1);
33954 
33955       if (obj->pNext) {
33956          dumpPNextChain(obj->pNext);
33957       } else {
33958          PRINT_SPACE
33959          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33960      }
33961 
33962      print_uint32_t(obj->minSubgroupSize, "minSubgroupSize", 1);
33963 
33964      print_uint32_t(obj->maxSubgroupSize, "maxSubgroupSize", 1);
33965 
33966      print_uint32_t(obj->maxComputeWorkgroupSubgroups, "maxComputeWorkgroupSubgroups", 1);
33967 
33968      print_VkShaderStageFlags(obj->requiredSubgroupSizeStages, "requiredSubgroupSizeStages", 0);
33969 
33970      INDENT(-4);
33971      PRINT_SPACE
33972      if (commaNeeded)
33973          _OUT << "}," << std::endl;
33974      else
33975          _OUT << "}" << std::endl;
33976 }
33977 
print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)33978 static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
33979      PRINT_SPACE
33980      _OUT << "{" << std::endl;
33981      INDENT(4);
33982 
33983      print_VkStructureType(obj.sType, "sType", 1);
33984 
33985       if (obj.pNext) {
33986          dumpPNextChain(obj.pNext);
33987       } else {
33988          PRINT_SPACE
33989          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
33990      }
33991 
33992      print_uint32_t(obj.requiredSubgroupSize, "requiredSubgroupSize", 0);
33993 
33994      INDENT(-4);
33995      PRINT_SPACE
33996      if (commaNeeded)
33997          _OUT << "}," << std::endl;
33998      else
33999          _OUT << "}" << std::endl;
34000 }
print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)34001 static void print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT(const VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
34002      PRINT_SPACE
34003      _OUT << "{" << std::endl;
34004      INDENT(4);
34005 
34006      print_VkStructureType(obj->sType, "sType", 1);
34007 
34008       if (obj->pNext) {
34009          dumpPNextChain(obj->pNext);
34010       } else {
34011          PRINT_SPACE
34012          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34013      }
34014 
34015      print_uint32_t(obj->requiredSubgroupSize, "requiredSubgroupSize", 0);
34016 
34017      INDENT(-4);
34018      PRINT_SPACE
34019      if (commaNeeded)
34020          _OUT << "}," << std::endl;
34021      else
34022          _OUT << "}" << std::endl;
34023 }
34024 
print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT obj,const std::string & s,bool commaNeeded=true)34025 static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34026      PRINT_SPACE
34027      _OUT << "{" << std::endl;
34028      INDENT(4);
34029 
34030      print_VkStructureType(obj.sType, "sType", 1);
34031 
34032       if (obj.pNext) {
34033          dumpPNextChain(obj.pNext);
34034       } else {
34035          PRINT_SPACE
34036          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34037      }
34038 
34039      print_VkBool32(obj.shaderImageInt64Atomics, "shaderImageInt64Atomics", 1);
34040 
34041      print_VkBool32(obj.sparseImageInt64Atomics, "sparseImageInt64Atomics", 0);
34042 
34043      INDENT(-4);
34044      PRINT_SPACE
34045      if (commaNeeded)
34046          _OUT << "}," << std::endl;
34047      else
34048          _OUT << "}" << std::endl;
34049 }
print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34050 static void print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34051      PRINT_SPACE
34052      _OUT << "{" << std::endl;
34053      INDENT(4);
34054 
34055      print_VkStructureType(obj->sType, "sType", 1);
34056 
34057       if (obj->pNext) {
34058          dumpPNextChain(obj->pNext);
34059       } else {
34060          PRINT_SPACE
34061          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34062      }
34063 
34064      print_VkBool32(obj->shaderImageInt64Atomics, "shaderImageInt64Atomics", 1);
34065 
34066      print_VkBool32(obj->sparseImageInt64Atomics, "sparseImageInt64Atomics", 0);
34067 
34068      INDENT(-4);
34069      PRINT_SPACE
34070      if (commaNeeded)
34071          _OUT << "}," << std::endl;
34072      else
34073          _OUT << "}" << std::endl;
34074 }
34075 
print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemoryBudgetPropertiesEXT obj,const std::string & s,bool commaNeeded=true)34076 static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(VkPhysicalDeviceMemoryBudgetPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
34077      PRINT_SPACE
34078      _OUT << "{" << std::endl;
34079      INDENT(4);
34080 
34081      print_VkStructureType(obj.sType, "sType", 1);
34082 
34083       if (obj.pNext) {
34084          dumpPNextChain(obj.pNext);
34085       } else {
34086          PRINT_SPACE
34087          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34088      }
34089 
34090      PRINT_SPACE
34091      _OUT << "\"heapBudget\":" << std::endl;
34092      PRINT_SPACE
34093        _OUT << "[" << std::endl;
34094        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
34095            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
34096            print_VkDeviceSize(obj.heapBudget[i], "", isCommaNeeded);
34097        }
34098        PRINT_SPACE
34099        _OUT << "]" << "," << std::endl;
34100 
34101      PRINT_SPACE
34102      _OUT << "\"heapUsage\":" << std::endl;
34103      PRINT_SPACE
34104        _OUT << "[" << std::endl;
34105        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
34106            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
34107            print_VkDeviceSize(obj.heapUsage[i], "", isCommaNeeded);
34108        }
34109        PRINT_SPACE
34110        _OUT << "]" << "" << std::endl;
34111 
34112      INDENT(-4);
34113      PRINT_SPACE
34114      if (commaNeeded)
34115          _OUT << "}," << std::endl;
34116      else
34117          _OUT << "}" << std::endl;
34118 }
print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDeviceMemoryBudgetPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)34119 static void print_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDeviceMemoryBudgetPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
34120      PRINT_SPACE
34121      _OUT << "{" << std::endl;
34122      INDENT(4);
34123 
34124      print_VkStructureType(obj->sType, "sType", 1);
34125 
34126       if (obj->pNext) {
34127          dumpPNextChain(obj->pNext);
34128       } else {
34129          PRINT_SPACE
34130          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34131      }
34132 
34133      PRINT_SPACE
34134      _OUT << "\"heapBudget\":" << std::endl;
34135      PRINT_SPACE
34136        _OUT << "[" << std::endl;
34137        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
34138            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
34139            print_VkDeviceSize(obj->heapBudget[i], "", isCommaNeeded);
34140        }
34141        PRINT_SPACE
34142        _OUT << "]" << "," << std::endl;
34143 
34144      PRINT_SPACE
34145      _OUT << "\"heapUsage\":" << std::endl;
34146      PRINT_SPACE
34147        _OUT << "[" << std::endl;
34148        for (unsigned int i = 0; i < VK_MAX_MEMORY_HEAPS; i++) {
34149            bool isCommaNeeded = (i+1) != VK_MAX_MEMORY_HEAPS;
34150            print_VkDeviceSize(obj->heapUsage[i], "", isCommaNeeded);
34151        }
34152        PRINT_SPACE
34153        _OUT << "]" << "" << std::endl;
34154 
34155      INDENT(-4);
34156      PRINT_SPACE
34157      if (commaNeeded)
34158          _OUT << "}," << std::endl;
34159      else
34160          _OUT << "}" << std::endl;
34161 }
34162 
34163 static std::map<deUint64, std::string> VkValidationFeatureEnableEXT_map = {
34164     std::make_pair(0, "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT"),
34165     std::make_pair(1, "VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT"),
34166     std::make_pair(2, "VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT"),
34167     std::make_pair(3, "VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT"),
34168     std::make_pair(4, "VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT"),
34169 };
print_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT obj,const std::string & str,bool commaNeeded=true)34170 static void print_VkValidationFeatureEnableEXT(VkValidationFeatureEnableEXT obj, const std::string& str, bool commaNeeded=true) {
34171      PRINT_SPACE
34172      if (str != "") _OUT << "\"" << str << "\"" << " : ";
34173      if (commaNeeded)
34174          _OUT << "\"" <<  VkValidationFeatureEnableEXT_map[obj] << "\"," << std::endl;
34175      else
34176          _OUT << "\"" << VkValidationFeatureEnableEXT_map[obj] << "\"" << std::endl;
34177 }
print_VkValidationFeatureEnableEXT(const VkValidationFeatureEnableEXT * obj,const std::string & str,bool commaNeeded=true)34178 static void print_VkValidationFeatureEnableEXT(const VkValidationFeatureEnableEXT * obj, const std::string& str, bool commaNeeded=true) {
34179      PRINT_SPACE
34180      if (str != "") _OUT << "\"" << str << "\"" << " : ";
34181      if (commaNeeded)
34182          _OUT << "\"" <<  VkValidationFeatureEnableEXT_map[*obj] << "\"," << std::endl;
34183      else
34184          _OUT << "\"" << VkValidationFeatureEnableEXT_map[*obj] << "\"" << std::endl;
34185 }
34186 
34187 static std::map<deUint64, std::string> VkValidationFeatureDisableEXT_map = {
34188     std::make_pair(0, "VK_VALIDATION_FEATURE_DISABLE_ALL_EXT"),
34189     std::make_pair(1, "VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT"),
34190     std::make_pair(2, "VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT"),
34191     std::make_pair(3, "VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT"),
34192     std::make_pair(4, "VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT"),
34193     std::make_pair(5, "VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT"),
34194     std::make_pair(6, "VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT"),
34195     std::make_pair(7, "VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT"),
34196 };
print_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT obj,const std::string & str,bool commaNeeded=true)34197 static void print_VkValidationFeatureDisableEXT(VkValidationFeatureDisableEXT obj, const std::string& str, bool commaNeeded=true) {
34198      PRINT_SPACE
34199      if (str != "") _OUT << "\"" << str << "\"" << " : ";
34200      if (commaNeeded)
34201          _OUT << "\"" <<  VkValidationFeatureDisableEXT_map[obj] << "\"," << std::endl;
34202      else
34203          _OUT << "\"" << VkValidationFeatureDisableEXT_map[obj] << "\"" << std::endl;
34204 }
print_VkValidationFeatureDisableEXT(const VkValidationFeatureDisableEXT * obj,const std::string & str,bool commaNeeded=true)34205 static void print_VkValidationFeatureDisableEXT(const VkValidationFeatureDisableEXT * obj, const std::string& str, bool commaNeeded=true) {
34206      PRINT_SPACE
34207      if (str != "") _OUT << "\"" << str << "\"" << " : ";
34208      if (commaNeeded)
34209          _OUT << "\"" <<  VkValidationFeatureDisableEXT_map[*obj] << "\"," << std::endl;
34210      else
34211          _OUT << "\"" << VkValidationFeatureDisableEXT_map[*obj] << "\"" << std::endl;
34212 }
34213 
print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34214 static void print_VkValidationFeaturesEXT(VkValidationFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34215      PRINT_SPACE
34216      _OUT << "{" << std::endl;
34217      INDENT(4);
34218 
34219      print_VkStructureType(obj.sType, "sType", 1);
34220 
34221       if (obj.pNext) {
34222          dumpPNextChain(obj.pNext);
34223       } else {
34224          PRINT_SPACE
34225          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34226      }
34227 
34228      print_uint32_t(obj.enabledValidationFeatureCount, "enabledValidationFeatureCount", 1);
34229 
34230      PRINT_SPACE
34231      _OUT << "\"pEnabledValidationFeatures\":" << std::endl;
34232      PRINT_SPACE
34233      if (obj.pEnabledValidationFeatures) {
34234        _OUT << "[" << std::endl;
34235        for (unsigned int i = 0; i < obj.enabledValidationFeatureCount; i++) {
34236            bool isCommaNeeded = (i+1) != obj.enabledValidationFeatureCount;
34237            print_VkValidationFeatureEnableEXT(obj.pEnabledValidationFeatures[i], "", isCommaNeeded);
34238        }
34239        PRINT_SPACE
34240        _OUT << "]" << "," << std::endl;
34241      } else {
34242        _OUT << "\"NULL\"" << "," << std::endl;
34243      }
34244 
34245      print_uint32_t(obj.disabledValidationFeatureCount, "disabledValidationFeatureCount", 1);
34246 
34247      PRINT_SPACE
34248      _OUT << "\"pDisabledValidationFeatures\":" << std::endl;
34249      PRINT_SPACE
34250      if (obj.pDisabledValidationFeatures) {
34251        _OUT << "[" << std::endl;
34252        for (unsigned int i = 0; i < obj.disabledValidationFeatureCount; i++) {
34253            bool isCommaNeeded = (i+1) != obj.disabledValidationFeatureCount;
34254            print_VkValidationFeatureDisableEXT(obj.pDisabledValidationFeatures[i], "", isCommaNeeded);
34255        }
34256        PRINT_SPACE
34257        _OUT << "]" << "" << std::endl;
34258      } else {
34259        _OUT << "\"NULL\"" << "" << std::endl;
34260      }
34261 
34262      INDENT(-4);
34263      PRINT_SPACE
34264      if (commaNeeded)
34265          _OUT << "}," << std::endl;
34266      else
34267          _OUT << "}" << std::endl;
34268 }
print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34269 static void print_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34270      PRINT_SPACE
34271      _OUT << "{" << std::endl;
34272      INDENT(4);
34273 
34274      print_VkStructureType(obj->sType, "sType", 1);
34275 
34276       if (obj->pNext) {
34277          dumpPNextChain(obj->pNext);
34278       } else {
34279          PRINT_SPACE
34280          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34281      }
34282 
34283      print_uint32_t(obj->enabledValidationFeatureCount, "enabledValidationFeatureCount", 1);
34284 
34285      PRINT_SPACE
34286      _OUT << "\"pEnabledValidationFeatures\":" << std::endl;
34287      PRINT_SPACE
34288      if (obj->pEnabledValidationFeatures) {
34289        _OUT << "[" << std::endl;
34290        for (unsigned int i = 0; i < obj->enabledValidationFeatureCount; i++) {
34291            bool isCommaNeeded = (i+1) != obj->enabledValidationFeatureCount;
34292            print_VkValidationFeatureEnableEXT(obj->pEnabledValidationFeatures[i], "", isCommaNeeded);
34293        }
34294        PRINT_SPACE
34295        _OUT << "]" << "," << std::endl;
34296      } else {
34297        _OUT << "\"NULL\"" << "," << std::endl;
34298      }
34299 
34300      print_uint32_t(obj->disabledValidationFeatureCount, "disabledValidationFeatureCount", 1);
34301 
34302      PRINT_SPACE
34303      _OUT << "\"pDisabledValidationFeatures\":" << std::endl;
34304      PRINT_SPACE
34305      if (obj->pDisabledValidationFeatures) {
34306        _OUT << "[" << std::endl;
34307        for (unsigned int i = 0; i < obj->disabledValidationFeatureCount; i++) {
34308            bool isCommaNeeded = (i+1) != obj->disabledValidationFeatureCount;
34309            print_VkValidationFeatureDisableEXT(obj->pDisabledValidationFeatures[i], "", isCommaNeeded);
34310        }
34311        PRINT_SPACE
34312        _OUT << "]" << "" << std::endl;
34313      } else {
34314        _OUT << "\"NULL\"" << "" << std::endl;
34315      }
34316 
34317      INDENT(-4);
34318      PRINT_SPACE
34319      if (commaNeeded)
34320          _OUT << "}," << std::endl;
34321      else
34322          _OUT << "}" << std::endl;
34323 }
34324 
print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34325 static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34326      PRINT_SPACE
34327      _OUT << "{" << std::endl;
34328      INDENT(4);
34329 
34330      print_VkStructureType(obj.sType, "sType", 1);
34331 
34332       if (obj.pNext) {
34333          dumpPNextChain(obj.pNext);
34334       } else {
34335          PRINT_SPACE
34336          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34337      }
34338 
34339      print_VkBool32(obj.fragmentShaderSampleInterlock, "fragmentShaderSampleInterlock", 1);
34340 
34341      print_VkBool32(obj.fragmentShaderPixelInterlock, "fragmentShaderPixelInterlock", 1);
34342 
34343      print_VkBool32(obj.fragmentShaderShadingRateInterlock, "fragmentShaderShadingRateInterlock", 0);
34344 
34345      INDENT(-4);
34346      PRINT_SPACE
34347      if (commaNeeded)
34348          _OUT << "}," << std::endl;
34349      else
34350          _OUT << "}" << std::endl;
34351 }
print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34352 static void print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34353      PRINT_SPACE
34354      _OUT << "{" << std::endl;
34355      INDENT(4);
34356 
34357      print_VkStructureType(obj->sType, "sType", 1);
34358 
34359       if (obj->pNext) {
34360          dumpPNextChain(obj->pNext);
34361       } else {
34362          PRINT_SPACE
34363          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34364      }
34365 
34366      print_VkBool32(obj->fragmentShaderSampleInterlock, "fragmentShaderSampleInterlock", 1);
34367 
34368      print_VkBool32(obj->fragmentShaderPixelInterlock, "fragmentShaderPixelInterlock", 1);
34369 
34370      print_VkBool32(obj->fragmentShaderShadingRateInterlock, "fragmentShaderShadingRateInterlock", 0);
34371 
34372      INDENT(-4);
34373      PRINT_SPACE
34374      if (commaNeeded)
34375          _OUT << "}," << std::endl;
34376      else
34377          _OUT << "}" << std::endl;
34378 }
34379 
print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34380 static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34381      PRINT_SPACE
34382      _OUT << "{" << std::endl;
34383      INDENT(4);
34384 
34385      print_VkStructureType(obj.sType, "sType", 1);
34386 
34387       if (obj.pNext) {
34388          dumpPNextChain(obj.pNext);
34389       } else {
34390          PRINT_SPACE
34391          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34392      }
34393 
34394      print_VkBool32(obj.ycbcrImageArrays, "ycbcrImageArrays", 0);
34395 
34396      INDENT(-4);
34397      PRINT_SPACE
34398      if (commaNeeded)
34399          _OUT << "}," << std::endl;
34400      else
34401          _OUT << "}" << std::endl;
34402 }
print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34403 static void print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34404      PRINT_SPACE
34405      _OUT << "{" << std::endl;
34406      INDENT(4);
34407 
34408      print_VkStructureType(obj->sType, "sType", 1);
34409 
34410       if (obj->pNext) {
34411          dumpPNextChain(obj->pNext);
34412       } else {
34413          PRINT_SPACE
34414          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34415      }
34416 
34417      print_VkBool32(obj->ycbcrImageArrays, "ycbcrImageArrays", 0);
34418 
34419      INDENT(-4);
34420      PRINT_SPACE
34421      if (commaNeeded)
34422          _OUT << "}," << std::endl;
34423      else
34424          _OUT << "}" << std::endl;
34425 }
34426 
print_VkHeadlessSurfaceCreateFlagsEXT(VkHeadlessSurfaceCreateFlagsEXT obj,const std::string & str,bool commaNeeded=true)34427 static void print_VkHeadlessSurfaceCreateFlagsEXT(VkHeadlessSurfaceCreateFlagsEXT obj, const std::string& str, bool commaNeeded=true) {
34428      PRINT_SPACE
34429      if (commaNeeded)
34430          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
34431      else
34432          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
34433 }
print_VkHeadlessSurfaceCreateFlagsEXT(const VkHeadlessSurfaceCreateFlagsEXT * obj,const std::string & str,bool commaNeeded=true)34434 static void print_VkHeadlessSurfaceCreateFlagsEXT(const VkHeadlessSurfaceCreateFlagsEXT * obj, const std::string& str, bool commaNeeded=true) {
34435      PRINT_SPACE
34436      if (commaNeeded)
34437          _OUT << "\"" << str << "\"" << " : " << obj << "," << std::endl;
34438      else
34439          _OUT << "\"" << str << "\"" << " : " << obj << std::endl;
34440 }
34441 
print_VkHeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)34442 static void print_VkHeadlessSurfaceCreateInfoEXT(VkHeadlessSurfaceCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
34443      PRINT_SPACE
34444      _OUT << "{" << std::endl;
34445      INDENT(4);
34446 
34447      print_VkStructureType(obj.sType, "sType", 1);
34448 
34449       if (obj.pNext) {
34450          dumpPNextChain(obj.pNext);
34451       } else {
34452          PRINT_SPACE
34453          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34454      }
34455 
34456      print_VkHeadlessSurfaceCreateFlagsEXT(obj.flags, "flags", 0);
34457 
34458      INDENT(-4);
34459      PRINT_SPACE
34460      if (commaNeeded)
34461          _OUT << "}," << std::endl;
34462      else
34463          _OUT << "}" << std::endl;
34464 }
print_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)34465 static void print_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
34466      PRINT_SPACE
34467      _OUT << "{" << std::endl;
34468      INDENT(4);
34469 
34470      print_VkStructureType(obj->sType, "sType", 1);
34471 
34472       if (obj->pNext) {
34473          dumpPNextChain(obj->pNext);
34474       } else {
34475          PRINT_SPACE
34476          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34477      }
34478 
34479      print_VkHeadlessSurfaceCreateFlagsEXT(obj->flags, "flags", 0);
34480 
34481      INDENT(-4);
34482      PRINT_SPACE
34483      if (commaNeeded)
34484          _OUT << "}," << std::endl;
34485      else
34486          _OUT << "}" << std::endl;
34487 }
34488 
34489 static std::map<deUint64, std::string> VkLineRasterizationModeEXT_map = {
34490     std::make_pair(0, "VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT"),
34491     std::make_pair(1, "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT"),
34492     std::make_pair(2, "VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT"),
34493     std::make_pair(3, "VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT"),
34494 };
print_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT obj,const std::string & str,bool commaNeeded=true)34495 static void print_VkLineRasterizationModeEXT(VkLineRasterizationModeEXT obj, const std::string& str, bool commaNeeded=true) {
34496      PRINT_SPACE
34497      if (str != "") _OUT << "\"" << str << "\"" << " : ";
34498      if (commaNeeded)
34499          _OUT << "\"" <<  VkLineRasterizationModeEXT_map[obj] << "\"," << std::endl;
34500      else
34501          _OUT << "\"" << VkLineRasterizationModeEXT_map[obj] << "\"" << std::endl;
34502 }
print_VkLineRasterizationModeEXT(const VkLineRasterizationModeEXT * obj,const std::string & str,bool commaNeeded=true)34503 static void print_VkLineRasterizationModeEXT(const VkLineRasterizationModeEXT * obj, const std::string& str, bool commaNeeded=true) {
34504      PRINT_SPACE
34505      if (str != "") _OUT << "\"" << str << "\"" << " : ";
34506      if (commaNeeded)
34507          _OUT << "\"" <<  VkLineRasterizationModeEXT_map[*obj] << "\"," << std::endl;
34508      else
34509          _OUT << "\"" << VkLineRasterizationModeEXT_map[*obj] << "\"" << std::endl;
34510 }
34511 
print_VkPhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceLineRasterizationFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34512 static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(VkPhysicalDeviceLineRasterizationFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34513      PRINT_SPACE
34514      _OUT << "{" << std::endl;
34515      INDENT(4);
34516 
34517      print_VkStructureType(obj.sType, "sType", 1);
34518 
34519       if (obj.pNext) {
34520          dumpPNextChain(obj.pNext);
34521       } else {
34522          PRINT_SPACE
34523          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34524      }
34525 
34526      print_VkBool32(obj.rectangularLines, "rectangularLines", 1);
34527 
34528      print_VkBool32(obj.bresenhamLines, "bresenhamLines", 1);
34529 
34530      print_VkBool32(obj.smoothLines, "smoothLines", 1);
34531 
34532      print_VkBool32(obj.stippledRectangularLines, "stippledRectangularLines", 1);
34533 
34534      print_VkBool32(obj.stippledBresenhamLines, "stippledBresenhamLines", 1);
34535 
34536      print_VkBool32(obj.stippledSmoothLines, "stippledSmoothLines", 0);
34537 
34538      INDENT(-4);
34539      PRINT_SPACE
34540      if (commaNeeded)
34541          _OUT << "}," << std::endl;
34542      else
34543          _OUT << "}" << std::endl;
34544 }
print_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalDeviceLineRasterizationFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34545 static void print_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalDeviceLineRasterizationFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34546      PRINT_SPACE
34547      _OUT << "{" << std::endl;
34548      INDENT(4);
34549 
34550      print_VkStructureType(obj->sType, "sType", 1);
34551 
34552       if (obj->pNext) {
34553          dumpPNextChain(obj->pNext);
34554       } else {
34555          PRINT_SPACE
34556          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34557      }
34558 
34559      print_VkBool32(obj->rectangularLines, "rectangularLines", 1);
34560 
34561      print_VkBool32(obj->bresenhamLines, "bresenhamLines", 1);
34562 
34563      print_VkBool32(obj->smoothLines, "smoothLines", 1);
34564 
34565      print_VkBool32(obj->stippledRectangularLines, "stippledRectangularLines", 1);
34566 
34567      print_VkBool32(obj->stippledBresenhamLines, "stippledBresenhamLines", 1);
34568 
34569      print_VkBool32(obj->stippledSmoothLines, "stippledSmoothLines", 0);
34570 
34571      INDENT(-4);
34572      PRINT_SPACE
34573      if (commaNeeded)
34574          _OUT << "}," << std::endl;
34575      else
34576          _OUT << "}" << std::endl;
34577 }
34578 
print_VkPhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDeviceLineRasterizationPropertiesEXT obj,const std::string & s,bool commaNeeded=true)34579 static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(VkPhysicalDeviceLineRasterizationPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
34580      PRINT_SPACE
34581      _OUT << "{" << std::endl;
34582      INDENT(4);
34583 
34584      print_VkStructureType(obj.sType, "sType", 1);
34585 
34586       if (obj.pNext) {
34587          dumpPNextChain(obj.pNext);
34588       } else {
34589          PRINT_SPACE
34590          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34591      }
34592 
34593      print_uint32_t(obj.lineSubPixelPrecisionBits, "lineSubPixelPrecisionBits", 0);
34594 
34595      INDENT(-4);
34596      PRINT_SPACE
34597      if (commaNeeded)
34598          _OUT << "}," << std::endl;
34599      else
34600          _OUT << "}" << std::endl;
34601 }
print_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysicalDeviceLineRasterizationPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)34602 static void print_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysicalDeviceLineRasterizationPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
34603      PRINT_SPACE
34604      _OUT << "{" << std::endl;
34605      INDENT(4);
34606 
34607      print_VkStructureType(obj->sType, "sType", 1);
34608 
34609       if (obj->pNext) {
34610          dumpPNextChain(obj->pNext);
34611       } else {
34612          PRINT_SPACE
34613          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34614      }
34615 
34616      print_uint32_t(obj->lineSubPixelPrecisionBits, "lineSubPixelPrecisionBits", 0);
34617 
34618      INDENT(-4);
34619      PRINT_SPACE
34620      if (commaNeeded)
34621          _OUT << "}," << std::endl;
34622      else
34623          _OUT << "}" << std::endl;
34624 }
34625 
print_VkPipelineRasterizationLineStateCreateInfoEXT(VkPipelineRasterizationLineStateCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)34626 static void print_VkPipelineRasterizationLineStateCreateInfoEXT(VkPipelineRasterizationLineStateCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
34627      PRINT_SPACE
34628      _OUT << "{" << std::endl;
34629      INDENT(4);
34630 
34631      print_VkStructureType(obj.sType, "sType", 1);
34632 
34633       if (obj.pNext) {
34634          dumpPNextChain(obj.pNext);
34635       } else {
34636          PRINT_SPACE
34637          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34638      }
34639 
34640      print_VkLineRasterizationModeEXT(obj.lineRasterizationMode, "lineRasterizationMode", 1);
34641 
34642      print_VkBool32(obj.stippledLineEnable, "stippledLineEnable", 1);
34643 
34644      print_uint32_t(obj.lineStippleFactor, "lineStippleFactor", 1);
34645 
34646      print_uint16_t(obj.lineStipplePattern, "lineStipplePattern", 0);
34647 
34648      INDENT(-4);
34649      PRINT_SPACE
34650      if (commaNeeded)
34651          _OUT << "}," << std::endl;
34652      else
34653          _OUT << "}" << std::endl;
34654 }
print_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipelineRasterizationLineStateCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)34655 static void print_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipelineRasterizationLineStateCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
34656      PRINT_SPACE
34657      _OUT << "{" << std::endl;
34658      INDENT(4);
34659 
34660      print_VkStructureType(obj->sType, "sType", 1);
34661 
34662       if (obj->pNext) {
34663          dumpPNextChain(obj->pNext);
34664       } else {
34665          PRINT_SPACE
34666          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34667      }
34668 
34669      print_VkLineRasterizationModeEXT(obj->lineRasterizationMode, "lineRasterizationMode", 1);
34670 
34671      print_VkBool32(obj->stippledLineEnable, "stippledLineEnable", 1);
34672 
34673      print_uint32_t(obj->lineStippleFactor, "lineStippleFactor", 1);
34674 
34675      print_uint16_t(obj->lineStipplePattern, "lineStipplePattern", 0);
34676 
34677      INDENT(-4);
34678      PRINT_SPACE
34679      if (commaNeeded)
34680          _OUT << "}," << std::endl;
34681      else
34682          _OUT << "}" << std::endl;
34683 }
34684 
print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34685 static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34686      PRINT_SPACE
34687      _OUT << "{" << std::endl;
34688      INDENT(4);
34689 
34690      print_VkStructureType(obj.sType, "sType", 1);
34691 
34692       if (obj.pNext) {
34693          dumpPNextChain(obj.pNext);
34694       } else {
34695          PRINT_SPACE
34696          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34697      }
34698 
34699      print_VkBool32(obj.shaderBufferFloat32Atomics, "shaderBufferFloat32Atomics", 1);
34700 
34701      print_VkBool32(obj.shaderBufferFloat32AtomicAdd, "shaderBufferFloat32AtomicAdd", 1);
34702 
34703      print_VkBool32(obj.shaderBufferFloat64Atomics, "shaderBufferFloat64Atomics", 1);
34704 
34705      print_VkBool32(obj.shaderBufferFloat64AtomicAdd, "shaderBufferFloat64AtomicAdd", 1);
34706 
34707      print_VkBool32(obj.shaderSharedFloat32Atomics, "shaderSharedFloat32Atomics", 1);
34708 
34709      print_VkBool32(obj.shaderSharedFloat32AtomicAdd, "shaderSharedFloat32AtomicAdd", 1);
34710 
34711      print_VkBool32(obj.shaderSharedFloat64Atomics, "shaderSharedFloat64Atomics", 1);
34712 
34713      print_VkBool32(obj.shaderSharedFloat64AtomicAdd, "shaderSharedFloat64AtomicAdd", 1);
34714 
34715      print_VkBool32(obj.shaderImageFloat32Atomics, "shaderImageFloat32Atomics", 1);
34716 
34717      print_VkBool32(obj.shaderImageFloat32AtomicAdd, "shaderImageFloat32AtomicAdd", 1);
34718 
34719      print_VkBool32(obj.sparseImageFloat32Atomics, "sparseImageFloat32Atomics", 1);
34720 
34721      print_VkBool32(obj.sparseImageFloat32AtomicAdd, "sparseImageFloat32AtomicAdd", 0);
34722 
34723      INDENT(-4);
34724      PRINT_SPACE
34725      if (commaNeeded)
34726          _OUT << "}," << std::endl;
34727      else
34728          _OUT << "}" << std::endl;
34729 }
print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34730 static void print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34731      PRINT_SPACE
34732      _OUT << "{" << std::endl;
34733      INDENT(4);
34734 
34735      print_VkStructureType(obj->sType, "sType", 1);
34736 
34737       if (obj->pNext) {
34738          dumpPNextChain(obj->pNext);
34739       } else {
34740          PRINT_SPACE
34741          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34742      }
34743 
34744      print_VkBool32(obj->shaderBufferFloat32Atomics, "shaderBufferFloat32Atomics", 1);
34745 
34746      print_VkBool32(obj->shaderBufferFloat32AtomicAdd, "shaderBufferFloat32AtomicAdd", 1);
34747 
34748      print_VkBool32(obj->shaderBufferFloat64Atomics, "shaderBufferFloat64Atomics", 1);
34749 
34750      print_VkBool32(obj->shaderBufferFloat64AtomicAdd, "shaderBufferFloat64AtomicAdd", 1);
34751 
34752      print_VkBool32(obj->shaderSharedFloat32Atomics, "shaderSharedFloat32Atomics", 1);
34753 
34754      print_VkBool32(obj->shaderSharedFloat32AtomicAdd, "shaderSharedFloat32AtomicAdd", 1);
34755 
34756      print_VkBool32(obj->shaderSharedFloat64Atomics, "shaderSharedFloat64Atomics", 1);
34757 
34758      print_VkBool32(obj->shaderSharedFloat64AtomicAdd, "shaderSharedFloat64AtomicAdd", 1);
34759 
34760      print_VkBool32(obj->shaderImageFloat32Atomics, "shaderImageFloat32Atomics", 1);
34761 
34762      print_VkBool32(obj->shaderImageFloat32AtomicAdd, "shaderImageFloat32AtomicAdd", 1);
34763 
34764      print_VkBool32(obj->sparseImageFloat32Atomics, "sparseImageFloat32Atomics", 1);
34765 
34766      print_VkBool32(obj->sparseImageFloat32AtomicAdd, "sparseImageFloat32AtomicAdd", 0);
34767 
34768      INDENT(-4);
34769      PRINT_SPACE
34770      if (commaNeeded)
34771          _OUT << "}," << std::endl;
34772      else
34773          _OUT << "}" << std::endl;
34774 }
34775 
print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT obj,const std::string & s,bool commaNeeded=true)34776 static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(VkPhysicalDeviceIndexTypeUint8FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34777      PRINT_SPACE
34778      _OUT << "{" << std::endl;
34779      INDENT(4);
34780 
34781      print_VkStructureType(obj.sType, "sType", 1);
34782 
34783       if (obj.pNext) {
34784          dumpPNextChain(obj.pNext);
34785       } else {
34786          PRINT_SPACE
34787          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34788      }
34789 
34790      print_VkBool32(obj.indexTypeUint8, "indexTypeUint8", 0);
34791 
34792      INDENT(-4);
34793      PRINT_SPACE
34794      if (commaNeeded)
34795          _OUT << "}," << std::endl;
34796      else
34797          _OUT << "}" << std::endl;
34798 }
print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34799 static void print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34800      PRINT_SPACE
34801      _OUT << "{" << std::endl;
34802      INDENT(4);
34803 
34804      print_VkStructureType(obj->sType, "sType", 1);
34805 
34806       if (obj->pNext) {
34807          dumpPNextChain(obj->pNext);
34808       } else {
34809          PRINT_SPACE
34810          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34811      }
34812 
34813      print_VkBool32(obj->indexTypeUint8, "indexTypeUint8", 0);
34814 
34815      INDENT(-4);
34816      PRINT_SPACE
34817      if (commaNeeded)
34818          _OUT << "}," << std::endl;
34819      else
34820          _OUT << "}" << std::endl;
34821 }
34822 
print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34823 static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34824      PRINT_SPACE
34825      _OUT << "{" << std::endl;
34826      INDENT(4);
34827 
34828      print_VkStructureType(obj.sType, "sType", 1);
34829 
34830       if (obj.pNext) {
34831          dumpPNextChain(obj.pNext);
34832       } else {
34833          PRINT_SPACE
34834          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34835      }
34836 
34837      print_VkBool32(obj.extendedDynamicState, "extendedDynamicState", 0);
34838 
34839      INDENT(-4);
34840      PRINT_SPACE
34841      if (commaNeeded)
34842          _OUT << "}," << std::endl;
34843      else
34844          _OUT << "}" << std::endl;
34845 }
print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34846 static void print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34847      PRINT_SPACE
34848      _OUT << "{" << std::endl;
34849      INDENT(4);
34850 
34851      print_VkStructureType(obj->sType, "sType", 1);
34852 
34853       if (obj->pNext) {
34854          dumpPNextChain(obj->pNext);
34855       } else {
34856          PRINT_SPACE
34857          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34858      }
34859 
34860      print_VkBool32(obj->extendedDynamicState, "extendedDynamicState", 0);
34861 
34862      INDENT(-4);
34863      PRINT_SPACE
34864      if (commaNeeded)
34865          _OUT << "}," << std::endl;
34866      else
34867          _OUT << "}" << std::endl;
34868 }
34869 
print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34870 static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34871      PRINT_SPACE
34872      _OUT << "{" << std::endl;
34873      INDENT(4);
34874 
34875      print_VkStructureType(obj.sType, "sType", 1);
34876 
34877       if (obj.pNext) {
34878          dumpPNextChain(obj.pNext);
34879       } else {
34880          PRINT_SPACE
34881          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34882      }
34883 
34884      print_VkBool32(obj.shaderDemoteToHelperInvocation, "shaderDemoteToHelperInvocation", 0);
34885 
34886      INDENT(-4);
34887      PRINT_SPACE
34888      if (commaNeeded)
34889          _OUT << "}," << std::endl;
34890      else
34891          _OUT << "}" << std::endl;
34892 }
print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34893 static void print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(const VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34894      PRINT_SPACE
34895      _OUT << "{" << std::endl;
34896      INDENT(4);
34897 
34898      print_VkStructureType(obj->sType, "sType", 1);
34899 
34900       if (obj->pNext) {
34901          dumpPNextChain(obj->pNext);
34902       } else {
34903          PRINT_SPACE
34904          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34905      }
34906 
34907      print_VkBool32(obj->shaderDemoteToHelperInvocation, "shaderDemoteToHelperInvocation", 0);
34908 
34909      INDENT(-4);
34910      PRINT_SPACE
34911      if (commaNeeded)
34912          _OUT << "}," << std::endl;
34913      else
34914          _OUT << "}" << std::endl;
34915 }
34916 
print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT obj,const std::string & s,bool commaNeeded=true)34917 static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
34918      PRINT_SPACE
34919      _OUT << "{" << std::endl;
34920      INDENT(4);
34921 
34922      print_VkStructureType(obj.sType, "sType", 1);
34923 
34924       if (obj.pNext) {
34925          dumpPNextChain(obj.pNext);
34926       } else {
34927          PRINT_SPACE
34928          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34929      }
34930 
34931      print_VkBool32(obj.texelBufferAlignment, "texelBufferAlignment", 0);
34932 
34933      INDENT(-4);
34934      PRINT_SPACE
34935      if (commaNeeded)
34936          _OUT << "}," << std::endl;
34937      else
34938          _OUT << "}" << std::endl;
34939 }
print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)34940 static void print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
34941      PRINT_SPACE
34942      _OUT << "{" << std::endl;
34943      INDENT(4);
34944 
34945      print_VkStructureType(obj->sType, "sType", 1);
34946 
34947       if (obj->pNext) {
34948          dumpPNextChain(obj->pNext);
34949       } else {
34950          PRINT_SPACE
34951          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34952      }
34953 
34954      print_VkBool32(obj->texelBufferAlignment, "texelBufferAlignment", 0);
34955 
34956      INDENT(-4);
34957      PRINT_SPACE
34958      if (commaNeeded)
34959          _OUT << "}," << std::endl;
34960      else
34961          _OUT << "}" << std::endl;
34962 }
34963 
print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT obj,const std::string & s,bool commaNeeded=true)34964 static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
34965      PRINT_SPACE
34966      _OUT << "{" << std::endl;
34967      INDENT(4);
34968 
34969      print_VkStructureType(obj.sType, "sType", 1);
34970 
34971       if (obj.pNext) {
34972          dumpPNextChain(obj.pNext);
34973       } else {
34974          PRINT_SPACE
34975          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
34976      }
34977 
34978      print_VkDeviceSize(obj.storageTexelBufferOffsetAlignmentBytes, "storageTexelBufferOffsetAlignmentBytes", 1);
34979 
34980      print_VkBool32(obj.storageTexelBufferOffsetSingleTexelAlignment, "storageTexelBufferOffsetSingleTexelAlignment", 1);
34981 
34982      print_VkDeviceSize(obj.uniformTexelBufferOffsetAlignmentBytes, "uniformTexelBufferOffsetAlignmentBytes", 1);
34983 
34984      print_VkBool32(obj.uniformTexelBufferOffsetSingleTexelAlignment, "uniformTexelBufferOffsetSingleTexelAlignment", 0);
34985 
34986      INDENT(-4);
34987      PRINT_SPACE
34988      if (commaNeeded)
34989          _OUT << "}," << std::endl;
34990      else
34991          _OUT << "}" << std::endl;
34992 }
print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)34993 static void print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT(const VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
34994      PRINT_SPACE
34995      _OUT << "{" << std::endl;
34996      INDENT(4);
34997 
34998      print_VkStructureType(obj->sType, "sType", 1);
34999 
35000       if (obj->pNext) {
35001          dumpPNextChain(obj->pNext);
35002       } else {
35003          PRINT_SPACE
35004          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35005      }
35006 
35007      print_VkDeviceSize(obj->storageTexelBufferOffsetAlignmentBytes, "storageTexelBufferOffsetAlignmentBytes", 1);
35008 
35009      print_VkBool32(obj->storageTexelBufferOffsetSingleTexelAlignment, "storageTexelBufferOffsetSingleTexelAlignment", 1);
35010 
35011      print_VkDeviceSize(obj->uniformTexelBufferOffsetAlignmentBytes, "uniformTexelBufferOffsetAlignmentBytes", 1);
35012 
35013      print_VkBool32(obj->uniformTexelBufferOffsetSingleTexelAlignment, "uniformTexelBufferOffsetSingleTexelAlignment", 0);
35014 
35015      INDENT(-4);
35016      PRINT_SPACE
35017      if (commaNeeded)
35018          _OUT << "}," << std::endl;
35019      else
35020          _OUT << "}" << std::endl;
35021 }
35022 
print_VkPhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustness2FeaturesEXT obj,const std::string & s,bool commaNeeded=true)35023 static void print_VkPhysicalDeviceRobustness2FeaturesEXT(VkPhysicalDeviceRobustness2FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35024      PRINT_SPACE
35025      _OUT << "{" << std::endl;
35026      INDENT(4);
35027 
35028      print_VkStructureType(obj.sType, "sType", 1);
35029 
35030       if (obj.pNext) {
35031          dumpPNextChain(obj.pNext);
35032       } else {
35033          PRINT_SPACE
35034          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35035      }
35036 
35037      print_VkBool32(obj.robustBufferAccess2, "robustBufferAccess2", 1);
35038 
35039      print_VkBool32(obj.robustImageAccess2, "robustImageAccess2", 1);
35040 
35041      print_VkBool32(obj.nullDescriptor, "nullDescriptor", 0);
35042 
35043      INDENT(-4);
35044      PRINT_SPACE
35045      if (commaNeeded)
35046          _OUT << "}," << std::endl;
35047      else
35048          _OUT << "}" << std::endl;
35049 }
print_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceRobustness2FeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35050 static void print_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceRobustness2FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35051      PRINT_SPACE
35052      _OUT << "{" << std::endl;
35053      INDENT(4);
35054 
35055      print_VkStructureType(obj->sType, "sType", 1);
35056 
35057       if (obj->pNext) {
35058          dumpPNextChain(obj->pNext);
35059       } else {
35060          PRINT_SPACE
35061          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35062      }
35063 
35064      print_VkBool32(obj->robustBufferAccess2, "robustBufferAccess2", 1);
35065 
35066      print_VkBool32(obj->robustImageAccess2, "robustImageAccess2", 1);
35067 
35068      print_VkBool32(obj->nullDescriptor, "nullDescriptor", 0);
35069 
35070      INDENT(-4);
35071      PRINT_SPACE
35072      if (commaNeeded)
35073          _OUT << "}," << std::endl;
35074      else
35075          _OUT << "}" << std::endl;
35076 }
35077 
print_VkPhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobustness2PropertiesEXT obj,const std::string & s,bool commaNeeded=true)35078 static void print_VkPhysicalDeviceRobustness2PropertiesEXT(VkPhysicalDeviceRobustness2PropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
35079      PRINT_SPACE
35080      _OUT << "{" << std::endl;
35081      INDENT(4);
35082 
35083      print_VkStructureType(obj.sType, "sType", 1);
35084 
35085       if (obj.pNext) {
35086          dumpPNextChain(obj.pNext);
35087       } else {
35088          PRINT_SPACE
35089          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35090      }
35091 
35092      print_VkDeviceSize(obj.robustStorageBufferAccessSizeAlignment, "robustStorageBufferAccessSizeAlignment", 1);
35093 
35094      print_VkDeviceSize(obj.robustUniformBufferAccessSizeAlignment, "robustUniformBufferAccessSizeAlignment", 0);
35095 
35096      INDENT(-4);
35097      PRINT_SPACE
35098      if (commaNeeded)
35099          _OUT << "}," << std::endl;
35100      else
35101          _OUT << "}" << std::endl;
35102 }
print_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDeviceRobustness2PropertiesEXT * obj,const std::string & s,bool commaNeeded=true)35103 static void print_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDeviceRobustness2PropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
35104      PRINT_SPACE
35105      _OUT << "{" << std::endl;
35106      INDENT(4);
35107 
35108      print_VkStructureType(obj->sType, "sType", 1);
35109 
35110       if (obj->pNext) {
35111          dumpPNextChain(obj->pNext);
35112       } else {
35113          PRINT_SPACE
35114          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35115      }
35116 
35117      print_VkDeviceSize(obj->robustStorageBufferAccessSizeAlignment, "robustStorageBufferAccessSizeAlignment", 1);
35118 
35119      print_VkDeviceSize(obj->robustUniformBufferAccessSizeAlignment, "robustUniformBufferAccessSizeAlignment", 0);
35120 
35121      INDENT(-4);
35122      PRINT_SPACE
35123      if (commaNeeded)
35124          _OUT << "}," << std::endl;
35125      else
35126          _OUT << "}" << std::endl;
35127 }
35128 
print_VkSamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderColorCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)35129 static void print_VkSamplerCustomBorderColorCreateInfoEXT(VkSamplerCustomBorderColorCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
35130      PRINT_SPACE
35131      _OUT << "{" << std::endl;
35132      INDENT(4);
35133 
35134      print_VkStructureType(obj.sType, "sType", 1);
35135 
35136       if (obj.pNext) {
35137          dumpPNextChain(obj.pNext);
35138       } else {
35139          PRINT_SPACE
35140          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35141      }
35142 
35143      print_VkClearColorValue(obj.customBorderColor, "customBorderColor", 1);
35144 
35145      print_VkFormat(obj.format, "format", 0);
35146 
35147      INDENT(-4);
35148      PRINT_SPACE
35149      if (commaNeeded)
35150          _OUT << "}," << std::endl;
35151      else
35152          _OUT << "}" << std::endl;
35153 }
print_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomBorderColorCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)35154 static void print_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomBorderColorCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
35155      PRINT_SPACE
35156      _OUT << "{" << std::endl;
35157      INDENT(4);
35158 
35159      print_VkStructureType(obj->sType, "sType", 1);
35160 
35161       if (obj->pNext) {
35162          dumpPNextChain(obj->pNext);
35163       } else {
35164          PRINT_SPACE
35165          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35166      }
35167 
35168      print_VkClearColorValue(obj->customBorderColor, "customBorderColor", 1);
35169 
35170      print_VkFormat(obj->format, "format", 0);
35171 
35172      INDENT(-4);
35173      PRINT_SPACE
35174      if (commaNeeded)
35175          _OUT << "}," << std::endl;
35176      else
35177          _OUT << "}" << std::endl;
35178 }
35179 
print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDeviceCustomBorderColorPropertiesEXT obj,const std::string & s,bool commaNeeded=true)35180 static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(VkPhysicalDeviceCustomBorderColorPropertiesEXT obj, const std::string& s, bool commaNeeded=true) {
35181      PRINT_SPACE
35182      _OUT << "{" << std::endl;
35183      INDENT(4);
35184 
35185      print_VkStructureType(obj.sType, "sType", 1);
35186 
35187       if (obj.pNext) {
35188          dumpPNextChain(obj.pNext);
35189       } else {
35190          PRINT_SPACE
35191          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35192      }
35193 
35194      print_uint32_t(obj.maxCustomBorderColorSamplers, "maxCustomBorderColorSamplers", 0);
35195 
35196      INDENT(-4);
35197      PRINT_SPACE
35198      if (commaNeeded)
35199          _OUT << "}," << std::endl;
35200      else
35201          _OUT << "}" << std::endl;
35202 }
print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysicalDeviceCustomBorderColorPropertiesEXT * obj,const std::string & s,bool commaNeeded=true)35203 static void print_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysicalDeviceCustomBorderColorPropertiesEXT * obj, const std::string& s, bool commaNeeded=true) {
35204      PRINT_SPACE
35205      _OUT << "{" << std::endl;
35206      INDENT(4);
35207 
35208      print_VkStructureType(obj->sType, "sType", 1);
35209 
35210       if (obj->pNext) {
35211          dumpPNextChain(obj->pNext);
35212       } else {
35213          PRINT_SPACE
35214          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35215      }
35216 
35217      print_uint32_t(obj->maxCustomBorderColorSamplers, "maxCustomBorderColorSamplers", 0);
35218 
35219      INDENT(-4);
35220      PRINT_SPACE
35221      if (commaNeeded)
35222          _OUT << "}," << std::endl;
35223      else
35224          _OUT << "}" << std::endl;
35225 }
35226 
print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceCustomBorderColorFeaturesEXT obj,const std::string & s,bool commaNeeded=true)35227 static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(VkPhysicalDeviceCustomBorderColorFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35228      PRINT_SPACE
35229      _OUT << "{" << std::endl;
35230      INDENT(4);
35231 
35232      print_VkStructureType(obj.sType, "sType", 1);
35233 
35234       if (obj.pNext) {
35235          dumpPNextChain(obj.pNext);
35236       } else {
35237          PRINT_SPACE
35238          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35239      }
35240 
35241      print_VkBool32(obj.customBorderColors, "customBorderColors", 1);
35242 
35243      print_VkBool32(obj.customBorderColorWithoutFormat, "customBorderColorWithoutFormat", 0);
35244 
35245      INDENT(-4);
35246      PRINT_SPACE
35247      if (commaNeeded)
35248          _OUT << "}," << std::endl;
35249      else
35250          _OUT << "}" << std::endl;
35251 }
print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalDeviceCustomBorderColorFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35252 static void print_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalDeviceCustomBorderColorFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35253      PRINT_SPACE
35254      _OUT << "{" << std::endl;
35255      INDENT(4);
35256 
35257      print_VkStructureType(obj->sType, "sType", 1);
35258 
35259       if (obj->pNext) {
35260          dumpPNextChain(obj->pNext);
35261       } else {
35262          PRINT_SPACE
35263          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35264      }
35265 
35266      print_VkBool32(obj->customBorderColors, "customBorderColors", 1);
35267 
35268      print_VkBool32(obj->customBorderColorWithoutFormat, "customBorderColorWithoutFormat", 0);
35269 
35270      INDENT(-4);
35271      PRINT_SPACE
35272      if (commaNeeded)
35273          _OUT << "}," << std::endl;
35274      else
35275          _OUT << "}" << std::endl;
35276 }
35277 
print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT obj,const std::string & s,bool commaNeeded=true)35278 static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35279      PRINT_SPACE
35280      _OUT << "{" << std::endl;
35281      INDENT(4);
35282 
35283      print_VkStructureType(obj.sType, "sType", 1);
35284 
35285       if (obj.pNext) {
35286          dumpPNextChain(obj.pNext);
35287       } else {
35288          PRINT_SPACE
35289          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35290      }
35291 
35292      print_VkBool32(obj.ycbcr2plane444Formats, "ycbcr2plane444Formats", 0);
35293 
35294      INDENT(-4);
35295      PRINT_SPACE
35296      if (commaNeeded)
35297          _OUT << "}," << std::endl;
35298      else
35299          _OUT << "}" << std::endl;
35300 }
print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35301 static void print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35302      PRINT_SPACE
35303      _OUT << "{" << std::endl;
35304      INDENT(4);
35305 
35306      print_VkStructureType(obj->sType, "sType", 1);
35307 
35308       if (obj->pNext) {
35309          dumpPNextChain(obj->pNext);
35310       } else {
35311          PRINT_SPACE
35312          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35313      }
35314 
35315      print_VkBool32(obj->ycbcr2plane444Formats, "ycbcr2plane444Formats", 0);
35316 
35317      INDENT(-4);
35318      PRINT_SPACE
35319      if (commaNeeded)
35320          _OUT << "}," << std::endl;
35321      else
35322          _OUT << "}" << std::endl;
35323 }
35324 
print_VkPhysicalDeviceImageRobustnessFeaturesEXT(VkPhysicalDeviceImageRobustnessFeaturesEXT obj,const std::string & s,bool commaNeeded=true)35325 static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(VkPhysicalDeviceImageRobustnessFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35326      PRINT_SPACE
35327      _OUT << "{" << std::endl;
35328      INDENT(4);
35329 
35330      print_VkStructureType(obj.sType, "sType", 1);
35331 
35332       if (obj.pNext) {
35333          dumpPNextChain(obj.pNext);
35334       } else {
35335          PRINT_SPACE
35336          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35337      }
35338 
35339      print_VkBool32(obj.robustImageAccess, "robustImageAccess", 0);
35340 
35341      INDENT(-4);
35342      PRINT_SPACE
35343      if (commaNeeded)
35344          _OUT << "}," << std::endl;
35345      else
35346          _OUT << "}" << std::endl;
35347 }
print_VkPhysicalDeviceImageRobustnessFeaturesEXT(const VkPhysicalDeviceImageRobustnessFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35348 static void print_VkPhysicalDeviceImageRobustnessFeaturesEXT(const VkPhysicalDeviceImageRobustnessFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35349      PRINT_SPACE
35350      _OUT << "{" << std::endl;
35351      INDENT(4);
35352 
35353      print_VkStructureType(obj->sType, "sType", 1);
35354 
35355       if (obj->pNext) {
35356          dumpPNextChain(obj->pNext);
35357       } else {
35358          PRINT_SPACE
35359          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35360      }
35361 
35362      print_VkBool32(obj->robustImageAccess, "robustImageAccess", 0);
35363 
35364      INDENT(-4);
35365      PRINT_SPACE
35366      if (commaNeeded)
35367          _OUT << "}," << std::endl;
35368      else
35369          _OUT << "}" << std::endl;
35370 }
35371 
print_VkPhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444FormatsFeaturesEXT obj,const std::string & s,bool commaNeeded=true)35372 static void print_VkPhysicalDevice4444FormatsFeaturesEXT(VkPhysicalDevice4444FormatsFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35373      PRINT_SPACE
35374      _OUT << "{" << std::endl;
35375      INDENT(4);
35376 
35377      print_VkStructureType(obj.sType, "sType", 1);
35378 
35379       if (obj.pNext) {
35380          dumpPNextChain(obj.pNext);
35381       } else {
35382          PRINT_SPACE
35383          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35384      }
35385 
35386      print_VkBool32(obj.formatA4R4G4B4, "formatA4R4G4B4", 1);
35387 
35388      print_VkBool32(obj.formatA4B4G4R4, "formatA4B4G4R4", 0);
35389 
35390      INDENT(-4);
35391      PRINT_SPACE
35392      if (commaNeeded)
35393          _OUT << "}," << std::endl;
35394      else
35395          _OUT << "}" << std::endl;
35396 }
print_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4444FormatsFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35397 static void print_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4444FormatsFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35398      PRINT_SPACE
35399      _OUT << "{" << std::endl;
35400      INDENT(4);
35401 
35402      print_VkStructureType(obj->sType, "sType", 1);
35403 
35404       if (obj->pNext) {
35405          dumpPNextChain(obj->pNext);
35406       } else {
35407          PRINT_SPACE
35408          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35409      }
35410 
35411      print_VkBool32(obj->formatA4R4G4B4, "formatA4R4G4B4", 1);
35412 
35413      print_VkBool32(obj->formatA4B4G4R4, "formatA4B4G4R4", 0);
35414 
35415      INDENT(-4);
35416      PRINT_SPACE
35417      if (commaNeeded)
35418          _OUT << "}," << std::endl;
35419      else
35420          _OUT << "}" << std::endl;
35421 }
35422 
print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT obj,const std::string & s,bool commaNeeded=true)35423 static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35424      PRINT_SPACE
35425      _OUT << "{" << std::endl;
35426      INDENT(4);
35427 
35428      print_VkStructureType(obj.sType, "sType", 1);
35429 
35430       if (obj.pNext) {
35431          dumpPNextChain(obj.pNext);
35432       } else {
35433          PRINT_SPACE
35434          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35435      }
35436 
35437      print_VkBool32(obj.vertexInputDynamicState, "vertexInputDynamicState", 0);
35438 
35439      INDENT(-4);
35440      PRINT_SPACE
35441      if (commaNeeded)
35442          _OUT << "}," << std::endl;
35443      else
35444          _OUT << "}" << std::endl;
35445 }
print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35446 static void print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35447      PRINT_SPACE
35448      _OUT << "{" << std::endl;
35449      INDENT(4);
35450 
35451      print_VkStructureType(obj->sType, "sType", 1);
35452 
35453       if (obj->pNext) {
35454          dumpPNextChain(obj->pNext);
35455       } else {
35456          PRINT_SPACE
35457          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35458      }
35459 
35460      print_VkBool32(obj->vertexInputDynamicState, "vertexInputDynamicState", 0);
35461 
35462      INDENT(-4);
35463      PRINT_SPACE
35464      if (commaNeeded)
35465          _OUT << "}," << std::endl;
35466      else
35467          _OUT << "}" << std::endl;
35468 }
35469 
print_VkVertexInputBindingDescription2EXT(VkVertexInputBindingDescription2EXT obj,const std::string & s,bool commaNeeded=true)35470 static void print_VkVertexInputBindingDescription2EXT(VkVertexInputBindingDescription2EXT obj, const std::string& s, bool commaNeeded=true) {
35471      PRINT_SPACE
35472      _OUT << "{" << std::endl;
35473      INDENT(4);
35474 
35475      print_VkStructureType(obj.sType, "sType", 1);
35476 
35477       if (obj.pNext) {
35478          dumpPNextChain(obj.pNext);
35479       } else {
35480          PRINT_SPACE
35481          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35482      }
35483 
35484      print_uint32_t(obj.binding, "binding", 1);
35485 
35486      print_uint32_t(obj.stride, "stride", 1);
35487 
35488      print_VkVertexInputRate(obj.inputRate, "inputRate", 1);
35489 
35490      print_uint32_t(obj.divisor, "divisor", 0);
35491 
35492      INDENT(-4);
35493      PRINT_SPACE
35494      if (commaNeeded)
35495          _OUT << "}," << std::endl;
35496      else
35497          _OUT << "}" << std::endl;
35498 }
print_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT * obj,const std::string & s,bool commaNeeded=true)35499 static void print_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT * obj, const std::string& s, bool commaNeeded=true) {
35500      PRINT_SPACE
35501      _OUT << "{" << std::endl;
35502      INDENT(4);
35503 
35504      print_VkStructureType(obj->sType, "sType", 1);
35505 
35506       if (obj->pNext) {
35507          dumpPNextChain(obj->pNext);
35508       } else {
35509          PRINT_SPACE
35510          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35511      }
35512 
35513      print_uint32_t(obj->binding, "binding", 1);
35514 
35515      print_uint32_t(obj->stride, "stride", 1);
35516 
35517      print_VkVertexInputRate(obj->inputRate, "inputRate", 1);
35518 
35519      print_uint32_t(obj->divisor, "divisor", 0);
35520 
35521      INDENT(-4);
35522      PRINT_SPACE
35523      if (commaNeeded)
35524          _OUT << "}," << std::endl;
35525      else
35526          _OUT << "}" << std::endl;
35527 }
35528 
print_VkVertexInputAttributeDescription2EXT(VkVertexInputAttributeDescription2EXT obj,const std::string & s,bool commaNeeded=true)35529 static void print_VkVertexInputAttributeDescription2EXT(VkVertexInputAttributeDescription2EXT obj, const std::string& s, bool commaNeeded=true) {
35530      PRINT_SPACE
35531      _OUT << "{" << std::endl;
35532      INDENT(4);
35533 
35534      print_VkStructureType(obj.sType, "sType", 1);
35535 
35536       if (obj.pNext) {
35537          dumpPNextChain(obj.pNext);
35538       } else {
35539          PRINT_SPACE
35540          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35541      }
35542 
35543      print_uint32_t(obj.location, "location", 1);
35544 
35545      print_uint32_t(obj.binding, "binding", 1);
35546 
35547      print_VkFormat(obj.format, "format", 1);
35548 
35549      print_uint32_t(obj.offset, "offset", 0);
35550 
35551      INDENT(-4);
35552      PRINT_SPACE
35553      if (commaNeeded)
35554          _OUT << "}," << std::endl;
35555      else
35556          _OUT << "}" << std::endl;
35557 }
print_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttributeDescription2EXT * obj,const std::string & s,bool commaNeeded=true)35558 static void print_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttributeDescription2EXT * obj, const std::string& s, bool commaNeeded=true) {
35559      PRINT_SPACE
35560      _OUT << "{" << std::endl;
35561      INDENT(4);
35562 
35563      print_VkStructureType(obj->sType, "sType", 1);
35564 
35565       if (obj->pNext) {
35566          dumpPNextChain(obj->pNext);
35567       } else {
35568          PRINT_SPACE
35569          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35570      }
35571 
35572      print_uint32_t(obj->location, "location", 1);
35573 
35574      print_uint32_t(obj->binding, "binding", 1);
35575 
35576      print_VkFormat(obj->format, "format", 1);
35577 
35578      print_uint32_t(obj->offset, "offset", 0);
35579 
35580      INDENT(-4);
35581      PRINT_SPACE
35582      if (commaNeeded)
35583          _OUT << "}," << std::endl;
35584      else
35585          _OUT << "}" << std::endl;
35586 }
35587 
print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT obj,const std::string & s,bool commaNeeded=true)35588 static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35589      PRINT_SPACE
35590      _OUT << "{" << std::endl;
35591      INDENT(4);
35592 
35593      print_VkStructureType(obj.sType, "sType", 1);
35594 
35595       if (obj.pNext) {
35596          dumpPNextChain(obj.pNext);
35597       } else {
35598          PRINT_SPACE
35599          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35600      }
35601 
35602      print_VkBool32(obj.extendedDynamicState2, "extendedDynamicState2", 1);
35603 
35604      print_VkBool32(obj.extendedDynamicState2LogicOp, "extendedDynamicState2LogicOp", 1);
35605 
35606      print_VkBool32(obj.extendedDynamicState2PatchControlPoints, "extendedDynamicState2PatchControlPoints", 0);
35607 
35608      INDENT(-4);
35609      PRINT_SPACE
35610      if (commaNeeded)
35611          _OUT << "}," << std::endl;
35612      else
35613          _OUT << "}" << std::endl;
35614 }
print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35615 static void print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35616      PRINT_SPACE
35617      _OUT << "{" << std::endl;
35618      INDENT(4);
35619 
35620      print_VkStructureType(obj->sType, "sType", 1);
35621 
35622       if (obj->pNext) {
35623          dumpPNextChain(obj->pNext);
35624       } else {
35625          PRINT_SPACE
35626          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35627      }
35628 
35629      print_VkBool32(obj->extendedDynamicState2, "extendedDynamicState2", 1);
35630 
35631      print_VkBool32(obj->extendedDynamicState2LogicOp, "extendedDynamicState2LogicOp", 1);
35632 
35633      print_VkBool32(obj->extendedDynamicState2PatchControlPoints, "extendedDynamicState2PatchControlPoints", 0);
35634 
35635      INDENT(-4);
35636      PRINT_SPACE
35637      if (commaNeeded)
35638          _OUT << "}," << std::endl;
35639      else
35640          _OUT << "}" << std::endl;
35641 }
35642 
print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceColorWriteEnableFeaturesEXT obj,const std::string & s,bool commaNeeded=true)35643 static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(VkPhysicalDeviceColorWriteEnableFeaturesEXT obj, const std::string& s, bool commaNeeded=true) {
35644      PRINT_SPACE
35645      _OUT << "{" << std::endl;
35646      INDENT(4);
35647 
35648      print_VkStructureType(obj.sType, "sType", 1);
35649 
35650       if (obj.pNext) {
35651          dumpPNextChain(obj.pNext);
35652       } else {
35653          PRINT_SPACE
35654          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35655      }
35656 
35657      print_VkBool32(obj.colorWriteEnable, "colorWriteEnable", 0);
35658 
35659      INDENT(-4);
35660      PRINT_SPACE
35661      if (commaNeeded)
35662          _OUT << "}," << std::endl;
35663      else
35664          _OUT << "}" << std::endl;
35665 }
print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDeviceColorWriteEnableFeaturesEXT * obj,const std::string & s,bool commaNeeded=true)35666 static void print_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDeviceColorWriteEnableFeaturesEXT * obj, const std::string& s, bool commaNeeded=true) {
35667      PRINT_SPACE
35668      _OUT << "{" << std::endl;
35669      INDENT(4);
35670 
35671      print_VkStructureType(obj->sType, "sType", 1);
35672 
35673       if (obj->pNext) {
35674          dumpPNextChain(obj->pNext);
35675       } else {
35676          PRINT_SPACE
35677          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35678      }
35679 
35680      print_VkBool32(obj->colorWriteEnable, "colorWriteEnable", 0);
35681 
35682      INDENT(-4);
35683      PRINT_SPACE
35684      if (commaNeeded)
35685          _OUT << "}," << std::endl;
35686      else
35687          _OUT << "}" << std::endl;
35688 }
35689 
print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateInfoEXT obj,const std::string & s,bool commaNeeded=true)35690 static void print_VkPipelineColorWriteCreateInfoEXT(VkPipelineColorWriteCreateInfoEXT obj, const std::string& s, bool commaNeeded=true) {
35691      PRINT_SPACE
35692      _OUT << "{" << std::endl;
35693      INDENT(4);
35694 
35695      print_VkStructureType(obj.sType, "sType", 1);
35696 
35697       if (obj.pNext) {
35698          dumpPNextChain(obj.pNext);
35699       } else {
35700          PRINT_SPACE
35701          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35702      }
35703 
35704      print_uint32_t(obj.attachmentCount, "attachmentCount", 1);
35705 
35706      PRINT_SPACE
35707      _OUT << "\"pColorWriteEnables\":" << std::endl;
35708      PRINT_SPACE
35709      if (obj.pColorWriteEnables) {
35710        _OUT << "[" << std::endl;
35711        for (unsigned int i = 0; i < obj.attachmentCount; i++) {
35712            bool isCommaNeeded = (i+1) != obj.attachmentCount;
35713            print_VkBool32(obj.pColorWriteEnables[i], "", isCommaNeeded);
35714        }
35715        PRINT_SPACE
35716        _OUT << "]" << "" << std::endl;
35717      } else {
35718        _OUT << "\"NULL\"" << "" << std::endl;
35719      }
35720 
35721      INDENT(-4);
35722      PRINT_SPACE
35723      if (commaNeeded)
35724          _OUT << "}," << std::endl;
35725      else
35726          _OUT << "}" << std::endl;
35727 }
print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT * obj,const std::string & s,bool commaNeeded=true)35728 static void print_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT * obj, const std::string& s, bool commaNeeded=true) {
35729      PRINT_SPACE
35730      _OUT << "{" << std::endl;
35731      INDENT(4);
35732 
35733      print_VkStructureType(obj->sType, "sType", 1);
35734 
35735       if (obj->pNext) {
35736          dumpPNextChain(obj->pNext);
35737       } else {
35738          PRINT_SPACE
35739          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35740      }
35741 
35742      print_uint32_t(obj->attachmentCount, "attachmentCount", 1);
35743 
35744      PRINT_SPACE
35745      _OUT << "\"pColorWriteEnables\":" << std::endl;
35746      PRINT_SPACE
35747      if (obj->pColorWriteEnables) {
35748        _OUT << "[" << std::endl;
35749        for (unsigned int i = 0; i < obj->attachmentCount; i++) {
35750            bool isCommaNeeded = (i+1) != obj->attachmentCount;
35751            print_VkBool32(obj->pColorWriteEnables[i], "", isCommaNeeded);
35752        }
35753        PRINT_SPACE
35754        _OUT << "]" << "" << std::endl;
35755      } else {
35756        _OUT << "\"NULL\"" << "" << std::endl;
35757      }
35758 
35759      INDENT(-4);
35760      PRINT_SPACE
35761      if (commaNeeded)
35762          _OUT << "}," << std::endl;
35763      else
35764          _OUT << "}" << std::endl;
35765 }
35766 
print_VkApplicationParametersEXT(VkApplicationParametersEXT obj,const std::string & s,bool commaNeeded=true)35767 static void print_VkApplicationParametersEXT(VkApplicationParametersEXT obj, const std::string& s, bool commaNeeded=true) {
35768      PRINT_SPACE
35769      _OUT << "{" << std::endl;
35770      INDENT(4);
35771 
35772      print_VkStructureType(obj.sType, "sType", 1);
35773 
35774       if (obj.pNext) {
35775          dumpPNextChain(obj.pNext);
35776       } else {
35777          PRINT_SPACE
35778          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35779      }
35780 
35781      print_uint32_t(obj.vendorID, "vendorID", 1);
35782 
35783      print_uint32_t(obj.deviceID, "deviceID", 1);
35784 
35785      print_uint32_t(obj.key, "key", 1);
35786 
35787      print_uint64_t(obj.value, "value", 0);
35788 
35789      INDENT(-4);
35790      PRINT_SPACE
35791      if (commaNeeded)
35792          _OUT << "}," << std::endl;
35793      else
35794          _OUT << "}" << std::endl;
35795 }
print_VkApplicationParametersEXT(const VkApplicationParametersEXT * obj,const std::string & s,bool commaNeeded=true)35796 static void print_VkApplicationParametersEXT(const VkApplicationParametersEXT * obj, const std::string& s, bool commaNeeded=true) {
35797      PRINT_SPACE
35798      _OUT << "{" << std::endl;
35799      INDENT(4);
35800 
35801      print_VkStructureType(obj->sType, "sType", 1);
35802 
35803       if (obj->pNext) {
35804          dumpPNextChain(obj->pNext);
35805       } else {
35806          PRINT_SPACE
35807          _OUT << "\"pNext\":" << "\"NULL\""<< ","<< std::endl;
35808      }
35809 
35810      print_uint32_t(obj->vendorID, "vendorID", 1);
35811 
35812      print_uint32_t(obj->deviceID, "deviceID", 1);
35813 
35814      print_uint32_t(obj->key, "key", 1);
35815 
35816      print_uint64_t(obj->value, "value", 0);
35817 
35818      INDENT(-4);
35819      PRINT_SPACE
35820      if (commaNeeded)
35821          _OUT << "}," << std::endl;
35822      else
35823          _OUT << "}" << std::endl;
35824 }
35825 
35826 /*************************************** Begin prototypes ***********************************/
35827 /*************************************** End prototypes ***********************************/
35828 
dumpPNextChain(const void * pNext)35829 static void dumpPNextChain(const void* pNext) {
35830       VkBaseInStructure *pBase = (VkBaseInStructure*)pNext;
35831       if (pNext) {
35832            PRINT_SPACE
35833            _OUT << "\"pNext\":"<< std::endl;
35834 
35835           switch (pBase->sType) {
35836              case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:print_VkDisplayPresentInfoKHR((VkDisplayPresentInfoKHR *) pNext, "VkDisplayPresentInfoKHR", true);
35837              break;
35838              case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT:print_VkValidationFeaturesEXT((VkValidationFeaturesEXT *) pNext, "VkValidationFeaturesEXT", true);
35839              break;
35840              case VK_STRUCTURE_TYPE_APPLICATION_PARAMETERS_EXT:print_VkApplicationParametersEXT((VkApplicationParametersEXT *) pNext, "VkApplicationParametersEXT", true);
35841              break;
35842              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:print_VkPhysicalDeviceFeatures2((VkPhysicalDeviceFeatures2 *) pNext, "VkPhysicalDeviceFeatures2", true);
35843              break;
35844              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES:print_VkPhysicalDeviceDriverProperties((VkPhysicalDeviceDriverProperties *) pNext, "VkPhysicalDeviceDriverProperties", true);
35845              break;
35846              case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:print_VkPresentRegionsKHR((VkPresentRegionsKHR *) pNext, "VkPresentRegionsKHR", true);
35847              break;
35848              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES:print_VkPhysicalDeviceVariablePointersFeatures((VkPhysicalDeviceVariablePointersFeatures *) pNext, "VkPhysicalDeviceVariablePointersFeatures", true);
35849              break;
35850              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:print_VkPhysicalDeviceExternalImageFormatInfo((VkPhysicalDeviceExternalImageFormatInfo *) pNext, "VkPhysicalDeviceExternalImageFormatInfo", true);
35851              break;
35852              case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:print_VkExternalImageFormatProperties((VkExternalImageFormatProperties *) pNext, "VkExternalImageFormatProperties", true);
35853              break;
35854              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:print_VkPhysicalDeviceIDProperties((VkPhysicalDeviceIDProperties *) pNext, "VkPhysicalDeviceIDProperties", true);
35855              break;
35856              case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:print_VkExternalMemoryImageCreateInfo((VkExternalMemoryImageCreateInfo *) pNext, "VkExternalMemoryImageCreateInfo", true);
35857              break;
35858              case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:print_VkExternalMemoryBufferCreateInfo((VkExternalMemoryBufferCreateInfo *) pNext, "VkExternalMemoryBufferCreateInfo", true);
35859              break;
35860              case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:print_VkExportMemoryAllocateInfo((VkExportMemoryAllocateInfo *) pNext, "VkExportMemoryAllocateInfo", true);
35861              break;
35862              case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:print_VkImportMemoryFdInfoKHR((VkImportMemoryFdInfoKHR *) pNext, "VkImportMemoryFdInfoKHR", true);
35863              break;
35864              case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:print_VkExportSemaphoreCreateInfo((VkExportSemaphoreCreateInfo *) pNext, "VkExportSemaphoreCreateInfo", true);
35865              break;
35866              case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:print_VkExportFenceCreateInfo((VkExportFenceCreateInfo *) pNext, "VkExportFenceCreateInfo", true);
35867              break;
35868              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:print_VkPhysicalDeviceMultiviewFeatures((VkPhysicalDeviceMultiviewFeatures *) pNext, "VkPhysicalDeviceMultiviewFeatures", true);
35869              break;
35870              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:print_VkPhysicalDeviceMultiviewProperties((VkPhysicalDeviceMultiviewProperties *) pNext, "VkPhysicalDeviceMultiviewProperties", true);
35871              break;
35872              case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:print_VkRenderPassMultiviewCreateInfo((VkRenderPassMultiviewCreateInfo *) pNext, "VkRenderPassMultiviewCreateInfo", true);
35873              break;
35874              case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:print_VkSwapchainCounterCreateInfoEXT((VkSwapchainCounterCreateInfoEXT *) pNext, "VkSwapchainCounterCreateInfoEXT", true);
35875              break;
35876              case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:print_VkMemoryAllocateFlagsInfo((VkMemoryAllocateFlagsInfo *) pNext, "VkMemoryAllocateFlagsInfo", true);
35877              break;
35878              case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:print_VkBindBufferMemoryDeviceGroupInfo((VkBindBufferMemoryDeviceGroupInfo *) pNext, "VkBindBufferMemoryDeviceGroupInfo", true);
35879              break;
35880              case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:print_VkBindImageMemoryDeviceGroupInfo((VkBindImageMemoryDeviceGroupInfo *) pNext, "VkBindImageMemoryDeviceGroupInfo", true);
35881              break;
35882              case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:print_VkDeviceGroupRenderPassBeginInfo((VkDeviceGroupRenderPassBeginInfo *) pNext, "VkDeviceGroupRenderPassBeginInfo", true);
35883              break;
35884              case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:print_VkDeviceGroupCommandBufferBeginInfo((VkDeviceGroupCommandBufferBeginInfo *) pNext, "VkDeviceGroupCommandBufferBeginInfo", true);
35885              break;
35886              case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:print_VkDeviceGroupSubmitInfo((VkDeviceGroupSubmitInfo *) pNext, "VkDeviceGroupSubmitInfo", true);
35887              break;
35888              case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:print_VkImageSwapchainCreateInfoKHR((VkImageSwapchainCreateInfoKHR *) pNext, "VkImageSwapchainCreateInfoKHR", true);
35889              break;
35890              case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:print_VkBindImageMemorySwapchainInfoKHR((VkBindImageMemorySwapchainInfoKHR *) pNext, "VkBindImageMemorySwapchainInfoKHR", true);
35891              break;
35892              case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:print_VkDeviceGroupPresentInfoKHR((VkDeviceGroupPresentInfoKHR *) pNext, "VkDeviceGroupPresentInfoKHR", true);
35893              break;
35894              case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:print_VkDeviceGroupDeviceCreateInfo((VkDeviceGroupDeviceCreateInfo *) pNext, "VkDeviceGroupDeviceCreateInfo", true);
35895              break;
35896              case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:print_VkDeviceGroupSwapchainCreateInfoKHR((VkDeviceGroupSwapchainCreateInfoKHR *) pNext, "VkDeviceGroupSwapchainCreateInfoKHR", true);
35897              break;
35898              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:print_VkPhysicalDeviceDiscardRectanglePropertiesEXT((VkPhysicalDeviceDiscardRectanglePropertiesEXT *) pNext, "VkPhysicalDeviceDiscardRectanglePropertiesEXT", true);
35899              break;
35900              case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:print_VkPipelineDiscardRectangleStateCreateInfoEXT((VkPipelineDiscardRectangleStateCreateInfoEXT *) pNext, "VkPipelineDiscardRectangleStateCreateInfoEXT", true);
35901              break;
35902              case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:print_VkRenderPassInputAttachmentAspectCreateInfo((VkRenderPassInputAttachmentAspectCreateInfo *) pNext, "VkRenderPassInputAttachmentAspectCreateInfo", true);
35903              break;
35904              case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:print_VkSharedPresentSurfaceCapabilitiesKHR((VkSharedPresentSurfaceCapabilitiesKHR *) pNext, "VkSharedPresentSurfaceCapabilitiesKHR", true);
35905              break;
35906              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:print_VkPhysicalDevice16BitStorageFeatures((VkPhysicalDevice16BitStorageFeatures *) pNext, "VkPhysicalDevice16BitStorageFeatures", true);
35907              break;
35908              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:print_VkPhysicalDeviceSubgroupProperties((VkPhysicalDeviceSubgroupProperties *) pNext, "VkPhysicalDeviceSubgroupProperties", true);
35909              break;
35910              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES:print_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures((VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures *) pNext, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures", true);
35911              break;
35912              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:print_VkPhysicalDevicePointClippingProperties((VkPhysicalDevicePointClippingProperties *) pNext, "VkPhysicalDevicePointClippingProperties", true);
35913              break;
35914              case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:print_VkMemoryDedicatedRequirements((VkMemoryDedicatedRequirements *) pNext, "VkMemoryDedicatedRequirements", true);
35915              break;
35916              case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:print_VkMemoryDedicatedAllocateInfo((VkMemoryDedicatedAllocateInfo *) pNext, "VkMemoryDedicatedAllocateInfo", true);
35917              break;
35918              case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:print_VkImageViewUsageCreateInfo((VkImageViewUsageCreateInfo *) pNext, "VkImageViewUsageCreateInfo", true);
35919              break;
35920              case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:print_VkPipelineTessellationDomainOriginStateCreateInfo((VkPipelineTessellationDomainOriginStateCreateInfo *) pNext, "VkPipelineTessellationDomainOriginStateCreateInfo", true);
35921              break;
35922              case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:print_VkSamplerYcbcrConversionInfo((VkSamplerYcbcrConversionInfo *) pNext, "VkSamplerYcbcrConversionInfo", true);
35923              break;
35924              case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:print_VkBindImagePlaneMemoryInfo((VkBindImagePlaneMemoryInfo *) pNext, "VkBindImagePlaneMemoryInfo", true);
35925              break;
35926              case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:print_VkImagePlaneMemoryRequirementsInfo((VkImagePlaneMemoryRequirementsInfo *) pNext, "VkImagePlaneMemoryRequirementsInfo", true);
35927              break;
35928              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:print_VkPhysicalDeviceSamplerYcbcrConversionFeatures((VkPhysicalDeviceSamplerYcbcrConversionFeatures *) pNext, "VkPhysicalDeviceSamplerYcbcrConversionFeatures", true);
35929              break;
35930              case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:print_VkSamplerYcbcrConversionImageFormatProperties((VkSamplerYcbcrConversionImageFormatProperties *) pNext, "VkSamplerYcbcrConversionImageFormatProperties", true);
35931              break;
35932              case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:print_VkProtectedSubmitInfo((VkProtectedSubmitInfo *) pNext, "VkProtectedSubmitInfo", true);
35933              break;
35934              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:print_VkPhysicalDeviceProtectedMemoryFeatures((VkPhysicalDeviceProtectedMemoryFeatures *) pNext, "VkPhysicalDeviceProtectedMemoryFeatures", true);
35935              break;
35936              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:print_VkPhysicalDeviceProtectedMemoryProperties((VkPhysicalDeviceProtectedMemoryProperties *) pNext, "VkPhysicalDeviceProtectedMemoryProperties", true);
35937              break;
35938              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES:print_VkPhysicalDeviceSamplerFilterMinmaxProperties((VkPhysicalDeviceSamplerFilterMinmaxProperties *) pNext, "VkPhysicalDeviceSamplerFilterMinmaxProperties", true);
35939              break;
35940              case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:print_VkSampleLocationsInfoEXT((VkSampleLocationsInfoEXT *) pNext, "VkSampleLocationsInfoEXT", true);
35941              break;
35942              case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:print_VkRenderPassSampleLocationsBeginInfoEXT((VkRenderPassSampleLocationsBeginInfoEXT *) pNext, "VkRenderPassSampleLocationsBeginInfoEXT", true);
35943              break;
35944              case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:print_VkPipelineSampleLocationsStateCreateInfoEXT((VkPipelineSampleLocationsStateCreateInfoEXT *) pNext, "VkPipelineSampleLocationsStateCreateInfoEXT", true);
35945              break;
35946              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:print_VkPhysicalDeviceSampleLocationsPropertiesEXT((VkPhysicalDeviceSampleLocationsPropertiesEXT *) pNext, "VkPhysicalDeviceSampleLocationsPropertiesEXT", true);
35947              break;
35948              case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO:print_VkSamplerReductionModeCreateInfo((VkSamplerReductionModeCreateInfo *) pNext, "VkSamplerReductionModeCreateInfo", true);
35949              break;
35950              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:print_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT((VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT *) pNext, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT", true);
35951              break;
35952              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:print_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT((VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT *) pNext, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT", true);
35953              break;
35954              case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:print_VkPipelineColorBlendAdvancedStateCreateInfoEXT((VkPipelineColorBlendAdvancedStateCreateInfoEXT *) pNext, "VkPipelineColorBlendAdvancedStateCreateInfoEXT", true);
35955              break;
35956              case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO:print_VkImageFormatListCreateInfo((VkImageFormatListCreateInfo *) pNext, "VkImageFormatListCreateInfo", true);
35957              break;
35958              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:print_VkPhysicalDeviceMaintenance3Properties((VkPhysicalDeviceMaintenance3Properties *) pNext, "VkPhysicalDeviceMaintenance3Properties", true);
35959              break;
35960              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES:print_VkPhysicalDeviceShaderDrawParametersFeatures((VkPhysicalDeviceShaderDrawParametersFeatures *) pNext, "VkPhysicalDeviceShaderDrawParametersFeatures", true);
35961              break;
35962              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES:print_VkPhysicalDeviceShaderFloat16Int8Features((VkPhysicalDeviceShaderFloat16Int8Features *) pNext, "VkPhysicalDeviceShaderFloat16Int8Features", true);
35963              break;
35964              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES:print_VkPhysicalDeviceFloatControlsProperties((VkPhysicalDeviceFloatControlsProperties *) pNext, "VkPhysicalDeviceFloatControlsProperties", true);
35965              break;
35966              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES:print_VkPhysicalDeviceHostQueryResetFeatures((VkPhysicalDeviceHostQueryResetFeatures *) pNext, "VkPhysicalDeviceHostQueryResetFeatures", true);
35967              break;
35968              case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT:print_VkDeviceQueueGlobalPriorityCreateInfoEXT((VkDeviceQueueGlobalPriorityCreateInfoEXT *) pNext, "VkDeviceQueueGlobalPriorityCreateInfoEXT", true);
35969              break;
35970              case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:print_VkDebugUtilsMessengerCreateInfoEXT((VkDebugUtilsMessengerCreateInfoEXT *) pNext, "VkDebugUtilsMessengerCreateInfoEXT", true);
35971              break;
35972              case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:print_VkImportMemoryHostPointerInfoEXT((VkImportMemoryHostPointerInfoEXT *) pNext, "VkImportMemoryHostPointerInfoEXT", true);
35973              break;
35974              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:print_VkPhysicalDeviceExternalMemoryHostPropertiesEXT((VkPhysicalDeviceExternalMemoryHostPropertiesEXT *) pNext, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT", true);
35975              break;
35976              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:print_VkPhysicalDeviceConservativeRasterizationPropertiesEXT((VkPhysicalDeviceConservativeRasterizationPropertiesEXT *) pNext, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT", true);
35977              break;
35978              case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationConservativeStateCreateInfoEXT((VkPipelineRasterizationConservativeStateCreateInfoEXT *) pNext, "VkPipelineRasterizationConservativeStateCreateInfoEXT", true);
35979              break;
35980              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES:print_VkPhysicalDeviceDescriptorIndexingFeatures((VkPhysicalDeviceDescriptorIndexingFeatures *) pNext, "VkPhysicalDeviceDescriptorIndexingFeatures", true);
35981              break;
35982              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES:print_VkPhysicalDeviceDescriptorIndexingProperties((VkPhysicalDeviceDescriptorIndexingProperties *) pNext, "VkPhysicalDeviceDescriptorIndexingProperties", true);
35983              break;
35984              case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO:print_VkDescriptorSetLayoutBindingFlagsCreateInfo((VkDescriptorSetLayoutBindingFlagsCreateInfo *) pNext, "VkDescriptorSetLayoutBindingFlagsCreateInfo", true);
35985              break;
35986              case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO:print_VkDescriptorSetVariableDescriptorCountAllocateInfo((VkDescriptorSetVariableDescriptorCountAllocateInfo *) pNext, "VkDescriptorSetVariableDescriptorCountAllocateInfo", true);
35987              break;
35988              case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT:print_VkDescriptorSetVariableDescriptorCountLayoutSupport((VkDescriptorSetVariableDescriptorCountLayoutSupport *) pNext, "VkDescriptorSetVariableDescriptorCountLayoutSupport", true);
35989              break;
35990              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES:print_VkPhysicalDeviceTimelineSemaphoreFeatures((VkPhysicalDeviceTimelineSemaphoreFeatures *) pNext, "VkPhysicalDeviceTimelineSemaphoreFeatures", true);
35991              break;
35992              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES:print_VkPhysicalDeviceTimelineSemaphoreProperties((VkPhysicalDeviceTimelineSemaphoreProperties *) pNext, "VkPhysicalDeviceTimelineSemaphoreProperties", true);
35993              break;
35994              case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO:print_VkSemaphoreTypeCreateInfo((VkSemaphoreTypeCreateInfo *) pNext, "VkSemaphoreTypeCreateInfo", true);
35995              break;
35996              case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO:print_VkTimelineSemaphoreSubmitInfo((VkTimelineSemaphoreSubmitInfo *) pNext, "VkTimelineSemaphoreSubmitInfo", true);
35997              break;
35998              case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:print_VkPipelineVertexInputDivisorStateCreateInfoEXT((VkPipelineVertexInputDivisorStateCreateInfoEXT *) pNext, "VkPipelineVertexInputDivisorStateCreateInfoEXT", true);
35999              break;
36000              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:print_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT((VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT *) pNext, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT", true);
36001              break;
36002              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT:print_VkPhysicalDevicePCIBusInfoPropertiesEXT((VkPhysicalDevicePCIBusInfoPropertiesEXT *) pNext, "VkPhysicalDevicePCIBusInfoPropertiesEXT", true);
36003              break;
36004              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES:print_VkPhysicalDevice8BitStorageFeatures((VkPhysicalDevice8BitStorageFeatures *) pNext, "VkPhysicalDevice8BitStorageFeatures", true);
36005              break;
36006              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES:print_VkPhysicalDeviceVulkanMemoryModelFeatures((VkPhysicalDeviceVulkanMemoryModelFeatures *) pNext, "VkPhysicalDeviceVulkanMemoryModelFeatures", true);
36007              break;
36008              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES:print_VkPhysicalDeviceShaderAtomicInt64Features((VkPhysicalDeviceShaderAtomicInt64Features *) pNext, "VkPhysicalDeviceShaderAtomicInt64Features", true);
36009              break;
36010              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT:print_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT((VkPhysicalDeviceShaderAtomicFloatFeaturesEXT *) pNext, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT", true);
36011              break;
36012              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT:print_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT((VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT *) pNext, "VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT", true);
36013              break;
36014              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES:print_VkPhysicalDeviceDepthStencilResolveProperties((VkPhysicalDeviceDepthStencilResolveProperties *) pNext, "VkPhysicalDeviceDepthStencilResolveProperties", true);
36015              break;
36016              case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE:print_VkSubpassDescriptionDepthStencilResolve((VkSubpassDescriptionDepthStencilResolve *) pNext, "VkSubpassDescriptionDepthStencilResolve", true);
36017              break;
36018              case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT:print_VkImageViewASTCDecodeModeEXT((VkImageViewASTCDecodeModeEXT *) pNext, "VkImageViewASTCDecodeModeEXT", true);
36019              break;
36020              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT:print_VkPhysicalDeviceASTCDecodeFeaturesEXT((VkPhysicalDeviceASTCDecodeFeaturesEXT *) pNext, "VkPhysicalDeviceASTCDecodeFeaturesEXT", true);
36021              break;
36022              case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT:print_VkDrmFormatModifierPropertiesListEXT((VkDrmFormatModifierPropertiesListEXT *) pNext, "VkDrmFormatModifierPropertiesListEXT", true);
36023              break;
36024              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT:print_VkPhysicalDeviceImageDrmFormatModifierInfoEXT((VkPhysicalDeviceImageDrmFormatModifierInfoEXT *) pNext, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT", true);
36025              break;
36026              case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT:print_VkImageDrmFormatModifierListCreateInfoEXT((VkImageDrmFormatModifierListCreateInfoEXT *) pNext, "VkImageDrmFormatModifierListCreateInfoEXT", true);
36027              break;
36028              case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT:print_VkImageDrmFormatModifierExplicitCreateInfoEXT((VkImageDrmFormatModifierExplicitCreateInfoEXT *) pNext, "VkImageDrmFormatModifierExplicitCreateInfoEXT", true);
36029              break;
36030              case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO:print_VkImageStencilUsageCreateInfo((VkImageStencilUsageCreateInfo *) pNext, "VkImageStencilUsageCreateInfo", true);
36031              break;
36032              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES:print_VkPhysicalDeviceScalarBlockLayoutFeatures((VkPhysicalDeviceScalarBlockLayoutFeatures *) pNext, "VkPhysicalDeviceScalarBlockLayoutFeatures", true);
36033              break;
36034              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES:print_VkPhysicalDeviceUniformBufferStandardLayoutFeatures((VkPhysicalDeviceUniformBufferStandardLayoutFeatures *) pNext, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures", true);
36035              break;
36036              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT:print_VkPhysicalDeviceDepthClipEnableFeaturesEXT((VkPhysicalDeviceDepthClipEnableFeaturesEXT *) pNext, "VkPhysicalDeviceDepthClipEnableFeaturesEXT", true);
36037              break;
36038              case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationDepthClipStateCreateInfoEXT((VkPipelineRasterizationDepthClipStateCreateInfoEXT *) pNext, "VkPipelineRasterizationDepthClipStateCreateInfoEXT", true);
36039              break;
36040              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT:print_VkPhysicalDeviceMemoryBudgetPropertiesEXT((VkPhysicalDeviceMemoryBudgetPropertiesEXT *) pNext, "VkPhysicalDeviceMemoryBudgetPropertiesEXT", true);
36041              break;
36042              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES:print_VkPhysicalDeviceBufferDeviceAddressFeatures((VkPhysicalDeviceBufferDeviceAddressFeatures *) pNext, "VkPhysicalDeviceBufferDeviceAddressFeatures", true);
36043              break;
36044              case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO:print_VkBufferOpaqueCaptureAddressCreateInfo((VkBufferOpaqueCaptureAddressCreateInfo *) pNext, "VkBufferOpaqueCaptureAddressCreateInfo", true);
36045              break;
36046              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT:print_VkPhysicalDeviceImageViewImageFormatInfoEXT((VkPhysicalDeviceImageViewImageFormatInfoEXT *) pNext, "VkPhysicalDeviceImageViewImageFormatInfoEXT", true);
36047              break;
36048              case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT:print_VkFilterCubicImageViewImageFormatPropertiesEXT((VkFilterCubicImageViewImageFormatPropertiesEXT *) pNext, "VkFilterCubicImageViewImageFormatPropertiesEXT", true);
36049              break;
36050              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES:print_VkPhysicalDeviceImagelessFramebufferFeatures((VkPhysicalDeviceImagelessFramebufferFeatures *) pNext, "VkPhysicalDeviceImagelessFramebufferFeatures", true);
36051              break;
36052              case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO:print_VkFramebufferAttachmentsCreateInfo((VkFramebufferAttachmentsCreateInfo *) pNext, "VkFramebufferAttachmentsCreateInfo", true);
36053              break;
36054              case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO:print_VkRenderPassAttachmentBeginInfo((VkRenderPassAttachmentBeginInfo *) pNext, "VkRenderPassAttachmentBeginInfo", true);
36055              break;
36056              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT:print_VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT((VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT *) pNext, "VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT", true);
36057              break;
36058              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT:print_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT((VkPhysicalDeviceYcbcrImageArraysFeaturesEXT *) pNext, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT", true);
36059              break;
36060              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR:print_VkPhysicalDevicePerformanceQueryFeaturesKHR((VkPhysicalDevicePerformanceQueryFeaturesKHR *) pNext, "VkPhysicalDevicePerformanceQueryFeaturesKHR", true);
36061              break;
36062              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR:print_VkPhysicalDevicePerformanceQueryPropertiesKHR((VkPhysicalDevicePerformanceQueryPropertiesKHR *) pNext, "VkPhysicalDevicePerformanceQueryPropertiesKHR", true);
36063              break;
36064              case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR:print_VkQueryPoolPerformanceCreateInfoKHR((VkQueryPoolPerformanceCreateInfoKHR *) pNext, "VkQueryPoolPerformanceCreateInfoKHR", true);
36065              break;
36066              case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR:print_VkPerformanceQuerySubmitInfoKHR((VkPerformanceQuerySubmitInfoKHR *) pNext, "VkPerformanceQuerySubmitInfoKHR", true);
36067              break;
36068              case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_RESERVATION_INFO_KHR:print_VkPerformanceQueryReservationInfoKHR((VkPerformanceQueryReservationInfoKHR *) pNext, "VkPerformanceQueryReservationInfoKHR", true);
36069              break;
36070              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR:print_VkPhysicalDeviceShaderClockFeaturesKHR((VkPhysicalDeviceShaderClockFeaturesKHR *) pNext, "VkPhysicalDeviceShaderClockFeaturesKHR", true);
36071              break;
36072              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT:print_VkPhysicalDeviceIndexTypeUint8FeaturesEXT((VkPhysicalDeviceIndexTypeUint8FeaturesEXT *) pNext, "VkPhysicalDeviceIndexTypeUint8FeaturesEXT", true);
36073              break;
36074              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT:print_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT((VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT *) pNext, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT", true);
36075              break;
36076              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES:print_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures((VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures *) pNext, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures", true);
36077              break;
36078              case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT:print_VkAttachmentReferenceStencilLayout((VkAttachmentReferenceStencilLayout *) pNext, "VkAttachmentReferenceStencilLayout", true);
36079              break;
36080              case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT:print_VkAttachmentDescriptionStencilLayout((VkAttachmentDescriptionStencilLayout *) pNext, "VkAttachmentDescriptionStencilLayout", true);
36081              break;
36082              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:print_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT((VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT *) pNext, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT", true);
36083              break;
36084              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:print_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT((VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT *) pNext, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT", true);
36085              break;
36086              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT:print_VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT((VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT *) pNext, "VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT", true);
36087              break;
36088              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT:print_VkPhysicalDeviceSubgroupSizeControlFeaturesEXT((VkPhysicalDeviceSubgroupSizeControlFeaturesEXT *) pNext, "VkPhysicalDeviceSubgroupSizeControlFeaturesEXT", true);
36089              break;
36090              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT:print_VkPhysicalDeviceSubgroupSizeControlPropertiesEXT((VkPhysicalDeviceSubgroupSizeControlPropertiesEXT *) pNext, "VkPhysicalDeviceSubgroupSizeControlPropertiesEXT", true);
36091              break;
36092              case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT:print_VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT((VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT *) pNext, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT", true);
36093              break;
36094              case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO:print_VkMemoryOpaqueCaptureAddressAllocateInfo((VkMemoryOpaqueCaptureAddressAllocateInfo *) pNext, "VkMemoryOpaqueCaptureAddressAllocateInfo", true);
36095              break;
36096              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT:print_VkPhysicalDeviceLineRasterizationFeaturesEXT((VkPhysicalDeviceLineRasterizationFeaturesEXT *) pNext, "VkPhysicalDeviceLineRasterizationFeaturesEXT", true);
36097              break;
36098              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT:print_VkPhysicalDeviceLineRasterizationPropertiesEXT((VkPhysicalDeviceLineRasterizationPropertiesEXT *) pNext, "VkPhysicalDeviceLineRasterizationPropertiesEXT", true);
36099              break;
36100              case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT:print_VkPipelineRasterizationLineStateCreateInfoEXT((VkPipelineRasterizationLineStateCreateInfoEXT *) pNext, "VkPipelineRasterizationLineStateCreateInfoEXT", true);
36101              break;
36102              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES:print_VkPhysicalDeviceVulkan11Features((VkPhysicalDeviceVulkan11Features *) pNext, "VkPhysicalDeviceVulkan11Features", true);
36103              break;
36104              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES:print_VkPhysicalDeviceVulkan11Properties((VkPhysicalDeviceVulkan11Properties *) pNext, "VkPhysicalDeviceVulkan11Properties", true);
36105              break;
36106              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES:print_VkPhysicalDeviceVulkan12Features((VkPhysicalDeviceVulkan12Features *) pNext, "VkPhysicalDeviceVulkan12Features", true);
36107              break;
36108              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES:print_VkPhysicalDeviceVulkan12Properties((VkPhysicalDeviceVulkan12Properties *) pNext, "VkPhysicalDeviceVulkan12Properties", true);
36109              break;
36110              case VK_STRUCTURE_TYPE_FAULT_CALLBACK_INFO:print_VkFaultCallbackInfo((VkFaultCallbackInfo *) pNext, "VkFaultCallbackInfo", true);
36111              break;
36112              case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT:print_VkSamplerCustomBorderColorCreateInfoEXT((VkSamplerCustomBorderColorCreateInfoEXT *) pNext, "VkSamplerCustomBorderColorCreateInfoEXT", true);
36113              break;
36114              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT:print_VkPhysicalDeviceCustomBorderColorPropertiesEXT((VkPhysicalDeviceCustomBorderColorPropertiesEXT *) pNext, "VkPhysicalDeviceCustomBorderColorPropertiesEXT", true);
36115              break;
36116              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT:print_VkPhysicalDeviceCustomBorderColorFeaturesEXT((VkPhysicalDeviceCustomBorderColorFeaturesEXT *) pNext, "VkPhysicalDeviceCustomBorderColorFeaturesEXT", true);
36117              break;
36118              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT:print_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT((VkPhysicalDeviceExtendedDynamicStateFeaturesEXT *) pNext, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT", true);
36119              break;
36120              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:print_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT((VkPhysicalDeviceExtendedDynamicState2FeaturesEXT *) pNext, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT", true);
36121              break;
36122              case VK_STRUCTURE_TYPE_PIPELINE_OFFLINE_CREATE_INFO:print_VkPipelineOfflineCreateInfo((VkPipelineOfflineCreateInfo *) pNext, "VkPipelineOfflineCreateInfo", true);
36123              break;
36124              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT:print_VkPhysicalDeviceRobustness2FeaturesEXT((VkPhysicalDeviceRobustness2FeaturesEXT *) pNext, "VkPhysicalDeviceRobustness2FeaturesEXT", true);
36125              break;
36126              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT:print_VkPhysicalDeviceRobustness2PropertiesEXT((VkPhysicalDeviceRobustness2PropertiesEXT *) pNext, "VkPhysicalDeviceRobustness2PropertiesEXT", true);
36127              break;
36128              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT:print_VkPhysicalDeviceImageRobustnessFeaturesEXT((VkPhysicalDeviceImageRobustnessFeaturesEXT *) pNext, "VkPhysicalDeviceImageRobustnessFeaturesEXT", true);
36129              break;
36130              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT:print_VkPhysicalDevice4444FormatsFeaturesEXT((VkPhysicalDevice4444FormatsFeaturesEXT *) pNext, "VkPhysicalDevice4444FormatsFeaturesEXT", true);
36131              break;
36132              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT:print_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT((VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT *) pNext, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT", true);
36133              break;
36134              case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:print_VkFragmentShadingRateAttachmentInfoKHR((VkFragmentShadingRateAttachmentInfoKHR *) pNext, "VkFragmentShadingRateAttachmentInfoKHR", true);
36135              break;
36136              case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR:print_VkPipelineFragmentShadingRateStateCreateInfoKHR((VkPipelineFragmentShadingRateStateCreateInfoKHR *) pNext, "VkPipelineFragmentShadingRateStateCreateInfoKHR", true);
36137              break;
36138              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR:print_VkPhysicalDeviceFragmentShadingRateFeaturesKHR((VkPhysicalDeviceFragmentShadingRateFeaturesKHR *) pNext, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR", true);
36139              break;
36140              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR:print_VkPhysicalDeviceFragmentShadingRatePropertiesKHR((VkPhysicalDeviceFragmentShadingRatePropertiesKHR *) pNext, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR", true);
36141              break;
36142              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR:print_VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR((VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR *) pNext, "VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR", true);
36143              break;
36144              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:print_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT((VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT *) pNext, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT", true);
36145              break;
36146              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:print_VkPhysicalDeviceColorWriteEnableFeaturesEXT((VkPhysicalDeviceColorWriteEnableFeaturesEXT *) pNext, "VkPhysicalDeviceColorWriteEnableFeaturesEXT", true);
36147              break;
36148              case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:print_VkPipelineColorWriteCreateInfoEXT((VkPipelineColorWriteCreateInfoEXT *) pNext, "VkPipelineColorWriteCreateInfoEXT", true);
36149              break;
36150              case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:print_VkMemoryBarrier2KHR((VkMemoryBarrier2KHR *) pNext, "VkMemoryBarrier2KHR", true);
36151              break;
36152              case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:print_VkQueueFamilyCheckpointProperties2NV((VkQueueFamilyCheckpointProperties2NV *) pNext, "VkQueueFamilyCheckpointProperties2NV", true);
36153              break;
36154              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:print_VkPhysicalDeviceSynchronization2FeaturesKHR((VkPhysicalDeviceSynchronization2FeaturesKHR *) pNext, "VkPhysicalDeviceSynchronization2FeaturesKHR", true);
36155              break;
36156              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_PROPERTIES:print_VkPhysicalDeviceVulkanSC10Properties((VkPhysicalDeviceVulkanSC10Properties *) pNext, "VkPhysicalDeviceVulkanSC10Properties", true);
36157              break;
36158              case VK_STRUCTURE_TYPE_DEVICE_OBJECT_RESERVATION_CREATE_INFO:print_VkDeviceObjectReservationCreateInfo((VkDeviceObjectReservationCreateInfo *) pNext, "VkDeviceObjectReservationCreateInfo", true);
36159              break;
36160              case VK_STRUCTURE_TYPE_COMMAND_POOL_MEMORY_RESERVATION_CREATE_INFO:print_VkCommandPoolMemoryReservationCreateInfo((VkCommandPoolMemoryReservationCreateInfo *) pNext, "VkCommandPoolMemoryReservationCreateInfo", true);
36161              break;
36162              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_SC_1_0_FEATURES:print_VkPhysicalDeviceVulkanSC10Features((VkPhysicalDeviceVulkanSC10Features *) pNext, "VkPhysicalDeviceVulkanSC10Features", true);
36163              break;
36164              case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:print_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT((VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT *) pNext, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT", true);
36165              break;
36166              case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:print_VkDrmFormatModifierPropertiesList2EXT((VkDrmFormatModifierPropertiesList2EXT *) pNext, "VkDrmFormatModifierPropertiesList2EXT", true);
36167              break;
36168              default: assert(false); // No structure type matching
36169          }
36170      }
36171   }
36172 
36173 }//End of namespace vk_json
36174 
36175 #endif // _VULKAN_JSON_DATA_HPP