1 // Copyright (C) 2018 The Android Open Source Project
2 // Copyright (C) 2018 Google Inc.
3 //
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
7 //
8 // http://www.apache.org/licenses/LICENSE-2.0
9 //
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
15
16 // Autogenerated module goldfish_vk_testing
17 //
18 // (impl) generated by codegen/vulkan/scripts/genvk.py -registry codegen/vulkan/xml/vk.xml
19 // -registryGfxstream codegen/vulkan/xml/vk_gfxstream.xml cereal -o host/vulkan/cereal
20 //
21 // Please do not modify directly;
22 // re-run gfxstream-protocols/scripts/generate-vulkan-sources.sh,
23 // or directly from Python by defining:
24 // VULKAN_REGISTRY_XML_DIR : Directory containing vk.xml
25 // VULKAN_REGISTRY_SCRIPTS_DIR : Directory containing genvk.py
26 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
27 //
28 // python3 $VULKAN_REGISTRY_SCRIPTS_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o
29 // $CEREAL_OUTPUT_DIR
30 //
31
32 #include "goldfish_vk_testing.h"
33
34 #include <string.h>
35
36 #include "goldfish_vk_extension_structs.h"
37 #include "goldfish_vk_private_defs.h"
38
39 namespace gfxstream {
40 namespace vk {
41
42 void checkEqual_extension_struct(const void* structExtension, const void* structExtension2,
43 OnFailCompareFunc onFail);
44
45 #ifdef VK_VERSION_1_0
checkEqual_VkExtent2D(const VkExtent2D * a,const VkExtent2D * b,OnFailCompareFunc onFail)46 void checkEqual_VkExtent2D(const VkExtent2D* a, const VkExtent2D* b, OnFailCompareFunc onFail) {
47 if (!((a->width) == (b->width))) {
48 onFail("a->width (Error: Value not equal)");
49 };
50 if (!((a->height) == (b->height))) {
51 onFail("a->height (Error: Value not equal)");
52 };
53 }
54
checkEqual_VkExtent3D(const VkExtent3D * a,const VkExtent3D * b,OnFailCompareFunc onFail)55 void checkEqual_VkExtent3D(const VkExtent3D* a, const VkExtent3D* b, OnFailCompareFunc onFail) {
56 if (!((a->width) == (b->width))) {
57 onFail("a->width (Error: Value not equal)");
58 };
59 if (!((a->height) == (b->height))) {
60 onFail("a->height (Error: Value not equal)");
61 };
62 if (!((a->depth) == (b->depth))) {
63 onFail("a->depth (Error: Value not equal)");
64 };
65 }
66
checkEqual_VkOffset2D(const VkOffset2D * a,const VkOffset2D * b,OnFailCompareFunc onFail)67 void checkEqual_VkOffset2D(const VkOffset2D* a, const VkOffset2D* b, OnFailCompareFunc onFail) {
68 if (!((a->x) == (b->x))) {
69 onFail("a->x (Error: Value not equal)");
70 };
71 if (!((a->y) == (b->y))) {
72 onFail("a->y (Error: Value not equal)");
73 };
74 }
75
checkEqual_VkOffset3D(const VkOffset3D * a,const VkOffset3D * b,OnFailCompareFunc onFail)76 void checkEqual_VkOffset3D(const VkOffset3D* a, const VkOffset3D* b, OnFailCompareFunc onFail) {
77 if (!((a->x) == (b->x))) {
78 onFail("a->x (Error: Value not equal)");
79 };
80 if (!((a->y) == (b->y))) {
81 onFail("a->y (Error: Value not equal)");
82 };
83 if (!((a->z) == (b->z))) {
84 onFail("a->z (Error: Value not equal)");
85 };
86 }
87
checkEqual_VkRect2D(const VkRect2D * a,const VkRect2D * b,OnFailCompareFunc onFail)88 void checkEqual_VkRect2D(const VkRect2D* a, const VkRect2D* b, OnFailCompareFunc onFail) {
89 checkEqual_VkOffset2D(&a->offset, &b->offset, onFail);
90 checkEqual_VkExtent2D(&a->extent, &b->extent, onFail);
91 }
92
checkEqual_VkBaseInStructure(const VkBaseInStructure * a,const VkBaseInStructure * b,OnFailCompareFunc onFail)93 void checkEqual_VkBaseInStructure(const VkBaseInStructure* a, const VkBaseInStructure* b,
94 OnFailCompareFunc onFail) {
95 if (!((a->sType) == (b->sType))) {
96 onFail("a->sType (Error: Value not equal)");
97 };
98 if (a->pNext) {
99 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
100 }
101 }
102
checkEqual_VkBaseOutStructure(const VkBaseOutStructure * a,const VkBaseOutStructure * b,OnFailCompareFunc onFail)103 void checkEqual_VkBaseOutStructure(const VkBaseOutStructure* a, const VkBaseOutStructure* b,
104 OnFailCompareFunc onFail) {
105 if (!((a->sType) == (b->sType))) {
106 onFail("a->sType (Error: Value not equal)");
107 };
108 if (a->pNext) {
109 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
110 }
111 }
112
checkEqual_VkBufferMemoryBarrier(const VkBufferMemoryBarrier * a,const VkBufferMemoryBarrier * b,OnFailCompareFunc onFail)113 void checkEqual_VkBufferMemoryBarrier(const VkBufferMemoryBarrier* a,
114 const VkBufferMemoryBarrier* b, OnFailCompareFunc onFail) {
115 if (!((a->sType) == (b->sType))) {
116 onFail("a->sType (Error: Value not equal)");
117 };
118 if (a->pNext) {
119 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
120 }
121 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
122 onFail("a->srcAccessMask (Error: Value not equal)");
123 };
124 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
125 onFail("a->dstAccessMask (Error: Value not equal)");
126 };
127 if (!((a->srcQueueFamilyIndex) == (b->srcQueueFamilyIndex))) {
128 onFail("a->srcQueueFamilyIndex (Error: Value not equal)");
129 };
130 if (!((a->dstQueueFamilyIndex) == (b->dstQueueFamilyIndex))) {
131 onFail("a->dstQueueFamilyIndex (Error: Value not equal)");
132 };
133 if (!((a->buffer) == (b->buffer))) {
134 onFail("a->buffer (Error: Value not equal)");
135 };
136 if (!((a->offset) == (b->offset))) {
137 onFail("a->offset (Error: Value not equal)");
138 };
139 if (!((a->size) == (b->size))) {
140 onFail("a->size (Error: Value not equal)");
141 };
142 }
143
checkEqual_VkDispatchIndirectCommand(const VkDispatchIndirectCommand * a,const VkDispatchIndirectCommand * b,OnFailCompareFunc onFail)144 void checkEqual_VkDispatchIndirectCommand(const VkDispatchIndirectCommand* a,
145 const VkDispatchIndirectCommand* b,
146 OnFailCompareFunc onFail) {
147 if (!((a->x) == (b->x))) {
148 onFail("a->x (Error: Value not equal)");
149 };
150 if (!((a->y) == (b->y))) {
151 onFail("a->y (Error: Value not equal)");
152 };
153 if (!((a->z) == (b->z))) {
154 onFail("a->z (Error: Value not equal)");
155 };
156 }
157
checkEqual_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand * a,const VkDrawIndexedIndirectCommand * b,OnFailCompareFunc onFail)158 void checkEqual_VkDrawIndexedIndirectCommand(const VkDrawIndexedIndirectCommand* a,
159 const VkDrawIndexedIndirectCommand* b,
160 OnFailCompareFunc onFail) {
161 if (!((a->indexCount) == (b->indexCount))) {
162 onFail("a->indexCount (Error: Value not equal)");
163 };
164 if (!((a->instanceCount) == (b->instanceCount))) {
165 onFail("a->instanceCount (Error: Value not equal)");
166 };
167 if (!((a->firstIndex) == (b->firstIndex))) {
168 onFail("a->firstIndex (Error: Value not equal)");
169 };
170 if (!((a->vertexOffset) == (b->vertexOffset))) {
171 onFail("a->vertexOffset (Error: Value not equal)");
172 };
173 if (!((a->firstInstance) == (b->firstInstance))) {
174 onFail("a->firstInstance (Error: Value not equal)");
175 };
176 }
177
checkEqual_VkDrawIndirectCommand(const VkDrawIndirectCommand * a,const VkDrawIndirectCommand * b,OnFailCompareFunc onFail)178 void checkEqual_VkDrawIndirectCommand(const VkDrawIndirectCommand* a,
179 const VkDrawIndirectCommand* b, OnFailCompareFunc onFail) {
180 if (!((a->vertexCount) == (b->vertexCount))) {
181 onFail("a->vertexCount (Error: Value not equal)");
182 };
183 if (!((a->instanceCount) == (b->instanceCount))) {
184 onFail("a->instanceCount (Error: Value not equal)");
185 };
186 if (!((a->firstVertex) == (b->firstVertex))) {
187 onFail("a->firstVertex (Error: Value not equal)");
188 };
189 if (!((a->firstInstance) == (b->firstInstance))) {
190 onFail("a->firstInstance (Error: Value not equal)");
191 };
192 }
193
checkEqual_VkImageSubresourceRange(const VkImageSubresourceRange * a,const VkImageSubresourceRange * b,OnFailCompareFunc onFail)194 void checkEqual_VkImageSubresourceRange(const VkImageSubresourceRange* a,
195 const VkImageSubresourceRange* b,
196 OnFailCompareFunc onFail) {
197 if (!((a->aspectMask) == (b->aspectMask))) {
198 onFail("a->aspectMask (Error: Value not equal)");
199 };
200 if (!((a->baseMipLevel) == (b->baseMipLevel))) {
201 onFail("a->baseMipLevel (Error: Value not equal)");
202 };
203 if (!((a->levelCount) == (b->levelCount))) {
204 onFail("a->levelCount (Error: Value not equal)");
205 };
206 if (!((a->baseArrayLayer) == (b->baseArrayLayer))) {
207 onFail("a->baseArrayLayer (Error: Value not equal)");
208 };
209 if (!((a->layerCount) == (b->layerCount))) {
210 onFail("a->layerCount (Error: Value not equal)");
211 };
212 }
213
checkEqual_VkImageMemoryBarrier(const VkImageMemoryBarrier * a,const VkImageMemoryBarrier * b,OnFailCompareFunc onFail)214 void checkEqual_VkImageMemoryBarrier(const VkImageMemoryBarrier* a, const VkImageMemoryBarrier* b,
215 OnFailCompareFunc onFail) {
216 if (!((a->sType) == (b->sType))) {
217 onFail("a->sType (Error: Value not equal)");
218 };
219 if (a->pNext) {
220 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
221 }
222 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
223 onFail("a->srcAccessMask (Error: Value not equal)");
224 };
225 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
226 onFail("a->dstAccessMask (Error: Value not equal)");
227 };
228 if (!((a->oldLayout) == (b->oldLayout))) {
229 onFail("a->oldLayout (Error: Value not equal)");
230 };
231 if (!((a->newLayout) == (b->newLayout))) {
232 onFail("a->newLayout (Error: Value not equal)");
233 };
234 if (!((a->srcQueueFamilyIndex) == (b->srcQueueFamilyIndex))) {
235 onFail("a->srcQueueFamilyIndex (Error: Value not equal)");
236 };
237 if (!((a->dstQueueFamilyIndex) == (b->dstQueueFamilyIndex))) {
238 onFail("a->dstQueueFamilyIndex (Error: Value not equal)");
239 };
240 if (!((a->image) == (b->image))) {
241 onFail("a->image (Error: Value not equal)");
242 };
243 checkEqual_VkImageSubresourceRange(&a->subresourceRange, &b->subresourceRange, onFail);
244 }
245
checkEqual_VkMemoryBarrier(const VkMemoryBarrier * a,const VkMemoryBarrier * b,OnFailCompareFunc onFail)246 void checkEqual_VkMemoryBarrier(const VkMemoryBarrier* a, const VkMemoryBarrier* b,
247 OnFailCompareFunc onFail) {
248 if (!((a->sType) == (b->sType))) {
249 onFail("a->sType (Error: Value not equal)");
250 };
251 if (a->pNext) {
252 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
253 }
254 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
255 onFail("a->srcAccessMask (Error: Value not equal)");
256 };
257 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
258 onFail("a->dstAccessMask (Error: Value not equal)");
259 };
260 }
261
checkEqual_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne * a,const VkPipelineCacheHeaderVersionOne * b,OnFailCompareFunc onFail)262 void checkEqual_VkPipelineCacheHeaderVersionOne(const VkPipelineCacheHeaderVersionOne* a,
263 const VkPipelineCacheHeaderVersionOne* b,
264 OnFailCompareFunc onFail) {
265 if (!((a->headerSize) == (b->headerSize))) {
266 onFail("a->headerSize (Error: Value not equal)");
267 };
268 if (!((a->headerVersion) == (b->headerVersion))) {
269 onFail("a->headerVersion (Error: Value not equal)");
270 };
271 if (!((a->vendorID) == (b->vendorID))) {
272 onFail("a->vendorID (Error: Value not equal)");
273 };
274 if (!((a->deviceID) == (b->deviceID))) {
275 onFail("a->deviceID (Error: Value not equal)");
276 };
277 if (!((memcmp(a->pipelineCacheUUID, b->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t)) ==
278 0))) {
279 onFail("a->pipelineCacheUUID (Error: Unequal static array)");
280 };
281 }
282
checkEqual_VkAllocationCallbacks(const VkAllocationCallbacks * a,const VkAllocationCallbacks * b,OnFailCompareFunc onFail)283 void checkEqual_VkAllocationCallbacks(const VkAllocationCallbacks* a,
284 const VkAllocationCallbacks* b, OnFailCompareFunc onFail) {
285 if (!((!(a->pUserData) && !(b->pUserData)) || ((a->pUserData) && (b->pUserData)))) {
286 onFail("a->pUserData (Error: Mismatch in optional field)");
287 };
288 if (!((a->pfnAllocation) == (b->pfnAllocation))) {
289 onFail("a->pfnAllocation (Error: Value not equal)");
290 };
291 if (!((a->pfnReallocation) == (b->pfnReallocation))) {
292 onFail("a->pfnReallocation (Error: Value not equal)");
293 };
294 if (!((a->pfnFree) == (b->pfnFree))) {
295 onFail("a->pfnFree (Error: Value not equal)");
296 };
297 if (!((a->pfnInternalAllocation) == (b->pfnInternalAllocation))) {
298 onFail("a->pfnInternalAllocation (Error: Value not equal)");
299 };
300 if (!((a->pfnInternalFree) == (b->pfnInternalFree))) {
301 onFail("a->pfnInternalFree (Error: Value not equal)");
302 };
303 }
304
checkEqual_VkApplicationInfo(const VkApplicationInfo * a,const VkApplicationInfo * b,OnFailCompareFunc onFail)305 void checkEqual_VkApplicationInfo(const VkApplicationInfo* a, const VkApplicationInfo* b,
306 OnFailCompareFunc onFail) {
307 if (!((a->sType) == (b->sType))) {
308 onFail("a->sType (Error: Value not equal)");
309 };
310 if (a->pNext) {
311 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
312 }
313 if (!((!(a->pApplicationName) && !(b->pApplicationName)) ||
314 ((a->pApplicationName) && (b->pApplicationName)))) {
315 onFail("a->pApplicationName (Error: Mismatch in optional field)");
316 };
317 if (a->pApplicationName && b->pApplicationName) {
318 if (!((!(a->pApplicationName) && !(b->pApplicationName)) ||
319 ((a->pApplicationName) && (b->pApplicationName)))) {
320 onFail("a->pApplicationName (Error: Mismatch in string pointer nullness)");
321 };
322 if ((a->pApplicationName) && (b->pApplicationName)) {
323 if (!((strcmp(a->pApplicationName, b->pApplicationName) == 0))) {
324 onFail("a->pApplicationName (Error: Unequal strings)");
325 };
326 }
327 }
328 if (!((a->applicationVersion) == (b->applicationVersion))) {
329 onFail("a->applicationVersion (Error: Value not equal)");
330 };
331 if (!((!(a->pEngineName) && !(b->pEngineName)) || ((a->pEngineName) && (b->pEngineName)))) {
332 onFail("a->pEngineName (Error: Mismatch in optional field)");
333 };
334 if (a->pEngineName && b->pEngineName) {
335 if (!((!(a->pEngineName) && !(b->pEngineName)) || ((a->pEngineName) && (b->pEngineName)))) {
336 onFail("a->pEngineName (Error: Mismatch in string pointer nullness)");
337 };
338 if ((a->pEngineName) && (b->pEngineName)) {
339 if (!((strcmp(a->pEngineName, b->pEngineName) == 0))) {
340 onFail("a->pEngineName (Error: Unequal strings)");
341 };
342 }
343 }
344 if (!((a->engineVersion) == (b->engineVersion))) {
345 onFail("a->engineVersion (Error: Value not equal)");
346 };
347 if (!((a->apiVersion) == (b->apiVersion))) {
348 onFail("a->apiVersion (Error: Value not equal)");
349 };
350 }
351
checkEqual_VkFormatProperties(const VkFormatProperties * a,const VkFormatProperties * b,OnFailCompareFunc onFail)352 void checkEqual_VkFormatProperties(const VkFormatProperties* a, const VkFormatProperties* b,
353 OnFailCompareFunc onFail) {
354 if (!((a->linearTilingFeatures) == (b->linearTilingFeatures))) {
355 onFail("a->linearTilingFeatures (Error: Value not equal)");
356 };
357 if (!((a->optimalTilingFeatures) == (b->optimalTilingFeatures))) {
358 onFail("a->optimalTilingFeatures (Error: Value not equal)");
359 };
360 if (!((a->bufferFeatures) == (b->bufferFeatures))) {
361 onFail("a->bufferFeatures (Error: Value not equal)");
362 };
363 }
364
checkEqual_VkImageFormatProperties(const VkImageFormatProperties * a,const VkImageFormatProperties * b,OnFailCompareFunc onFail)365 void checkEqual_VkImageFormatProperties(const VkImageFormatProperties* a,
366 const VkImageFormatProperties* b,
367 OnFailCompareFunc onFail) {
368 checkEqual_VkExtent3D(&a->maxExtent, &b->maxExtent, onFail);
369 if (!((a->maxMipLevels) == (b->maxMipLevels))) {
370 onFail("a->maxMipLevels (Error: Value not equal)");
371 };
372 if (!((a->maxArrayLayers) == (b->maxArrayLayers))) {
373 onFail("a->maxArrayLayers (Error: Value not equal)");
374 };
375 if (!((a->sampleCounts) == (b->sampleCounts))) {
376 onFail("a->sampleCounts (Error: Value not equal)");
377 };
378 if (!((a->maxResourceSize) == (b->maxResourceSize))) {
379 onFail("a->maxResourceSize (Error: Value not equal)");
380 };
381 }
382
checkEqual_VkInstanceCreateInfo(const VkInstanceCreateInfo * a,const VkInstanceCreateInfo * b,OnFailCompareFunc onFail)383 void checkEqual_VkInstanceCreateInfo(const VkInstanceCreateInfo* a, const VkInstanceCreateInfo* b,
384 OnFailCompareFunc onFail) {
385 if (!((a->sType) == (b->sType))) {
386 onFail("a->sType (Error: Value not equal)");
387 };
388 if (a->pNext) {
389 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
390 }
391 if (!((a->flags) == (b->flags))) {
392 onFail("a->flags (Error: Value not equal)");
393 };
394 if (!((!(a->pApplicationInfo) && !(b->pApplicationInfo)) ||
395 ((a->pApplicationInfo) && (b->pApplicationInfo)))) {
396 onFail("a->pApplicationInfo (Error: Mismatch in optional field)");
397 };
398 if (a->pApplicationInfo && b->pApplicationInfo) {
399 if ((a->pApplicationInfo) && (b->pApplicationInfo)) {
400 checkEqual_VkApplicationInfo(a->pApplicationInfo, b->pApplicationInfo, onFail);
401 }
402 }
403 if (!((a->enabledLayerCount) == (b->enabledLayerCount))) {
404 onFail("a->enabledLayerCount (Error: Value not equal)");
405 };
406 if (!((!(a->ppEnabledLayerNames) && !(b->ppEnabledLayerNames)) ||
407 ((a->ppEnabledLayerNames) && (b->ppEnabledLayerNames)))) {
408 onFail("a->ppEnabledLayerNames (Error: Mismatch in string array pointer nullness)");
409 };
410 if (!((a->enabledLayerCount) == (b->enabledLayerCount))) {
411 onFail("a->ppEnabledLayerNames (Error: Lengths not equal in string array)");
412 };
413 if (!((a->enabledLayerCount) == (b->enabledLayerCount))) {
414 onFail("a->ppEnabledLayerNames (Error: Lengths not equal in string array)");
415 };
416 if ((a->enabledLayerCount) == (b->enabledLayerCount) && (a->ppEnabledLayerNames) &&
417 (b->ppEnabledLayerNames)) {
418 if (a) {
419 for (uint32_t i = 0; i < (uint32_t)a->enabledLayerCount; ++i) {
420 if (!((strcmp(*(a->ppEnabledLayerNames + i), *(b->ppEnabledLayerNames + i)) ==
421 0))) {
422 onFail("a->ppEnabledLayerNames (Error: Unequal string in string array)");
423 };
424 }
425 }
426 }
427 if (!((a->enabledExtensionCount) == (b->enabledExtensionCount))) {
428 onFail("a->enabledExtensionCount (Error: Value not equal)");
429 };
430 if (!((!(a->ppEnabledExtensionNames) && !(b->ppEnabledExtensionNames)) ||
431 ((a->ppEnabledExtensionNames) && (b->ppEnabledExtensionNames)))) {
432 onFail("a->ppEnabledExtensionNames (Error: Mismatch in string array pointer nullness)");
433 };
434 if (!((a->enabledExtensionCount) == (b->enabledExtensionCount))) {
435 onFail("a->ppEnabledExtensionNames (Error: Lengths not equal in string array)");
436 };
437 if (!((a->enabledExtensionCount) == (b->enabledExtensionCount))) {
438 onFail("a->ppEnabledExtensionNames (Error: Lengths not equal in string array)");
439 };
440 if ((a->enabledExtensionCount) == (b->enabledExtensionCount) && (a->ppEnabledExtensionNames) &&
441 (b->ppEnabledExtensionNames)) {
442 if (a) {
443 for (uint32_t i = 0; i < (uint32_t)a->enabledExtensionCount; ++i) {
444 if (!((strcmp(*(a->ppEnabledExtensionNames + i),
445 *(b->ppEnabledExtensionNames + i)) == 0))) {
446 onFail("a->ppEnabledExtensionNames (Error: Unequal string in string array)");
447 };
448 }
449 }
450 }
451 }
452
checkEqual_VkMemoryHeap(const VkMemoryHeap * a,const VkMemoryHeap * b,OnFailCompareFunc onFail)453 void checkEqual_VkMemoryHeap(const VkMemoryHeap* a, const VkMemoryHeap* b,
454 OnFailCompareFunc onFail) {
455 if (!((a->size) == (b->size))) {
456 onFail("a->size (Error: Value not equal)");
457 };
458 if (!((a->flags) == (b->flags))) {
459 onFail("a->flags (Error: Value not equal)");
460 };
461 }
462
checkEqual_VkMemoryType(const VkMemoryType * a,const VkMemoryType * b,OnFailCompareFunc onFail)463 void checkEqual_VkMemoryType(const VkMemoryType* a, const VkMemoryType* b,
464 OnFailCompareFunc onFail) {
465 if (!((a->propertyFlags) == (b->propertyFlags))) {
466 onFail("a->propertyFlags (Error: Value not equal)");
467 };
468 if (!((a->heapIndex) == (b->heapIndex))) {
469 onFail("a->heapIndex (Error: Value not equal)");
470 };
471 }
472
checkEqual_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures * a,const VkPhysicalDeviceFeatures * b,OnFailCompareFunc onFail)473 void checkEqual_VkPhysicalDeviceFeatures(const VkPhysicalDeviceFeatures* a,
474 const VkPhysicalDeviceFeatures* b,
475 OnFailCompareFunc onFail) {
476 if (!((a->robustBufferAccess) == (b->robustBufferAccess))) {
477 onFail("a->robustBufferAccess (Error: Value not equal)");
478 };
479 if (!((a->fullDrawIndexUint32) == (b->fullDrawIndexUint32))) {
480 onFail("a->fullDrawIndexUint32 (Error: Value not equal)");
481 };
482 if (!((a->imageCubeArray) == (b->imageCubeArray))) {
483 onFail("a->imageCubeArray (Error: Value not equal)");
484 };
485 if (!((a->independentBlend) == (b->independentBlend))) {
486 onFail("a->independentBlend (Error: Value not equal)");
487 };
488 if (!((a->geometryShader) == (b->geometryShader))) {
489 onFail("a->geometryShader (Error: Value not equal)");
490 };
491 if (!((a->tessellationShader) == (b->tessellationShader))) {
492 onFail("a->tessellationShader (Error: Value not equal)");
493 };
494 if (!((a->sampleRateShading) == (b->sampleRateShading))) {
495 onFail("a->sampleRateShading (Error: Value not equal)");
496 };
497 if (!((a->dualSrcBlend) == (b->dualSrcBlend))) {
498 onFail("a->dualSrcBlend (Error: Value not equal)");
499 };
500 if (!((a->logicOp) == (b->logicOp))) {
501 onFail("a->logicOp (Error: Value not equal)");
502 };
503 if (!((a->multiDrawIndirect) == (b->multiDrawIndirect))) {
504 onFail("a->multiDrawIndirect (Error: Value not equal)");
505 };
506 if (!((a->drawIndirectFirstInstance) == (b->drawIndirectFirstInstance))) {
507 onFail("a->drawIndirectFirstInstance (Error: Value not equal)");
508 };
509 if (!((a->depthClamp) == (b->depthClamp))) {
510 onFail("a->depthClamp (Error: Value not equal)");
511 };
512 if (!((a->depthBiasClamp) == (b->depthBiasClamp))) {
513 onFail("a->depthBiasClamp (Error: Value not equal)");
514 };
515 if (!((a->fillModeNonSolid) == (b->fillModeNonSolid))) {
516 onFail("a->fillModeNonSolid (Error: Value not equal)");
517 };
518 if (!((a->depthBounds) == (b->depthBounds))) {
519 onFail("a->depthBounds (Error: Value not equal)");
520 };
521 if (!((a->wideLines) == (b->wideLines))) {
522 onFail("a->wideLines (Error: Value not equal)");
523 };
524 if (!((a->largePoints) == (b->largePoints))) {
525 onFail("a->largePoints (Error: Value not equal)");
526 };
527 if (!((a->alphaToOne) == (b->alphaToOne))) {
528 onFail("a->alphaToOne (Error: Value not equal)");
529 };
530 if (!((a->multiViewport) == (b->multiViewport))) {
531 onFail("a->multiViewport (Error: Value not equal)");
532 };
533 if (!((a->samplerAnisotropy) == (b->samplerAnisotropy))) {
534 onFail("a->samplerAnisotropy (Error: Value not equal)");
535 };
536 if (!((a->textureCompressionETC2) == (b->textureCompressionETC2))) {
537 onFail("a->textureCompressionETC2 (Error: Value not equal)");
538 };
539 if (!((a->textureCompressionASTC_LDR) == (b->textureCompressionASTC_LDR))) {
540 onFail("a->textureCompressionASTC_LDR (Error: Value not equal)");
541 };
542 if (!((a->textureCompressionBC) == (b->textureCompressionBC))) {
543 onFail("a->textureCompressionBC (Error: Value not equal)");
544 };
545 if (!((a->occlusionQueryPrecise) == (b->occlusionQueryPrecise))) {
546 onFail("a->occlusionQueryPrecise (Error: Value not equal)");
547 };
548 if (!((a->pipelineStatisticsQuery) == (b->pipelineStatisticsQuery))) {
549 onFail("a->pipelineStatisticsQuery (Error: Value not equal)");
550 };
551 if (!((a->vertexPipelineStoresAndAtomics) == (b->vertexPipelineStoresAndAtomics))) {
552 onFail("a->vertexPipelineStoresAndAtomics (Error: Value not equal)");
553 };
554 if (!((a->fragmentStoresAndAtomics) == (b->fragmentStoresAndAtomics))) {
555 onFail("a->fragmentStoresAndAtomics (Error: Value not equal)");
556 };
557 if (!((a->shaderTessellationAndGeometryPointSize) ==
558 (b->shaderTessellationAndGeometryPointSize))) {
559 onFail("a->shaderTessellationAndGeometryPointSize (Error: Value not equal)");
560 };
561 if (!((a->shaderImageGatherExtended) == (b->shaderImageGatherExtended))) {
562 onFail("a->shaderImageGatherExtended (Error: Value not equal)");
563 };
564 if (!((a->shaderStorageImageExtendedFormats) == (b->shaderStorageImageExtendedFormats))) {
565 onFail("a->shaderStorageImageExtendedFormats (Error: Value not equal)");
566 };
567 if (!((a->shaderStorageImageMultisample) == (b->shaderStorageImageMultisample))) {
568 onFail("a->shaderStorageImageMultisample (Error: Value not equal)");
569 };
570 if (!((a->shaderStorageImageReadWithoutFormat) == (b->shaderStorageImageReadWithoutFormat))) {
571 onFail("a->shaderStorageImageReadWithoutFormat (Error: Value not equal)");
572 };
573 if (!((a->shaderStorageImageWriteWithoutFormat) == (b->shaderStorageImageWriteWithoutFormat))) {
574 onFail("a->shaderStorageImageWriteWithoutFormat (Error: Value not equal)");
575 };
576 if (!((a->shaderUniformBufferArrayDynamicIndexing) ==
577 (b->shaderUniformBufferArrayDynamicIndexing))) {
578 onFail("a->shaderUniformBufferArrayDynamicIndexing (Error: Value not equal)");
579 };
580 if (!((a->shaderSampledImageArrayDynamicIndexing) ==
581 (b->shaderSampledImageArrayDynamicIndexing))) {
582 onFail("a->shaderSampledImageArrayDynamicIndexing (Error: Value not equal)");
583 };
584 if (!((a->shaderStorageBufferArrayDynamicIndexing) ==
585 (b->shaderStorageBufferArrayDynamicIndexing))) {
586 onFail("a->shaderStorageBufferArrayDynamicIndexing (Error: Value not equal)");
587 };
588 if (!((a->shaderStorageImageArrayDynamicIndexing) ==
589 (b->shaderStorageImageArrayDynamicIndexing))) {
590 onFail("a->shaderStorageImageArrayDynamicIndexing (Error: Value not equal)");
591 };
592 if (!((a->shaderClipDistance) == (b->shaderClipDistance))) {
593 onFail("a->shaderClipDistance (Error: Value not equal)");
594 };
595 if (!((a->shaderCullDistance) == (b->shaderCullDistance))) {
596 onFail("a->shaderCullDistance (Error: Value not equal)");
597 };
598 if (!((a->shaderFloat64) == (b->shaderFloat64))) {
599 onFail("a->shaderFloat64 (Error: Value not equal)");
600 };
601 if (!((a->shaderInt64) == (b->shaderInt64))) {
602 onFail("a->shaderInt64 (Error: Value not equal)");
603 };
604 if (!((a->shaderInt16) == (b->shaderInt16))) {
605 onFail("a->shaderInt16 (Error: Value not equal)");
606 };
607 if (!((a->shaderResourceResidency) == (b->shaderResourceResidency))) {
608 onFail("a->shaderResourceResidency (Error: Value not equal)");
609 };
610 if (!((a->shaderResourceMinLod) == (b->shaderResourceMinLod))) {
611 onFail("a->shaderResourceMinLod (Error: Value not equal)");
612 };
613 if (!((a->sparseBinding) == (b->sparseBinding))) {
614 onFail("a->sparseBinding (Error: Value not equal)");
615 };
616 if (!((a->sparseResidencyBuffer) == (b->sparseResidencyBuffer))) {
617 onFail("a->sparseResidencyBuffer (Error: Value not equal)");
618 };
619 if (!((a->sparseResidencyImage2D) == (b->sparseResidencyImage2D))) {
620 onFail("a->sparseResidencyImage2D (Error: Value not equal)");
621 };
622 if (!((a->sparseResidencyImage3D) == (b->sparseResidencyImage3D))) {
623 onFail("a->sparseResidencyImage3D (Error: Value not equal)");
624 };
625 if (!((a->sparseResidency2Samples) == (b->sparseResidency2Samples))) {
626 onFail("a->sparseResidency2Samples (Error: Value not equal)");
627 };
628 if (!((a->sparseResidency4Samples) == (b->sparseResidency4Samples))) {
629 onFail("a->sparseResidency4Samples (Error: Value not equal)");
630 };
631 if (!((a->sparseResidency8Samples) == (b->sparseResidency8Samples))) {
632 onFail("a->sparseResidency8Samples (Error: Value not equal)");
633 };
634 if (!((a->sparseResidency16Samples) == (b->sparseResidency16Samples))) {
635 onFail("a->sparseResidency16Samples (Error: Value not equal)");
636 };
637 if (!((a->sparseResidencyAliased) == (b->sparseResidencyAliased))) {
638 onFail("a->sparseResidencyAliased (Error: Value not equal)");
639 };
640 if (!((a->variableMultisampleRate) == (b->variableMultisampleRate))) {
641 onFail("a->variableMultisampleRate (Error: Value not equal)");
642 };
643 if (!((a->inheritedQueries) == (b->inheritedQueries))) {
644 onFail("a->inheritedQueries (Error: Value not equal)");
645 };
646 }
647
checkEqual_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits * a,const VkPhysicalDeviceLimits * b,OnFailCompareFunc onFail)648 void checkEqual_VkPhysicalDeviceLimits(const VkPhysicalDeviceLimits* a,
649 const VkPhysicalDeviceLimits* b, OnFailCompareFunc onFail) {
650 if (!((a->maxImageDimension1D) == (b->maxImageDimension1D))) {
651 onFail("a->maxImageDimension1D (Error: Value not equal)");
652 };
653 if (!((a->maxImageDimension2D) == (b->maxImageDimension2D))) {
654 onFail("a->maxImageDimension2D (Error: Value not equal)");
655 };
656 if (!((a->maxImageDimension3D) == (b->maxImageDimension3D))) {
657 onFail("a->maxImageDimension3D (Error: Value not equal)");
658 };
659 if (!((a->maxImageDimensionCube) == (b->maxImageDimensionCube))) {
660 onFail("a->maxImageDimensionCube (Error: Value not equal)");
661 };
662 if (!((a->maxImageArrayLayers) == (b->maxImageArrayLayers))) {
663 onFail("a->maxImageArrayLayers (Error: Value not equal)");
664 };
665 if (!((a->maxTexelBufferElements) == (b->maxTexelBufferElements))) {
666 onFail("a->maxTexelBufferElements (Error: Value not equal)");
667 };
668 if (!((a->maxUniformBufferRange) == (b->maxUniformBufferRange))) {
669 onFail("a->maxUniformBufferRange (Error: Value not equal)");
670 };
671 if (!((a->maxStorageBufferRange) == (b->maxStorageBufferRange))) {
672 onFail("a->maxStorageBufferRange (Error: Value not equal)");
673 };
674 if (!((a->maxPushConstantsSize) == (b->maxPushConstantsSize))) {
675 onFail("a->maxPushConstantsSize (Error: Value not equal)");
676 };
677 if (!((a->maxMemoryAllocationCount) == (b->maxMemoryAllocationCount))) {
678 onFail("a->maxMemoryAllocationCount (Error: Value not equal)");
679 };
680 if (!((a->maxSamplerAllocationCount) == (b->maxSamplerAllocationCount))) {
681 onFail("a->maxSamplerAllocationCount (Error: Value not equal)");
682 };
683 if (!((a->bufferImageGranularity) == (b->bufferImageGranularity))) {
684 onFail("a->bufferImageGranularity (Error: Value not equal)");
685 };
686 if (!((a->sparseAddressSpaceSize) == (b->sparseAddressSpaceSize))) {
687 onFail("a->sparseAddressSpaceSize (Error: Value not equal)");
688 };
689 if (!((a->maxBoundDescriptorSets) == (b->maxBoundDescriptorSets))) {
690 onFail("a->maxBoundDescriptorSets (Error: Value not equal)");
691 };
692 if (!((a->maxPerStageDescriptorSamplers) == (b->maxPerStageDescriptorSamplers))) {
693 onFail("a->maxPerStageDescriptorSamplers (Error: Value not equal)");
694 };
695 if (!((a->maxPerStageDescriptorUniformBuffers) == (b->maxPerStageDescriptorUniformBuffers))) {
696 onFail("a->maxPerStageDescriptorUniformBuffers (Error: Value not equal)");
697 };
698 if (!((a->maxPerStageDescriptorStorageBuffers) == (b->maxPerStageDescriptorStorageBuffers))) {
699 onFail("a->maxPerStageDescriptorStorageBuffers (Error: Value not equal)");
700 };
701 if (!((a->maxPerStageDescriptorSampledImages) == (b->maxPerStageDescriptorSampledImages))) {
702 onFail("a->maxPerStageDescriptorSampledImages (Error: Value not equal)");
703 };
704 if (!((a->maxPerStageDescriptorStorageImages) == (b->maxPerStageDescriptorStorageImages))) {
705 onFail("a->maxPerStageDescriptorStorageImages (Error: Value not equal)");
706 };
707 if (!((a->maxPerStageDescriptorInputAttachments) ==
708 (b->maxPerStageDescriptorInputAttachments))) {
709 onFail("a->maxPerStageDescriptorInputAttachments (Error: Value not equal)");
710 };
711 if (!((a->maxPerStageResources) == (b->maxPerStageResources))) {
712 onFail("a->maxPerStageResources (Error: Value not equal)");
713 };
714 if (!((a->maxDescriptorSetSamplers) == (b->maxDescriptorSetSamplers))) {
715 onFail("a->maxDescriptorSetSamplers (Error: Value not equal)");
716 };
717 if (!((a->maxDescriptorSetUniformBuffers) == (b->maxDescriptorSetUniformBuffers))) {
718 onFail("a->maxDescriptorSetUniformBuffers (Error: Value not equal)");
719 };
720 if (!((a->maxDescriptorSetUniformBuffersDynamic) ==
721 (b->maxDescriptorSetUniformBuffersDynamic))) {
722 onFail("a->maxDescriptorSetUniformBuffersDynamic (Error: Value not equal)");
723 };
724 if (!((a->maxDescriptorSetStorageBuffers) == (b->maxDescriptorSetStorageBuffers))) {
725 onFail("a->maxDescriptorSetStorageBuffers (Error: Value not equal)");
726 };
727 if (!((a->maxDescriptorSetStorageBuffersDynamic) ==
728 (b->maxDescriptorSetStorageBuffersDynamic))) {
729 onFail("a->maxDescriptorSetStorageBuffersDynamic (Error: Value not equal)");
730 };
731 if (!((a->maxDescriptorSetSampledImages) == (b->maxDescriptorSetSampledImages))) {
732 onFail("a->maxDescriptorSetSampledImages (Error: Value not equal)");
733 };
734 if (!((a->maxDescriptorSetStorageImages) == (b->maxDescriptorSetStorageImages))) {
735 onFail("a->maxDescriptorSetStorageImages (Error: Value not equal)");
736 };
737 if (!((a->maxDescriptorSetInputAttachments) == (b->maxDescriptorSetInputAttachments))) {
738 onFail("a->maxDescriptorSetInputAttachments (Error: Value not equal)");
739 };
740 if (!((a->maxVertexInputAttributes) == (b->maxVertexInputAttributes))) {
741 onFail("a->maxVertexInputAttributes (Error: Value not equal)");
742 };
743 if (!((a->maxVertexInputBindings) == (b->maxVertexInputBindings))) {
744 onFail("a->maxVertexInputBindings (Error: Value not equal)");
745 };
746 if (!((a->maxVertexInputAttributeOffset) == (b->maxVertexInputAttributeOffset))) {
747 onFail("a->maxVertexInputAttributeOffset (Error: Value not equal)");
748 };
749 if (!((a->maxVertexInputBindingStride) == (b->maxVertexInputBindingStride))) {
750 onFail("a->maxVertexInputBindingStride (Error: Value not equal)");
751 };
752 if (!((a->maxVertexOutputComponents) == (b->maxVertexOutputComponents))) {
753 onFail("a->maxVertexOutputComponents (Error: Value not equal)");
754 };
755 if (!((a->maxTessellationGenerationLevel) == (b->maxTessellationGenerationLevel))) {
756 onFail("a->maxTessellationGenerationLevel (Error: Value not equal)");
757 };
758 if (!((a->maxTessellationPatchSize) == (b->maxTessellationPatchSize))) {
759 onFail("a->maxTessellationPatchSize (Error: Value not equal)");
760 };
761 if (!((a->maxTessellationControlPerVertexInputComponents) ==
762 (b->maxTessellationControlPerVertexInputComponents))) {
763 onFail("a->maxTessellationControlPerVertexInputComponents (Error: Value not equal)");
764 };
765 if (!((a->maxTessellationControlPerVertexOutputComponents) ==
766 (b->maxTessellationControlPerVertexOutputComponents))) {
767 onFail("a->maxTessellationControlPerVertexOutputComponents (Error: Value not equal)");
768 };
769 if (!((a->maxTessellationControlPerPatchOutputComponents) ==
770 (b->maxTessellationControlPerPatchOutputComponents))) {
771 onFail("a->maxTessellationControlPerPatchOutputComponents (Error: Value not equal)");
772 };
773 if (!((a->maxTessellationControlTotalOutputComponents) ==
774 (b->maxTessellationControlTotalOutputComponents))) {
775 onFail("a->maxTessellationControlTotalOutputComponents (Error: Value not equal)");
776 };
777 if (!((a->maxTessellationEvaluationInputComponents) ==
778 (b->maxTessellationEvaluationInputComponents))) {
779 onFail("a->maxTessellationEvaluationInputComponents (Error: Value not equal)");
780 };
781 if (!((a->maxTessellationEvaluationOutputComponents) ==
782 (b->maxTessellationEvaluationOutputComponents))) {
783 onFail("a->maxTessellationEvaluationOutputComponents (Error: Value not equal)");
784 };
785 if (!((a->maxGeometryShaderInvocations) == (b->maxGeometryShaderInvocations))) {
786 onFail("a->maxGeometryShaderInvocations (Error: Value not equal)");
787 };
788 if (!((a->maxGeometryInputComponents) == (b->maxGeometryInputComponents))) {
789 onFail("a->maxGeometryInputComponents (Error: Value not equal)");
790 };
791 if (!((a->maxGeometryOutputComponents) == (b->maxGeometryOutputComponents))) {
792 onFail("a->maxGeometryOutputComponents (Error: Value not equal)");
793 };
794 if (!((a->maxGeometryOutputVertices) == (b->maxGeometryOutputVertices))) {
795 onFail("a->maxGeometryOutputVertices (Error: Value not equal)");
796 };
797 if (!((a->maxGeometryTotalOutputComponents) == (b->maxGeometryTotalOutputComponents))) {
798 onFail("a->maxGeometryTotalOutputComponents (Error: Value not equal)");
799 };
800 if (!((a->maxFragmentInputComponents) == (b->maxFragmentInputComponents))) {
801 onFail("a->maxFragmentInputComponents (Error: Value not equal)");
802 };
803 if (!((a->maxFragmentOutputAttachments) == (b->maxFragmentOutputAttachments))) {
804 onFail("a->maxFragmentOutputAttachments (Error: Value not equal)");
805 };
806 if (!((a->maxFragmentDualSrcAttachments) == (b->maxFragmentDualSrcAttachments))) {
807 onFail("a->maxFragmentDualSrcAttachments (Error: Value not equal)");
808 };
809 if (!((a->maxFragmentCombinedOutputResources) == (b->maxFragmentCombinedOutputResources))) {
810 onFail("a->maxFragmentCombinedOutputResources (Error: Value not equal)");
811 };
812 if (!((a->maxComputeSharedMemorySize) == (b->maxComputeSharedMemorySize))) {
813 onFail("a->maxComputeSharedMemorySize (Error: Value not equal)");
814 };
815 if (!((memcmp(a->maxComputeWorkGroupCount, b->maxComputeWorkGroupCount, 3 * sizeof(uint32_t)) ==
816 0))) {
817 onFail("a->maxComputeWorkGroupCount (Error: Unequal static array)");
818 };
819 if (!((a->maxComputeWorkGroupInvocations) == (b->maxComputeWorkGroupInvocations))) {
820 onFail("a->maxComputeWorkGroupInvocations (Error: Value not equal)");
821 };
822 if (!((memcmp(a->maxComputeWorkGroupSize, b->maxComputeWorkGroupSize, 3 * sizeof(uint32_t)) ==
823 0))) {
824 onFail("a->maxComputeWorkGroupSize (Error: Unequal static array)");
825 };
826 if (!((a->subPixelPrecisionBits) == (b->subPixelPrecisionBits))) {
827 onFail("a->subPixelPrecisionBits (Error: Value not equal)");
828 };
829 if (!((a->subTexelPrecisionBits) == (b->subTexelPrecisionBits))) {
830 onFail("a->subTexelPrecisionBits (Error: Value not equal)");
831 };
832 if (!((a->mipmapPrecisionBits) == (b->mipmapPrecisionBits))) {
833 onFail("a->mipmapPrecisionBits (Error: Value not equal)");
834 };
835 if (!((a->maxDrawIndexedIndexValue) == (b->maxDrawIndexedIndexValue))) {
836 onFail("a->maxDrawIndexedIndexValue (Error: Value not equal)");
837 };
838 if (!((a->maxDrawIndirectCount) == (b->maxDrawIndirectCount))) {
839 onFail("a->maxDrawIndirectCount (Error: Value not equal)");
840 };
841 if (!((a->maxSamplerLodBias) == (b->maxSamplerLodBias))) {
842 onFail("a->maxSamplerLodBias (Error: Value not equal)");
843 };
844 if (!((a->maxSamplerAnisotropy) == (b->maxSamplerAnisotropy))) {
845 onFail("a->maxSamplerAnisotropy (Error: Value not equal)");
846 };
847 if (!((a->maxViewports) == (b->maxViewports))) {
848 onFail("a->maxViewports (Error: Value not equal)");
849 };
850 if (!((memcmp(a->maxViewportDimensions, b->maxViewportDimensions, 2 * sizeof(uint32_t)) ==
851 0))) {
852 onFail("a->maxViewportDimensions (Error: Unequal static array)");
853 };
854 if (!((memcmp(a->viewportBoundsRange, b->viewportBoundsRange, 2 * sizeof(float)) == 0))) {
855 onFail("a->viewportBoundsRange (Error: Unequal static array)");
856 };
857 if (!((a->viewportSubPixelBits) == (b->viewportSubPixelBits))) {
858 onFail("a->viewportSubPixelBits (Error: Value not equal)");
859 };
860 if (!((a->minMemoryMapAlignment) == (b->minMemoryMapAlignment))) {
861 onFail("a->minMemoryMapAlignment (Error: Value not equal)");
862 };
863 if (!((a->minTexelBufferOffsetAlignment) == (b->minTexelBufferOffsetAlignment))) {
864 onFail("a->minTexelBufferOffsetAlignment (Error: Value not equal)");
865 };
866 if (!((a->minUniformBufferOffsetAlignment) == (b->minUniformBufferOffsetAlignment))) {
867 onFail("a->minUniformBufferOffsetAlignment (Error: Value not equal)");
868 };
869 if (!((a->minStorageBufferOffsetAlignment) == (b->minStorageBufferOffsetAlignment))) {
870 onFail("a->minStorageBufferOffsetAlignment (Error: Value not equal)");
871 };
872 if (!((a->minTexelOffset) == (b->minTexelOffset))) {
873 onFail("a->minTexelOffset (Error: Value not equal)");
874 };
875 if (!((a->maxTexelOffset) == (b->maxTexelOffset))) {
876 onFail("a->maxTexelOffset (Error: Value not equal)");
877 };
878 if (!((a->minTexelGatherOffset) == (b->minTexelGatherOffset))) {
879 onFail("a->minTexelGatherOffset (Error: Value not equal)");
880 };
881 if (!((a->maxTexelGatherOffset) == (b->maxTexelGatherOffset))) {
882 onFail("a->maxTexelGatherOffset (Error: Value not equal)");
883 };
884 if (!((a->minInterpolationOffset) == (b->minInterpolationOffset))) {
885 onFail("a->minInterpolationOffset (Error: Value not equal)");
886 };
887 if (!((a->maxInterpolationOffset) == (b->maxInterpolationOffset))) {
888 onFail("a->maxInterpolationOffset (Error: Value not equal)");
889 };
890 if (!((a->subPixelInterpolationOffsetBits) == (b->subPixelInterpolationOffsetBits))) {
891 onFail("a->subPixelInterpolationOffsetBits (Error: Value not equal)");
892 };
893 if (!((a->maxFramebufferWidth) == (b->maxFramebufferWidth))) {
894 onFail("a->maxFramebufferWidth (Error: Value not equal)");
895 };
896 if (!((a->maxFramebufferHeight) == (b->maxFramebufferHeight))) {
897 onFail("a->maxFramebufferHeight (Error: Value not equal)");
898 };
899 if (!((a->maxFramebufferLayers) == (b->maxFramebufferLayers))) {
900 onFail("a->maxFramebufferLayers (Error: Value not equal)");
901 };
902 if (!((a->framebufferColorSampleCounts) == (b->framebufferColorSampleCounts))) {
903 onFail("a->framebufferColorSampleCounts (Error: Value not equal)");
904 };
905 if (!((a->framebufferDepthSampleCounts) == (b->framebufferDepthSampleCounts))) {
906 onFail("a->framebufferDepthSampleCounts (Error: Value not equal)");
907 };
908 if (!((a->framebufferStencilSampleCounts) == (b->framebufferStencilSampleCounts))) {
909 onFail("a->framebufferStencilSampleCounts (Error: Value not equal)");
910 };
911 if (!((a->framebufferNoAttachmentsSampleCounts) == (b->framebufferNoAttachmentsSampleCounts))) {
912 onFail("a->framebufferNoAttachmentsSampleCounts (Error: Value not equal)");
913 };
914 if (!((a->maxColorAttachments) == (b->maxColorAttachments))) {
915 onFail("a->maxColorAttachments (Error: Value not equal)");
916 };
917 if (!((a->sampledImageColorSampleCounts) == (b->sampledImageColorSampleCounts))) {
918 onFail("a->sampledImageColorSampleCounts (Error: Value not equal)");
919 };
920 if (!((a->sampledImageIntegerSampleCounts) == (b->sampledImageIntegerSampleCounts))) {
921 onFail("a->sampledImageIntegerSampleCounts (Error: Value not equal)");
922 };
923 if (!((a->sampledImageDepthSampleCounts) == (b->sampledImageDepthSampleCounts))) {
924 onFail("a->sampledImageDepthSampleCounts (Error: Value not equal)");
925 };
926 if (!((a->sampledImageStencilSampleCounts) == (b->sampledImageStencilSampleCounts))) {
927 onFail("a->sampledImageStencilSampleCounts (Error: Value not equal)");
928 };
929 if (!((a->storageImageSampleCounts) == (b->storageImageSampleCounts))) {
930 onFail("a->storageImageSampleCounts (Error: Value not equal)");
931 };
932 if (!((a->maxSampleMaskWords) == (b->maxSampleMaskWords))) {
933 onFail("a->maxSampleMaskWords (Error: Value not equal)");
934 };
935 if (!((a->timestampComputeAndGraphics) == (b->timestampComputeAndGraphics))) {
936 onFail("a->timestampComputeAndGraphics (Error: Value not equal)");
937 };
938 if (!((a->timestampPeriod) == (b->timestampPeriod))) {
939 onFail("a->timestampPeriod (Error: Value not equal)");
940 };
941 if (!((a->maxClipDistances) == (b->maxClipDistances))) {
942 onFail("a->maxClipDistances (Error: Value not equal)");
943 };
944 if (!((a->maxCullDistances) == (b->maxCullDistances))) {
945 onFail("a->maxCullDistances (Error: Value not equal)");
946 };
947 if (!((a->maxCombinedClipAndCullDistances) == (b->maxCombinedClipAndCullDistances))) {
948 onFail("a->maxCombinedClipAndCullDistances (Error: Value not equal)");
949 };
950 if (!((a->discreteQueuePriorities) == (b->discreteQueuePriorities))) {
951 onFail("a->discreteQueuePriorities (Error: Value not equal)");
952 };
953 if (!((memcmp(a->pointSizeRange, b->pointSizeRange, 2 * sizeof(float)) == 0))) {
954 onFail("a->pointSizeRange (Error: Unequal static array)");
955 };
956 if (!((memcmp(a->lineWidthRange, b->lineWidthRange, 2 * sizeof(float)) == 0))) {
957 onFail("a->lineWidthRange (Error: Unequal static array)");
958 };
959 if (!((a->pointSizeGranularity) == (b->pointSizeGranularity))) {
960 onFail("a->pointSizeGranularity (Error: Value not equal)");
961 };
962 if (!((a->lineWidthGranularity) == (b->lineWidthGranularity))) {
963 onFail("a->lineWidthGranularity (Error: Value not equal)");
964 };
965 if (!((a->strictLines) == (b->strictLines))) {
966 onFail("a->strictLines (Error: Value not equal)");
967 };
968 if (!((a->standardSampleLocations) == (b->standardSampleLocations))) {
969 onFail("a->standardSampleLocations (Error: Value not equal)");
970 };
971 if (!((a->optimalBufferCopyOffsetAlignment) == (b->optimalBufferCopyOffsetAlignment))) {
972 onFail("a->optimalBufferCopyOffsetAlignment (Error: Value not equal)");
973 };
974 if (!((a->optimalBufferCopyRowPitchAlignment) == (b->optimalBufferCopyRowPitchAlignment))) {
975 onFail("a->optimalBufferCopyRowPitchAlignment (Error: Value not equal)");
976 };
977 if (!((a->nonCoherentAtomSize) == (b->nonCoherentAtomSize))) {
978 onFail("a->nonCoherentAtomSize (Error: Value not equal)");
979 };
980 }
981
checkEqual_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties * a,const VkPhysicalDeviceMemoryProperties * b,OnFailCompareFunc onFail)982 void checkEqual_VkPhysicalDeviceMemoryProperties(const VkPhysicalDeviceMemoryProperties* a,
983 const VkPhysicalDeviceMemoryProperties* b,
984 OnFailCompareFunc onFail) {
985 if (!((a->memoryTypeCount) == (b->memoryTypeCount))) {
986 onFail("a->memoryTypeCount (Error: Value not equal)");
987 };
988 if (!((VK_MAX_MEMORY_TYPES) == (VK_MAX_MEMORY_TYPES))) {
989 onFail("a->memoryTypes (Error: Lengths not equal)");
990 };
991 for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_TYPES; ++i) {
992 checkEqual_VkMemoryType(a->memoryTypes + i, b->memoryTypes + i, onFail);
993 }
994 if (!((a->memoryHeapCount) == (b->memoryHeapCount))) {
995 onFail("a->memoryHeapCount (Error: Value not equal)");
996 };
997 if (!((VK_MAX_MEMORY_HEAPS) == (VK_MAX_MEMORY_HEAPS))) {
998 onFail("a->memoryHeaps (Error: Lengths not equal)");
999 };
1000 for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_HEAPS; ++i) {
1001 checkEqual_VkMemoryHeap(a->memoryHeaps + i, b->memoryHeaps + i, onFail);
1002 }
1003 }
1004
checkEqual_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties * a,const VkPhysicalDeviceSparseProperties * b,OnFailCompareFunc onFail)1005 void checkEqual_VkPhysicalDeviceSparseProperties(const VkPhysicalDeviceSparseProperties* a,
1006 const VkPhysicalDeviceSparseProperties* b,
1007 OnFailCompareFunc onFail) {
1008 if (!((a->residencyStandard2DBlockShape) == (b->residencyStandard2DBlockShape))) {
1009 onFail("a->residencyStandard2DBlockShape (Error: Value not equal)");
1010 };
1011 if (!((a->residencyStandard2DMultisampleBlockShape) ==
1012 (b->residencyStandard2DMultisampleBlockShape))) {
1013 onFail("a->residencyStandard2DMultisampleBlockShape (Error: Value not equal)");
1014 };
1015 if (!((a->residencyStandard3DBlockShape) == (b->residencyStandard3DBlockShape))) {
1016 onFail("a->residencyStandard3DBlockShape (Error: Value not equal)");
1017 };
1018 if (!((a->residencyAlignedMipSize) == (b->residencyAlignedMipSize))) {
1019 onFail("a->residencyAlignedMipSize (Error: Value not equal)");
1020 };
1021 if (!((a->residencyNonResidentStrict) == (b->residencyNonResidentStrict))) {
1022 onFail("a->residencyNonResidentStrict (Error: Value not equal)");
1023 };
1024 }
1025
checkEqual_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties * a,const VkPhysicalDeviceProperties * b,OnFailCompareFunc onFail)1026 void checkEqual_VkPhysicalDeviceProperties(const VkPhysicalDeviceProperties* a,
1027 const VkPhysicalDeviceProperties* b,
1028 OnFailCompareFunc onFail) {
1029 if (!((a->apiVersion) == (b->apiVersion))) {
1030 onFail("a->apiVersion (Error: Value not equal)");
1031 };
1032 if (!((a->driverVersion) == (b->driverVersion))) {
1033 onFail("a->driverVersion (Error: Value not equal)");
1034 };
1035 if (!((a->vendorID) == (b->vendorID))) {
1036 onFail("a->vendorID (Error: Value not equal)");
1037 };
1038 if (!((a->deviceID) == (b->deviceID))) {
1039 onFail("a->deviceID (Error: Value not equal)");
1040 };
1041 if (!((a->deviceType) == (b->deviceType))) {
1042 onFail("a->deviceType (Error: Value not equal)");
1043 };
1044 if (!((memcmp(a->deviceName, b->deviceName, VK_MAX_PHYSICAL_DEVICE_NAME_SIZE * sizeof(char)) ==
1045 0))) {
1046 onFail("a->deviceName (Error: Unequal static array)");
1047 };
1048 if (!((memcmp(a->pipelineCacheUUID, b->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t)) ==
1049 0))) {
1050 onFail("a->pipelineCacheUUID (Error: Unequal static array)");
1051 };
1052 checkEqual_VkPhysicalDeviceLimits(&a->limits, &b->limits, onFail);
1053 checkEqual_VkPhysicalDeviceSparseProperties(&a->sparseProperties, &b->sparseProperties, onFail);
1054 }
1055
checkEqual_VkQueueFamilyProperties(const VkQueueFamilyProperties * a,const VkQueueFamilyProperties * b,OnFailCompareFunc onFail)1056 void checkEqual_VkQueueFamilyProperties(const VkQueueFamilyProperties* a,
1057 const VkQueueFamilyProperties* b,
1058 OnFailCompareFunc onFail) {
1059 if (!((a->queueFlags) == (b->queueFlags))) {
1060 onFail("a->queueFlags (Error: Value not equal)");
1061 };
1062 if (!((a->queueCount) == (b->queueCount))) {
1063 onFail("a->queueCount (Error: Value not equal)");
1064 };
1065 if (!((a->timestampValidBits) == (b->timestampValidBits))) {
1066 onFail("a->timestampValidBits (Error: Value not equal)");
1067 };
1068 checkEqual_VkExtent3D(&a->minImageTransferGranularity, &b->minImageTransferGranularity, onFail);
1069 }
1070
checkEqual_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo * a,const VkDeviceQueueCreateInfo * b,OnFailCompareFunc onFail)1071 void checkEqual_VkDeviceQueueCreateInfo(const VkDeviceQueueCreateInfo* a,
1072 const VkDeviceQueueCreateInfo* b,
1073 OnFailCompareFunc onFail) {
1074 if (!((a->sType) == (b->sType))) {
1075 onFail("a->sType (Error: Value not equal)");
1076 };
1077 if (a->pNext) {
1078 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1079 }
1080 if (!((a->flags) == (b->flags))) {
1081 onFail("a->flags (Error: Value not equal)");
1082 };
1083 if (!((a->queueFamilyIndex) == (b->queueFamilyIndex))) {
1084 onFail("a->queueFamilyIndex (Error: Value not equal)");
1085 };
1086 if (!((a->queueCount) == (b->queueCount))) {
1087 onFail("a->queueCount (Error: Value not equal)");
1088 };
1089 if (!((a->queueCount) == (b->queueCount))) {
1090 onFail("a->pQueuePriorities (Error: Lengths not equal)");
1091 };
1092 if (!((memcmp(a->pQueuePriorities, b->pQueuePriorities, a->queueCount * sizeof(const float)) ==
1093 0))) {
1094 onFail("a->pQueuePriorities (Error: Unequal dyn array)");
1095 };
1096 }
1097
checkEqual_VkDeviceCreateInfo(const VkDeviceCreateInfo * a,const VkDeviceCreateInfo * b,OnFailCompareFunc onFail)1098 void checkEqual_VkDeviceCreateInfo(const VkDeviceCreateInfo* a, const VkDeviceCreateInfo* b,
1099 OnFailCompareFunc onFail) {
1100 if (!((a->sType) == (b->sType))) {
1101 onFail("a->sType (Error: Value not equal)");
1102 };
1103 if (a->pNext) {
1104 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1105 }
1106 if (!((a->flags) == (b->flags))) {
1107 onFail("a->flags (Error: Value not equal)");
1108 };
1109 if (!((a->queueCreateInfoCount) == (b->queueCreateInfoCount))) {
1110 onFail("a->queueCreateInfoCount (Error: Value not equal)");
1111 };
1112 if ((a->pQueueCreateInfos) && (b->pQueueCreateInfos)) {
1113 if (!((a->queueCreateInfoCount) == (b->queueCreateInfoCount))) {
1114 onFail("a->pQueueCreateInfos (Error: Lengths not equal)");
1115 };
1116 if ((a->queueCreateInfoCount) == (b->queueCreateInfoCount)) {
1117 if (a) {
1118 for (uint32_t i = 0; i < (uint32_t)a->queueCreateInfoCount; ++i) {
1119 checkEqual_VkDeviceQueueCreateInfo(a->pQueueCreateInfos + i,
1120 b->pQueueCreateInfos + i, onFail);
1121 }
1122 }
1123 }
1124 }
1125 if (!((a->enabledLayerCount) == (b->enabledLayerCount))) {
1126 onFail("a->enabledLayerCount (Error: Value not equal)");
1127 };
1128 if (!((!(a->ppEnabledLayerNames) && !(b->ppEnabledLayerNames)) ||
1129 ((a->ppEnabledLayerNames) && (b->ppEnabledLayerNames)))) {
1130 onFail("a->ppEnabledLayerNames (Error: Mismatch in string array pointer nullness)");
1131 };
1132 if (!((a->enabledLayerCount) == (b->enabledLayerCount))) {
1133 onFail("a->ppEnabledLayerNames (Error: Lengths not equal in string array)");
1134 };
1135 if (!((a->enabledLayerCount) == (b->enabledLayerCount))) {
1136 onFail("a->ppEnabledLayerNames (Error: Lengths not equal in string array)");
1137 };
1138 if ((a->enabledLayerCount) == (b->enabledLayerCount) && (a->ppEnabledLayerNames) &&
1139 (b->ppEnabledLayerNames)) {
1140 if (a) {
1141 for (uint32_t i = 0; i < (uint32_t)a->enabledLayerCount; ++i) {
1142 if (!((strcmp(*(a->ppEnabledLayerNames + i), *(b->ppEnabledLayerNames + i)) ==
1143 0))) {
1144 onFail("a->ppEnabledLayerNames (Error: Unequal string in string array)");
1145 };
1146 }
1147 }
1148 }
1149 if (!((a->enabledExtensionCount) == (b->enabledExtensionCount))) {
1150 onFail("a->enabledExtensionCount (Error: Value not equal)");
1151 };
1152 if (!((!(a->ppEnabledExtensionNames) && !(b->ppEnabledExtensionNames)) ||
1153 ((a->ppEnabledExtensionNames) && (b->ppEnabledExtensionNames)))) {
1154 onFail("a->ppEnabledExtensionNames (Error: Mismatch in string array pointer nullness)");
1155 };
1156 if (!((a->enabledExtensionCount) == (b->enabledExtensionCount))) {
1157 onFail("a->ppEnabledExtensionNames (Error: Lengths not equal in string array)");
1158 };
1159 if (!((a->enabledExtensionCount) == (b->enabledExtensionCount))) {
1160 onFail("a->ppEnabledExtensionNames (Error: Lengths not equal in string array)");
1161 };
1162 if ((a->enabledExtensionCount) == (b->enabledExtensionCount) && (a->ppEnabledExtensionNames) &&
1163 (b->ppEnabledExtensionNames)) {
1164 if (a) {
1165 for (uint32_t i = 0; i < (uint32_t)a->enabledExtensionCount; ++i) {
1166 if (!((strcmp(*(a->ppEnabledExtensionNames + i),
1167 *(b->ppEnabledExtensionNames + i)) == 0))) {
1168 onFail("a->ppEnabledExtensionNames (Error: Unequal string in string array)");
1169 };
1170 }
1171 }
1172 }
1173 if (!((!(a->pEnabledFeatures) && !(b->pEnabledFeatures)) ||
1174 ((a->pEnabledFeatures) && (b->pEnabledFeatures)))) {
1175 onFail("a->pEnabledFeatures (Error: Mismatch in optional field)");
1176 };
1177 if (a->pEnabledFeatures && b->pEnabledFeatures) {
1178 if ((a->pEnabledFeatures) && (b->pEnabledFeatures)) {
1179 checkEqual_VkPhysicalDeviceFeatures(a->pEnabledFeatures, b->pEnabledFeatures, onFail);
1180 }
1181 }
1182 }
1183
checkEqual_VkExtensionProperties(const VkExtensionProperties * a,const VkExtensionProperties * b,OnFailCompareFunc onFail)1184 void checkEqual_VkExtensionProperties(const VkExtensionProperties* a,
1185 const VkExtensionProperties* b, OnFailCompareFunc onFail) {
1186 if (!((memcmp(a->extensionName, b->extensionName, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)) ==
1187 0))) {
1188 onFail("a->extensionName (Error: Unequal static array)");
1189 };
1190 if (!((a->specVersion) == (b->specVersion))) {
1191 onFail("a->specVersion (Error: Value not equal)");
1192 };
1193 }
1194
checkEqual_VkLayerProperties(const VkLayerProperties * a,const VkLayerProperties * b,OnFailCompareFunc onFail)1195 void checkEqual_VkLayerProperties(const VkLayerProperties* a, const VkLayerProperties* b,
1196 OnFailCompareFunc onFail) {
1197 if (!((memcmp(a->layerName, b->layerName, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)) == 0))) {
1198 onFail("a->layerName (Error: Unequal static array)");
1199 };
1200 if (!((a->specVersion) == (b->specVersion))) {
1201 onFail("a->specVersion (Error: Value not equal)");
1202 };
1203 if (!((a->implementationVersion) == (b->implementationVersion))) {
1204 onFail("a->implementationVersion (Error: Value not equal)");
1205 };
1206 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
1207 onFail("a->description (Error: Unequal static array)");
1208 };
1209 }
1210
checkEqual_VkSubmitInfo(const VkSubmitInfo * a,const VkSubmitInfo * b,OnFailCompareFunc onFail)1211 void checkEqual_VkSubmitInfo(const VkSubmitInfo* a, const VkSubmitInfo* b,
1212 OnFailCompareFunc onFail) {
1213 if (!((a->sType) == (b->sType))) {
1214 onFail("a->sType (Error: Value not equal)");
1215 };
1216 if (a->pNext) {
1217 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1218 }
1219 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
1220 onFail("a->waitSemaphoreCount (Error: Value not equal)");
1221 };
1222 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
1223 onFail("a->pWaitSemaphores (Error: Lengths not equal)");
1224 };
1225 if (!((memcmp(a->pWaitSemaphores, b->pWaitSemaphores,
1226 a->waitSemaphoreCount * sizeof(const VkSemaphore)) == 0))) {
1227 onFail("a->pWaitSemaphores (Error: Unequal dyn array)");
1228 };
1229 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
1230 onFail("a->pWaitDstStageMask (Error: Lengths not equal)");
1231 };
1232 if (!((memcmp(a->pWaitDstStageMask, b->pWaitDstStageMask,
1233 a->waitSemaphoreCount * sizeof(const VkPipelineStageFlags)) == 0))) {
1234 onFail("a->pWaitDstStageMask (Error: Unequal dyn array)");
1235 };
1236 if (!((a->commandBufferCount) == (b->commandBufferCount))) {
1237 onFail("a->commandBufferCount (Error: Value not equal)");
1238 };
1239 if (!((a->commandBufferCount) == (b->commandBufferCount))) {
1240 onFail("a->pCommandBuffers (Error: Lengths not equal)");
1241 };
1242 if (!((memcmp(a->pCommandBuffers, b->pCommandBuffers,
1243 a->commandBufferCount * sizeof(const VkCommandBuffer)) == 0))) {
1244 onFail("a->pCommandBuffers (Error: Unequal dyn array)");
1245 };
1246 if (!((a->signalSemaphoreCount) == (b->signalSemaphoreCount))) {
1247 onFail("a->signalSemaphoreCount (Error: Value not equal)");
1248 };
1249 if (!((a->signalSemaphoreCount) == (b->signalSemaphoreCount))) {
1250 onFail("a->pSignalSemaphores (Error: Lengths not equal)");
1251 };
1252 if (!((memcmp(a->pSignalSemaphores, b->pSignalSemaphores,
1253 a->signalSemaphoreCount * sizeof(const VkSemaphore)) == 0))) {
1254 onFail("a->pSignalSemaphores (Error: Unequal dyn array)");
1255 };
1256 }
1257
checkEqual_VkMappedMemoryRange(const VkMappedMemoryRange * a,const VkMappedMemoryRange * b,OnFailCompareFunc onFail)1258 void checkEqual_VkMappedMemoryRange(const VkMappedMemoryRange* a, const VkMappedMemoryRange* b,
1259 OnFailCompareFunc onFail) {
1260 if (!((a->sType) == (b->sType))) {
1261 onFail("a->sType (Error: Value not equal)");
1262 };
1263 if (a->pNext) {
1264 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1265 }
1266 if (!((a->memory) == (b->memory))) {
1267 onFail("a->memory (Error: Value not equal)");
1268 };
1269 if (!((a->offset) == (b->offset))) {
1270 onFail("a->offset (Error: Value not equal)");
1271 };
1272 if (!((a->size) == (b->size))) {
1273 onFail("a->size (Error: Value not equal)");
1274 };
1275 }
1276
checkEqual_VkMemoryAllocateInfo(const VkMemoryAllocateInfo * a,const VkMemoryAllocateInfo * b,OnFailCompareFunc onFail)1277 void checkEqual_VkMemoryAllocateInfo(const VkMemoryAllocateInfo* a, const VkMemoryAllocateInfo* b,
1278 OnFailCompareFunc onFail) {
1279 if (!((a->sType) == (b->sType))) {
1280 onFail("a->sType (Error: Value not equal)");
1281 };
1282 if (a->pNext) {
1283 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1284 }
1285 if (!((a->allocationSize) == (b->allocationSize))) {
1286 onFail("a->allocationSize (Error: Value not equal)");
1287 };
1288 if (!((a->memoryTypeIndex) == (b->memoryTypeIndex))) {
1289 onFail("a->memoryTypeIndex (Error: Value not equal)");
1290 };
1291 }
1292
checkEqual_VkMemoryRequirements(const VkMemoryRequirements * a,const VkMemoryRequirements * b,OnFailCompareFunc onFail)1293 void checkEqual_VkMemoryRequirements(const VkMemoryRequirements* a, const VkMemoryRequirements* b,
1294 OnFailCompareFunc onFail) {
1295 if (!((a->size) == (b->size))) {
1296 onFail("a->size (Error: Value not equal)");
1297 };
1298 if (!((a->alignment) == (b->alignment))) {
1299 onFail("a->alignment (Error: Value not equal)");
1300 };
1301 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
1302 onFail("a->memoryTypeBits (Error: Value not equal)");
1303 };
1304 }
1305
checkEqual_VkSparseMemoryBind(const VkSparseMemoryBind * a,const VkSparseMemoryBind * b,OnFailCompareFunc onFail)1306 void checkEqual_VkSparseMemoryBind(const VkSparseMemoryBind* a, const VkSparseMemoryBind* b,
1307 OnFailCompareFunc onFail) {
1308 if (!((a->resourceOffset) == (b->resourceOffset))) {
1309 onFail("a->resourceOffset (Error: Value not equal)");
1310 };
1311 if (!((a->size) == (b->size))) {
1312 onFail("a->size (Error: Value not equal)");
1313 };
1314 if (!((a->memory) == (b->memory))) {
1315 onFail("a->memory (Error: Value not equal)");
1316 };
1317 if (!((a->memoryOffset) == (b->memoryOffset))) {
1318 onFail("a->memoryOffset (Error: Value not equal)");
1319 };
1320 if (!((a->flags) == (b->flags))) {
1321 onFail("a->flags (Error: Value not equal)");
1322 };
1323 }
1324
checkEqual_VkSparseBufferMemoryBindInfo(const VkSparseBufferMemoryBindInfo * a,const VkSparseBufferMemoryBindInfo * b,OnFailCompareFunc onFail)1325 void checkEqual_VkSparseBufferMemoryBindInfo(const VkSparseBufferMemoryBindInfo* a,
1326 const VkSparseBufferMemoryBindInfo* b,
1327 OnFailCompareFunc onFail) {
1328 if (!((a->buffer) == (b->buffer))) {
1329 onFail("a->buffer (Error: Value not equal)");
1330 };
1331 if (!((a->bindCount) == (b->bindCount))) {
1332 onFail("a->bindCount (Error: Value not equal)");
1333 };
1334 if ((a->pBinds) && (b->pBinds)) {
1335 if (!((a->bindCount) == (b->bindCount))) {
1336 onFail("a->pBinds (Error: Lengths not equal)");
1337 };
1338 if ((a->bindCount) == (b->bindCount)) {
1339 if (a) {
1340 for (uint32_t i = 0; i < (uint32_t)a->bindCount; ++i) {
1341 checkEqual_VkSparseMemoryBind(a->pBinds + i, b->pBinds + i, onFail);
1342 }
1343 }
1344 }
1345 }
1346 }
1347
checkEqual_VkSparseImageOpaqueMemoryBindInfo(const VkSparseImageOpaqueMemoryBindInfo * a,const VkSparseImageOpaqueMemoryBindInfo * b,OnFailCompareFunc onFail)1348 void checkEqual_VkSparseImageOpaqueMemoryBindInfo(const VkSparseImageOpaqueMemoryBindInfo* a,
1349 const VkSparseImageOpaqueMemoryBindInfo* b,
1350 OnFailCompareFunc onFail) {
1351 if (!((a->image) == (b->image))) {
1352 onFail("a->image (Error: Value not equal)");
1353 };
1354 if (!((a->bindCount) == (b->bindCount))) {
1355 onFail("a->bindCount (Error: Value not equal)");
1356 };
1357 if ((a->pBinds) && (b->pBinds)) {
1358 if (!((a->bindCount) == (b->bindCount))) {
1359 onFail("a->pBinds (Error: Lengths not equal)");
1360 };
1361 if ((a->bindCount) == (b->bindCount)) {
1362 if (a) {
1363 for (uint32_t i = 0; i < (uint32_t)a->bindCount; ++i) {
1364 checkEqual_VkSparseMemoryBind(a->pBinds + i, b->pBinds + i, onFail);
1365 }
1366 }
1367 }
1368 }
1369 }
1370
checkEqual_VkImageSubresource(const VkImageSubresource * a,const VkImageSubresource * b,OnFailCompareFunc onFail)1371 void checkEqual_VkImageSubresource(const VkImageSubresource* a, const VkImageSubresource* b,
1372 OnFailCompareFunc onFail) {
1373 if (!((a->aspectMask) == (b->aspectMask))) {
1374 onFail("a->aspectMask (Error: Value not equal)");
1375 };
1376 if (!((a->mipLevel) == (b->mipLevel))) {
1377 onFail("a->mipLevel (Error: Value not equal)");
1378 };
1379 if (!((a->arrayLayer) == (b->arrayLayer))) {
1380 onFail("a->arrayLayer (Error: Value not equal)");
1381 };
1382 }
1383
checkEqual_VkSparseImageMemoryBind(const VkSparseImageMemoryBind * a,const VkSparseImageMemoryBind * b,OnFailCompareFunc onFail)1384 void checkEqual_VkSparseImageMemoryBind(const VkSparseImageMemoryBind* a,
1385 const VkSparseImageMemoryBind* b,
1386 OnFailCompareFunc onFail) {
1387 checkEqual_VkImageSubresource(&a->subresource, &b->subresource, onFail);
1388 checkEqual_VkOffset3D(&a->offset, &b->offset, onFail);
1389 checkEqual_VkExtent3D(&a->extent, &b->extent, onFail);
1390 if (!((a->memory) == (b->memory))) {
1391 onFail("a->memory (Error: Value not equal)");
1392 };
1393 if (!((a->memoryOffset) == (b->memoryOffset))) {
1394 onFail("a->memoryOffset (Error: Value not equal)");
1395 };
1396 if (!((a->flags) == (b->flags))) {
1397 onFail("a->flags (Error: Value not equal)");
1398 };
1399 }
1400
checkEqual_VkSparseImageMemoryBindInfo(const VkSparseImageMemoryBindInfo * a,const VkSparseImageMemoryBindInfo * b,OnFailCompareFunc onFail)1401 void checkEqual_VkSparseImageMemoryBindInfo(const VkSparseImageMemoryBindInfo* a,
1402 const VkSparseImageMemoryBindInfo* b,
1403 OnFailCompareFunc onFail) {
1404 if (!((a->image) == (b->image))) {
1405 onFail("a->image (Error: Value not equal)");
1406 };
1407 if (!((a->bindCount) == (b->bindCount))) {
1408 onFail("a->bindCount (Error: Value not equal)");
1409 };
1410 if ((a->pBinds) && (b->pBinds)) {
1411 if (!((a->bindCount) == (b->bindCount))) {
1412 onFail("a->pBinds (Error: Lengths not equal)");
1413 };
1414 if ((a->bindCount) == (b->bindCount)) {
1415 if (a) {
1416 for (uint32_t i = 0; i < (uint32_t)a->bindCount; ++i) {
1417 checkEqual_VkSparseImageMemoryBind(a->pBinds + i, b->pBinds + i, onFail);
1418 }
1419 }
1420 }
1421 }
1422 }
1423
checkEqual_VkBindSparseInfo(const VkBindSparseInfo * a,const VkBindSparseInfo * b,OnFailCompareFunc onFail)1424 void checkEqual_VkBindSparseInfo(const VkBindSparseInfo* a, const VkBindSparseInfo* b,
1425 OnFailCompareFunc onFail) {
1426 if (!((a->sType) == (b->sType))) {
1427 onFail("a->sType (Error: Value not equal)");
1428 };
1429 if (a->pNext) {
1430 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1431 }
1432 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
1433 onFail("a->waitSemaphoreCount (Error: Value not equal)");
1434 };
1435 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
1436 onFail("a->pWaitSemaphores (Error: Lengths not equal)");
1437 };
1438 if (!((memcmp(a->pWaitSemaphores, b->pWaitSemaphores,
1439 a->waitSemaphoreCount * sizeof(const VkSemaphore)) == 0))) {
1440 onFail("a->pWaitSemaphores (Error: Unequal dyn array)");
1441 };
1442 if (!((a->bufferBindCount) == (b->bufferBindCount))) {
1443 onFail("a->bufferBindCount (Error: Value not equal)");
1444 };
1445 if ((a->pBufferBinds) && (b->pBufferBinds)) {
1446 if (!((a->bufferBindCount) == (b->bufferBindCount))) {
1447 onFail("a->pBufferBinds (Error: Lengths not equal)");
1448 };
1449 if ((a->bufferBindCount) == (b->bufferBindCount)) {
1450 if (a) {
1451 for (uint32_t i = 0; i < (uint32_t)a->bufferBindCount; ++i) {
1452 checkEqual_VkSparseBufferMemoryBindInfo(a->pBufferBinds + i,
1453 b->pBufferBinds + i, onFail);
1454 }
1455 }
1456 }
1457 }
1458 if (!((a->imageOpaqueBindCount) == (b->imageOpaqueBindCount))) {
1459 onFail("a->imageOpaqueBindCount (Error: Value not equal)");
1460 };
1461 if ((a->pImageOpaqueBinds) && (b->pImageOpaqueBinds)) {
1462 if (!((a->imageOpaqueBindCount) == (b->imageOpaqueBindCount))) {
1463 onFail("a->pImageOpaqueBinds (Error: Lengths not equal)");
1464 };
1465 if ((a->imageOpaqueBindCount) == (b->imageOpaqueBindCount)) {
1466 if (a) {
1467 for (uint32_t i = 0; i < (uint32_t)a->imageOpaqueBindCount; ++i) {
1468 checkEqual_VkSparseImageOpaqueMemoryBindInfo(a->pImageOpaqueBinds + i,
1469 b->pImageOpaqueBinds + i, onFail);
1470 }
1471 }
1472 }
1473 }
1474 if (!((a->imageBindCount) == (b->imageBindCount))) {
1475 onFail("a->imageBindCount (Error: Value not equal)");
1476 };
1477 if ((a->pImageBinds) && (b->pImageBinds)) {
1478 if (!((a->imageBindCount) == (b->imageBindCount))) {
1479 onFail("a->pImageBinds (Error: Lengths not equal)");
1480 };
1481 if ((a->imageBindCount) == (b->imageBindCount)) {
1482 if (a) {
1483 for (uint32_t i = 0; i < (uint32_t)a->imageBindCount; ++i) {
1484 checkEqual_VkSparseImageMemoryBindInfo(a->pImageBinds + i, b->pImageBinds + i,
1485 onFail);
1486 }
1487 }
1488 }
1489 }
1490 if (!((a->signalSemaphoreCount) == (b->signalSemaphoreCount))) {
1491 onFail("a->signalSemaphoreCount (Error: Value not equal)");
1492 };
1493 if (!((a->signalSemaphoreCount) == (b->signalSemaphoreCount))) {
1494 onFail("a->pSignalSemaphores (Error: Lengths not equal)");
1495 };
1496 if (!((memcmp(a->pSignalSemaphores, b->pSignalSemaphores,
1497 a->signalSemaphoreCount * sizeof(const VkSemaphore)) == 0))) {
1498 onFail("a->pSignalSemaphores (Error: Unequal dyn array)");
1499 };
1500 }
1501
checkEqual_VkSparseImageFormatProperties(const VkSparseImageFormatProperties * a,const VkSparseImageFormatProperties * b,OnFailCompareFunc onFail)1502 void checkEqual_VkSparseImageFormatProperties(const VkSparseImageFormatProperties* a,
1503 const VkSparseImageFormatProperties* b,
1504 OnFailCompareFunc onFail) {
1505 if (!((a->aspectMask) == (b->aspectMask))) {
1506 onFail("a->aspectMask (Error: Value not equal)");
1507 };
1508 checkEqual_VkExtent3D(&a->imageGranularity, &b->imageGranularity, onFail);
1509 if (!((a->flags) == (b->flags))) {
1510 onFail("a->flags (Error: Value not equal)");
1511 };
1512 }
1513
checkEqual_VkSparseImageMemoryRequirements(const VkSparseImageMemoryRequirements * a,const VkSparseImageMemoryRequirements * b,OnFailCompareFunc onFail)1514 void checkEqual_VkSparseImageMemoryRequirements(const VkSparseImageMemoryRequirements* a,
1515 const VkSparseImageMemoryRequirements* b,
1516 OnFailCompareFunc onFail) {
1517 checkEqual_VkSparseImageFormatProperties(&a->formatProperties, &b->formatProperties, onFail);
1518 if (!((a->imageMipTailFirstLod) == (b->imageMipTailFirstLod))) {
1519 onFail("a->imageMipTailFirstLod (Error: Value not equal)");
1520 };
1521 if (!((a->imageMipTailSize) == (b->imageMipTailSize))) {
1522 onFail("a->imageMipTailSize (Error: Value not equal)");
1523 };
1524 if (!((a->imageMipTailOffset) == (b->imageMipTailOffset))) {
1525 onFail("a->imageMipTailOffset (Error: Value not equal)");
1526 };
1527 if (!((a->imageMipTailStride) == (b->imageMipTailStride))) {
1528 onFail("a->imageMipTailStride (Error: Value not equal)");
1529 };
1530 }
1531
checkEqual_VkFenceCreateInfo(const VkFenceCreateInfo * a,const VkFenceCreateInfo * b,OnFailCompareFunc onFail)1532 void checkEqual_VkFenceCreateInfo(const VkFenceCreateInfo* a, const VkFenceCreateInfo* b,
1533 OnFailCompareFunc onFail) {
1534 if (!((a->sType) == (b->sType))) {
1535 onFail("a->sType (Error: Value not equal)");
1536 };
1537 if (a->pNext) {
1538 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1539 }
1540 if (!((a->flags) == (b->flags))) {
1541 onFail("a->flags (Error: Value not equal)");
1542 };
1543 }
1544
checkEqual_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo * a,const VkSemaphoreCreateInfo * b,OnFailCompareFunc onFail)1545 void checkEqual_VkSemaphoreCreateInfo(const VkSemaphoreCreateInfo* a,
1546 const VkSemaphoreCreateInfo* b, OnFailCompareFunc onFail) {
1547 if (!((a->sType) == (b->sType))) {
1548 onFail("a->sType (Error: Value not equal)");
1549 };
1550 if (a->pNext) {
1551 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1552 }
1553 if (!((a->flags) == (b->flags))) {
1554 onFail("a->flags (Error: Value not equal)");
1555 };
1556 }
1557
checkEqual_VkEventCreateInfo(const VkEventCreateInfo * a,const VkEventCreateInfo * b,OnFailCompareFunc onFail)1558 void checkEqual_VkEventCreateInfo(const VkEventCreateInfo* a, const VkEventCreateInfo* b,
1559 OnFailCompareFunc onFail) {
1560 if (!((a->sType) == (b->sType))) {
1561 onFail("a->sType (Error: Value not equal)");
1562 };
1563 if (a->pNext) {
1564 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1565 }
1566 if (!((a->flags) == (b->flags))) {
1567 onFail("a->flags (Error: Value not equal)");
1568 };
1569 }
1570
checkEqual_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo * a,const VkQueryPoolCreateInfo * b,OnFailCompareFunc onFail)1571 void checkEqual_VkQueryPoolCreateInfo(const VkQueryPoolCreateInfo* a,
1572 const VkQueryPoolCreateInfo* b, OnFailCompareFunc onFail) {
1573 if (!((a->sType) == (b->sType))) {
1574 onFail("a->sType (Error: Value not equal)");
1575 };
1576 if (a->pNext) {
1577 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1578 }
1579 if (!((a->flags) == (b->flags))) {
1580 onFail("a->flags (Error: Value not equal)");
1581 };
1582 if (!((a->queryType) == (b->queryType))) {
1583 onFail("a->queryType (Error: Value not equal)");
1584 };
1585 if (!((a->queryCount) == (b->queryCount))) {
1586 onFail("a->queryCount (Error: Value not equal)");
1587 };
1588 if (!((a->pipelineStatistics) == (b->pipelineStatistics))) {
1589 onFail("a->pipelineStatistics (Error: Value not equal)");
1590 };
1591 }
1592
checkEqual_VkBufferCreateInfo(const VkBufferCreateInfo * a,const VkBufferCreateInfo * b,OnFailCompareFunc onFail)1593 void checkEqual_VkBufferCreateInfo(const VkBufferCreateInfo* a, const VkBufferCreateInfo* b,
1594 OnFailCompareFunc onFail) {
1595 if (!((a->sType) == (b->sType))) {
1596 onFail("a->sType (Error: Value not equal)");
1597 };
1598 if (a->pNext) {
1599 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1600 }
1601 if (!((a->flags) == (b->flags))) {
1602 onFail("a->flags (Error: Value not equal)");
1603 };
1604 if (!((a->size) == (b->size))) {
1605 onFail("a->size (Error: Value not equal)");
1606 };
1607 if (!((a->usage) == (b->usage))) {
1608 onFail("a->usage (Error: Value not equal)");
1609 };
1610 if (!((a->sharingMode) == (b->sharingMode))) {
1611 onFail("a->sharingMode (Error: Value not equal)");
1612 };
1613 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
1614 onFail("a->queueFamilyIndexCount (Error: Value not equal)");
1615 };
1616 if (!((!(a->pQueueFamilyIndices) && !(b->pQueueFamilyIndices)) ||
1617 ((a->pQueueFamilyIndices) && (b->pQueueFamilyIndices)))) {
1618 onFail("a->pQueueFamilyIndices (Error: Mismatch in optional field)");
1619 };
1620 if (a->pQueueFamilyIndices && b->pQueueFamilyIndices) {
1621 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
1622 onFail("a->pQueueFamilyIndices (Error: Lengths not equal)");
1623 };
1624 if (!((memcmp(a->pQueueFamilyIndices, b->pQueueFamilyIndices,
1625 a->queueFamilyIndexCount * sizeof(const uint32_t)) == 0))) {
1626 onFail("a->pQueueFamilyIndices (Error: Unequal dyn array)");
1627 };
1628 }
1629 }
1630
checkEqual_VkBufferViewCreateInfo(const VkBufferViewCreateInfo * a,const VkBufferViewCreateInfo * b,OnFailCompareFunc onFail)1631 void checkEqual_VkBufferViewCreateInfo(const VkBufferViewCreateInfo* a,
1632 const VkBufferViewCreateInfo* b, OnFailCompareFunc onFail) {
1633 if (!((a->sType) == (b->sType))) {
1634 onFail("a->sType (Error: Value not equal)");
1635 };
1636 if (a->pNext) {
1637 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1638 }
1639 if (!((a->flags) == (b->flags))) {
1640 onFail("a->flags (Error: Value not equal)");
1641 };
1642 if (!((a->buffer) == (b->buffer))) {
1643 onFail("a->buffer (Error: Value not equal)");
1644 };
1645 if (!((a->format) == (b->format))) {
1646 onFail("a->format (Error: Value not equal)");
1647 };
1648 if (!((a->offset) == (b->offset))) {
1649 onFail("a->offset (Error: Value not equal)");
1650 };
1651 if (!((a->range) == (b->range))) {
1652 onFail("a->range (Error: Value not equal)");
1653 };
1654 }
1655
checkEqual_VkImageCreateInfo(const VkImageCreateInfo * a,const VkImageCreateInfo * b,OnFailCompareFunc onFail)1656 void checkEqual_VkImageCreateInfo(const VkImageCreateInfo* a, const VkImageCreateInfo* b,
1657 OnFailCompareFunc onFail) {
1658 if (!((a->sType) == (b->sType))) {
1659 onFail("a->sType (Error: Value not equal)");
1660 };
1661 if (a->pNext) {
1662 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1663 }
1664 if (!((a->flags) == (b->flags))) {
1665 onFail("a->flags (Error: Value not equal)");
1666 };
1667 if (!((a->imageType) == (b->imageType))) {
1668 onFail("a->imageType (Error: Value not equal)");
1669 };
1670 if (!((a->format) == (b->format))) {
1671 onFail("a->format (Error: Value not equal)");
1672 };
1673 checkEqual_VkExtent3D(&a->extent, &b->extent, onFail);
1674 if (!((a->mipLevels) == (b->mipLevels))) {
1675 onFail("a->mipLevels (Error: Value not equal)");
1676 };
1677 if (!((a->arrayLayers) == (b->arrayLayers))) {
1678 onFail("a->arrayLayers (Error: Value not equal)");
1679 };
1680 if (!((a->samples) == (b->samples))) {
1681 onFail("a->samples (Error: Value not equal)");
1682 };
1683 if (!((a->tiling) == (b->tiling))) {
1684 onFail("a->tiling (Error: Value not equal)");
1685 };
1686 if (!((a->usage) == (b->usage))) {
1687 onFail("a->usage (Error: Value not equal)");
1688 };
1689 if (!((a->sharingMode) == (b->sharingMode))) {
1690 onFail("a->sharingMode (Error: Value not equal)");
1691 };
1692 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
1693 onFail("a->queueFamilyIndexCount (Error: Value not equal)");
1694 };
1695 if (!((!(a->pQueueFamilyIndices) && !(b->pQueueFamilyIndices)) ||
1696 ((a->pQueueFamilyIndices) && (b->pQueueFamilyIndices)))) {
1697 onFail("a->pQueueFamilyIndices (Error: Mismatch in optional field)");
1698 };
1699 if (a->pQueueFamilyIndices && b->pQueueFamilyIndices) {
1700 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
1701 onFail("a->pQueueFamilyIndices (Error: Lengths not equal)");
1702 };
1703 if (!((memcmp(a->pQueueFamilyIndices, b->pQueueFamilyIndices,
1704 a->queueFamilyIndexCount * sizeof(const uint32_t)) == 0))) {
1705 onFail("a->pQueueFamilyIndices (Error: Unequal dyn array)");
1706 };
1707 }
1708 if (!((a->initialLayout) == (b->initialLayout))) {
1709 onFail("a->initialLayout (Error: Value not equal)");
1710 };
1711 }
1712
checkEqual_VkSubresourceLayout(const VkSubresourceLayout * a,const VkSubresourceLayout * b,OnFailCompareFunc onFail)1713 void checkEqual_VkSubresourceLayout(const VkSubresourceLayout* a, const VkSubresourceLayout* b,
1714 OnFailCompareFunc onFail) {
1715 if (!((a->offset) == (b->offset))) {
1716 onFail("a->offset (Error: Value not equal)");
1717 };
1718 if (!((a->size) == (b->size))) {
1719 onFail("a->size (Error: Value not equal)");
1720 };
1721 if (!((a->rowPitch) == (b->rowPitch))) {
1722 onFail("a->rowPitch (Error: Value not equal)");
1723 };
1724 if (!((a->arrayPitch) == (b->arrayPitch))) {
1725 onFail("a->arrayPitch (Error: Value not equal)");
1726 };
1727 if (!((a->depthPitch) == (b->depthPitch))) {
1728 onFail("a->depthPitch (Error: Value not equal)");
1729 };
1730 }
1731
checkEqual_VkComponentMapping(const VkComponentMapping * a,const VkComponentMapping * b,OnFailCompareFunc onFail)1732 void checkEqual_VkComponentMapping(const VkComponentMapping* a, const VkComponentMapping* b,
1733 OnFailCompareFunc onFail) {
1734 if (!((a->r) == (b->r))) {
1735 onFail("a->r (Error: Value not equal)");
1736 };
1737 if (!((a->g) == (b->g))) {
1738 onFail("a->g (Error: Value not equal)");
1739 };
1740 if (!((a->b) == (b->b))) {
1741 onFail("a->b (Error: Value not equal)");
1742 };
1743 if (!((a->a) == (b->a))) {
1744 onFail("a->a (Error: Value not equal)");
1745 };
1746 }
1747
checkEqual_VkImageViewCreateInfo(const VkImageViewCreateInfo * a,const VkImageViewCreateInfo * b,OnFailCompareFunc onFail)1748 void checkEqual_VkImageViewCreateInfo(const VkImageViewCreateInfo* a,
1749 const VkImageViewCreateInfo* b, OnFailCompareFunc onFail) {
1750 if (!((a->sType) == (b->sType))) {
1751 onFail("a->sType (Error: Value not equal)");
1752 };
1753 if (a->pNext) {
1754 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1755 }
1756 if (!((a->flags) == (b->flags))) {
1757 onFail("a->flags (Error: Value not equal)");
1758 };
1759 if (!((a->image) == (b->image))) {
1760 onFail("a->image (Error: Value not equal)");
1761 };
1762 if (!((a->viewType) == (b->viewType))) {
1763 onFail("a->viewType (Error: Value not equal)");
1764 };
1765 if (!((a->format) == (b->format))) {
1766 onFail("a->format (Error: Value not equal)");
1767 };
1768 checkEqual_VkComponentMapping(&a->components, &b->components, onFail);
1769 checkEqual_VkImageSubresourceRange(&a->subresourceRange, &b->subresourceRange, onFail);
1770 }
1771
checkEqual_VkShaderModuleCreateInfo(const VkShaderModuleCreateInfo * a,const VkShaderModuleCreateInfo * b,OnFailCompareFunc onFail)1772 void checkEqual_VkShaderModuleCreateInfo(const VkShaderModuleCreateInfo* a,
1773 const VkShaderModuleCreateInfo* b,
1774 OnFailCompareFunc onFail) {
1775 if (!((a->sType) == (b->sType))) {
1776 onFail("a->sType (Error: Value not equal)");
1777 };
1778 if (a->pNext) {
1779 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1780 }
1781 if (!((a->flags) == (b->flags))) {
1782 onFail("a->flags (Error: Value not equal)");
1783 };
1784 if (!((a->codeSize) == (b->codeSize))) {
1785 onFail("a->codeSize (Error: Value not equal)");
1786 };
1787 if (!(((a->codeSize / 4)) == ((b->codeSize / 4)))) {
1788 onFail("a->pCode (Error: Lengths not equal)");
1789 };
1790 if (!((memcmp(a->pCode, b->pCode, (a->codeSize / 4) * sizeof(const uint32_t)) == 0))) {
1791 onFail("a->pCode (Error: Unequal dyn array)");
1792 };
1793 }
1794
checkEqual_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo * a,const VkPipelineCacheCreateInfo * b,OnFailCompareFunc onFail)1795 void checkEqual_VkPipelineCacheCreateInfo(const VkPipelineCacheCreateInfo* a,
1796 const VkPipelineCacheCreateInfo* b,
1797 OnFailCompareFunc onFail) {
1798 if (!((a->sType) == (b->sType))) {
1799 onFail("a->sType (Error: Value not equal)");
1800 };
1801 if (a->pNext) {
1802 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1803 }
1804 if (!((a->flags) == (b->flags))) {
1805 onFail("a->flags (Error: Value not equal)");
1806 };
1807 if (!((a->initialDataSize) == (b->initialDataSize))) {
1808 onFail("a->initialDataSize (Error: Value not equal)");
1809 };
1810 }
1811
checkEqual_VkSpecializationMapEntry(const VkSpecializationMapEntry * a,const VkSpecializationMapEntry * b,OnFailCompareFunc onFail)1812 void checkEqual_VkSpecializationMapEntry(const VkSpecializationMapEntry* a,
1813 const VkSpecializationMapEntry* b,
1814 OnFailCompareFunc onFail) {
1815 if (!((a->constantID) == (b->constantID))) {
1816 onFail("a->constantID (Error: Value not equal)");
1817 };
1818 if (!((a->offset) == (b->offset))) {
1819 onFail("a->offset (Error: Value not equal)");
1820 };
1821 if (!((a->size) == (b->size))) {
1822 onFail("a->size (Error: Value not equal)");
1823 };
1824 }
1825
checkEqual_VkSpecializationInfo(const VkSpecializationInfo * a,const VkSpecializationInfo * b,OnFailCompareFunc onFail)1826 void checkEqual_VkSpecializationInfo(const VkSpecializationInfo* a, const VkSpecializationInfo* b,
1827 OnFailCompareFunc onFail) {
1828 if (!((a->mapEntryCount) == (b->mapEntryCount))) {
1829 onFail("a->mapEntryCount (Error: Value not equal)");
1830 };
1831 if ((a->pMapEntries) && (b->pMapEntries)) {
1832 if (!((a->mapEntryCount) == (b->mapEntryCount))) {
1833 onFail("a->pMapEntries (Error: Lengths not equal)");
1834 };
1835 if ((a->mapEntryCount) == (b->mapEntryCount)) {
1836 if (a) {
1837 for (uint32_t i = 0; i < (uint32_t)a->mapEntryCount; ++i) {
1838 checkEqual_VkSpecializationMapEntry(a->pMapEntries + i, b->pMapEntries + i,
1839 onFail);
1840 }
1841 }
1842 }
1843 }
1844 if (!((a->dataSize) == (b->dataSize))) {
1845 onFail("a->dataSize (Error: Value not equal)");
1846 };
1847 }
1848
checkEqual_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo * a,const VkPipelineShaderStageCreateInfo * b,OnFailCompareFunc onFail)1849 void checkEqual_VkPipelineShaderStageCreateInfo(const VkPipelineShaderStageCreateInfo* a,
1850 const VkPipelineShaderStageCreateInfo* b,
1851 OnFailCompareFunc onFail) {
1852 if (!((a->sType) == (b->sType))) {
1853 onFail("a->sType (Error: Value not equal)");
1854 };
1855 if (a->pNext) {
1856 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1857 }
1858 if (!((a->flags) == (b->flags))) {
1859 onFail("a->flags (Error: Value not equal)");
1860 };
1861 if (!((a->stage) == (b->stage))) {
1862 onFail("a->stage (Error: Value not equal)");
1863 };
1864 if (!((a->module) == (b->module))) {
1865 onFail("a->module (Error: Value not equal)");
1866 };
1867 if (!((!(a->pName) && !(b->pName)) || ((a->pName) && (b->pName)))) {
1868 onFail("a->pName (Error: Mismatch in string pointer nullness)");
1869 };
1870 if ((a->pName) && (b->pName)) {
1871 if (!((strcmp(a->pName, b->pName) == 0))) {
1872 onFail("a->pName (Error: Unequal strings)");
1873 };
1874 }
1875 if (!((!(a->pSpecializationInfo) && !(b->pSpecializationInfo)) ||
1876 ((a->pSpecializationInfo) && (b->pSpecializationInfo)))) {
1877 onFail("a->pSpecializationInfo (Error: Mismatch in optional field)");
1878 };
1879 if (a->pSpecializationInfo && b->pSpecializationInfo) {
1880 if ((a->pSpecializationInfo) && (b->pSpecializationInfo)) {
1881 checkEqual_VkSpecializationInfo(a->pSpecializationInfo, b->pSpecializationInfo, onFail);
1882 }
1883 }
1884 }
1885
checkEqual_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo * a,const VkComputePipelineCreateInfo * b,OnFailCompareFunc onFail)1886 void checkEqual_VkComputePipelineCreateInfo(const VkComputePipelineCreateInfo* a,
1887 const VkComputePipelineCreateInfo* b,
1888 OnFailCompareFunc onFail) {
1889 if (!((a->sType) == (b->sType))) {
1890 onFail("a->sType (Error: Value not equal)");
1891 };
1892 if (a->pNext) {
1893 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1894 }
1895 if (!((a->flags) == (b->flags))) {
1896 onFail("a->flags (Error: Value not equal)");
1897 };
1898 checkEqual_VkPipelineShaderStageCreateInfo(&a->stage, &b->stage, onFail);
1899 if (!((a->layout) == (b->layout))) {
1900 onFail("a->layout (Error: Value not equal)");
1901 };
1902 if (!((a->basePipelineHandle) == (b->basePipelineHandle))) {
1903 onFail("a->basePipelineHandle (Error: Value not equal)");
1904 };
1905 if (!((a->basePipelineIndex) == (b->basePipelineIndex))) {
1906 onFail("a->basePipelineIndex (Error: Value not equal)");
1907 };
1908 }
1909
checkEqual_VkVertexInputBindingDescription(const VkVertexInputBindingDescription * a,const VkVertexInputBindingDescription * b,OnFailCompareFunc onFail)1910 void checkEqual_VkVertexInputBindingDescription(const VkVertexInputBindingDescription* a,
1911 const VkVertexInputBindingDescription* b,
1912 OnFailCompareFunc onFail) {
1913 if (!((a->binding) == (b->binding))) {
1914 onFail("a->binding (Error: Value not equal)");
1915 };
1916 if (!((a->stride) == (b->stride))) {
1917 onFail("a->stride (Error: Value not equal)");
1918 };
1919 if (!((a->inputRate) == (b->inputRate))) {
1920 onFail("a->inputRate (Error: Value not equal)");
1921 };
1922 }
1923
checkEqual_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription * a,const VkVertexInputAttributeDescription * b,OnFailCompareFunc onFail)1924 void checkEqual_VkVertexInputAttributeDescription(const VkVertexInputAttributeDescription* a,
1925 const VkVertexInputAttributeDescription* b,
1926 OnFailCompareFunc onFail) {
1927 if (!((a->location) == (b->location))) {
1928 onFail("a->location (Error: Value not equal)");
1929 };
1930 if (!((a->binding) == (b->binding))) {
1931 onFail("a->binding (Error: Value not equal)");
1932 };
1933 if (!((a->format) == (b->format))) {
1934 onFail("a->format (Error: Value not equal)");
1935 };
1936 if (!((a->offset) == (b->offset))) {
1937 onFail("a->offset (Error: Value not equal)");
1938 };
1939 }
1940
checkEqual_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo * a,const VkPipelineVertexInputStateCreateInfo * b,OnFailCompareFunc onFail)1941 void checkEqual_VkPipelineVertexInputStateCreateInfo(const VkPipelineVertexInputStateCreateInfo* a,
1942 const VkPipelineVertexInputStateCreateInfo* b,
1943 OnFailCompareFunc onFail) {
1944 if (!((a->sType) == (b->sType))) {
1945 onFail("a->sType (Error: Value not equal)");
1946 };
1947 if (a->pNext) {
1948 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1949 }
1950 if (!((a->flags) == (b->flags))) {
1951 onFail("a->flags (Error: Value not equal)");
1952 };
1953 if (!((a->vertexBindingDescriptionCount) == (b->vertexBindingDescriptionCount))) {
1954 onFail("a->vertexBindingDescriptionCount (Error: Value not equal)");
1955 };
1956 if ((a->pVertexBindingDescriptions) && (b->pVertexBindingDescriptions)) {
1957 if (!((a->vertexBindingDescriptionCount) == (b->vertexBindingDescriptionCount))) {
1958 onFail("a->pVertexBindingDescriptions (Error: Lengths not equal)");
1959 };
1960 if ((a->vertexBindingDescriptionCount) == (b->vertexBindingDescriptionCount)) {
1961 if (a) {
1962 for (uint32_t i = 0; i < (uint32_t)a->vertexBindingDescriptionCount; ++i) {
1963 checkEqual_VkVertexInputBindingDescription(a->pVertexBindingDescriptions + i,
1964 b->pVertexBindingDescriptions + i,
1965 onFail);
1966 }
1967 }
1968 }
1969 }
1970 if (!((a->vertexAttributeDescriptionCount) == (b->vertexAttributeDescriptionCount))) {
1971 onFail("a->vertexAttributeDescriptionCount (Error: Value not equal)");
1972 };
1973 if ((a->pVertexAttributeDescriptions) && (b->pVertexAttributeDescriptions)) {
1974 if (!((a->vertexAttributeDescriptionCount) == (b->vertexAttributeDescriptionCount))) {
1975 onFail("a->pVertexAttributeDescriptions (Error: Lengths not equal)");
1976 };
1977 if ((a->vertexAttributeDescriptionCount) == (b->vertexAttributeDescriptionCount)) {
1978 if (a) {
1979 for (uint32_t i = 0; i < (uint32_t)a->vertexAttributeDescriptionCount; ++i) {
1980 checkEqual_VkVertexInputAttributeDescription(
1981 a->pVertexAttributeDescriptions + i, b->pVertexAttributeDescriptions + i,
1982 onFail);
1983 }
1984 }
1985 }
1986 }
1987 }
1988
checkEqual_VkPipelineInputAssemblyStateCreateInfo(const VkPipelineInputAssemblyStateCreateInfo * a,const VkPipelineInputAssemblyStateCreateInfo * b,OnFailCompareFunc onFail)1989 void checkEqual_VkPipelineInputAssemblyStateCreateInfo(
1990 const VkPipelineInputAssemblyStateCreateInfo* a,
1991 const VkPipelineInputAssemblyStateCreateInfo* b, OnFailCompareFunc onFail) {
1992 if (!((a->sType) == (b->sType))) {
1993 onFail("a->sType (Error: Value not equal)");
1994 };
1995 if (a->pNext) {
1996 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
1997 }
1998 if (!((a->flags) == (b->flags))) {
1999 onFail("a->flags (Error: Value not equal)");
2000 };
2001 if (!((a->topology) == (b->topology))) {
2002 onFail("a->topology (Error: Value not equal)");
2003 };
2004 if (!((a->primitiveRestartEnable) == (b->primitiveRestartEnable))) {
2005 onFail("a->primitiveRestartEnable (Error: Value not equal)");
2006 };
2007 }
2008
checkEqual_VkPipelineTessellationStateCreateInfo(const VkPipelineTessellationStateCreateInfo * a,const VkPipelineTessellationStateCreateInfo * b,OnFailCompareFunc onFail)2009 void checkEqual_VkPipelineTessellationStateCreateInfo(
2010 const VkPipelineTessellationStateCreateInfo* a, const VkPipelineTessellationStateCreateInfo* b,
2011 OnFailCompareFunc onFail) {
2012 if (!((a->sType) == (b->sType))) {
2013 onFail("a->sType (Error: Value not equal)");
2014 };
2015 if (a->pNext) {
2016 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2017 }
2018 if (!((a->flags) == (b->flags))) {
2019 onFail("a->flags (Error: Value not equal)");
2020 };
2021 if (!((a->patchControlPoints) == (b->patchControlPoints))) {
2022 onFail("a->patchControlPoints (Error: Value not equal)");
2023 };
2024 }
2025
checkEqual_VkViewport(const VkViewport * a,const VkViewport * b,OnFailCompareFunc onFail)2026 void checkEqual_VkViewport(const VkViewport* a, const VkViewport* b, OnFailCompareFunc onFail) {
2027 if (!((a->x) == (b->x))) {
2028 onFail("a->x (Error: Value not equal)");
2029 };
2030 if (!((a->y) == (b->y))) {
2031 onFail("a->y (Error: Value not equal)");
2032 };
2033 if (!((a->width) == (b->width))) {
2034 onFail("a->width (Error: Value not equal)");
2035 };
2036 if (!((a->height) == (b->height))) {
2037 onFail("a->height (Error: Value not equal)");
2038 };
2039 if (!((a->minDepth) == (b->minDepth))) {
2040 onFail("a->minDepth (Error: Value not equal)");
2041 };
2042 if (!((a->maxDepth) == (b->maxDepth))) {
2043 onFail("a->maxDepth (Error: Value not equal)");
2044 };
2045 }
2046
checkEqual_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo * a,const VkPipelineViewportStateCreateInfo * b,OnFailCompareFunc onFail)2047 void checkEqual_VkPipelineViewportStateCreateInfo(const VkPipelineViewportStateCreateInfo* a,
2048 const VkPipelineViewportStateCreateInfo* b,
2049 OnFailCompareFunc onFail) {
2050 if (!((a->sType) == (b->sType))) {
2051 onFail("a->sType (Error: Value not equal)");
2052 };
2053 if (a->pNext) {
2054 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2055 }
2056 if (!((a->flags) == (b->flags))) {
2057 onFail("a->flags (Error: Value not equal)");
2058 };
2059 if (!((a->viewportCount) == (b->viewportCount))) {
2060 onFail("a->viewportCount (Error: Value not equal)");
2061 };
2062 if (!((!(a->pViewports) && !(b->pViewports)) || ((a->pViewports) && (b->pViewports)))) {
2063 onFail("a->pViewports (Error: Mismatch in optional field)");
2064 };
2065 if (a->pViewports && b->pViewports) {
2066 if ((a->pViewports) && (b->pViewports)) {
2067 if (!((a->viewportCount) == (b->viewportCount))) {
2068 onFail("a->pViewports (Error: Lengths not equal)");
2069 };
2070 if ((a->viewportCount) == (b->viewportCount)) {
2071 if (a) {
2072 for (uint32_t i = 0; i < (uint32_t)a->viewportCount; ++i) {
2073 checkEqual_VkViewport(a->pViewports + i, b->pViewports + i, onFail);
2074 }
2075 }
2076 }
2077 }
2078 }
2079 if (!((a->scissorCount) == (b->scissorCount))) {
2080 onFail("a->scissorCount (Error: Value not equal)");
2081 };
2082 if (!((!(a->pScissors) && !(b->pScissors)) || ((a->pScissors) && (b->pScissors)))) {
2083 onFail("a->pScissors (Error: Mismatch in optional field)");
2084 };
2085 if (a->pScissors && b->pScissors) {
2086 if ((a->pScissors) && (b->pScissors)) {
2087 if (!((a->scissorCount) == (b->scissorCount))) {
2088 onFail("a->pScissors (Error: Lengths not equal)");
2089 };
2090 if ((a->scissorCount) == (b->scissorCount)) {
2091 if (a) {
2092 for (uint32_t i = 0; i < (uint32_t)a->scissorCount; ++i) {
2093 checkEqual_VkRect2D(a->pScissors + i, b->pScissors + i, onFail);
2094 }
2095 }
2096 }
2097 }
2098 }
2099 }
2100
checkEqual_VkPipelineRasterizationStateCreateInfo(const VkPipelineRasterizationStateCreateInfo * a,const VkPipelineRasterizationStateCreateInfo * b,OnFailCompareFunc onFail)2101 void checkEqual_VkPipelineRasterizationStateCreateInfo(
2102 const VkPipelineRasterizationStateCreateInfo* a,
2103 const VkPipelineRasterizationStateCreateInfo* b, OnFailCompareFunc onFail) {
2104 if (!((a->sType) == (b->sType))) {
2105 onFail("a->sType (Error: Value not equal)");
2106 };
2107 if (a->pNext) {
2108 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2109 }
2110 if (!((a->flags) == (b->flags))) {
2111 onFail("a->flags (Error: Value not equal)");
2112 };
2113 if (!((a->depthClampEnable) == (b->depthClampEnable))) {
2114 onFail("a->depthClampEnable (Error: Value not equal)");
2115 };
2116 if (!((a->rasterizerDiscardEnable) == (b->rasterizerDiscardEnable))) {
2117 onFail("a->rasterizerDiscardEnable (Error: Value not equal)");
2118 };
2119 if (!((a->polygonMode) == (b->polygonMode))) {
2120 onFail("a->polygonMode (Error: Value not equal)");
2121 };
2122 if (!((a->cullMode) == (b->cullMode))) {
2123 onFail("a->cullMode (Error: Value not equal)");
2124 };
2125 if (!((a->frontFace) == (b->frontFace))) {
2126 onFail("a->frontFace (Error: Value not equal)");
2127 };
2128 if (!((a->depthBiasEnable) == (b->depthBiasEnable))) {
2129 onFail("a->depthBiasEnable (Error: Value not equal)");
2130 };
2131 if (!((a->depthBiasConstantFactor) == (b->depthBiasConstantFactor))) {
2132 onFail("a->depthBiasConstantFactor (Error: Value not equal)");
2133 };
2134 if (!((a->depthBiasClamp) == (b->depthBiasClamp))) {
2135 onFail("a->depthBiasClamp (Error: Value not equal)");
2136 };
2137 if (!((a->depthBiasSlopeFactor) == (b->depthBiasSlopeFactor))) {
2138 onFail("a->depthBiasSlopeFactor (Error: Value not equal)");
2139 };
2140 if (!((a->lineWidth) == (b->lineWidth))) {
2141 onFail("a->lineWidth (Error: Value not equal)");
2142 };
2143 }
2144
checkEqual_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo * a,const VkPipelineMultisampleStateCreateInfo * b,OnFailCompareFunc onFail)2145 void checkEqual_VkPipelineMultisampleStateCreateInfo(const VkPipelineMultisampleStateCreateInfo* a,
2146 const VkPipelineMultisampleStateCreateInfo* b,
2147 OnFailCompareFunc onFail) {
2148 if (!((a->sType) == (b->sType))) {
2149 onFail("a->sType (Error: Value not equal)");
2150 };
2151 if (a->pNext) {
2152 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2153 }
2154 if (!((a->flags) == (b->flags))) {
2155 onFail("a->flags (Error: Value not equal)");
2156 };
2157 if (!((a->rasterizationSamples) == (b->rasterizationSamples))) {
2158 onFail("a->rasterizationSamples (Error: Value not equal)");
2159 };
2160 if (!((a->sampleShadingEnable) == (b->sampleShadingEnable))) {
2161 onFail("a->sampleShadingEnable (Error: Value not equal)");
2162 };
2163 if (!((a->minSampleShading) == (b->minSampleShading))) {
2164 onFail("a->minSampleShading (Error: Value not equal)");
2165 };
2166 if (!((!(a->pSampleMask) && !(b->pSampleMask)) || ((a->pSampleMask) && (b->pSampleMask)))) {
2167 onFail("a->pSampleMask (Error: Mismatch in optional field)");
2168 };
2169 if (a->pSampleMask && b->pSampleMask) {
2170 if (!(((((a->rasterizationSamples) + 31) / 32)) ==
2171 ((((b->rasterizationSamples) + 31) / 32)))) {
2172 onFail("a->pSampleMask (Error: Lengths not equal)");
2173 };
2174 if (!((memcmp(a->pSampleMask, b->pSampleMask,
2175 (((a->rasterizationSamples) + 31) / 32) * sizeof(const VkSampleMask)) ==
2176 0))) {
2177 onFail("a->pSampleMask (Error: Unequal dyn array)");
2178 };
2179 }
2180 if (!((a->alphaToCoverageEnable) == (b->alphaToCoverageEnable))) {
2181 onFail("a->alphaToCoverageEnable (Error: Value not equal)");
2182 };
2183 if (!((a->alphaToOneEnable) == (b->alphaToOneEnable))) {
2184 onFail("a->alphaToOneEnable (Error: Value not equal)");
2185 };
2186 }
2187
checkEqual_VkStencilOpState(const VkStencilOpState * a,const VkStencilOpState * b,OnFailCompareFunc onFail)2188 void checkEqual_VkStencilOpState(const VkStencilOpState* a, const VkStencilOpState* b,
2189 OnFailCompareFunc onFail) {
2190 if (!((a->failOp) == (b->failOp))) {
2191 onFail("a->failOp (Error: Value not equal)");
2192 };
2193 if (!((a->passOp) == (b->passOp))) {
2194 onFail("a->passOp (Error: Value not equal)");
2195 };
2196 if (!((a->depthFailOp) == (b->depthFailOp))) {
2197 onFail("a->depthFailOp (Error: Value not equal)");
2198 };
2199 if (!((a->compareOp) == (b->compareOp))) {
2200 onFail("a->compareOp (Error: Value not equal)");
2201 };
2202 if (!((a->compareMask) == (b->compareMask))) {
2203 onFail("a->compareMask (Error: Value not equal)");
2204 };
2205 if (!((a->writeMask) == (b->writeMask))) {
2206 onFail("a->writeMask (Error: Value not equal)");
2207 };
2208 if (!((a->reference) == (b->reference))) {
2209 onFail("a->reference (Error: Value not equal)");
2210 };
2211 }
2212
checkEqual_VkPipelineDepthStencilStateCreateInfo(const VkPipelineDepthStencilStateCreateInfo * a,const VkPipelineDepthStencilStateCreateInfo * b,OnFailCompareFunc onFail)2213 void checkEqual_VkPipelineDepthStencilStateCreateInfo(
2214 const VkPipelineDepthStencilStateCreateInfo* a, const VkPipelineDepthStencilStateCreateInfo* b,
2215 OnFailCompareFunc onFail) {
2216 if (!((a->sType) == (b->sType))) {
2217 onFail("a->sType (Error: Value not equal)");
2218 };
2219 if (a->pNext) {
2220 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2221 }
2222 if (!((a->flags) == (b->flags))) {
2223 onFail("a->flags (Error: Value not equal)");
2224 };
2225 if (!((a->depthTestEnable) == (b->depthTestEnable))) {
2226 onFail("a->depthTestEnable (Error: Value not equal)");
2227 };
2228 if (!((a->depthWriteEnable) == (b->depthWriteEnable))) {
2229 onFail("a->depthWriteEnable (Error: Value not equal)");
2230 };
2231 if (!((a->depthCompareOp) == (b->depthCompareOp))) {
2232 onFail("a->depthCompareOp (Error: Value not equal)");
2233 };
2234 if (!((a->depthBoundsTestEnable) == (b->depthBoundsTestEnable))) {
2235 onFail("a->depthBoundsTestEnable (Error: Value not equal)");
2236 };
2237 if (!((a->stencilTestEnable) == (b->stencilTestEnable))) {
2238 onFail("a->stencilTestEnable (Error: Value not equal)");
2239 };
2240 checkEqual_VkStencilOpState(&a->front, &b->front, onFail);
2241 checkEqual_VkStencilOpState(&a->back, &b->back, onFail);
2242 if (!((a->minDepthBounds) == (b->minDepthBounds))) {
2243 onFail("a->minDepthBounds (Error: Value not equal)");
2244 };
2245 if (!((a->maxDepthBounds) == (b->maxDepthBounds))) {
2246 onFail("a->maxDepthBounds (Error: Value not equal)");
2247 };
2248 }
2249
checkEqual_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState * a,const VkPipelineColorBlendAttachmentState * b,OnFailCompareFunc onFail)2250 void checkEqual_VkPipelineColorBlendAttachmentState(const VkPipelineColorBlendAttachmentState* a,
2251 const VkPipelineColorBlendAttachmentState* b,
2252 OnFailCompareFunc onFail) {
2253 if (!((a->blendEnable) == (b->blendEnable))) {
2254 onFail("a->blendEnable (Error: Value not equal)");
2255 };
2256 if (!((a->srcColorBlendFactor) == (b->srcColorBlendFactor))) {
2257 onFail("a->srcColorBlendFactor (Error: Value not equal)");
2258 };
2259 if (!((a->dstColorBlendFactor) == (b->dstColorBlendFactor))) {
2260 onFail("a->dstColorBlendFactor (Error: Value not equal)");
2261 };
2262 if (!((a->colorBlendOp) == (b->colorBlendOp))) {
2263 onFail("a->colorBlendOp (Error: Value not equal)");
2264 };
2265 if (!((a->srcAlphaBlendFactor) == (b->srcAlphaBlendFactor))) {
2266 onFail("a->srcAlphaBlendFactor (Error: Value not equal)");
2267 };
2268 if (!((a->dstAlphaBlendFactor) == (b->dstAlphaBlendFactor))) {
2269 onFail("a->dstAlphaBlendFactor (Error: Value not equal)");
2270 };
2271 if (!((a->alphaBlendOp) == (b->alphaBlendOp))) {
2272 onFail("a->alphaBlendOp (Error: Value not equal)");
2273 };
2274 if (!((a->colorWriteMask) == (b->colorWriteMask))) {
2275 onFail("a->colorWriteMask (Error: Value not equal)");
2276 };
2277 }
2278
checkEqual_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo * a,const VkPipelineColorBlendStateCreateInfo * b,OnFailCompareFunc onFail)2279 void checkEqual_VkPipelineColorBlendStateCreateInfo(const VkPipelineColorBlendStateCreateInfo* a,
2280 const VkPipelineColorBlendStateCreateInfo* b,
2281 OnFailCompareFunc onFail) {
2282 if (!((a->sType) == (b->sType))) {
2283 onFail("a->sType (Error: Value not equal)");
2284 };
2285 if (a->pNext) {
2286 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2287 }
2288 if (!((a->flags) == (b->flags))) {
2289 onFail("a->flags (Error: Value not equal)");
2290 };
2291 if (!((a->logicOpEnable) == (b->logicOpEnable))) {
2292 onFail("a->logicOpEnable (Error: Value not equal)");
2293 };
2294 if (!((a->logicOp) == (b->logicOp))) {
2295 onFail("a->logicOp (Error: Value not equal)");
2296 };
2297 if (!((a->attachmentCount) == (b->attachmentCount))) {
2298 onFail("a->attachmentCount (Error: Value not equal)");
2299 };
2300 if ((a->pAttachments) && (b->pAttachments)) {
2301 if (!((a->attachmentCount) == (b->attachmentCount))) {
2302 onFail("a->pAttachments (Error: Lengths not equal)");
2303 };
2304 if ((a->attachmentCount) == (b->attachmentCount)) {
2305 if (a) {
2306 for (uint32_t i = 0; i < (uint32_t)a->attachmentCount; ++i) {
2307 checkEqual_VkPipelineColorBlendAttachmentState(a->pAttachments + i,
2308 b->pAttachments + i, onFail);
2309 }
2310 }
2311 }
2312 }
2313 if (!((memcmp(a->blendConstants, b->blendConstants, 4 * sizeof(float)) == 0))) {
2314 onFail("a->blendConstants (Error: Unequal static array)");
2315 };
2316 }
2317
checkEqual_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo * a,const VkPipelineDynamicStateCreateInfo * b,OnFailCompareFunc onFail)2318 void checkEqual_VkPipelineDynamicStateCreateInfo(const VkPipelineDynamicStateCreateInfo* a,
2319 const VkPipelineDynamicStateCreateInfo* b,
2320 OnFailCompareFunc onFail) {
2321 if (!((a->sType) == (b->sType))) {
2322 onFail("a->sType (Error: Value not equal)");
2323 };
2324 if (a->pNext) {
2325 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2326 }
2327 if (!((a->flags) == (b->flags))) {
2328 onFail("a->flags (Error: Value not equal)");
2329 };
2330 if (!((a->dynamicStateCount) == (b->dynamicStateCount))) {
2331 onFail("a->dynamicStateCount (Error: Value not equal)");
2332 };
2333 if (!((a->dynamicStateCount) == (b->dynamicStateCount))) {
2334 onFail("a->pDynamicStates (Error: Lengths not equal)");
2335 };
2336 if (!((memcmp(a->pDynamicStates, b->pDynamicStates,
2337 a->dynamicStateCount * sizeof(const VkDynamicState)) == 0))) {
2338 onFail("a->pDynamicStates (Error: Unequal dyn array)");
2339 };
2340 }
2341
checkEqual_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo * a,const VkGraphicsPipelineCreateInfo * b,OnFailCompareFunc onFail)2342 void checkEqual_VkGraphicsPipelineCreateInfo(const VkGraphicsPipelineCreateInfo* a,
2343 const VkGraphicsPipelineCreateInfo* b,
2344 OnFailCompareFunc onFail) {
2345 if (!((a->sType) == (b->sType))) {
2346 onFail("a->sType (Error: Value not equal)");
2347 };
2348 if (a->pNext) {
2349 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2350 }
2351 if (!((a->flags) == (b->flags))) {
2352 onFail("a->flags (Error: Value not equal)");
2353 };
2354 if (!((a->stageCount) == (b->stageCount))) {
2355 onFail("a->stageCount (Error: Value not equal)");
2356 };
2357 if ((a->pStages) && (b->pStages)) {
2358 if (!((a->stageCount) == (b->stageCount))) {
2359 onFail("a->pStages (Error: Lengths not equal)");
2360 };
2361 if ((a->stageCount) == (b->stageCount)) {
2362 if (a) {
2363 for (uint32_t i = 0; i < (uint32_t)a->stageCount; ++i) {
2364 checkEqual_VkPipelineShaderStageCreateInfo(a->pStages + i, b->pStages + i,
2365 onFail);
2366 }
2367 }
2368 }
2369 }
2370 if (!((!(a->pVertexInputState) && !(b->pVertexInputState)) ||
2371 ((a->pVertexInputState) && (b->pVertexInputState)))) {
2372 onFail("a->pVertexInputState (Error: Mismatch in optional field)");
2373 };
2374 if (a->pVertexInputState && b->pVertexInputState) {
2375 if ((a->pVertexInputState) && (b->pVertexInputState)) {
2376 checkEqual_VkPipelineVertexInputStateCreateInfo(a->pVertexInputState,
2377 b->pVertexInputState, onFail);
2378 }
2379 }
2380 if (!((!(a->pInputAssemblyState) && !(b->pInputAssemblyState)) ||
2381 ((a->pInputAssemblyState) && (b->pInputAssemblyState)))) {
2382 onFail("a->pInputAssemblyState (Error: Mismatch in optional field)");
2383 };
2384 if (a->pInputAssemblyState && b->pInputAssemblyState) {
2385 if ((a->pInputAssemblyState) && (b->pInputAssemblyState)) {
2386 checkEqual_VkPipelineInputAssemblyStateCreateInfo(a->pInputAssemblyState,
2387 b->pInputAssemblyState, onFail);
2388 }
2389 }
2390 if (!((!(a->pTessellationState) && !(b->pTessellationState)) ||
2391 ((a->pTessellationState) && (b->pTessellationState)))) {
2392 onFail("a->pTessellationState (Error: Mismatch in optional field)");
2393 };
2394 if (a->pTessellationState && b->pTessellationState) {
2395 if ((a->pTessellationState) && (b->pTessellationState)) {
2396 checkEqual_VkPipelineTessellationStateCreateInfo(a->pTessellationState,
2397 b->pTessellationState, onFail);
2398 }
2399 }
2400 if (!((!(a->pViewportState) && !(b->pViewportState)) ||
2401 ((a->pViewportState) && (b->pViewportState)))) {
2402 onFail("a->pViewportState (Error: Mismatch in optional field)");
2403 };
2404 if (a->pViewportState && b->pViewportState) {
2405 if ((a->pViewportState) && (b->pViewportState)) {
2406 checkEqual_VkPipelineViewportStateCreateInfo(a->pViewportState, b->pViewportState,
2407 onFail);
2408 }
2409 }
2410 if (!((!(a->pRasterizationState) && !(b->pRasterizationState)) ||
2411 ((a->pRasterizationState) && (b->pRasterizationState)))) {
2412 onFail("a->pRasterizationState (Error: Mismatch in optional field)");
2413 };
2414 if (a->pRasterizationState && b->pRasterizationState) {
2415 if ((a->pRasterizationState) && (b->pRasterizationState)) {
2416 checkEqual_VkPipelineRasterizationStateCreateInfo(a->pRasterizationState,
2417 b->pRasterizationState, onFail);
2418 }
2419 }
2420 if (!((!(a->pMultisampleState) && !(b->pMultisampleState)) ||
2421 ((a->pMultisampleState) && (b->pMultisampleState)))) {
2422 onFail("a->pMultisampleState (Error: Mismatch in optional field)");
2423 };
2424 if (a->pMultisampleState && b->pMultisampleState) {
2425 if ((a->pMultisampleState) && (b->pMultisampleState)) {
2426 checkEqual_VkPipelineMultisampleStateCreateInfo(a->pMultisampleState,
2427 b->pMultisampleState, onFail);
2428 }
2429 }
2430 if (!((!(a->pDepthStencilState) && !(b->pDepthStencilState)) ||
2431 ((a->pDepthStencilState) && (b->pDepthStencilState)))) {
2432 onFail("a->pDepthStencilState (Error: Mismatch in optional field)");
2433 };
2434 if (a->pDepthStencilState && b->pDepthStencilState) {
2435 if ((a->pDepthStencilState) && (b->pDepthStencilState)) {
2436 checkEqual_VkPipelineDepthStencilStateCreateInfo(a->pDepthStencilState,
2437 b->pDepthStencilState, onFail);
2438 }
2439 }
2440 if (!((!(a->pColorBlendState) && !(b->pColorBlendState)) ||
2441 ((a->pColorBlendState) && (b->pColorBlendState)))) {
2442 onFail("a->pColorBlendState (Error: Mismatch in optional field)");
2443 };
2444 if (a->pColorBlendState && b->pColorBlendState) {
2445 if ((a->pColorBlendState) && (b->pColorBlendState)) {
2446 checkEqual_VkPipelineColorBlendStateCreateInfo(a->pColorBlendState, b->pColorBlendState,
2447 onFail);
2448 }
2449 }
2450 if (!((!(a->pDynamicState) && !(b->pDynamicState)) ||
2451 ((a->pDynamicState) && (b->pDynamicState)))) {
2452 onFail("a->pDynamicState (Error: Mismatch in optional field)");
2453 };
2454 if (a->pDynamicState && b->pDynamicState) {
2455 if ((a->pDynamicState) && (b->pDynamicState)) {
2456 checkEqual_VkPipelineDynamicStateCreateInfo(a->pDynamicState, b->pDynamicState, onFail);
2457 }
2458 }
2459 if (!((a->layout) == (b->layout))) {
2460 onFail("a->layout (Error: Value not equal)");
2461 };
2462 if (!((a->renderPass) == (b->renderPass))) {
2463 onFail("a->renderPass (Error: Value not equal)");
2464 };
2465 if (!((a->subpass) == (b->subpass))) {
2466 onFail("a->subpass (Error: Value not equal)");
2467 };
2468 if (!((a->basePipelineHandle) == (b->basePipelineHandle))) {
2469 onFail("a->basePipelineHandle (Error: Value not equal)");
2470 };
2471 if (!((a->basePipelineIndex) == (b->basePipelineIndex))) {
2472 onFail("a->basePipelineIndex (Error: Value not equal)");
2473 };
2474 }
2475
checkEqual_VkPushConstantRange(const VkPushConstantRange * a,const VkPushConstantRange * b,OnFailCompareFunc onFail)2476 void checkEqual_VkPushConstantRange(const VkPushConstantRange* a, const VkPushConstantRange* b,
2477 OnFailCompareFunc onFail) {
2478 if (!((a->stageFlags) == (b->stageFlags))) {
2479 onFail("a->stageFlags (Error: Value not equal)");
2480 };
2481 if (!((a->offset) == (b->offset))) {
2482 onFail("a->offset (Error: Value not equal)");
2483 };
2484 if (!((a->size) == (b->size))) {
2485 onFail("a->size (Error: Value not equal)");
2486 };
2487 }
2488
checkEqual_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo * a,const VkPipelineLayoutCreateInfo * b,OnFailCompareFunc onFail)2489 void checkEqual_VkPipelineLayoutCreateInfo(const VkPipelineLayoutCreateInfo* a,
2490 const VkPipelineLayoutCreateInfo* b,
2491 OnFailCompareFunc onFail) {
2492 if (!((a->sType) == (b->sType))) {
2493 onFail("a->sType (Error: Value not equal)");
2494 };
2495 if (a->pNext) {
2496 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2497 }
2498 if (!((a->flags) == (b->flags))) {
2499 onFail("a->flags (Error: Value not equal)");
2500 };
2501 if (!((a->setLayoutCount) == (b->setLayoutCount))) {
2502 onFail("a->setLayoutCount (Error: Value not equal)");
2503 };
2504 if (!((a->setLayoutCount) == (b->setLayoutCount))) {
2505 onFail("a->pSetLayouts (Error: Lengths not equal)");
2506 };
2507 if (!((memcmp(a->pSetLayouts, b->pSetLayouts,
2508 a->setLayoutCount * sizeof(const VkDescriptorSetLayout)) == 0))) {
2509 onFail("a->pSetLayouts (Error: Unequal dyn array)");
2510 };
2511 if (!((a->pushConstantRangeCount) == (b->pushConstantRangeCount))) {
2512 onFail("a->pushConstantRangeCount (Error: Value not equal)");
2513 };
2514 if ((a->pPushConstantRanges) && (b->pPushConstantRanges)) {
2515 if (!((a->pushConstantRangeCount) == (b->pushConstantRangeCount))) {
2516 onFail("a->pPushConstantRanges (Error: Lengths not equal)");
2517 };
2518 if ((a->pushConstantRangeCount) == (b->pushConstantRangeCount)) {
2519 if (a) {
2520 for (uint32_t i = 0; i < (uint32_t)a->pushConstantRangeCount; ++i) {
2521 checkEqual_VkPushConstantRange(a->pPushConstantRanges + i,
2522 b->pPushConstantRanges + i, onFail);
2523 }
2524 }
2525 }
2526 }
2527 }
2528
checkEqual_VkSamplerCreateInfo(const VkSamplerCreateInfo * a,const VkSamplerCreateInfo * b,OnFailCompareFunc onFail)2529 void checkEqual_VkSamplerCreateInfo(const VkSamplerCreateInfo* a, const VkSamplerCreateInfo* b,
2530 OnFailCompareFunc onFail) {
2531 if (!((a->sType) == (b->sType))) {
2532 onFail("a->sType (Error: Value not equal)");
2533 };
2534 if (a->pNext) {
2535 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2536 }
2537 if (!((a->flags) == (b->flags))) {
2538 onFail("a->flags (Error: Value not equal)");
2539 };
2540 if (!((a->magFilter) == (b->magFilter))) {
2541 onFail("a->magFilter (Error: Value not equal)");
2542 };
2543 if (!((a->minFilter) == (b->minFilter))) {
2544 onFail("a->minFilter (Error: Value not equal)");
2545 };
2546 if (!((a->mipmapMode) == (b->mipmapMode))) {
2547 onFail("a->mipmapMode (Error: Value not equal)");
2548 };
2549 if (!((a->addressModeU) == (b->addressModeU))) {
2550 onFail("a->addressModeU (Error: Value not equal)");
2551 };
2552 if (!((a->addressModeV) == (b->addressModeV))) {
2553 onFail("a->addressModeV (Error: Value not equal)");
2554 };
2555 if (!((a->addressModeW) == (b->addressModeW))) {
2556 onFail("a->addressModeW (Error: Value not equal)");
2557 };
2558 if (!((a->mipLodBias) == (b->mipLodBias))) {
2559 onFail("a->mipLodBias (Error: Value not equal)");
2560 };
2561 if (!((a->anisotropyEnable) == (b->anisotropyEnable))) {
2562 onFail("a->anisotropyEnable (Error: Value not equal)");
2563 };
2564 if (!((a->maxAnisotropy) == (b->maxAnisotropy))) {
2565 onFail("a->maxAnisotropy (Error: Value not equal)");
2566 };
2567 if (!((a->compareEnable) == (b->compareEnable))) {
2568 onFail("a->compareEnable (Error: Value not equal)");
2569 };
2570 if (!((a->compareOp) == (b->compareOp))) {
2571 onFail("a->compareOp (Error: Value not equal)");
2572 };
2573 if (!((a->minLod) == (b->minLod))) {
2574 onFail("a->minLod (Error: Value not equal)");
2575 };
2576 if (!((a->maxLod) == (b->maxLod))) {
2577 onFail("a->maxLod (Error: Value not equal)");
2578 };
2579 if (!((a->borderColor) == (b->borderColor))) {
2580 onFail("a->borderColor (Error: Value not equal)");
2581 };
2582 if (!((a->unnormalizedCoordinates) == (b->unnormalizedCoordinates))) {
2583 onFail("a->unnormalizedCoordinates (Error: Value not equal)");
2584 };
2585 }
2586
checkEqual_VkCopyDescriptorSet(const VkCopyDescriptorSet * a,const VkCopyDescriptorSet * b,OnFailCompareFunc onFail)2587 void checkEqual_VkCopyDescriptorSet(const VkCopyDescriptorSet* a, const VkCopyDescriptorSet* b,
2588 OnFailCompareFunc onFail) {
2589 if (!((a->sType) == (b->sType))) {
2590 onFail("a->sType (Error: Value not equal)");
2591 };
2592 if (a->pNext) {
2593 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2594 }
2595 if (!((a->srcSet) == (b->srcSet))) {
2596 onFail("a->srcSet (Error: Value not equal)");
2597 };
2598 if (!((a->srcBinding) == (b->srcBinding))) {
2599 onFail("a->srcBinding (Error: Value not equal)");
2600 };
2601 if (!((a->srcArrayElement) == (b->srcArrayElement))) {
2602 onFail("a->srcArrayElement (Error: Value not equal)");
2603 };
2604 if (!((a->dstSet) == (b->dstSet))) {
2605 onFail("a->dstSet (Error: Value not equal)");
2606 };
2607 if (!((a->dstBinding) == (b->dstBinding))) {
2608 onFail("a->dstBinding (Error: Value not equal)");
2609 };
2610 if (!((a->dstArrayElement) == (b->dstArrayElement))) {
2611 onFail("a->dstArrayElement (Error: Value not equal)");
2612 };
2613 if (!((a->descriptorCount) == (b->descriptorCount))) {
2614 onFail("a->descriptorCount (Error: Value not equal)");
2615 };
2616 }
2617
checkEqual_VkDescriptorBufferInfo(const VkDescriptorBufferInfo * a,const VkDescriptorBufferInfo * b,OnFailCompareFunc onFail)2618 void checkEqual_VkDescriptorBufferInfo(const VkDescriptorBufferInfo* a,
2619 const VkDescriptorBufferInfo* b, OnFailCompareFunc onFail) {
2620 if (!((a->buffer) == (b->buffer))) {
2621 onFail("a->buffer (Error: Value not equal)");
2622 };
2623 if (!((a->offset) == (b->offset))) {
2624 onFail("a->offset (Error: Value not equal)");
2625 };
2626 if (!((a->range) == (b->range))) {
2627 onFail("a->range (Error: Value not equal)");
2628 };
2629 }
2630
checkEqual_VkDescriptorImageInfo(const VkDescriptorImageInfo * a,const VkDescriptorImageInfo * b,OnFailCompareFunc onFail)2631 void checkEqual_VkDescriptorImageInfo(const VkDescriptorImageInfo* a,
2632 const VkDescriptorImageInfo* b, OnFailCompareFunc onFail) {
2633 if (!((a->sampler) == (b->sampler))) {
2634 onFail("a->sampler (Error: Value not equal)");
2635 };
2636 if (!((a->imageView) == (b->imageView))) {
2637 onFail("a->imageView (Error: Value not equal)");
2638 };
2639 if (!((a->imageLayout) == (b->imageLayout))) {
2640 onFail("a->imageLayout (Error: Value not equal)");
2641 };
2642 }
2643
checkEqual_VkDescriptorPoolSize(const VkDescriptorPoolSize * a,const VkDescriptorPoolSize * b,OnFailCompareFunc onFail)2644 void checkEqual_VkDescriptorPoolSize(const VkDescriptorPoolSize* a, const VkDescriptorPoolSize* b,
2645 OnFailCompareFunc onFail) {
2646 if (!((a->type) == (b->type))) {
2647 onFail("a->type (Error: Value not equal)");
2648 };
2649 if (!((a->descriptorCount) == (b->descriptorCount))) {
2650 onFail("a->descriptorCount (Error: Value not equal)");
2651 };
2652 }
2653
checkEqual_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo * a,const VkDescriptorPoolCreateInfo * b,OnFailCompareFunc onFail)2654 void checkEqual_VkDescriptorPoolCreateInfo(const VkDescriptorPoolCreateInfo* a,
2655 const VkDescriptorPoolCreateInfo* b,
2656 OnFailCompareFunc onFail) {
2657 if (!((a->sType) == (b->sType))) {
2658 onFail("a->sType (Error: Value not equal)");
2659 };
2660 if (a->pNext) {
2661 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2662 }
2663 if (!((a->flags) == (b->flags))) {
2664 onFail("a->flags (Error: Value not equal)");
2665 };
2666 if (!((a->maxSets) == (b->maxSets))) {
2667 onFail("a->maxSets (Error: Value not equal)");
2668 };
2669 if (!((a->poolSizeCount) == (b->poolSizeCount))) {
2670 onFail("a->poolSizeCount (Error: Value not equal)");
2671 };
2672 if ((a->pPoolSizes) && (b->pPoolSizes)) {
2673 if (!((a->poolSizeCount) == (b->poolSizeCount))) {
2674 onFail("a->pPoolSizes (Error: Lengths not equal)");
2675 };
2676 if ((a->poolSizeCount) == (b->poolSizeCount)) {
2677 if (a) {
2678 for (uint32_t i = 0; i < (uint32_t)a->poolSizeCount; ++i) {
2679 checkEqual_VkDescriptorPoolSize(a->pPoolSizes + i, b->pPoolSizes + i, onFail);
2680 }
2681 }
2682 }
2683 }
2684 }
2685
checkEqual_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo * a,const VkDescriptorSetAllocateInfo * b,OnFailCompareFunc onFail)2686 void checkEqual_VkDescriptorSetAllocateInfo(const VkDescriptorSetAllocateInfo* a,
2687 const VkDescriptorSetAllocateInfo* b,
2688 OnFailCompareFunc onFail) {
2689 if (!((a->sType) == (b->sType))) {
2690 onFail("a->sType (Error: Value not equal)");
2691 };
2692 if (a->pNext) {
2693 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2694 }
2695 if (!((a->descriptorPool) == (b->descriptorPool))) {
2696 onFail("a->descriptorPool (Error: Value not equal)");
2697 };
2698 if (!((a->descriptorSetCount) == (b->descriptorSetCount))) {
2699 onFail("a->descriptorSetCount (Error: Value not equal)");
2700 };
2701 if (!((a->descriptorSetCount) == (b->descriptorSetCount))) {
2702 onFail("a->pSetLayouts (Error: Lengths not equal)");
2703 };
2704 if (!((memcmp(a->pSetLayouts, b->pSetLayouts,
2705 a->descriptorSetCount * sizeof(const VkDescriptorSetLayout)) == 0))) {
2706 onFail("a->pSetLayouts (Error: Unequal dyn array)");
2707 };
2708 }
2709
checkEqual_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding * a,const VkDescriptorSetLayoutBinding * b,OnFailCompareFunc onFail)2710 void checkEqual_VkDescriptorSetLayoutBinding(const VkDescriptorSetLayoutBinding* a,
2711 const VkDescriptorSetLayoutBinding* b,
2712 OnFailCompareFunc onFail) {
2713 if (!((a->binding) == (b->binding))) {
2714 onFail("a->binding (Error: Value not equal)");
2715 };
2716 if (!((a->descriptorType) == (b->descriptorType))) {
2717 onFail("a->descriptorType (Error: Value not equal)");
2718 };
2719 if (!((a->descriptorCount) == (b->descriptorCount))) {
2720 onFail("a->descriptorCount (Error: Value not equal)");
2721 };
2722 if (!((a->stageFlags) == (b->stageFlags))) {
2723 onFail("a->stageFlags (Error: Value not equal)");
2724 };
2725 if (!((!(a->pImmutableSamplers) && !(b->pImmutableSamplers)) ||
2726 ((a->pImmutableSamplers) && (b->pImmutableSamplers)))) {
2727 onFail("a->pImmutableSamplers (Error: Mismatch in optional field)");
2728 };
2729 if (a->pImmutableSamplers && b->pImmutableSamplers) {
2730 if (!((a->descriptorCount) == (b->descriptorCount))) {
2731 onFail("a->pImmutableSamplers (Error: Lengths not equal)");
2732 };
2733 if (!((memcmp(a->pImmutableSamplers, b->pImmutableSamplers,
2734 a->descriptorCount * sizeof(const VkSampler)) == 0))) {
2735 onFail("a->pImmutableSamplers (Error: Unequal dyn array)");
2736 };
2737 }
2738 }
2739
checkEqual_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo * a,const VkDescriptorSetLayoutCreateInfo * b,OnFailCompareFunc onFail)2740 void checkEqual_VkDescriptorSetLayoutCreateInfo(const VkDescriptorSetLayoutCreateInfo* a,
2741 const VkDescriptorSetLayoutCreateInfo* b,
2742 OnFailCompareFunc onFail) {
2743 if (!((a->sType) == (b->sType))) {
2744 onFail("a->sType (Error: Value not equal)");
2745 };
2746 if (a->pNext) {
2747 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2748 }
2749 if (!((a->flags) == (b->flags))) {
2750 onFail("a->flags (Error: Value not equal)");
2751 };
2752 if (!((a->bindingCount) == (b->bindingCount))) {
2753 onFail("a->bindingCount (Error: Value not equal)");
2754 };
2755 if ((a->pBindings) && (b->pBindings)) {
2756 if (!((a->bindingCount) == (b->bindingCount))) {
2757 onFail("a->pBindings (Error: Lengths not equal)");
2758 };
2759 if ((a->bindingCount) == (b->bindingCount)) {
2760 if (a) {
2761 for (uint32_t i = 0; i < (uint32_t)a->bindingCount; ++i) {
2762 checkEqual_VkDescriptorSetLayoutBinding(a->pBindings + i, b->pBindings + i,
2763 onFail);
2764 }
2765 }
2766 }
2767 }
2768 }
2769
checkEqual_VkWriteDescriptorSet(const VkWriteDescriptorSet * a,const VkWriteDescriptorSet * b,OnFailCompareFunc onFail)2770 void checkEqual_VkWriteDescriptorSet(const VkWriteDescriptorSet* a, const VkWriteDescriptorSet* b,
2771 OnFailCompareFunc onFail) {
2772 if (!((a->sType) == (b->sType))) {
2773 onFail("a->sType (Error: Value not equal)");
2774 };
2775 if (a->pNext) {
2776 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2777 }
2778 if (!((a->dstSet) == (b->dstSet))) {
2779 onFail("a->dstSet (Error: Value not equal)");
2780 };
2781 if (!((a->dstBinding) == (b->dstBinding))) {
2782 onFail("a->dstBinding (Error: Value not equal)");
2783 };
2784 if (!((a->dstArrayElement) == (b->dstArrayElement))) {
2785 onFail("a->dstArrayElement (Error: Value not equal)");
2786 };
2787 if (!((a->descriptorCount) == (b->descriptorCount))) {
2788 onFail("a->descriptorCount (Error: Value not equal)");
2789 };
2790 if (!((a->descriptorType) == (b->descriptorType))) {
2791 onFail("a->descriptorType (Error: Value not equal)");
2792 };
2793 if (!((!(a->pImageInfo) && !(b->pImageInfo)) || ((a->pImageInfo) && (b->pImageInfo)))) {
2794 onFail("a->pImageInfo (Error: Mismatch in optional field)");
2795 };
2796 if (a->pImageInfo && b->pImageInfo) {
2797 if ((a->pImageInfo) && (b->pImageInfo)) {
2798 if (!((a->descriptorCount) == (b->descriptorCount))) {
2799 onFail("a->pImageInfo (Error: Lengths not equal)");
2800 };
2801 if ((a->descriptorCount) == (b->descriptorCount)) {
2802 if (a) {
2803 for (uint32_t i = 0; i < (uint32_t)a->descriptorCount; ++i) {
2804 checkEqual_VkDescriptorImageInfo(a->pImageInfo + i, b->pImageInfo + i,
2805 onFail);
2806 }
2807 }
2808 }
2809 }
2810 }
2811 if (!((!(a->pBufferInfo) && !(b->pBufferInfo)) || ((a->pBufferInfo) && (b->pBufferInfo)))) {
2812 onFail("a->pBufferInfo (Error: Mismatch in optional field)");
2813 };
2814 if (a->pBufferInfo && b->pBufferInfo) {
2815 if ((a->pBufferInfo) && (b->pBufferInfo)) {
2816 if (!((a->descriptorCount) == (b->descriptorCount))) {
2817 onFail("a->pBufferInfo (Error: Lengths not equal)");
2818 };
2819 if ((a->descriptorCount) == (b->descriptorCount)) {
2820 if (a) {
2821 for (uint32_t i = 0; i < (uint32_t)a->descriptorCount; ++i) {
2822 checkEqual_VkDescriptorBufferInfo(a->pBufferInfo + i, b->pBufferInfo + i,
2823 onFail);
2824 }
2825 }
2826 }
2827 }
2828 }
2829 if (!((!(a->pTexelBufferView) && !(b->pTexelBufferView)) ||
2830 ((a->pTexelBufferView) && (b->pTexelBufferView)))) {
2831 onFail("a->pTexelBufferView (Error: Mismatch in optional field)");
2832 };
2833 if (a->pTexelBufferView && b->pTexelBufferView) {
2834 if (!((a->descriptorCount) == (b->descriptorCount))) {
2835 onFail("a->pTexelBufferView (Error: Lengths not equal)");
2836 };
2837 if (!((memcmp(a->pTexelBufferView, b->pTexelBufferView,
2838 a->descriptorCount * sizeof(const VkBufferView)) == 0))) {
2839 onFail("a->pTexelBufferView (Error: Unequal dyn array)");
2840 };
2841 }
2842 }
2843
checkEqual_VkAttachmentDescription(const VkAttachmentDescription * a,const VkAttachmentDescription * b,OnFailCompareFunc onFail)2844 void checkEqual_VkAttachmentDescription(const VkAttachmentDescription* a,
2845 const VkAttachmentDescription* b,
2846 OnFailCompareFunc onFail) {
2847 if (!((a->flags) == (b->flags))) {
2848 onFail("a->flags (Error: Value not equal)");
2849 };
2850 if (!((a->format) == (b->format))) {
2851 onFail("a->format (Error: Value not equal)");
2852 };
2853 if (!((a->samples) == (b->samples))) {
2854 onFail("a->samples (Error: Value not equal)");
2855 };
2856 if (!((a->loadOp) == (b->loadOp))) {
2857 onFail("a->loadOp (Error: Value not equal)");
2858 };
2859 if (!((a->storeOp) == (b->storeOp))) {
2860 onFail("a->storeOp (Error: Value not equal)");
2861 };
2862 if (!((a->stencilLoadOp) == (b->stencilLoadOp))) {
2863 onFail("a->stencilLoadOp (Error: Value not equal)");
2864 };
2865 if (!((a->stencilStoreOp) == (b->stencilStoreOp))) {
2866 onFail("a->stencilStoreOp (Error: Value not equal)");
2867 };
2868 if (!((a->initialLayout) == (b->initialLayout))) {
2869 onFail("a->initialLayout (Error: Value not equal)");
2870 };
2871 if (!((a->finalLayout) == (b->finalLayout))) {
2872 onFail("a->finalLayout (Error: Value not equal)");
2873 };
2874 }
2875
checkEqual_VkAttachmentReference(const VkAttachmentReference * a,const VkAttachmentReference * b,OnFailCompareFunc onFail)2876 void checkEqual_VkAttachmentReference(const VkAttachmentReference* a,
2877 const VkAttachmentReference* b, OnFailCompareFunc onFail) {
2878 if (!((a->attachment) == (b->attachment))) {
2879 onFail("a->attachment (Error: Value not equal)");
2880 };
2881 if (!((a->layout) == (b->layout))) {
2882 onFail("a->layout (Error: Value not equal)");
2883 };
2884 }
2885
checkEqual_VkFramebufferCreateInfo(const VkFramebufferCreateInfo * a,const VkFramebufferCreateInfo * b,OnFailCompareFunc onFail)2886 void checkEqual_VkFramebufferCreateInfo(const VkFramebufferCreateInfo* a,
2887 const VkFramebufferCreateInfo* b,
2888 OnFailCompareFunc onFail) {
2889 if (!((a->sType) == (b->sType))) {
2890 onFail("a->sType (Error: Value not equal)");
2891 };
2892 if (a->pNext) {
2893 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
2894 }
2895 if (!((a->flags) == (b->flags))) {
2896 onFail("a->flags (Error: Value not equal)");
2897 };
2898 if (!((a->renderPass) == (b->renderPass))) {
2899 onFail("a->renderPass (Error: Value not equal)");
2900 };
2901 if (!((a->attachmentCount) == (b->attachmentCount))) {
2902 onFail("a->attachmentCount (Error: Value not equal)");
2903 };
2904 if (!((a->attachmentCount) == (b->attachmentCount))) {
2905 onFail("a->pAttachments (Error: Lengths not equal)");
2906 };
2907 if (!((memcmp(a->pAttachments, b->pAttachments,
2908 a->attachmentCount * sizeof(const VkImageView)) == 0))) {
2909 onFail("a->pAttachments (Error: Unequal dyn array)");
2910 };
2911 if (!((a->width) == (b->width))) {
2912 onFail("a->width (Error: Value not equal)");
2913 };
2914 if (!((a->height) == (b->height))) {
2915 onFail("a->height (Error: Value not equal)");
2916 };
2917 if (!((a->layers) == (b->layers))) {
2918 onFail("a->layers (Error: Value not equal)");
2919 };
2920 }
2921
checkEqual_VkSubpassDescription(const VkSubpassDescription * a,const VkSubpassDescription * b,OnFailCompareFunc onFail)2922 void checkEqual_VkSubpassDescription(const VkSubpassDescription* a, const VkSubpassDescription* b,
2923 OnFailCompareFunc onFail) {
2924 if (!((a->flags) == (b->flags))) {
2925 onFail("a->flags (Error: Value not equal)");
2926 };
2927 if (!((a->pipelineBindPoint) == (b->pipelineBindPoint))) {
2928 onFail("a->pipelineBindPoint (Error: Value not equal)");
2929 };
2930 if (!((a->inputAttachmentCount) == (b->inputAttachmentCount))) {
2931 onFail("a->inputAttachmentCount (Error: Value not equal)");
2932 };
2933 if ((a->pInputAttachments) && (b->pInputAttachments)) {
2934 if (!((a->inputAttachmentCount) == (b->inputAttachmentCount))) {
2935 onFail("a->pInputAttachments (Error: Lengths not equal)");
2936 };
2937 if ((a->inputAttachmentCount) == (b->inputAttachmentCount)) {
2938 if (a) {
2939 for (uint32_t i = 0; i < (uint32_t)a->inputAttachmentCount; ++i) {
2940 checkEqual_VkAttachmentReference(a->pInputAttachments + i,
2941 b->pInputAttachments + i, onFail);
2942 }
2943 }
2944 }
2945 }
2946 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
2947 onFail("a->colorAttachmentCount (Error: Value not equal)");
2948 };
2949 if ((a->pColorAttachments) && (b->pColorAttachments)) {
2950 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
2951 onFail("a->pColorAttachments (Error: Lengths not equal)");
2952 };
2953 if ((a->colorAttachmentCount) == (b->colorAttachmentCount)) {
2954 if (a) {
2955 for (uint32_t i = 0; i < (uint32_t)a->colorAttachmentCount; ++i) {
2956 checkEqual_VkAttachmentReference(a->pColorAttachments + i,
2957 b->pColorAttachments + i, onFail);
2958 }
2959 }
2960 }
2961 }
2962 if (!((!(a->pResolveAttachments) && !(b->pResolveAttachments)) ||
2963 ((a->pResolveAttachments) && (b->pResolveAttachments)))) {
2964 onFail("a->pResolveAttachments (Error: Mismatch in optional field)");
2965 };
2966 if (a->pResolveAttachments && b->pResolveAttachments) {
2967 if ((a->pResolveAttachments) && (b->pResolveAttachments)) {
2968 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
2969 onFail("a->pResolveAttachments (Error: Lengths not equal)");
2970 };
2971 if ((a->colorAttachmentCount) == (b->colorAttachmentCount)) {
2972 if (a) {
2973 for (uint32_t i = 0; i < (uint32_t)a->colorAttachmentCount; ++i) {
2974 checkEqual_VkAttachmentReference(a->pResolveAttachments + i,
2975 b->pResolveAttachments + i, onFail);
2976 }
2977 }
2978 }
2979 }
2980 }
2981 if (!((!(a->pDepthStencilAttachment) && !(b->pDepthStencilAttachment)) ||
2982 ((a->pDepthStencilAttachment) && (b->pDepthStencilAttachment)))) {
2983 onFail("a->pDepthStencilAttachment (Error: Mismatch in optional field)");
2984 };
2985 if (a->pDepthStencilAttachment && b->pDepthStencilAttachment) {
2986 if ((a->pDepthStencilAttachment) && (b->pDepthStencilAttachment)) {
2987 checkEqual_VkAttachmentReference(a->pDepthStencilAttachment, b->pDepthStencilAttachment,
2988 onFail);
2989 }
2990 }
2991 if (!((a->preserveAttachmentCount) == (b->preserveAttachmentCount))) {
2992 onFail("a->preserveAttachmentCount (Error: Value not equal)");
2993 };
2994 if (!((a->preserveAttachmentCount) == (b->preserveAttachmentCount))) {
2995 onFail("a->pPreserveAttachments (Error: Lengths not equal)");
2996 };
2997 if (!((memcmp(a->pPreserveAttachments, b->pPreserveAttachments,
2998 a->preserveAttachmentCount * sizeof(const uint32_t)) == 0))) {
2999 onFail("a->pPreserveAttachments (Error: Unequal dyn array)");
3000 };
3001 }
3002
checkEqual_VkSubpassDependency(const VkSubpassDependency * a,const VkSubpassDependency * b,OnFailCompareFunc onFail)3003 void checkEqual_VkSubpassDependency(const VkSubpassDependency* a, const VkSubpassDependency* b,
3004 OnFailCompareFunc onFail) {
3005 if (!((a->srcSubpass) == (b->srcSubpass))) {
3006 onFail("a->srcSubpass (Error: Value not equal)");
3007 };
3008 if (!((a->dstSubpass) == (b->dstSubpass))) {
3009 onFail("a->dstSubpass (Error: Value not equal)");
3010 };
3011 if (!((a->srcStageMask) == (b->srcStageMask))) {
3012 onFail("a->srcStageMask (Error: Value not equal)");
3013 };
3014 if (!((a->dstStageMask) == (b->dstStageMask))) {
3015 onFail("a->dstStageMask (Error: Value not equal)");
3016 };
3017 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
3018 onFail("a->srcAccessMask (Error: Value not equal)");
3019 };
3020 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
3021 onFail("a->dstAccessMask (Error: Value not equal)");
3022 };
3023 if (!((a->dependencyFlags) == (b->dependencyFlags))) {
3024 onFail("a->dependencyFlags (Error: Value not equal)");
3025 };
3026 }
3027
checkEqual_VkRenderPassCreateInfo(const VkRenderPassCreateInfo * a,const VkRenderPassCreateInfo * b,OnFailCompareFunc onFail)3028 void checkEqual_VkRenderPassCreateInfo(const VkRenderPassCreateInfo* a,
3029 const VkRenderPassCreateInfo* b, OnFailCompareFunc onFail) {
3030 if (!((a->sType) == (b->sType))) {
3031 onFail("a->sType (Error: Value not equal)");
3032 };
3033 if (a->pNext) {
3034 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3035 }
3036 if (!((a->flags) == (b->flags))) {
3037 onFail("a->flags (Error: Value not equal)");
3038 };
3039 if (!((a->attachmentCount) == (b->attachmentCount))) {
3040 onFail("a->attachmentCount (Error: Value not equal)");
3041 };
3042 if ((a->pAttachments) && (b->pAttachments)) {
3043 if (!((a->attachmentCount) == (b->attachmentCount))) {
3044 onFail("a->pAttachments (Error: Lengths not equal)");
3045 };
3046 if ((a->attachmentCount) == (b->attachmentCount)) {
3047 if (a) {
3048 for (uint32_t i = 0; i < (uint32_t)a->attachmentCount; ++i) {
3049 checkEqual_VkAttachmentDescription(a->pAttachments + i, b->pAttachments + i,
3050 onFail);
3051 }
3052 }
3053 }
3054 }
3055 if (!((a->subpassCount) == (b->subpassCount))) {
3056 onFail("a->subpassCount (Error: Value not equal)");
3057 };
3058 if ((a->pSubpasses) && (b->pSubpasses)) {
3059 if (!((a->subpassCount) == (b->subpassCount))) {
3060 onFail("a->pSubpasses (Error: Lengths not equal)");
3061 };
3062 if ((a->subpassCount) == (b->subpassCount)) {
3063 if (a) {
3064 for (uint32_t i = 0; i < (uint32_t)a->subpassCount; ++i) {
3065 checkEqual_VkSubpassDescription(a->pSubpasses + i, b->pSubpasses + i, onFail);
3066 }
3067 }
3068 }
3069 }
3070 if (!((a->dependencyCount) == (b->dependencyCount))) {
3071 onFail("a->dependencyCount (Error: Value not equal)");
3072 };
3073 if ((a->pDependencies) && (b->pDependencies)) {
3074 if (!((a->dependencyCount) == (b->dependencyCount))) {
3075 onFail("a->pDependencies (Error: Lengths not equal)");
3076 };
3077 if ((a->dependencyCount) == (b->dependencyCount)) {
3078 if (a) {
3079 for (uint32_t i = 0; i < (uint32_t)a->dependencyCount; ++i) {
3080 checkEqual_VkSubpassDependency(a->pDependencies + i, b->pDependencies + i,
3081 onFail);
3082 }
3083 }
3084 }
3085 }
3086 }
3087
checkEqual_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo * a,const VkCommandPoolCreateInfo * b,OnFailCompareFunc onFail)3088 void checkEqual_VkCommandPoolCreateInfo(const VkCommandPoolCreateInfo* a,
3089 const VkCommandPoolCreateInfo* b,
3090 OnFailCompareFunc onFail) {
3091 if (!((a->sType) == (b->sType))) {
3092 onFail("a->sType (Error: Value not equal)");
3093 };
3094 if (a->pNext) {
3095 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3096 }
3097 if (!((a->flags) == (b->flags))) {
3098 onFail("a->flags (Error: Value not equal)");
3099 };
3100 if (!((a->queueFamilyIndex) == (b->queueFamilyIndex))) {
3101 onFail("a->queueFamilyIndex (Error: Value not equal)");
3102 };
3103 }
3104
checkEqual_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo * a,const VkCommandBufferAllocateInfo * b,OnFailCompareFunc onFail)3105 void checkEqual_VkCommandBufferAllocateInfo(const VkCommandBufferAllocateInfo* a,
3106 const VkCommandBufferAllocateInfo* b,
3107 OnFailCompareFunc onFail) {
3108 if (!((a->sType) == (b->sType))) {
3109 onFail("a->sType (Error: Value not equal)");
3110 };
3111 if (a->pNext) {
3112 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3113 }
3114 if (!((a->commandPool) == (b->commandPool))) {
3115 onFail("a->commandPool (Error: Value not equal)");
3116 };
3117 if (!((a->level) == (b->level))) {
3118 onFail("a->level (Error: Value not equal)");
3119 };
3120 if (!((a->commandBufferCount) == (b->commandBufferCount))) {
3121 onFail("a->commandBufferCount (Error: Value not equal)");
3122 };
3123 }
3124
checkEqual_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo * a,const VkCommandBufferInheritanceInfo * b,OnFailCompareFunc onFail)3125 void checkEqual_VkCommandBufferInheritanceInfo(const VkCommandBufferInheritanceInfo* a,
3126 const VkCommandBufferInheritanceInfo* b,
3127 OnFailCompareFunc onFail) {
3128 if (!((a->sType) == (b->sType))) {
3129 onFail("a->sType (Error: Value not equal)");
3130 };
3131 if (a->pNext) {
3132 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3133 }
3134 if (!((a->renderPass) == (b->renderPass))) {
3135 onFail("a->renderPass (Error: Value not equal)");
3136 };
3137 if (!((a->subpass) == (b->subpass))) {
3138 onFail("a->subpass (Error: Value not equal)");
3139 };
3140 if (!((a->framebuffer) == (b->framebuffer))) {
3141 onFail("a->framebuffer (Error: Value not equal)");
3142 };
3143 if (!((a->occlusionQueryEnable) == (b->occlusionQueryEnable))) {
3144 onFail("a->occlusionQueryEnable (Error: Value not equal)");
3145 };
3146 if (!((a->queryFlags) == (b->queryFlags))) {
3147 onFail("a->queryFlags (Error: Value not equal)");
3148 };
3149 if (!((a->pipelineStatistics) == (b->pipelineStatistics))) {
3150 onFail("a->pipelineStatistics (Error: Value not equal)");
3151 };
3152 }
3153
checkEqual_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo * a,const VkCommandBufferBeginInfo * b,OnFailCompareFunc onFail)3154 void checkEqual_VkCommandBufferBeginInfo(const VkCommandBufferBeginInfo* a,
3155 const VkCommandBufferBeginInfo* b,
3156 OnFailCompareFunc onFail) {
3157 if (!((a->sType) == (b->sType))) {
3158 onFail("a->sType (Error: Value not equal)");
3159 };
3160 if (a->pNext) {
3161 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3162 }
3163 if (!((a->flags) == (b->flags))) {
3164 onFail("a->flags (Error: Value not equal)");
3165 };
3166 if (!((!(a->pInheritanceInfo) && !(b->pInheritanceInfo)) ||
3167 ((a->pInheritanceInfo) && (b->pInheritanceInfo)))) {
3168 onFail("a->pInheritanceInfo (Error: Mismatch in optional field)");
3169 };
3170 if (a->pInheritanceInfo && b->pInheritanceInfo) {
3171 if ((a->pInheritanceInfo) && (b->pInheritanceInfo)) {
3172 checkEqual_VkCommandBufferInheritanceInfo(a->pInheritanceInfo, b->pInheritanceInfo,
3173 onFail);
3174 }
3175 }
3176 }
3177
checkEqual_VkBufferCopy(const VkBufferCopy * a,const VkBufferCopy * b,OnFailCompareFunc onFail)3178 void checkEqual_VkBufferCopy(const VkBufferCopy* a, const VkBufferCopy* b,
3179 OnFailCompareFunc onFail) {
3180 if (!((a->srcOffset) == (b->srcOffset))) {
3181 onFail("a->srcOffset (Error: Value not equal)");
3182 };
3183 if (!((a->dstOffset) == (b->dstOffset))) {
3184 onFail("a->dstOffset (Error: Value not equal)");
3185 };
3186 if (!((a->size) == (b->size))) {
3187 onFail("a->size (Error: Value not equal)");
3188 };
3189 }
3190
checkEqual_VkImageSubresourceLayers(const VkImageSubresourceLayers * a,const VkImageSubresourceLayers * b,OnFailCompareFunc onFail)3191 void checkEqual_VkImageSubresourceLayers(const VkImageSubresourceLayers* a,
3192 const VkImageSubresourceLayers* b,
3193 OnFailCompareFunc onFail) {
3194 if (!((a->aspectMask) == (b->aspectMask))) {
3195 onFail("a->aspectMask (Error: Value not equal)");
3196 };
3197 if (!((a->mipLevel) == (b->mipLevel))) {
3198 onFail("a->mipLevel (Error: Value not equal)");
3199 };
3200 if (!((a->baseArrayLayer) == (b->baseArrayLayer))) {
3201 onFail("a->baseArrayLayer (Error: Value not equal)");
3202 };
3203 if (!((a->layerCount) == (b->layerCount))) {
3204 onFail("a->layerCount (Error: Value not equal)");
3205 };
3206 }
3207
checkEqual_VkBufferImageCopy(const VkBufferImageCopy * a,const VkBufferImageCopy * b,OnFailCompareFunc onFail)3208 void checkEqual_VkBufferImageCopy(const VkBufferImageCopy* a, const VkBufferImageCopy* b,
3209 OnFailCompareFunc onFail) {
3210 if (!((a->bufferOffset) == (b->bufferOffset))) {
3211 onFail("a->bufferOffset (Error: Value not equal)");
3212 };
3213 if (!((a->bufferRowLength) == (b->bufferRowLength))) {
3214 onFail("a->bufferRowLength (Error: Value not equal)");
3215 };
3216 if (!((a->bufferImageHeight) == (b->bufferImageHeight))) {
3217 onFail("a->bufferImageHeight (Error: Value not equal)");
3218 };
3219 checkEqual_VkImageSubresourceLayers(&a->imageSubresource, &b->imageSubresource, onFail);
3220 checkEqual_VkOffset3D(&a->imageOffset, &b->imageOffset, onFail);
3221 checkEqual_VkExtent3D(&a->imageExtent, &b->imageExtent, onFail);
3222 }
3223
checkEqual_VkClearColorValue(const VkClearColorValue * a,const VkClearColorValue * b,OnFailCompareFunc onFail)3224 void checkEqual_VkClearColorValue(const VkClearColorValue* a, const VkClearColorValue* b,
3225 OnFailCompareFunc onFail) {
3226 if (!((memcmp(a->float32, b->float32, 4 * sizeof(float)) == 0))) {
3227 onFail("a->float32 (Error: Unequal static array)");
3228 };
3229 if (!((memcmp(a->int32, b->int32, 4 * sizeof(int32_t)) == 0))) {
3230 onFail("a->int32 (Error: Unequal static array)");
3231 };
3232 if (!((memcmp(a->uint32, b->uint32, 4 * sizeof(uint32_t)) == 0))) {
3233 onFail("a->uint32 (Error: Unequal static array)");
3234 };
3235 }
3236
checkEqual_VkClearDepthStencilValue(const VkClearDepthStencilValue * a,const VkClearDepthStencilValue * b,OnFailCompareFunc onFail)3237 void checkEqual_VkClearDepthStencilValue(const VkClearDepthStencilValue* a,
3238 const VkClearDepthStencilValue* b,
3239 OnFailCompareFunc onFail) {
3240 if (!((a->depth) == (b->depth))) {
3241 onFail("a->depth (Error: Value not equal)");
3242 };
3243 if (!((a->stencil) == (b->stencil))) {
3244 onFail("a->stencil (Error: Value not equal)");
3245 };
3246 }
3247
checkEqual_VkClearValue(const VkClearValue * a,const VkClearValue * b,OnFailCompareFunc onFail)3248 void checkEqual_VkClearValue(const VkClearValue* a, const VkClearValue* b,
3249 OnFailCompareFunc onFail) {
3250 checkEqual_VkClearColorValue(&a->color, &b->color, onFail);
3251 checkEqual_VkClearDepthStencilValue(&a->depthStencil, &b->depthStencil, onFail);
3252 }
3253
checkEqual_VkClearAttachment(const VkClearAttachment * a,const VkClearAttachment * b,OnFailCompareFunc onFail)3254 void checkEqual_VkClearAttachment(const VkClearAttachment* a, const VkClearAttachment* b,
3255 OnFailCompareFunc onFail) {
3256 if (!((a->aspectMask) == (b->aspectMask))) {
3257 onFail("a->aspectMask (Error: Value not equal)");
3258 };
3259 if (!((a->colorAttachment) == (b->colorAttachment))) {
3260 onFail("a->colorAttachment (Error: Value not equal)");
3261 };
3262 checkEqual_VkClearValue(&a->clearValue, &b->clearValue, onFail);
3263 }
3264
checkEqual_VkClearRect(const VkClearRect * a,const VkClearRect * b,OnFailCompareFunc onFail)3265 void checkEqual_VkClearRect(const VkClearRect* a, const VkClearRect* b, OnFailCompareFunc onFail) {
3266 checkEqual_VkRect2D(&a->rect, &b->rect, onFail);
3267 if (!((a->baseArrayLayer) == (b->baseArrayLayer))) {
3268 onFail("a->baseArrayLayer (Error: Value not equal)");
3269 };
3270 if (!((a->layerCount) == (b->layerCount))) {
3271 onFail("a->layerCount (Error: Value not equal)");
3272 };
3273 }
3274
checkEqual_VkImageBlit(const VkImageBlit * a,const VkImageBlit * b,OnFailCompareFunc onFail)3275 void checkEqual_VkImageBlit(const VkImageBlit* a, const VkImageBlit* b, OnFailCompareFunc onFail) {
3276 checkEqual_VkImageSubresourceLayers(&a->srcSubresource, &b->srcSubresource, onFail);
3277 if (!((2) == (2))) {
3278 onFail("a->srcOffsets (Error: Lengths not equal)");
3279 };
3280 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
3281 checkEqual_VkOffset3D(a->srcOffsets + i, b->srcOffsets + i, onFail);
3282 }
3283 checkEqual_VkImageSubresourceLayers(&a->dstSubresource, &b->dstSubresource, onFail);
3284 if (!((2) == (2))) {
3285 onFail("a->dstOffsets (Error: Lengths not equal)");
3286 };
3287 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
3288 checkEqual_VkOffset3D(a->dstOffsets + i, b->dstOffsets + i, onFail);
3289 }
3290 }
3291
checkEqual_VkImageCopy(const VkImageCopy * a,const VkImageCopy * b,OnFailCompareFunc onFail)3292 void checkEqual_VkImageCopy(const VkImageCopy* a, const VkImageCopy* b, OnFailCompareFunc onFail) {
3293 checkEqual_VkImageSubresourceLayers(&a->srcSubresource, &b->srcSubresource, onFail);
3294 checkEqual_VkOffset3D(&a->srcOffset, &b->srcOffset, onFail);
3295 checkEqual_VkImageSubresourceLayers(&a->dstSubresource, &b->dstSubresource, onFail);
3296 checkEqual_VkOffset3D(&a->dstOffset, &b->dstOffset, onFail);
3297 checkEqual_VkExtent3D(&a->extent, &b->extent, onFail);
3298 }
3299
checkEqual_VkImageResolve(const VkImageResolve * a,const VkImageResolve * b,OnFailCompareFunc onFail)3300 void checkEqual_VkImageResolve(const VkImageResolve* a, const VkImageResolve* b,
3301 OnFailCompareFunc onFail) {
3302 checkEqual_VkImageSubresourceLayers(&a->srcSubresource, &b->srcSubresource, onFail);
3303 checkEqual_VkOffset3D(&a->srcOffset, &b->srcOffset, onFail);
3304 checkEqual_VkImageSubresourceLayers(&a->dstSubresource, &b->dstSubresource, onFail);
3305 checkEqual_VkOffset3D(&a->dstOffset, &b->dstOffset, onFail);
3306 checkEqual_VkExtent3D(&a->extent, &b->extent, onFail);
3307 }
3308
checkEqual_VkRenderPassBeginInfo(const VkRenderPassBeginInfo * a,const VkRenderPassBeginInfo * b,OnFailCompareFunc onFail)3309 void checkEqual_VkRenderPassBeginInfo(const VkRenderPassBeginInfo* a,
3310 const VkRenderPassBeginInfo* b, OnFailCompareFunc onFail) {
3311 if (!((a->sType) == (b->sType))) {
3312 onFail("a->sType (Error: Value not equal)");
3313 };
3314 if (a->pNext) {
3315 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3316 }
3317 if (!((a->renderPass) == (b->renderPass))) {
3318 onFail("a->renderPass (Error: Value not equal)");
3319 };
3320 if (!((a->framebuffer) == (b->framebuffer))) {
3321 onFail("a->framebuffer (Error: Value not equal)");
3322 };
3323 checkEqual_VkRect2D(&a->renderArea, &b->renderArea, onFail);
3324 if (!((a->clearValueCount) == (b->clearValueCount))) {
3325 onFail("a->clearValueCount (Error: Value not equal)");
3326 };
3327 if (!((!(a->pClearValues) && !(b->pClearValues)) || ((a->pClearValues) && (b->pClearValues)))) {
3328 onFail("a->pClearValues (Error: Mismatch in optional field)");
3329 };
3330 if (a->pClearValues && b->pClearValues) {
3331 if ((a->pClearValues) && (b->pClearValues)) {
3332 if (!((a->clearValueCount) == (b->clearValueCount))) {
3333 onFail("a->pClearValues (Error: Lengths not equal)");
3334 };
3335 if ((a->clearValueCount) == (b->clearValueCount)) {
3336 if (a) {
3337 for (uint32_t i = 0; i < (uint32_t)a->clearValueCount; ++i) {
3338 checkEqual_VkClearValue(a->pClearValues + i, b->pClearValues + i, onFail);
3339 }
3340 }
3341 }
3342 }
3343 }
3344 }
3345
3346 #endif
3347 #ifdef VK_VERSION_1_1
checkEqual_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties * a,const VkPhysicalDeviceSubgroupProperties * b,OnFailCompareFunc onFail)3348 void checkEqual_VkPhysicalDeviceSubgroupProperties(const VkPhysicalDeviceSubgroupProperties* a,
3349 const VkPhysicalDeviceSubgroupProperties* b,
3350 OnFailCompareFunc onFail) {
3351 if (!((a->sType) == (b->sType))) {
3352 onFail("a->sType (Error: Value not equal)");
3353 };
3354 if (a->pNext) {
3355 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3356 }
3357 if (!((a->subgroupSize) == (b->subgroupSize))) {
3358 onFail("a->subgroupSize (Error: Value not equal)");
3359 };
3360 if (!((a->supportedStages) == (b->supportedStages))) {
3361 onFail("a->supportedStages (Error: Value not equal)");
3362 };
3363 if (!((a->supportedOperations) == (b->supportedOperations))) {
3364 onFail("a->supportedOperations (Error: Value not equal)");
3365 };
3366 if (!((a->quadOperationsInAllStages) == (b->quadOperationsInAllStages))) {
3367 onFail("a->quadOperationsInAllStages (Error: Value not equal)");
3368 };
3369 }
3370
checkEqual_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo * a,const VkBindBufferMemoryInfo * b,OnFailCompareFunc onFail)3371 void checkEqual_VkBindBufferMemoryInfo(const VkBindBufferMemoryInfo* a,
3372 const VkBindBufferMemoryInfo* b, OnFailCompareFunc onFail) {
3373 if (!((a->sType) == (b->sType))) {
3374 onFail("a->sType (Error: Value not equal)");
3375 };
3376 if (a->pNext) {
3377 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3378 }
3379 if (!((a->buffer) == (b->buffer))) {
3380 onFail("a->buffer (Error: Value not equal)");
3381 };
3382 if (!((a->memory) == (b->memory))) {
3383 onFail("a->memory (Error: Value not equal)");
3384 };
3385 if (!((a->memoryOffset) == (b->memoryOffset))) {
3386 onFail("a->memoryOffset (Error: Value not equal)");
3387 };
3388 }
3389
checkEqual_VkBindImageMemoryInfo(const VkBindImageMemoryInfo * a,const VkBindImageMemoryInfo * b,OnFailCompareFunc onFail)3390 void checkEqual_VkBindImageMemoryInfo(const VkBindImageMemoryInfo* a,
3391 const VkBindImageMemoryInfo* b, OnFailCompareFunc onFail) {
3392 if (!((a->sType) == (b->sType))) {
3393 onFail("a->sType (Error: Value not equal)");
3394 };
3395 if (a->pNext) {
3396 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3397 }
3398 if (!((a->image) == (b->image))) {
3399 onFail("a->image (Error: Value not equal)");
3400 };
3401 if (!((a->memory) == (b->memory))) {
3402 onFail("a->memory (Error: Value not equal)");
3403 };
3404 if (!((a->memoryOffset) == (b->memoryOffset))) {
3405 onFail("a->memoryOffset (Error: Value not equal)");
3406 };
3407 }
3408
checkEqual_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures * a,const VkPhysicalDevice16BitStorageFeatures * b,OnFailCompareFunc onFail)3409 void checkEqual_VkPhysicalDevice16BitStorageFeatures(const VkPhysicalDevice16BitStorageFeatures* a,
3410 const VkPhysicalDevice16BitStorageFeatures* b,
3411 OnFailCompareFunc onFail) {
3412 if (!((a->sType) == (b->sType))) {
3413 onFail("a->sType (Error: Value not equal)");
3414 };
3415 if (a->pNext) {
3416 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3417 }
3418 if (!((a->storageBuffer16BitAccess) == (b->storageBuffer16BitAccess))) {
3419 onFail("a->storageBuffer16BitAccess (Error: Value not equal)");
3420 };
3421 if (!((a->uniformAndStorageBuffer16BitAccess) == (b->uniformAndStorageBuffer16BitAccess))) {
3422 onFail("a->uniformAndStorageBuffer16BitAccess (Error: Value not equal)");
3423 };
3424 if (!((a->storagePushConstant16) == (b->storagePushConstant16))) {
3425 onFail("a->storagePushConstant16 (Error: Value not equal)");
3426 };
3427 if (!((a->storageInputOutput16) == (b->storageInputOutput16))) {
3428 onFail("a->storageInputOutput16 (Error: Value not equal)");
3429 };
3430 }
3431
checkEqual_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements * a,const VkMemoryDedicatedRequirements * b,OnFailCompareFunc onFail)3432 void checkEqual_VkMemoryDedicatedRequirements(const VkMemoryDedicatedRequirements* a,
3433 const VkMemoryDedicatedRequirements* b,
3434 OnFailCompareFunc onFail) {
3435 if (!((a->sType) == (b->sType))) {
3436 onFail("a->sType (Error: Value not equal)");
3437 };
3438 if (a->pNext) {
3439 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3440 }
3441 if (!((a->prefersDedicatedAllocation) == (b->prefersDedicatedAllocation))) {
3442 onFail("a->prefersDedicatedAllocation (Error: Value not equal)");
3443 };
3444 if (!((a->requiresDedicatedAllocation) == (b->requiresDedicatedAllocation))) {
3445 onFail("a->requiresDedicatedAllocation (Error: Value not equal)");
3446 };
3447 }
3448
checkEqual_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo * a,const VkMemoryDedicatedAllocateInfo * b,OnFailCompareFunc onFail)3449 void checkEqual_VkMemoryDedicatedAllocateInfo(const VkMemoryDedicatedAllocateInfo* a,
3450 const VkMemoryDedicatedAllocateInfo* b,
3451 OnFailCompareFunc onFail) {
3452 if (!((a->sType) == (b->sType))) {
3453 onFail("a->sType (Error: Value not equal)");
3454 };
3455 if (a->pNext) {
3456 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3457 }
3458 if (!((a->image) == (b->image))) {
3459 onFail("a->image (Error: Value not equal)");
3460 };
3461 if (!((a->buffer) == (b->buffer))) {
3462 onFail("a->buffer (Error: Value not equal)");
3463 };
3464 }
3465
checkEqual_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo * a,const VkMemoryAllocateFlagsInfo * b,OnFailCompareFunc onFail)3466 void checkEqual_VkMemoryAllocateFlagsInfo(const VkMemoryAllocateFlagsInfo* a,
3467 const VkMemoryAllocateFlagsInfo* b,
3468 OnFailCompareFunc onFail) {
3469 if (!((a->sType) == (b->sType))) {
3470 onFail("a->sType (Error: Value not equal)");
3471 };
3472 if (a->pNext) {
3473 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3474 }
3475 if (!((a->flags) == (b->flags))) {
3476 onFail("a->flags (Error: Value not equal)");
3477 };
3478 if (!((a->deviceMask) == (b->deviceMask))) {
3479 onFail("a->deviceMask (Error: Value not equal)");
3480 };
3481 }
3482
checkEqual_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo * a,const VkDeviceGroupRenderPassBeginInfo * b,OnFailCompareFunc onFail)3483 void checkEqual_VkDeviceGroupRenderPassBeginInfo(const VkDeviceGroupRenderPassBeginInfo* a,
3484 const VkDeviceGroupRenderPassBeginInfo* b,
3485 OnFailCompareFunc onFail) {
3486 if (!((a->sType) == (b->sType))) {
3487 onFail("a->sType (Error: Value not equal)");
3488 };
3489 if (a->pNext) {
3490 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3491 }
3492 if (!((a->deviceMask) == (b->deviceMask))) {
3493 onFail("a->deviceMask (Error: Value not equal)");
3494 };
3495 if (!((a->deviceRenderAreaCount) == (b->deviceRenderAreaCount))) {
3496 onFail("a->deviceRenderAreaCount (Error: Value not equal)");
3497 };
3498 if ((a->pDeviceRenderAreas) && (b->pDeviceRenderAreas)) {
3499 if (!((a->deviceRenderAreaCount) == (b->deviceRenderAreaCount))) {
3500 onFail("a->pDeviceRenderAreas (Error: Lengths not equal)");
3501 };
3502 if ((a->deviceRenderAreaCount) == (b->deviceRenderAreaCount)) {
3503 if (a) {
3504 for (uint32_t i = 0; i < (uint32_t)a->deviceRenderAreaCount; ++i) {
3505 checkEqual_VkRect2D(a->pDeviceRenderAreas + i, b->pDeviceRenderAreas + i,
3506 onFail);
3507 }
3508 }
3509 }
3510 }
3511 }
3512
checkEqual_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo * a,const VkDeviceGroupCommandBufferBeginInfo * b,OnFailCompareFunc onFail)3513 void checkEqual_VkDeviceGroupCommandBufferBeginInfo(const VkDeviceGroupCommandBufferBeginInfo* a,
3514 const VkDeviceGroupCommandBufferBeginInfo* b,
3515 OnFailCompareFunc onFail) {
3516 if (!((a->sType) == (b->sType))) {
3517 onFail("a->sType (Error: Value not equal)");
3518 };
3519 if (a->pNext) {
3520 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3521 }
3522 if (!((a->deviceMask) == (b->deviceMask))) {
3523 onFail("a->deviceMask (Error: Value not equal)");
3524 };
3525 }
3526
checkEqual_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo * a,const VkDeviceGroupSubmitInfo * b,OnFailCompareFunc onFail)3527 void checkEqual_VkDeviceGroupSubmitInfo(const VkDeviceGroupSubmitInfo* a,
3528 const VkDeviceGroupSubmitInfo* b,
3529 OnFailCompareFunc onFail) {
3530 if (!((a->sType) == (b->sType))) {
3531 onFail("a->sType (Error: Value not equal)");
3532 };
3533 if (a->pNext) {
3534 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3535 }
3536 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
3537 onFail("a->waitSemaphoreCount (Error: Value not equal)");
3538 };
3539 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
3540 onFail("a->pWaitSemaphoreDeviceIndices (Error: Lengths not equal)");
3541 };
3542 if (!((memcmp(a->pWaitSemaphoreDeviceIndices, b->pWaitSemaphoreDeviceIndices,
3543 a->waitSemaphoreCount * sizeof(const uint32_t)) == 0))) {
3544 onFail("a->pWaitSemaphoreDeviceIndices (Error: Unequal dyn array)");
3545 };
3546 if (!((a->commandBufferCount) == (b->commandBufferCount))) {
3547 onFail("a->commandBufferCount (Error: Value not equal)");
3548 };
3549 if (!((a->commandBufferCount) == (b->commandBufferCount))) {
3550 onFail("a->pCommandBufferDeviceMasks (Error: Lengths not equal)");
3551 };
3552 if (!((memcmp(a->pCommandBufferDeviceMasks, b->pCommandBufferDeviceMasks,
3553 a->commandBufferCount * sizeof(const uint32_t)) == 0))) {
3554 onFail("a->pCommandBufferDeviceMasks (Error: Unequal dyn array)");
3555 };
3556 if (!((a->signalSemaphoreCount) == (b->signalSemaphoreCount))) {
3557 onFail("a->signalSemaphoreCount (Error: Value not equal)");
3558 };
3559 if (!((a->signalSemaphoreCount) == (b->signalSemaphoreCount))) {
3560 onFail("a->pSignalSemaphoreDeviceIndices (Error: Lengths not equal)");
3561 };
3562 if (!((memcmp(a->pSignalSemaphoreDeviceIndices, b->pSignalSemaphoreDeviceIndices,
3563 a->signalSemaphoreCount * sizeof(const uint32_t)) == 0))) {
3564 onFail("a->pSignalSemaphoreDeviceIndices (Error: Unequal dyn array)");
3565 };
3566 }
3567
checkEqual_VkDeviceGroupBindSparseInfo(const VkDeviceGroupBindSparseInfo * a,const VkDeviceGroupBindSparseInfo * b,OnFailCompareFunc onFail)3568 void checkEqual_VkDeviceGroupBindSparseInfo(const VkDeviceGroupBindSparseInfo* a,
3569 const VkDeviceGroupBindSparseInfo* b,
3570 OnFailCompareFunc onFail) {
3571 if (!((a->sType) == (b->sType))) {
3572 onFail("a->sType (Error: Value not equal)");
3573 };
3574 if (a->pNext) {
3575 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3576 }
3577 if (!((a->resourceDeviceIndex) == (b->resourceDeviceIndex))) {
3578 onFail("a->resourceDeviceIndex (Error: Value not equal)");
3579 };
3580 if (!((a->memoryDeviceIndex) == (b->memoryDeviceIndex))) {
3581 onFail("a->memoryDeviceIndex (Error: Value not equal)");
3582 };
3583 }
3584
checkEqual_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo * a,const VkBindBufferMemoryDeviceGroupInfo * b,OnFailCompareFunc onFail)3585 void checkEqual_VkBindBufferMemoryDeviceGroupInfo(const VkBindBufferMemoryDeviceGroupInfo* a,
3586 const VkBindBufferMemoryDeviceGroupInfo* b,
3587 OnFailCompareFunc onFail) {
3588 if (!((a->sType) == (b->sType))) {
3589 onFail("a->sType (Error: Value not equal)");
3590 };
3591 if (a->pNext) {
3592 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3593 }
3594 if (!((a->deviceIndexCount) == (b->deviceIndexCount))) {
3595 onFail("a->deviceIndexCount (Error: Value not equal)");
3596 };
3597 if (!((a->deviceIndexCount) == (b->deviceIndexCount))) {
3598 onFail("a->pDeviceIndices (Error: Lengths not equal)");
3599 };
3600 if (!((memcmp(a->pDeviceIndices, b->pDeviceIndices,
3601 a->deviceIndexCount * sizeof(const uint32_t)) == 0))) {
3602 onFail("a->pDeviceIndices (Error: Unequal dyn array)");
3603 };
3604 }
3605
checkEqual_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo * a,const VkBindImageMemoryDeviceGroupInfo * b,OnFailCompareFunc onFail)3606 void checkEqual_VkBindImageMemoryDeviceGroupInfo(const VkBindImageMemoryDeviceGroupInfo* a,
3607 const VkBindImageMemoryDeviceGroupInfo* b,
3608 OnFailCompareFunc onFail) {
3609 if (!((a->sType) == (b->sType))) {
3610 onFail("a->sType (Error: Value not equal)");
3611 };
3612 if (a->pNext) {
3613 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3614 }
3615 if (!((a->deviceIndexCount) == (b->deviceIndexCount))) {
3616 onFail("a->deviceIndexCount (Error: Value not equal)");
3617 };
3618 if (!((a->deviceIndexCount) == (b->deviceIndexCount))) {
3619 onFail("a->pDeviceIndices (Error: Lengths not equal)");
3620 };
3621 if (!((memcmp(a->pDeviceIndices, b->pDeviceIndices,
3622 a->deviceIndexCount * sizeof(const uint32_t)) == 0))) {
3623 onFail("a->pDeviceIndices (Error: Unequal dyn array)");
3624 };
3625 if (!((a->splitInstanceBindRegionCount) == (b->splitInstanceBindRegionCount))) {
3626 onFail("a->splitInstanceBindRegionCount (Error: Value not equal)");
3627 };
3628 if ((a->pSplitInstanceBindRegions) && (b->pSplitInstanceBindRegions)) {
3629 if (!((a->splitInstanceBindRegionCount) == (b->splitInstanceBindRegionCount))) {
3630 onFail("a->pSplitInstanceBindRegions (Error: Lengths not equal)");
3631 };
3632 if ((a->splitInstanceBindRegionCount) == (b->splitInstanceBindRegionCount)) {
3633 if (a) {
3634 for (uint32_t i = 0; i < (uint32_t)a->splitInstanceBindRegionCount; ++i) {
3635 checkEqual_VkRect2D(a->pSplitInstanceBindRegions + i,
3636 b->pSplitInstanceBindRegions + i, onFail);
3637 }
3638 }
3639 }
3640 }
3641 }
3642
checkEqual_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties * a,const VkPhysicalDeviceGroupProperties * b,OnFailCompareFunc onFail)3643 void checkEqual_VkPhysicalDeviceGroupProperties(const VkPhysicalDeviceGroupProperties* a,
3644 const VkPhysicalDeviceGroupProperties* b,
3645 OnFailCompareFunc onFail) {
3646 if (!((a->sType) == (b->sType))) {
3647 onFail("a->sType (Error: Value not equal)");
3648 };
3649 if (a->pNext) {
3650 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3651 }
3652 if (!((a->physicalDeviceCount) == (b->physicalDeviceCount))) {
3653 onFail("a->physicalDeviceCount (Error: Value not equal)");
3654 };
3655 if (!((memcmp(a->physicalDevices, b->physicalDevices,
3656 VK_MAX_DEVICE_GROUP_SIZE * sizeof(VkPhysicalDevice)) == 0))) {
3657 onFail("a->physicalDevices (Error: Unequal static array)");
3658 };
3659 if (!((a->subsetAllocation) == (b->subsetAllocation))) {
3660 onFail("a->subsetAllocation (Error: Value not equal)");
3661 };
3662 }
3663
checkEqual_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo * a,const VkDeviceGroupDeviceCreateInfo * b,OnFailCompareFunc onFail)3664 void checkEqual_VkDeviceGroupDeviceCreateInfo(const VkDeviceGroupDeviceCreateInfo* a,
3665 const VkDeviceGroupDeviceCreateInfo* b,
3666 OnFailCompareFunc onFail) {
3667 if (!((a->sType) == (b->sType))) {
3668 onFail("a->sType (Error: Value not equal)");
3669 };
3670 if (a->pNext) {
3671 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3672 }
3673 if (!((a->physicalDeviceCount) == (b->physicalDeviceCount))) {
3674 onFail("a->physicalDeviceCount (Error: Value not equal)");
3675 };
3676 if (!((a->physicalDeviceCount) == (b->physicalDeviceCount))) {
3677 onFail("a->pPhysicalDevices (Error: Lengths not equal)");
3678 };
3679 if (!((memcmp(a->pPhysicalDevices, b->pPhysicalDevices,
3680 a->physicalDeviceCount * sizeof(const VkPhysicalDevice)) == 0))) {
3681 onFail("a->pPhysicalDevices (Error: Unequal dyn array)");
3682 };
3683 }
3684
checkEqual_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2 * a,const VkBufferMemoryRequirementsInfo2 * b,OnFailCompareFunc onFail)3685 void checkEqual_VkBufferMemoryRequirementsInfo2(const VkBufferMemoryRequirementsInfo2* a,
3686 const VkBufferMemoryRequirementsInfo2* b,
3687 OnFailCompareFunc onFail) {
3688 if (!((a->sType) == (b->sType))) {
3689 onFail("a->sType (Error: Value not equal)");
3690 };
3691 if (a->pNext) {
3692 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3693 }
3694 if (!((a->buffer) == (b->buffer))) {
3695 onFail("a->buffer (Error: Value not equal)");
3696 };
3697 }
3698
checkEqual_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2 * a,const VkImageMemoryRequirementsInfo2 * b,OnFailCompareFunc onFail)3699 void checkEqual_VkImageMemoryRequirementsInfo2(const VkImageMemoryRequirementsInfo2* a,
3700 const VkImageMemoryRequirementsInfo2* b,
3701 OnFailCompareFunc onFail) {
3702 if (!((a->sType) == (b->sType))) {
3703 onFail("a->sType (Error: Value not equal)");
3704 };
3705 if (a->pNext) {
3706 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3707 }
3708 if (!((a->image) == (b->image))) {
3709 onFail("a->image (Error: Value not equal)");
3710 };
3711 }
3712
checkEqual_VkImageSparseMemoryRequirementsInfo2(const VkImageSparseMemoryRequirementsInfo2 * a,const VkImageSparseMemoryRequirementsInfo2 * b,OnFailCompareFunc onFail)3713 void checkEqual_VkImageSparseMemoryRequirementsInfo2(const VkImageSparseMemoryRequirementsInfo2* a,
3714 const VkImageSparseMemoryRequirementsInfo2* b,
3715 OnFailCompareFunc onFail) {
3716 if (!((a->sType) == (b->sType))) {
3717 onFail("a->sType (Error: Value not equal)");
3718 };
3719 if (a->pNext) {
3720 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3721 }
3722 if (!((a->image) == (b->image))) {
3723 onFail("a->image (Error: Value not equal)");
3724 };
3725 }
3726
checkEqual_VkMemoryRequirements2(const VkMemoryRequirements2 * a,const VkMemoryRequirements2 * b,OnFailCompareFunc onFail)3727 void checkEqual_VkMemoryRequirements2(const VkMemoryRequirements2* a,
3728 const VkMemoryRequirements2* b, OnFailCompareFunc onFail) {
3729 if (!((a->sType) == (b->sType))) {
3730 onFail("a->sType (Error: Value not equal)");
3731 };
3732 if (a->pNext) {
3733 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3734 }
3735 checkEqual_VkMemoryRequirements(&a->memoryRequirements, &b->memoryRequirements, onFail);
3736 }
3737
checkEqual_VkSparseImageMemoryRequirements2(const VkSparseImageMemoryRequirements2 * a,const VkSparseImageMemoryRequirements2 * b,OnFailCompareFunc onFail)3738 void checkEqual_VkSparseImageMemoryRequirements2(const VkSparseImageMemoryRequirements2* a,
3739 const VkSparseImageMemoryRequirements2* b,
3740 OnFailCompareFunc onFail) {
3741 if (!((a->sType) == (b->sType))) {
3742 onFail("a->sType (Error: Value not equal)");
3743 };
3744 if (a->pNext) {
3745 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3746 }
3747 checkEqual_VkSparseImageMemoryRequirements(&a->memoryRequirements, &b->memoryRequirements,
3748 onFail);
3749 }
3750
checkEqual_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2 * a,const VkPhysicalDeviceFeatures2 * b,OnFailCompareFunc onFail)3751 void checkEqual_VkPhysicalDeviceFeatures2(const VkPhysicalDeviceFeatures2* a,
3752 const VkPhysicalDeviceFeatures2* b,
3753 OnFailCompareFunc onFail) {
3754 if (!((a->sType) == (b->sType))) {
3755 onFail("a->sType (Error: Value not equal)");
3756 };
3757 if (a->pNext) {
3758 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3759 }
3760 checkEqual_VkPhysicalDeviceFeatures(&a->features, &b->features, onFail);
3761 }
3762
checkEqual_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2 * a,const VkPhysicalDeviceProperties2 * b,OnFailCompareFunc onFail)3763 void checkEqual_VkPhysicalDeviceProperties2(const VkPhysicalDeviceProperties2* a,
3764 const VkPhysicalDeviceProperties2* b,
3765 OnFailCompareFunc onFail) {
3766 if (!((a->sType) == (b->sType))) {
3767 onFail("a->sType (Error: Value not equal)");
3768 };
3769 if (a->pNext) {
3770 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3771 }
3772 checkEqual_VkPhysicalDeviceProperties(&a->properties, &b->properties, onFail);
3773 }
3774
checkEqual_VkFormatProperties2(const VkFormatProperties2 * a,const VkFormatProperties2 * b,OnFailCompareFunc onFail)3775 void checkEqual_VkFormatProperties2(const VkFormatProperties2* a, const VkFormatProperties2* b,
3776 OnFailCompareFunc onFail) {
3777 if (!((a->sType) == (b->sType))) {
3778 onFail("a->sType (Error: Value not equal)");
3779 };
3780 if (a->pNext) {
3781 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3782 }
3783 checkEqual_VkFormatProperties(&a->formatProperties, &b->formatProperties, onFail);
3784 }
3785
checkEqual_VkImageFormatProperties2(const VkImageFormatProperties2 * a,const VkImageFormatProperties2 * b,OnFailCompareFunc onFail)3786 void checkEqual_VkImageFormatProperties2(const VkImageFormatProperties2* a,
3787 const VkImageFormatProperties2* b,
3788 OnFailCompareFunc onFail) {
3789 if (!((a->sType) == (b->sType))) {
3790 onFail("a->sType (Error: Value not equal)");
3791 };
3792 if (a->pNext) {
3793 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3794 }
3795 checkEqual_VkImageFormatProperties(&a->imageFormatProperties, &b->imageFormatProperties,
3796 onFail);
3797 }
3798
checkEqual_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2 * a,const VkPhysicalDeviceImageFormatInfo2 * b,OnFailCompareFunc onFail)3799 void checkEqual_VkPhysicalDeviceImageFormatInfo2(const VkPhysicalDeviceImageFormatInfo2* a,
3800 const VkPhysicalDeviceImageFormatInfo2* b,
3801 OnFailCompareFunc onFail) {
3802 if (!((a->sType) == (b->sType))) {
3803 onFail("a->sType (Error: Value not equal)");
3804 };
3805 if (a->pNext) {
3806 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3807 }
3808 if (!((a->format) == (b->format))) {
3809 onFail("a->format (Error: Value not equal)");
3810 };
3811 if (!((a->type) == (b->type))) {
3812 onFail("a->type (Error: Value not equal)");
3813 };
3814 if (!((a->tiling) == (b->tiling))) {
3815 onFail("a->tiling (Error: Value not equal)");
3816 };
3817 if (!((a->usage) == (b->usage))) {
3818 onFail("a->usage (Error: Value not equal)");
3819 };
3820 if (!((a->flags) == (b->flags))) {
3821 onFail("a->flags (Error: Value not equal)");
3822 };
3823 }
3824
checkEqual_VkQueueFamilyProperties2(const VkQueueFamilyProperties2 * a,const VkQueueFamilyProperties2 * b,OnFailCompareFunc onFail)3825 void checkEqual_VkQueueFamilyProperties2(const VkQueueFamilyProperties2* a,
3826 const VkQueueFamilyProperties2* b,
3827 OnFailCompareFunc onFail) {
3828 if (!((a->sType) == (b->sType))) {
3829 onFail("a->sType (Error: Value not equal)");
3830 };
3831 if (a->pNext) {
3832 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3833 }
3834 checkEqual_VkQueueFamilyProperties(&a->queueFamilyProperties, &b->queueFamilyProperties,
3835 onFail);
3836 }
3837
checkEqual_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2 * a,const VkPhysicalDeviceMemoryProperties2 * b,OnFailCompareFunc onFail)3838 void checkEqual_VkPhysicalDeviceMemoryProperties2(const VkPhysicalDeviceMemoryProperties2* a,
3839 const VkPhysicalDeviceMemoryProperties2* b,
3840 OnFailCompareFunc onFail) {
3841 if (!((a->sType) == (b->sType))) {
3842 onFail("a->sType (Error: Value not equal)");
3843 };
3844 if (a->pNext) {
3845 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3846 }
3847 checkEqual_VkPhysicalDeviceMemoryProperties(&a->memoryProperties, &b->memoryProperties, onFail);
3848 }
3849
checkEqual_VkSparseImageFormatProperties2(const VkSparseImageFormatProperties2 * a,const VkSparseImageFormatProperties2 * b,OnFailCompareFunc onFail)3850 void checkEqual_VkSparseImageFormatProperties2(const VkSparseImageFormatProperties2* a,
3851 const VkSparseImageFormatProperties2* b,
3852 OnFailCompareFunc onFail) {
3853 if (!((a->sType) == (b->sType))) {
3854 onFail("a->sType (Error: Value not equal)");
3855 };
3856 if (a->pNext) {
3857 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3858 }
3859 checkEqual_VkSparseImageFormatProperties(&a->properties, &b->properties, onFail);
3860 }
3861
checkEqual_VkPhysicalDeviceSparseImageFormatInfo2(const VkPhysicalDeviceSparseImageFormatInfo2 * a,const VkPhysicalDeviceSparseImageFormatInfo2 * b,OnFailCompareFunc onFail)3862 void checkEqual_VkPhysicalDeviceSparseImageFormatInfo2(
3863 const VkPhysicalDeviceSparseImageFormatInfo2* a,
3864 const VkPhysicalDeviceSparseImageFormatInfo2* b, OnFailCompareFunc onFail) {
3865 if (!((a->sType) == (b->sType))) {
3866 onFail("a->sType (Error: Value not equal)");
3867 };
3868 if (a->pNext) {
3869 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3870 }
3871 if (!((a->format) == (b->format))) {
3872 onFail("a->format (Error: Value not equal)");
3873 };
3874 if (!((a->type) == (b->type))) {
3875 onFail("a->type (Error: Value not equal)");
3876 };
3877 if (!((a->samples) == (b->samples))) {
3878 onFail("a->samples (Error: Value not equal)");
3879 };
3880 if (!((a->usage) == (b->usage))) {
3881 onFail("a->usage (Error: Value not equal)");
3882 };
3883 if (!((a->tiling) == (b->tiling))) {
3884 onFail("a->tiling (Error: Value not equal)");
3885 };
3886 }
3887
checkEqual_VkPhysicalDevicePointClippingProperties(const VkPhysicalDevicePointClippingProperties * a,const VkPhysicalDevicePointClippingProperties * b,OnFailCompareFunc onFail)3888 void checkEqual_VkPhysicalDevicePointClippingProperties(
3889 const VkPhysicalDevicePointClippingProperties* a,
3890 const VkPhysicalDevicePointClippingProperties* b, OnFailCompareFunc onFail) {
3891 if (!((a->sType) == (b->sType))) {
3892 onFail("a->sType (Error: Value not equal)");
3893 };
3894 if (a->pNext) {
3895 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3896 }
3897 if (!((a->pointClippingBehavior) == (b->pointClippingBehavior))) {
3898 onFail("a->pointClippingBehavior (Error: Value not equal)");
3899 };
3900 }
3901
checkEqual_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference * a,const VkInputAttachmentAspectReference * b,OnFailCompareFunc onFail)3902 void checkEqual_VkInputAttachmentAspectReference(const VkInputAttachmentAspectReference* a,
3903 const VkInputAttachmentAspectReference* b,
3904 OnFailCompareFunc onFail) {
3905 if (!((a->subpass) == (b->subpass))) {
3906 onFail("a->subpass (Error: Value not equal)");
3907 };
3908 if (!((a->inputAttachmentIndex) == (b->inputAttachmentIndex))) {
3909 onFail("a->inputAttachmentIndex (Error: Value not equal)");
3910 };
3911 if (!((a->aspectMask) == (b->aspectMask))) {
3912 onFail("a->aspectMask (Error: Value not equal)");
3913 };
3914 }
3915
checkEqual_VkRenderPassInputAttachmentAspectCreateInfo(const VkRenderPassInputAttachmentAspectCreateInfo * a,const VkRenderPassInputAttachmentAspectCreateInfo * b,OnFailCompareFunc onFail)3916 void checkEqual_VkRenderPassInputAttachmentAspectCreateInfo(
3917 const VkRenderPassInputAttachmentAspectCreateInfo* a,
3918 const VkRenderPassInputAttachmentAspectCreateInfo* b, OnFailCompareFunc onFail) {
3919 if (!((a->sType) == (b->sType))) {
3920 onFail("a->sType (Error: Value not equal)");
3921 };
3922 if (a->pNext) {
3923 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3924 }
3925 if (!((a->aspectReferenceCount) == (b->aspectReferenceCount))) {
3926 onFail("a->aspectReferenceCount (Error: Value not equal)");
3927 };
3928 if ((a->pAspectReferences) && (b->pAspectReferences)) {
3929 if (!((a->aspectReferenceCount) == (b->aspectReferenceCount))) {
3930 onFail("a->pAspectReferences (Error: Lengths not equal)");
3931 };
3932 if ((a->aspectReferenceCount) == (b->aspectReferenceCount)) {
3933 if (a) {
3934 for (uint32_t i = 0; i < (uint32_t)a->aspectReferenceCount; ++i) {
3935 checkEqual_VkInputAttachmentAspectReference(a->pAspectReferences + i,
3936 b->pAspectReferences + i, onFail);
3937 }
3938 }
3939 }
3940 }
3941 }
3942
checkEqual_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo * a,const VkImageViewUsageCreateInfo * b,OnFailCompareFunc onFail)3943 void checkEqual_VkImageViewUsageCreateInfo(const VkImageViewUsageCreateInfo* a,
3944 const VkImageViewUsageCreateInfo* b,
3945 OnFailCompareFunc onFail) {
3946 if (!((a->sType) == (b->sType))) {
3947 onFail("a->sType (Error: Value not equal)");
3948 };
3949 if (a->pNext) {
3950 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3951 }
3952 if (!((a->usage) == (b->usage))) {
3953 onFail("a->usage (Error: Value not equal)");
3954 };
3955 }
3956
checkEqual_VkPipelineTessellationDomainOriginStateCreateInfo(const VkPipelineTessellationDomainOriginStateCreateInfo * a,const VkPipelineTessellationDomainOriginStateCreateInfo * b,OnFailCompareFunc onFail)3957 void checkEqual_VkPipelineTessellationDomainOriginStateCreateInfo(
3958 const VkPipelineTessellationDomainOriginStateCreateInfo* a,
3959 const VkPipelineTessellationDomainOriginStateCreateInfo* b, OnFailCompareFunc onFail) {
3960 if (!((a->sType) == (b->sType))) {
3961 onFail("a->sType (Error: Value not equal)");
3962 };
3963 if (a->pNext) {
3964 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3965 }
3966 if (!((a->domainOrigin) == (b->domainOrigin))) {
3967 onFail("a->domainOrigin (Error: Value not equal)");
3968 };
3969 }
3970
checkEqual_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo * a,const VkRenderPassMultiviewCreateInfo * b,OnFailCompareFunc onFail)3971 void checkEqual_VkRenderPassMultiviewCreateInfo(const VkRenderPassMultiviewCreateInfo* a,
3972 const VkRenderPassMultiviewCreateInfo* b,
3973 OnFailCompareFunc onFail) {
3974 if (!((a->sType) == (b->sType))) {
3975 onFail("a->sType (Error: Value not equal)");
3976 };
3977 if (a->pNext) {
3978 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
3979 }
3980 if (!((a->subpassCount) == (b->subpassCount))) {
3981 onFail("a->subpassCount (Error: Value not equal)");
3982 };
3983 if (!((a->subpassCount) == (b->subpassCount))) {
3984 onFail("a->pViewMasks (Error: Lengths not equal)");
3985 };
3986 if (!((memcmp(a->pViewMasks, b->pViewMasks, a->subpassCount * sizeof(const uint32_t)) == 0))) {
3987 onFail("a->pViewMasks (Error: Unequal dyn array)");
3988 };
3989 if (!((a->dependencyCount) == (b->dependencyCount))) {
3990 onFail("a->dependencyCount (Error: Value not equal)");
3991 };
3992 if (!((a->dependencyCount) == (b->dependencyCount))) {
3993 onFail("a->pViewOffsets (Error: Lengths not equal)");
3994 };
3995 if (!((memcmp(a->pViewOffsets, b->pViewOffsets, a->dependencyCount * sizeof(const int32_t)) ==
3996 0))) {
3997 onFail("a->pViewOffsets (Error: Unequal dyn array)");
3998 };
3999 if (!((a->correlationMaskCount) == (b->correlationMaskCount))) {
4000 onFail("a->correlationMaskCount (Error: Value not equal)");
4001 };
4002 if (!((a->correlationMaskCount) == (b->correlationMaskCount))) {
4003 onFail("a->pCorrelationMasks (Error: Lengths not equal)");
4004 };
4005 if (!((memcmp(a->pCorrelationMasks, b->pCorrelationMasks,
4006 a->correlationMaskCount * sizeof(const uint32_t)) == 0))) {
4007 onFail("a->pCorrelationMasks (Error: Unequal dyn array)");
4008 };
4009 }
4010
checkEqual_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures * a,const VkPhysicalDeviceMultiviewFeatures * b,OnFailCompareFunc onFail)4011 void checkEqual_VkPhysicalDeviceMultiviewFeatures(const VkPhysicalDeviceMultiviewFeatures* a,
4012 const VkPhysicalDeviceMultiviewFeatures* b,
4013 OnFailCompareFunc onFail) {
4014 if (!((a->sType) == (b->sType))) {
4015 onFail("a->sType (Error: Value not equal)");
4016 };
4017 if (a->pNext) {
4018 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4019 }
4020 if (!((a->multiview) == (b->multiview))) {
4021 onFail("a->multiview (Error: Value not equal)");
4022 };
4023 if (!((a->multiviewGeometryShader) == (b->multiviewGeometryShader))) {
4024 onFail("a->multiviewGeometryShader (Error: Value not equal)");
4025 };
4026 if (!((a->multiviewTessellationShader) == (b->multiviewTessellationShader))) {
4027 onFail("a->multiviewTessellationShader (Error: Value not equal)");
4028 };
4029 }
4030
checkEqual_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties * a,const VkPhysicalDeviceMultiviewProperties * b,OnFailCompareFunc onFail)4031 void checkEqual_VkPhysicalDeviceMultiviewProperties(const VkPhysicalDeviceMultiviewProperties* a,
4032 const VkPhysicalDeviceMultiviewProperties* b,
4033 OnFailCompareFunc onFail) {
4034 if (!((a->sType) == (b->sType))) {
4035 onFail("a->sType (Error: Value not equal)");
4036 };
4037 if (a->pNext) {
4038 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4039 }
4040 if (!((a->maxMultiviewViewCount) == (b->maxMultiviewViewCount))) {
4041 onFail("a->maxMultiviewViewCount (Error: Value not equal)");
4042 };
4043 if (!((a->maxMultiviewInstanceIndex) == (b->maxMultiviewInstanceIndex))) {
4044 onFail("a->maxMultiviewInstanceIndex (Error: Value not equal)");
4045 };
4046 }
4047
checkEqual_VkPhysicalDeviceVariablePointersFeatures(const VkPhysicalDeviceVariablePointersFeatures * a,const VkPhysicalDeviceVariablePointersFeatures * b,OnFailCompareFunc onFail)4048 void checkEqual_VkPhysicalDeviceVariablePointersFeatures(
4049 const VkPhysicalDeviceVariablePointersFeatures* a,
4050 const VkPhysicalDeviceVariablePointersFeatures* b, OnFailCompareFunc onFail) {
4051 if (!((a->sType) == (b->sType))) {
4052 onFail("a->sType (Error: Value not equal)");
4053 };
4054 if (a->pNext) {
4055 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4056 }
4057 if (!((a->variablePointersStorageBuffer) == (b->variablePointersStorageBuffer))) {
4058 onFail("a->variablePointersStorageBuffer (Error: Value not equal)");
4059 };
4060 if (!((a->variablePointers) == (b->variablePointers))) {
4061 onFail("a->variablePointers (Error: Value not equal)");
4062 };
4063 }
4064
checkEqual_VkPhysicalDeviceProtectedMemoryFeatures(const VkPhysicalDeviceProtectedMemoryFeatures * a,const VkPhysicalDeviceProtectedMemoryFeatures * b,OnFailCompareFunc onFail)4065 void checkEqual_VkPhysicalDeviceProtectedMemoryFeatures(
4066 const VkPhysicalDeviceProtectedMemoryFeatures* a,
4067 const VkPhysicalDeviceProtectedMemoryFeatures* b, OnFailCompareFunc onFail) {
4068 if (!((a->sType) == (b->sType))) {
4069 onFail("a->sType (Error: Value not equal)");
4070 };
4071 if (a->pNext) {
4072 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4073 }
4074 if (!((a->protectedMemory) == (b->protectedMemory))) {
4075 onFail("a->protectedMemory (Error: Value not equal)");
4076 };
4077 }
4078
checkEqual_VkPhysicalDeviceProtectedMemoryProperties(const VkPhysicalDeviceProtectedMemoryProperties * a,const VkPhysicalDeviceProtectedMemoryProperties * b,OnFailCompareFunc onFail)4079 void checkEqual_VkPhysicalDeviceProtectedMemoryProperties(
4080 const VkPhysicalDeviceProtectedMemoryProperties* a,
4081 const VkPhysicalDeviceProtectedMemoryProperties* b, OnFailCompareFunc onFail) {
4082 if (!((a->sType) == (b->sType))) {
4083 onFail("a->sType (Error: Value not equal)");
4084 };
4085 if (a->pNext) {
4086 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4087 }
4088 if (!((a->protectedNoFault) == (b->protectedNoFault))) {
4089 onFail("a->protectedNoFault (Error: Value not equal)");
4090 };
4091 }
4092
checkEqual_VkDeviceQueueInfo2(const VkDeviceQueueInfo2 * a,const VkDeviceQueueInfo2 * b,OnFailCompareFunc onFail)4093 void checkEqual_VkDeviceQueueInfo2(const VkDeviceQueueInfo2* a, const VkDeviceQueueInfo2* b,
4094 OnFailCompareFunc onFail) {
4095 if (!((a->sType) == (b->sType))) {
4096 onFail("a->sType (Error: Value not equal)");
4097 };
4098 if (a->pNext) {
4099 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4100 }
4101 if (!((a->flags) == (b->flags))) {
4102 onFail("a->flags (Error: Value not equal)");
4103 };
4104 if (!((a->queueFamilyIndex) == (b->queueFamilyIndex))) {
4105 onFail("a->queueFamilyIndex (Error: Value not equal)");
4106 };
4107 if (!((a->queueIndex) == (b->queueIndex))) {
4108 onFail("a->queueIndex (Error: Value not equal)");
4109 };
4110 }
4111
checkEqual_VkProtectedSubmitInfo(const VkProtectedSubmitInfo * a,const VkProtectedSubmitInfo * b,OnFailCompareFunc onFail)4112 void checkEqual_VkProtectedSubmitInfo(const VkProtectedSubmitInfo* a,
4113 const VkProtectedSubmitInfo* b, OnFailCompareFunc onFail) {
4114 if (!((a->sType) == (b->sType))) {
4115 onFail("a->sType (Error: Value not equal)");
4116 };
4117 if (a->pNext) {
4118 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4119 }
4120 if (!((a->protectedSubmit) == (b->protectedSubmit))) {
4121 onFail("a->protectedSubmit (Error: Value not equal)");
4122 };
4123 }
4124
checkEqual_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo * a,const VkSamplerYcbcrConversionCreateInfo * b,OnFailCompareFunc onFail)4125 void checkEqual_VkSamplerYcbcrConversionCreateInfo(const VkSamplerYcbcrConversionCreateInfo* a,
4126 const VkSamplerYcbcrConversionCreateInfo* b,
4127 OnFailCompareFunc onFail) {
4128 if (!((a->sType) == (b->sType))) {
4129 onFail("a->sType (Error: Value not equal)");
4130 };
4131 if (a->pNext) {
4132 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4133 }
4134 if (!((a->format) == (b->format))) {
4135 onFail("a->format (Error: Value not equal)");
4136 };
4137 if (!((a->ycbcrModel) == (b->ycbcrModel))) {
4138 onFail("a->ycbcrModel (Error: Value not equal)");
4139 };
4140 if (!((a->ycbcrRange) == (b->ycbcrRange))) {
4141 onFail("a->ycbcrRange (Error: Value not equal)");
4142 };
4143 checkEqual_VkComponentMapping(&a->components, &b->components, onFail);
4144 if (!((a->xChromaOffset) == (b->xChromaOffset))) {
4145 onFail("a->xChromaOffset (Error: Value not equal)");
4146 };
4147 if (!((a->yChromaOffset) == (b->yChromaOffset))) {
4148 onFail("a->yChromaOffset (Error: Value not equal)");
4149 };
4150 if (!((a->chromaFilter) == (b->chromaFilter))) {
4151 onFail("a->chromaFilter (Error: Value not equal)");
4152 };
4153 if (!((a->forceExplicitReconstruction) == (b->forceExplicitReconstruction))) {
4154 onFail("a->forceExplicitReconstruction (Error: Value not equal)");
4155 };
4156 }
4157
checkEqual_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo * a,const VkSamplerYcbcrConversionInfo * b,OnFailCompareFunc onFail)4158 void checkEqual_VkSamplerYcbcrConversionInfo(const VkSamplerYcbcrConversionInfo* a,
4159 const VkSamplerYcbcrConversionInfo* b,
4160 OnFailCompareFunc onFail) {
4161 if (!((a->sType) == (b->sType))) {
4162 onFail("a->sType (Error: Value not equal)");
4163 };
4164 if (a->pNext) {
4165 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4166 }
4167 if (!((a->conversion) == (b->conversion))) {
4168 onFail("a->conversion (Error: Value not equal)");
4169 };
4170 }
4171
checkEqual_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo * a,const VkBindImagePlaneMemoryInfo * b,OnFailCompareFunc onFail)4172 void checkEqual_VkBindImagePlaneMemoryInfo(const VkBindImagePlaneMemoryInfo* a,
4173 const VkBindImagePlaneMemoryInfo* b,
4174 OnFailCompareFunc onFail) {
4175 if (!((a->sType) == (b->sType))) {
4176 onFail("a->sType (Error: Value not equal)");
4177 };
4178 if (a->pNext) {
4179 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4180 }
4181 if (!((a->planeAspect) == (b->planeAspect))) {
4182 onFail("a->planeAspect (Error: Value not equal)");
4183 };
4184 }
4185
checkEqual_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo * a,const VkImagePlaneMemoryRequirementsInfo * b,OnFailCompareFunc onFail)4186 void checkEqual_VkImagePlaneMemoryRequirementsInfo(const VkImagePlaneMemoryRequirementsInfo* a,
4187 const VkImagePlaneMemoryRequirementsInfo* b,
4188 OnFailCompareFunc onFail) {
4189 if (!((a->sType) == (b->sType))) {
4190 onFail("a->sType (Error: Value not equal)");
4191 };
4192 if (a->pNext) {
4193 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4194 }
4195 if (!((a->planeAspect) == (b->planeAspect))) {
4196 onFail("a->planeAspect (Error: Value not equal)");
4197 };
4198 }
4199
checkEqual_VkPhysicalDeviceSamplerYcbcrConversionFeatures(const VkPhysicalDeviceSamplerYcbcrConversionFeatures * a,const VkPhysicalDeviceSamplerYcbcrConversionFeatures * b,OnFailCompareFunc onFail)4200 void checkEqual_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
4201 const VkPhysicalDeviceSamplerYcbcrConversionFeatures* a,
4202 const VkPhysicalDeviceSamplerYcbcrConversionFeatures* b, OnFailCompareFunc onFail) {
4203 if (!((a->sType) == (b->sType))) {
4204 onFail("a->sType (Error: Value not equal)");
4205 };
4206 if (a->pNext) {
4207 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4208 }
4209 if (!((a->samplerYcbcrConversion) == (b->samplerYcbcrConversion))) {
4210 onFail("a->samplerYcbcrConversion (Error: Value not equal)");
4211 };
4212 }
4213
checkEqual_VkSamplerYcbcrConversionImageFormatProperties(const VkSamplerYcbcrConversionImageFormatProperties * a,const VkSamplerYcbcrConversionImageFormatProperties * b,OnFailCompareFunc onFail)4214 void checkEqual_VkSamplerYcbcrConversionImageFormatProperties(
4215 const VkSamplerYcbcrConversionImageFormatProperties* a,
4216 const VkSamplerYcbcrConversionImageFormatProperties* b, OnFailCompareFunc onFail) {
4217 if (!((a->sType) == (b->sType))) {
4218 onFail("a->sType (Error: Value not equal)");
4219 };
4220 if (a->pNext) {
4221 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4222 }
4223 if (!((a->combinedImageSamplerDescriptorCount) == (b->combinedImageSamplerDescriptorCount))) {
4224 onFail("a->combinedImageSamplerDescriptorCount (Error: Value not equal)");
4225 };
4226 }
4227
checkEqual_VkDescriptorUpdateTemplateEntry(const VkDescriptorUpdateTemplateEntry * a,const VkDescriptorUpdateTemplateEntry * b,OnFailCompareFunc onFail)4228 void checkEqual_VkDescriptorUpdateTemplateEntry(const VkDescriptorUpdateTemplateEntry* a,
4229 const VkDescriptorUpdateTemplateEntry* b,
4230 OnFailCompareFunc onFail) {
4231 if (!((a->dstBinding) == (b->dstBinding))) {
4232 onFail("a->dstBinding (Error: Value not equal)");
4233 };
4234 if (!((a->dstArrayElement) == (b->dstArrayElement))) {
4235 onFail("a->dstArrayElement (Error: Value not equal)");
4236 };
4237 if (!((a->descriptorCount) == (b->descriptorCount))) {
4238 onFail("a->descriptorCount (Error: Value not equal)");
4239 };
4240 if (!((a->descriptorType) == (b->descriptorType))) {
4241 onFail("a->descriptorType (Error: Value not equal)");
4242 };
4243 if (!((a->offset) == (b->offset))) {
4244 onFail("a->offset (Error: Value not equal)");
4245 };
4246 if (!((a->stride) == (b->stride))) {
4247 onFail("a->stride (Error: Value not equal)");
4248 };
4249 }
4250
checkEqual_VkDescriptorUpdateTemplateCreateInfo(const VkDescriptorUpdateTemplateCreateInfo * a,const VkDescriptorUpdateTemplateCreateInfo * b,OnFailCompareFunc onFail)4251 void checkEqual_VkDescriptorUpdateTemplateCreateInfo(const VkDescriptorUpdateTemplateCreateInfo* a,
4252 const VkDescriptorUpdateTemplateCreateInfo* b,
4253 OnFailCompareFunc onFail) {
4254 if (!((a->sType) == (b->sType))) {
4255 onFail("a->sType (Error: Value not equal)");
4256 };
4257 if (a->pNext) {
4258 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4259 }
4260 if (!((a->flags) == (b->flags))) {
4261 onFail("a->flags (Error: Value not equal)");
4262 };
4263 if (!((a->descriptorUpdateEntryCount) == (b->descriptorUpdateEntryCount))) {
4264 onFail("a->descriptorUpdateEntryCount (Error: Value not equal)");
4265 };
4266 if ((a->pDescriptorUpdateEntries) && (b->pDescriptorUpdateEntries)) {
4267 if (!((a->descriptorUpdateEntryCount) == (b->descriptorUpdateEntryCount))) {
4268 onFail("a->pDescriptorUpdateEntries (Error: Lengths not equal)");
4269 };
4270 if ((a->descriptorUpdateEntryCount) == (b->descriptorUpdateEntryCount)) {
4271 if (a) {
4272 for (uint32_t i = 0; i < (uint32_t)a->descriptorUpdateEntryCount; ++i) {
4273 checkEqual_VkDescriptorUpdateTemplateEntry(
4274 a->pDescriptorUpdateEntries + i, b->pDescriptorUpdateEntries + i, onFail);
4275 }
4276 }
4277 }
4278 }
4279 if (!((a->templateType) == (b->templateType))) {
4280 onFail("a->templateType (Error: Value not equal)");
4281 };
4282 if (!((a->descriptorSetLayout) == (b->descriptorSetLayout))) {
4283 onFail("a->descriptorSetLayout (Error: Value not equal)");
4284 };
4285 if (!((a->pipelineBindPoint) == (b->pipelineBindPoint))) {
4286 onFail("a->pipelineBindPoint (Error: Value not equal)");
4287 };
4288 if (!((a->pipelineLayout) == (b->pipelineLayout))) {
4289 onFail("a->pipelineLayout (Error: Value not equal)");
4290 };
4291 if (!((a->set) == (b->set))) {
4292 onFail("a->set (Error: Value not equal)");
4293 };
4294 }
4295
checkEqual_VkExternalMemoryProperties(const VkExternalMemoryProperties * a,const VkExternalMemoryProperties * b,OnFailCompareFunc onFail)4296 void checkEqual_VkExternalMemoryProperties(const VkExternalMemoryProperties* a,
4297 const VkExternalMemoryProperties* b,
4298 OnFailCompareFunc onFail) {
4299 if (!((a->externalMemoryFeatures) == (b->externalMemoryFeatures))) {
4300 onFail("a->externalMemoryFeatures (Error: Value not equal)");
4301 };
4302 if (!((a->exportFromImportedHandleTypes) == (b->exportFromImportedHandleTypes))) {
4303 onFail("a->exportFromImportedHandleTypes (Error: Value not equal)");
4304 };
4305 if (!((a->compatibleHandleTypes) == (b->compatibleHandleTypes))) {
4306 onFail("a->compatibleHandleTypes (Error: Value not equal)");
4307 };
4308 }
4309
checkEqual_VkPhysicalDeviceExternalImageFormatInfo(const VkPhysicalDeviceExternalImageFormatInfo * a,const VkPhysicalDeviceExternalImageFormatInfo * b,OnFailCompareFunc onFail)4310 void checkEqual_VkPhysicalDeviceExternalImageFormatInfo(
4311 const VkPhysicalDeviceExternalImageFormatInfo* a,
4312 const VkPhysicalDeviceExternalImageFormatInfo* b, OnFailCompareFunc onFail) {
4313 if (!((a->sType) == (b->sType))) {
4314 onFail("a->sType (Error: Value not equal)");
4315 };
4316 if (a->pNext) {
4317 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4318 }
4319 if (!((a->handleType) == (b->handleType))) {
4320 onFail("a->handleType (Error: Value not equal)");
4321 };
4322 }
4323
checkEqual_VkExternalImageFormatProperties(const VkExternalImageFormatProperties * a,const VkExternalImageFormatProperties * b,OnFailCompareFunc onFail)4324 void checkEqual_VkExternalImageFormatProperties(const VkExternalImageFormatProperties* a,
4325 const VkExternalImageFormatProperties* b,
4326 OnFailCompareFunc onFail) {
4327 if (!((a->sType) == (b->sType))) {
4328 onFail("a->sType (Error: Value not equal)");
4329 };
4330 if (a->pNext) {
4331 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4332 }
4333 checkEqual_VkExternalMemoryProperties(&a->externalMemoryProperties,
4334 &b->externalMemoryProperties, onFail);
4335 }
4336
checkEqual_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo * a,const VkPhysicalDeviceExternalBufferInfo * b,OnFailCompareFunc onFail)4337 void checkEqual_VkPhysicalDeviceExternalBufferInfo(const VkPhysicalDeviceExternalBufferInfo* a,
4338 const VkPhysicalDeviceExternalBufferInfo* b,
4339 OnFailCompareFunc onFail) {
4340 if (!((a->sType) == (b->sType))) {
4341 onFail("a->sType (Error: Value not equal)");
4342 };
4343 if (a->pNext) {
4344 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4345 }
4346 if (!((a->flags) == (b->flags))) {
4347 onFail("a->flags (Error: Value not equal)");
4348 };
4349 if (!((a->usage) == (b->usage))) {
4350 onFail("a->usage (Error: Value not equal)");
4351 };
4352 if (!((a->handleType) == (b->handleType))) {
4353 onFail("a->handleType (Error: Value not equal)");
4354 };
4355 }
4356
checkEqual_VkExternalBufferProperties(const VkExternalBufferProperties * a,const VkExternalBufferProperties * b,OnFailCompareFunc onFail)4357 void checkEqual_VkExternalBufferProperties(const VkExternalBufferProperties* a,
4358 const VkExternalBufferProperties* b,
4359 OnFailCompareFunc onFail) {
4360 if (!((a->sType) == (b->sType))) {
4361 onFail("a->sType (Error: Value not equal)");
4362 };
4363 if (a->pNext) {
4364 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4365 }
4366 checkEqual_VkExternalMemoryProperties(&a->externalMemoryProperties,
4367 &b->externalMemoryProperties, onFail);
4368 }
4369
checkEqual_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties * a,const VkPhysicalDeviceIDProperties * b,OnFailCompareFunc onFail)4370 void checkEqual_VkPhysicalDeviceIDProperties(const VkPhysicalDeviceIDProperties* a,
4371 const VkPhysicalDeviceIDProperties* b,
4372 OnFailCompareFunc onFail) {
4373 if (!((a->sType) == (b->sType))) {
4374 onFail("a->sType (Error: Value not equal)");
4375 };
4376 if (a->pNext) {
4377 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4378 }
4379 if (!((memcmp(a->deviceUUID, b->deviceUUID, VK_UUID_SIZE * sizeof(uint8_t)) == 0))) {
4380 onFail("a->deviceUUID (Error: Unequal static array)");
4381 };
4382 if (!((memcmp(a->driverUUID, b->driverUUID, VK_UUID_SIZE * sizeof(uint8_t)) == 0))) {
4383 onFail("a->driverUUID (Error: Unequal static array)");
4384 };
4385 if (!((memcmp(a->deviceLUID, b->deviceLUID, VK_LUID_SIZE * sizeof(uint8_t)) == 0))) {
4386 onFail("a->deviceLUID (Error: Unequal static array)");
4387 };
4388 if (!((a->deviceNodeMask) == (b->deviceNodeMask))) {
4389 onFail("a->deviceNodeMask (Error: Value not equal)");
4390 };
4391 if (!((a->deviceLUIDValid) == (b->deviceLUIDValid))) {
4392 onFail("a->deviceLUIDValid (Error: Value not equal)");
4393 };
4394 }
4395
checkEqual_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo * a,const VkExternalMemoryImageCreateInfo * b,OnFailCompareFunc onFail)4396 void checkEqual_VkExternalMemoryImageCreateInfo(const VkExternalMemoryImageCreateInfo* a,
4397 const VkExternalMemoryImageCreateInfo* b,
4398 OnFailCompareFunc onFail) {
4399 if (!((a->sType) == (b->sType))) {
4400 onFail("a->sType (Error: Value not equal)");
4401 };
4402 if (a->pNext) {
4403 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4404 }
4405 if (!((a->handleTypes) == (b->handleTypes))) {
4406 onFail("a->handleTypes (Error: Value not equal)");
4407 };
4408 }
4409
checkEqual_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo * a,const VkExternalMemoryBufferCreateInfo * b,OnFailCompareFunc onFail)4410 void checkEqual_VkExternalMemoryBufferCreateInfo(const VkExternalMemoryBufferCreateInfo* a,
4411 const VkExternalMemoryBufferCreateInfo* b,
4412 OnFailCompareFunc onFail) {
4413 if (!((a->sType) == (b->sType))) {
4414 onFail("a->sType (Error: Value not equal)");
4415 };
4416 if (a->pNext) {
4417 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4418 }
4419 if (!((a->handleTypes) == (b->handleTypes))) {
4420 onFail("a->handleTypes (Error: Value not equal)");
4421 };
4422 }
4423
checkEqual_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo * a,const VkExportMemoryAllocateInfo * b,OnFailCompareFunc onFail)4424 void checkEqual_VkExportMemoryAllocateInfo(const VkExportMemoryAllocateInfo* a,
4425 const VkExportMemoryAllocateInfo* b,
4426 OnFailCompareFunc onFail) {
4427 if (!((a->sType) == (b->sType))) {
4428 onFail("a->sType (Error: Value not equal)");
4429 };
4430 if (a->pNext) {
4431 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4432 }
4433 if (!((a->handleTypes) == (b->handleTypes))) {
4434 onFail("a->handleTypes (Error: Value not equal)");
4435 };
4436 }
4437
checkEqual_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo * a,const VkPhysicalDeviceExternalFenceInfo * b,OnFailCompareFunc onFail)4438 void checkEqual_VkPhysicalDeviceExternalFenceInfo(const VkPhysicalDeviceExternalFenceInfo* a,
4439 const VkPhysicalDeviceExternalFenceInfo* b,
4440 OnFailCompareFunc onFail) {
4441 if (!((a->sType) == (b->sType))) {
4442 onFail("a->sType (Error: Value not equal)");
4443 };
4444 if (a->pNext) {
4445 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4446 }
4447 if (!((a->handleType) == (b->handleType))) {
4448 onFail("a->handleType (Error: Value not equal)");
4449 };
4450 }
4451
checkEqual_VkExternalFenceProperties(const VkExternalFenceProperties * a,const VkExternalFenceProperties * b,OnFailCompareFunc onFail)4452 void checkEqual_VkExternalFenceProperties(const VkExternalFenceProperties* a,
4453 const VkExternalFenceProperties* b,
4454 OnFailCompareFunc onFail) {
4455 if (!((a->sType) == (b->sType))) {
4456 onFail("a->sType (Error: Value not equal)");
4457 };
4458 if (a->pNext) {
4459 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4460 }
4461 if (!((a->exportFromImportedHandleTypes) == (b->exportFromImportedHandleTypes))) {
4462 onFail("a->exportFromImportedHandleTypes (Error: Value not equal)");
4463 };
4464 if (!((a->compatibleHandleTypes) == (b->compatibleHandleTypes))) {
4465 onFail("a->compatibleHandleTypes (Error: Value not equal)");
4466 };
4467 if (!((a->externalFenceFeatures) == (b->externalFenceFeatures))) {
4468 onFail("a->externalFenceFeatures (Error: Value not equal)");
4469 };
4470 }
4471
checkEqual_VkExportFenceCreateInfo(const VkExportFenceCreateInfo * a,const VkExportFenceCreateInfo * b,OnFailCompareFunc onFail)4472 void checkEqual_VkExportFenceCreateInfo(const VkExportFenceCreateInfo* a,
4473 const VkExportFenceCreateInfo* b,
4474 OnFailCompareFunc onFail) {
4475 if (!((a->sType) == (b->sType))) {
4476 onFail("a->sType (Error: Value not equal)");
4477 };
4478 if (a->pNext) {
4479 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4480 }
4481 if (!((a->handleTypes) == (b->handleTypes))) {
4482 onFail("a->handleTypes (Error: Value not equal)");
4483 };
4484 }
4485
checkEqual_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo * a,const VkExportSemaphoreCreateInfo * b,OnFailCompareFunc onFail)4486 void checkEqual_VkExportSemaphoreCreateInfo(const VkExportSemaphoreCreateInfo* a,
4487 const VkExportSemaphoreCreateInfo* b,
4488 OnFailCompareFunc onFail) {
4489 if (!((a->sType) == (b->sType))) {
4490 onFail("a->sType (Error: Value not equal)");
4491 };
4492 if (a->pNext) {
4493 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4494 }
4495 if (!((a->handleTypes) == (b->handleTypes))) {
4496 onFail("a->handleTypes (Error: Value not equal)");
4497 };
4498 }
4499
checkEqual_VkPhysicalDeviceExternalSemaphoreInfo(const VkPhysicalDeviceExternalSemaphoreInfo * a,const VkPhysicalDeviceExternalSemaphoreInfo * b,OnFailCompareFunc onFail)4500 void checkEqual_VkPhysicalDeviceExternalSemaphoreInfo(
4501 const VkPhysicalDeviceExternalSemaphoreInfo* a, const VkPhysicalDeviceExternalSemaphoreInfo* b,
4502 OnFailCompareFunc onFail) {
4503 if (!((a->sType) == (b->sType))) {
4504 onFail("a->sType (Error: Value not equal)");
4505 };
4506 if (a->pNext) {
4507 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4508 }
4509 if (!((a->handleType) == (b->handleType))) {
4510 onFail("a->handleType (Error: Value not equal)");
4511 };
4512 }
4513
checkEqual_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties * a,const VkExternalSemaphoreProperties * b,OnFailCompareFunc onFail)4514 void checkEqual_VkExternalSemaphoreProperties(const VkExternalSemaphoreProperties* a,
4515 const VkExternalSemaphoreProperties* b,
4516 OnFailCompareFunc onFail) {
4517 if (!((a->sType) == (b->sType))) {
4518 onFail("a->sType (Error: Value not equal)");
4519 };
4520 if (a->pNext) {
4521 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4522 }
4523 if (!((a->exportFromImportedHandleTypes) == (b->exportFromImportedHandleTypes))) {
4524 onFail("a->exportFromImportedHandleTypes (Error: Value not equal)");
4525 };
4526 if (!((a->compatibleHandleTypes) == (b->compatibleHandleTypes))) {
4527 onFail("a->compatibleHandleTypes (Error: Value not equal)");
4528 };
4529 if (!((a->externalSemaphoreFeatures) == (b->externalSemaphoreFeatures))) {
4530 onFail("a->externalSemaphoreFeatures (Error: Value not equal)");
4531 };
4532 }
4533
checkEqual_VkPhysicalDeviceMaintenance3Properties(const VkPhysicalDeviceMaintenance3Properties * a,const VkPhysicalDeviceMaintenance3Properties * b,OnFailCompareFunc onFail)4534 void checkEqual_VkPhysicalDeviceMaintenance3Properties(
4535 const VkPhysicalDeviceMaintenance3Properties* a,
4536 const VkPhysicalDeviceMaintenance3Properties* b, OnFailCompareFunc onFail) {
4537 if (!((a->sType) == (b->sType))) {
4538 onFail("a->sType (Error: Value not equal)");
4539 };
4540 if (a->pNext) {
4541 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4542 }
4543 if (!((a->maxPerSetDescriptors) == (b->maxPerSetDescriptors))) {
4544 onFail("a->maxPerSetDescriptors (Error: Value not equal)");
4545 };
4546 if (!((a->maxMemoryAllocationSize) == (b->maxMemoryAllocationSize))) {
4547 onFail("a->maxMemoryAllocationSize (Error: Value not equal)");
4548 };
4549 }
4550
checkEqual_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport * a,const VkDescriptorSetLayoutSupport * b,OnFailCompareFunc onFail)4551 void checkEqual_VkDescriptorSetLayoutSupport(const VkDescriptorSetLayoutSupport* a,
4552 const VkDescriptorSetLayoutSupport* b,
4553 OnFailCompareFunc onFail) {
4554 if (!((a->sType) == (b->sType))) {
4555 onFail("a->sType (Error: Value not equal)");
4556 };
4557 if (a->pNext) {
4558 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4559 }
4560 if (!((a->supported) == (b->supported))) {
4561 onFail("a->supported (Error: Value not equal)");
4562 };
4563 }
4564
checkEqual_VkPhysicalDeviceShaderDrawParametersFeatures(const VkPhysicalDeviceShaderDrawParametersFeatures * a,const VkPhysicalDeviceShaderDrawParametersFeatures * b,OnFailCompareFunc onFail)4565 void checkEqual_VkPhysicalDeviceShaderDrawParametersFeatures(
4566 const VkPhysicalDeviceShaderDrawParametersFeatures* a,
4567 const VkPhysicalDeviceShaderDrawParametersFeatures* b, OnFailCompareFunc onFail) {
4568 if (!((a->sType) == (b->sType))) {
4569 onFail("a->sType (Error: Value not equal)");
4570 };
4571 if (a->pNext) {
4572 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4573 }
4574 if (!((a->shaderDrawParameters) == (b->shaderDrawParameters))) {
4575 onFail("a->shaderDrawParameters (Error: Value not equal)");
4576 };
4577 }
4578
4579 #endif
4580 #ifdef VK_VERSION_1_2
checkEqual_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features * a,const VkPhysicalDeviceVulkan11Features * b,OnFailCompareFunc onFail)4581 void checkEqual_VkPhysicalDeviceVulkan11Features(const VkPhysicalDeviceVulkan11Features* a,
4582 const VkPhysicalDeviceVulkan11Features* b,
4583 OnFailCompareFunc onFail) {
4584 if (!((a->sType) == (b->sType))) {
4585 onFail("a->sType (Error: Value not equal)");
4586 };
4587 if (a->pNext) {
4588 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4589 }
4590 if (!((a->storageBuffer16BitAccess) == (b->storageBuffer16BitAccess))) {
4591 onFail("a->storageBuffer16BitAccess (Error: Value not equal)");
4592 };
4593 if (!((a->uniformAndStorageBuffer16BitAccess) == (b->uniformAndStorageBuffer16BitAccess))) {
4594 onFail("a->uniformAndStorageBuffer16BitAccess (Error: Value not equal)");
4595 };
4596 if (!((a->storagePushConstant16) == (b->storagePushConstant16))) {
4597 onFail("a->storagePushConstant16 (Error: Value not equal)");
4598 };
4599 if (!((a->storageInputOutput16) == (b->storageInputOutput16))) {
4600 onFail("a->storageInputOutput16 (Error: Value not equal)");
4601 };
4602 if (!((a->multiview) == (b->multiview))) {
4603 onFail("a->multiview (Error: Value not equal)");
4604 };
4605 if (!((a->multiviewGeometryShader) == (b->multiviewGeometryShader))) {
4606 onFail("a->multiviewGeometryShader (Error: Value not equal)");
4607 };
4608 if (!((a->multiviewTessellationShader) == (b->multiviewTessellationShader))) {
4609 onFail("a->multiviewTessellationShader (Error: Value not equal)");
4610 };
4611 if (!((a->variablePointersStorageBuffer) == (b->variablePointersStorageBuffer))) {
4612 onFail("a->variablePointersStorageBuffer (Error: Value not equal)");
4613 };
4614 if (!((a->variablePointers) == (b->variablePointers))) {
4615 onFail("a->variablePointers (Error: Value not equal)");
4616 };
4617 if (!((a->protectedMemory) == (b->protectedMemory))) {
4618 onFail("a->protectedMemory (Error: Value not equal)");
4619 };
4620 if (!((a->samplerYcbcrConversion) == (b->samplerYcbcrConversion))) {
4621 onFail("a->samplerYcbcrConversion (Error: Value not equal)");
4622 };
4623 if (!((a->shaderDrawParameters) == (b->shaderDrawParameters))) {
4624 onFail("a->shaderDrawParameters (Error: Value not equal)");
4625 };
4626 }
4627
checkEqual_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties * a,const VkPhysicalDeviceVulkan11Properties * b,OnFailCompareFunc onFail)4628 void checkEqual_VkPhysicalDeviceVulkan11Properties(const VkPhysicalDeviceVulkan11Properties* a,
4629 const VkPhysicalDeviceVulkan11Properties* b,
4630 OnFailCompareFunc onFail) {
4631 if (!((a->sType) == (b->sType))) {
4632 onFail("a->sType (Error: Value not equal)");
4633 };
4634 if (a->pNext) {
4635 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4636 }
4637 if (!((memcmp(a->deviceUUID, b->deviceUUID, VK_UUID_SIZE * sizeof(uint8_t)) == 0))) {
4638 onFail("a->deviceUUID (Error: Unequal static array)");
4639 };
4640 if (!((memcmp(a->driverUUID, b->driverUUID, VK_UUID_SIZE * sizeof(uint8_t)) == 0))) {
4641 onFail("a->driverUUID (Error: Unequal static array)");
4642 };
4643 if (!((memcmp(a->deviceLUID, b->deviceLUID, VK_LUID_SIZE * sizeof(uint8_t)) == 0))) {
4644 onFail("a->deviceLUID (Error: Unequal static array)");
4645 };
4646 if (!((a->deviceNodeMask) == (b->deviceNodeMask))) {
4647 onFail("a->deviceNodeMask (Error: Value not equal)");
4648 };
4649 if (!((a->deviceLUIDValid) == (b->deviceLUIDValid))) {
4650 onFail("a->deviceLUIDValid (Error: Value not equal)");
4651 };
4652 if (!((a->subgroupSize) == (b->subgroupSize))) {
4653 onFail("a->subgroupSize (Error: Value not equal)");
4654 };
4655 if (!((a->subgroupSupportedStages) == (b->subgroupSupportedStages))) {
4656 onFail("a->subgroupSupportedStages (Error: Value not equal)");
4657 };
4658 if (!((a->subgroupSupportedOperations) == (b->subgroupSupportedOperations))) {
4659 onFail("a->subgroupSupportedOperations (Error: Value not equal)");
4660 };
4661 if (!((a->subgroupQuadOperationsInAllStages) == (b->subgroupQuadOperationsInAllStages))) {
4662 onFail("a->subgroupQuadOperationsInAllStages (Error: Value not equal)");
4663 };
4664 if (!((a->pointClippingBehavior) == (b->pointClippingBehavior))) {
4665 onFail("a->pointClippingBehavior (Error: Value not equal)");
4666 };
4667 if (!((a->maxMultiviewViewCount) == (b->maxMultiviewViewCount))) {
4668 onFail("a->maxMultiviewViewCount (Error: Value not equal)");
4669 };
4670 if (!((a->maxMultiviewInstanceIndex) == (b->maxMultiviewInstanceIndex))) {
4671 onFail("a->maxMultiviewInstanceIndex (Error: Value not equal)");
4672 };
4673 if (!((a->protectedNoFault) == (b->protectedNoFault))) {
4674 onFail("a->protectedNoFault (Error: Value not equal)");
4675 };
4676 if (!((a->maxPerSetDescriptors) == (b->maxPerSetDescriptors))) {
4677 onFail("a->maxPerSetDescriptors (Error: Value not equal)");
4678 };
4679 if (!((a->maxMemoryAllocationSize) == (b->maxMemoryAllocationSize))) {
4680 onFail("a->maxMemoryAllocationSize (Error: Value not equal)");
4681 };
4682 }
4683
checkEqual_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features * a,const VkPhysicalDeviceVulkan12Features * b,OnFailCompareFunc onFail)4684 void checkEqual_VkPhysicalDeviceVulkan12Features(const VkPhysicalDeviceVulkan12Features* a,
4685 const VkPhysicalDeviceVulkan12Features* b,
4686 OnFailCompareFunc onFail) {
4687 if (!((a->sType) == (b->sType))) {
4688 onFail("a->sType (Error: Value not equal)");
4689 };
4690 if (a->pNext) {
4691 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4692 }
4693 if (!((a->samplerMirrorClampToEdge) == (b->samplerMirrorClampToEdge))) {
4694 onFail("a->samplerMirrorClampToEdge (Error: Value not equal)");
4695 };
4696 if (!((a->drawIndirectCount) == (b->drawIndirectCount))) {
4697 onFail("a->drawIndirectCount (Error: Value not equal)");
4698 };
4699 if (!((a->storageBuffer8BitAccess) == (b->storageBuffer8BitAccess))) {
4700 onFail("a->storageBuffer8BitAccess (Error: Value not equal)");
4701 };
4702 if (!((a->uniformAndStorageBuffer8BitAccess) == (b->uniformAndStorageBuffer8BitAccess))) {
4703 onFail("a->uniformAndStorageBuffer8BitAccess (Error: Value not equal)");
4704 };
4705 if (!((a->storagePushConstant8) == (b->storagePushConstant8))) {
4706 onFail("a->storagePushConstant8 (Error: Value not equal)");
4707 };
4708 if (!((a->shaderBufferInt64Atomics) == (b->shaderBufferInt64Atomics))) {
4709 onFail("a->shaderBufferInt64Atomics (Error: Value not equal)");
4710 };
4711 if (!((a->shaderSharedInt64Atomics) == (b->shaderSharedInt64Atomics))) {
4712 onFail("a->shaderSharedInt64Atomics (Error: Value not equal)");
4713 };
4714 if (!((a->shaderFloat16) == (b->shaderFloat16))) {
4715 onFail("a->shaderFloat16 (Error: Value not equal)");
4716 };
4717 if (!((a->shaderInt8) == (b->shaderInt8))) {
4718 onFail("a->shaderInt8 (Error: Value not equal)");
4719 };
4720 if (!((a->descriptorIndexing) == (b->descriptorIndexing))) {
4721 onFail("a->descriptorIndexing (Error: Value not equal)");
4722 };
4723 if (!((a->shaderInputAttachmentArrayDynamicIndexing) ==
4724 (b->shaderInputAttachmentArrayDynamicIndexing))) {
4725 onFail("a->shaderInputAttachmentArrayDynamicIndexing (Error: Value not equal)");
4726 };
4727 if (!((a->shaderUniformTexelBufferArrayDynamicIndexing) ==
4728 (b->shaderUniformTexelBufferArrayDynamicIndexing))) {
4729 onFail("a->shaderUniformTexelBufferArrayDynamicIndexing (Error: Value not equal)");
4730 };
4731 if (!((a->shaderStorageTexelBufferArrayDynamicIndexing) ==
4732 (b->shaderStorageTexelBufferArrayDynamicIndexing))) {
4733 onFail("a->shaderStorageTexelBufferArrayDynamicIndexing (Error: Value not equal)");
4734 };
4735 if (!((a->shaderUniformBufferArrayNonUniformIndexing) ==
4736 (b->shaderUniformBufferArrayNonUniformIndexing))) {
4737 onFail("a->shaderUniformBufferArrayNonUniformIndexing (Error: Value not equal)");
4738 };
4739 if (!((a->shaderSampledImageArrayNonUniformIndexing) ==
4740 (b->shaderSampledImageArrayNonUniformIndexing))) {
4741 onFail("a->shaderSampledImageArrayNonUniformIndexing (Error: Value not equal)");
4742 };
4743 if (!((a->shaderStorageBufferArrayNonUniformIndexing) ==
4744 (b->shaderStorageBufferArrayNonUniformIndexing))) {
4745 onFail("a->shaderStorageBufferArrayNonUniformIndexing (Error: Value not equal)");
4746 };
4747 if (!((a->shaderStorageImageArrayNonUniformIndexing) ==
4748 (b->shaderStorageImageArrayNonUniformIndexing))) {
4749 onFail("a->shaderStorageImageArrayNonUniformIndexing (Error: Value not equal)");
4750 };
4751 if (!((a->shaderInputAttachmentArrayNonUniformIndexing) ==
4752 (b->shaderInputAttachmentArrayNonUniformIndexing))) {
4753 onFail("a->shaderInputAttachmentArrayNonUniformIndexing (Error: Value not equal)");
4754 };
4755 if (!((a->shaderUniformTexelBufferArrayNonUniformIndexing) ==
4756 (b->shaderUniformTexelBufferArrayNonUniformIndexing))) {
4757 onFail("a->shaderUniformTexelBufferArrayNonUniformIndexing (Error: Value not equal)");
4758 };
4759 if (!((a->shaderStorageTexelBufferArrayNonUniformIndexing) ==
4760 (b->shaderStorageTexelBufferArrayNonUniformIndexing))) {
4761 onFail("a->shaderStorageTexelBufferArrayNonUniformIndexing (Error: Value not equal)");
4762 };
4763 if (!((a->descriptorBindingUniformBufferUpdateAfterBind) ==
4764 (b->descriptorBindingUniformBufferUpdateAfterBind))) {
4765 onFail("a->descriptorBindingUniformBufferUpdateAfterBind (Error: Value not equal)");
4766 };
4767 if (!((a->descriptorBindingSampledImageUpdateAfterBind) ==
4768 (b->descriptorBindingSampledImageUpdateAfterBind))) {
4769 onFail("a->descriptorBindingSampledImageUpdateAfterBind (Error: Value not equal)");
4770 };
4771 if (!((a->descriptorBindingStorageImageUpdateAfterBind) ==
4772 (b->descriptorBindingStorageImageUpdateAfterBind))) {
4773 onFail("a->descriptorBindingStorageImageUpdateAfterBind (Error: Value not equal)");
4774 };
4775 if (!((a->descriptorBindingStorageBufferUpdateAfterBind) ==
4776 (b->descriptorBindingStorageBufferUpdateAfterBind))) {
4777 onFail("a->descriptorBindingStorageBufferUpdateAfterBind (Error: Value not equal)");
4778 };
4779 if (!((a->descriptorBindingUniformTexelBufferUpdateAfterBind) ==
4780 (b->descriptorBindingUniformTexelBufferUpdateAfterBind))) {
4781 onFail("a->descriptorBindingUniformTexelBufferUpdateAfterBind (Error: Value not equal)");
4782 };
4783 if (!((a->descriptorBindingStorageTexelBufferUpdateAfterBind) ==
4784 (b->descriptorBindingStorageTexelBufferUpdateAfterBind))) {
4785 onFail("a->descriptorBindingStorageTexelBufferUpdateAfterBind (Error: Value not equal)");
4786 };
4787 if (!((a->descriptorBindingUpdateUnusedWhilePending) ==
4788 (b->descriptorBindingUpdateUnusedWhilePending))) {
4789 onFail("a->descriptorBindingUpdateUnusedWhilePending (Error: Value not equal)");
4790 };
4791 if (!((a->descriptorBindingPartiallyBound) == (b->descriptorBindingPartiallyBound))) {
4792 onFail("a->descriptorBindingPartiallyBound (Error: Value not equal)");
4793 };
4794 if (!((a->descriptorBindingVariableDescriptorCount) ==
4795 (b->descriptorBindingVariableDescriptorCount))) {
4796 onFail("a->descriptorBindingVariableDescriptorCount (Error: Value not equal)");
4797 };
4798 if (!((a->runtimeDescriptorArray) == (b->runtimeDescriptorArray))) {
4799 onFail("a->runtimeDescriptorArray (Error: Value not equal)");
4800 };
4801 if (!((a->samplerFilterMinmax) == (b->samplerFilterMinmax))) {
4802 onFail("a->samplerFilterMinmax (Error: Value not equal)");
4803 };
4804 if (!((a->scalarBlockLayout) == (b->scalarBlockLayout))) {
4805 onFail("a->scalarBlockLayout (Error: Value not equal)");
4806 };
4807 if (!((a->imagelessFramebuffer) == (b->imagelessFramebuffer))) {
4808 onFail("a->imagelessFramebuffer (Error: Value not equal)");
4809 };
4810 if (!((a->uniformBufferStandardLayout) == (b->uniformBufferStandardLayout))) {
4811 onFail("a->uniformBufferStandardLayout (Error: Value not equal)");
4812 };
4813 if (!((a->shaderSubgroupExtendedTypes) == (b->shaderSubgroupExtendedTypes))) {
4814 onFail("a->shaderSubgroupExtendedTypes (Error: Value not equal)");
4815 };
4816 if (!((a->separateDepthStencilLayouts) == (b->separateDepthStencilLayouts))) {
4817 onFail("a->separateDepthStencilLayouts (Error: Value not equal)");
4818 };
4819 if (!((a->hostQueryReset) == (b->hostQueryReset))) {
4820 onFail("a->hostQueryReset (Error: Value not equal)");
4821 };
4822 if (!((a->timelineSemaphore) == (b->timelineSemaphore))) {
4823 onFail("a->timelineSemaphore (Error: Value not equal)");
4824 };
4825 if (!((a->bufferDeviceAddress) == (b->bufferDeviceAddress))) {
4826 onFail("a->bufferDeviceAddress (Error: Value not equal)");
4827 };
4828 if (!((a->bufferDeviceAddressCaptureReplay) == (b->bufferDeviceAddressCaptureReplay))) {
4829 onFail("a->bufferDeviceAddressCaptureReplay (Error: Value not equal)");
4830 };
4831 if (!((a->bufferDeviceAddressMultiDevice) == (b->bufferDeviceAddressMultiDevice))) {
4832 onFail("a->bufferDeviceAddressMultiDevice (Error: Value not equal)");
4833 };
4834 if (!((a->vulkanMemoryModel) == (b->vulkanMemoryModel))) {
4835 onFail("a->vulkanMemoryModel (Error: Value not equal)");
4836 };
4837 if (!((a->vulkanMemoryModelDeviceScope) == (b->vulkanMemoryModelDeviceScope))) {
4838 onFail("a->vulkanMemoryModelDeviceScope (Error: Value not equal)");
4839 };
4840 if (!((a->vulkanMemoryModelAvailabilityVisibilityChains) ==
4841 (b->vulkanMemoryModelAvailabilityVisibilityChains))) {
4842 onFail("a->vulkanMemoryModelAvailabilityVisibilityChains (Error: Value not equal)");
4843 };
4844 if (!((a->shaderOutputViewportIndex) == (b->shaderOutputViewportIndex))) {
4845 onFail("a->shaderOutputViewportIndex (Error: Value not equal)");
4846 };
4847 if (!((a->shaderOutputLayer) == (b->shaderOutputLayer))) {
4848 onFail("a->shaderOutputLayer (Error: Value not equal)");
4849 };
4850 if (!((a->subgroupBroadcastDynamicId) == (b->subgroupBroadcastDynamicId))) {
4851 onFail("a->subgroupBroadcastDynamicId (Error: Value not equal)");
4852 };
4853 }
4854
checkEqual_VkConformanceVersion(const VkConformanceVersion * a,const VkConformanceVersion * b,OnFailCompareFunc onFail)4855 void checkEqual_VkConformanceVersion(const VkConformanceVersion* a, const VkConformanceVersion* b,
4856 OnFailCompareFunc onFail) {
4857 if (!((a->major) == (b->major))) {
4858 onFail("a->major (Error: Value not equal)");
4859 };
4860 if (!((a->minor) == (b->minor))) {
4861 onFail("a->minor (Error: Value not equal)");
4862 };
4863 if (!((a->subminor) == (b->subminor))) {
4864 onFail("a->subminor (Error: Value not equal)");
4865 };
4866 if (!((a->patch) == (b->patch))) {
4867 onFail("a->patch (Error: Value not equal)");
4868 };
4869 }
4870
checkEqual_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties * a,const VkPhysicalDeviceVulkan12Properties * b,OnFailCompareFunc onFail)4871 void checkEqual_VkPhysicalDeviceVulkan12Properties(const VkPhysicalDeviceVulkan12Properties* a,
4872 const VkPhysicalDeviceVulkan12Properties* b,
4873 OnFailCompareFunc onFail) {
4874 if (!((a->sType) == (b->sType))) {
4875 onFail("a->sType (Error: Value not equal)");
4876 };
4877 if (a->pNext) {
4878 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
4879 }
4880 if (!((a->driverID) == (b->driverID))) {
4881 onFail("a->driverID (Error: Value not equal)");
4882 };
4883 if (!((memcmp(a->driverName, b->driverName, VK_MAX_DRIVER_NAME_SIZE * sizeof(char)) == 0))) {
4884 onFail("a->driverName (Error: Unequal static array)");
4885 };
4886 if (!((memcmp(a->driverInfo, b->driverInfo, VK_MAX_DRIVER_INFO_SIZE * sizeof(char)) == 0))) {
4887 onFail("a->driverInfo (Error: Unequal static array)");
4888 };
4889 checkEqual_VkConformanceVersion(&a->conformanceVersion, &b->conformanceVersion, onFail);
4890 if (!((a->denormBehaviorIndependence) == (b->denormBehaviorIndependence))) {
4891 onFail("a->denormBehaviorIndependence (Error: Value not equal)");
4892 };
4893 if (!((a->roundingModeIndependence) == (b->roundingModeIndependence))) {
4894 onFail("a->roundingModeIndependence (Error: Value not equal)");
4895 };
4896 if (!((a->shaderSignedZeroInfNanPreserveFloat16) ==
4897 (b->shaderSignedZeroInfNanPreserveFloat16))) {
4898 onFail("a->shaderSignedZeroInfNanPreserveFloat16 (Error: Value not equal)");
4899 };
4900 if (!((a->shaderSignedZeroInfNanPreserveFloat32) ==
4901 (b->shaderSignedZeroInfNanPreserveFloat32))) {
4902 onFail("a->shaderSignedZeroInfNanPreserveFloat32 (Error: Value not equal)");
4903 };
4904 if (!((a->shaderSignedZeroInfNanPreserveFloat64) ==
4905 (b->shaderSignedZeroInfNanPreserveFloat64))) {
4906 onFail("a->shaderSignedZeroInfNanPreserveFloat64 (Error: Value not equal)");
4907 };
4908 if (!((a->shaderDenormPreserveFloat16) == (b->shaderDenormPreserveFloat16))) {
4909 onFail("a->shaderDenormPreserveFloat16 (Error: Value not equal)");
4910 };
4911 if (!((a->shaderDenormPreserveFloat32) == (b->shaderDenormPreserveFloat32))) {
4912 onFail("a->shaderDenormPreserveFloat32 (Error: Value not equal)");
4913 };
4914 if (!((a->shaderDenormPreserveFloat64) == (b->shaderDenormPreserveFloat64))) {
4915 onFail("a->shaderDenormPreserveFloat64 (Error: Value not equal)");
4916 };
4917 if (!((a->shaderDenormFlushToZeroFloat16) == (b->shaderDenormFlushToZeroFloat16))) {
4918 onFail("a->shaderDenormFlushToZeroFloat16 (Error: Value not equal)");
4919 };
4920 if (!((a->shaderDenormFlushToZeroFloat32) == (b->shaderDenormFlushToZeroFloat32))) {
4921 onFail("a->shaderDenormFlushToZeroFloat32 (Error: Value not equal)");
4922 };
4923 if (!((a->shaderDenormFlushToZeroFloat64) == (b->shaderDenormFlushToZeroFloat64))) {
4924 onFail("a->shaderDenormFlushToZeroFloat64 (Error: Value not equal)");
4925 };
4926 if (!((a->shaderRoundingModeRTEFloat16) == (b->shaderRoundingModeRTEFloat16))) {
4927 onFail("a->shaderRoundingModeRTEFloat16 (Error: Value not equal)");
4928 };
4929 if (!((a->shaderRoundingModeRTEFloat32) == (b->shaderRoundingModeRTEFloat32))) {
4930 onFail("a->shaderRoundingModeRTEFloat32 (Error: Value not equal)");
4931 };
4932 if (!((a->shaderRoundingModeRTEFloat64) == (b->shaderRoundingModeRTEFloat64))) {
4933 onFail("a->shaderRoundingModeRTEFloat64 (Error: Value not equal)");
4934 };
4935 if (!((a->shaderRoundingModeRTZFloat16) == (b->shaderRoundingModeRTZFloat16))) {
4936 onFail("a->shaderRoundingModeRTZFloat16 (Error: Value not equal)");
4937 };
4938 if (!((a->shaderRoundingModeRTZFloat32) == (b->shaderRoundingModeRTZFloat32))) {
4939 onFail("a->shaderRoundingModeRTZFloat32 (Error: Value not equal)");
4940 };
4941 if (!((a->shaderRoundingModeRTZFloat64) == (b->shaderRoundingModeRTZFloat64))) {
4942 onFail("a->shaderRoundingModeRTZFloat64 (Error: Value not equal)");
4943 };
4944 if (!((a->maxUpdateAfterBindDescriptorsInAllPools) ==
4945 (b->maxUpdateAfterBindDescriptorsInAllPools))) {
4946 onFail("a->maxUpdateAfterBindDescriptorsInAllPools (Error: Value not equal)");
4947 };
4948 if (!((a->shaderUniformBufferArrayNonUniformIndexingNative) ==
4949 (b->shaderUniformBufferArrayNonUniformIndexingNative))) {
4950 onFail("a->shaderUniformBufferArrayNonUniformIndexingNative (Error: Value not equal)");
4951 };
4952 if (!((a->shaderSampledImageArrayNonUniformIndexingNative) ==
4953 (b->shaderSampledImageArrayNonUniformIndexingNative))) {
4954 onFail("a->shaderSampledImageArrayNonUniformIndexingNative (Error: Value not equal)");
4955 };
4956 if (!((a->shaderStorageBufferArrayNonUniformIndexingNative) ==
4957 (b->shaderStorageBufferArrayNonUniformIndexingNative))) {
4958 onFail("a->shaderStorageBufferArrayNonUniformIndexingNative (Error: Value not equal)");
4959 };
4960 if (!((a->shaderStorageImageArrayNonUniformIndexingNative) ==
4961 (b->shaderStorageImageArrayNonUniformIndexingNative))) {
4962 onFail("a->shaderStorageImageArrayNonUniformIndexingNative (Error: Value not equal)");
4963 };
4964 if (!((a->shaderInputAttachmentArrayNonUniformIndexingNative) ==
4965 (b->shaderInputAttachmentArrayNonUniformIndexingNative))) {
4966 onFail("a->shaderInputAttachmentArrayNonUniformIndexingNative (Error: Value not equal)");
4967 };
4968 if (!((a->robustBufferAccessUpdateAfterBind) == (b->robustBufferAccessUpdateAfterBind))) {
4969 onFail("a->robustBufferAccessUpdateAfterBind (Error: Value not equal)");
4970 };
4971 if (!((a->quadDivergentImplicitLod) == (b->quadDivergentImplicitLod))) {
4972 onFail("a->quadDivergentImplicitLod (Error: Value not equal)");
4973 };
4974 if (!((a->maxPerStageDescriptorUpdateAfterBindSamplers) ==
4975 (b->maxPerStageDescriptorUpdateAfterBindSamplers))) {
4976 onFail("a->maxPerStageDescriptorUpdateAfterBindSamplers (Error: Value not equal)");
4977 };
4978 if (!((a->maxPerStageDescriptorUpdateAfterBindUniformBuffers) ==
4979 (b->maxPerStageDescriptorUpdateAfterBindUniformBuffers))) {
4980 onFail("a->maxPerStageDescriptorUpdateAfterBindUniformBuffers (Error: Value not equal)");
4981 };
4982 if (!((a->maxPerStageDescriptorUpdateAfterBindStorageBuffers) ==
4983 (b->maxPerStageDescriptorUpdateAfterBindStorageBuffers))) {
4984 onFail("a->maxPerStageDescriptorUpdateAfterBindStorageBuffers (Error: Value not equal)");
4985 };
4986 if (!((a->maxPerStageDescriptorUpdateAfterBindSampledImages) ==
4987 (b->maxPerStageDescriptorUpdateAfterBindSampledImages))) {
4988 onFail("a->maxPerStageDescriptorUpdateAfterBindSampledImages (Error: Value not equal)");
4989 };
4990 if (!((a->maxPerStageDescriptorUpdateAfterBindStorageImages) ==
4991 (b->maxPerStageDescriptorUpdateAfterBindStorageImages))) {
4992 onFail("a->maxPerStageDescriptorUpdateAfterBindStorageImages (Error: Value not equal)");
4993 };
4994 if (!((a->maxPerStageDescriptorUpdateAfterBindInputAttachments) ==
4995 (b->maxPerStageDescriptorUpdateAfterBindInputAttachments))) {
4996 onFail("a->maxPerStageDescriptorUpdateAfterBindInputAttachments (Error: Value not equal)");
4997 };
4998 if (!((a->maxPerStageUpdateAfterBindResources) == (b->maxPerStageUpdateAfterBindResources))) {
4999 onFail("a->maxPerStageUpdateAfterBindResources (Error: Value not equal)");
5000 };
5001 if (!((a->maxDescriptorSetUpdateAfterBindSamplers) ==
5002 (b->maxDescriptorSetUpdateAfterBindSamplers))) {
5003 onFail("a->maxDescriptorSetUpdateAfterBindSamplers (Error: Value not equal)");
5004 };
5005 if (!((a->maxDescriptorSetUpdateAfterBindUniformBuffers) ==
5006 (b->maxDescriptorSetUpdateAfterBindUniformBuffers))) {
5007 onFail("a->maxDescriptorSetUpdateAfterBindUniformBuffers (Error: Value not equal)");
5008 };
5009 if (!((a->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic) ==
5010 (b->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic))) {
5011 onFail("a->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic (Error: Value not equal)");
5012 };
5013 if (!((a->maxDescriptorSetUpdateAfterBindStorageBuffers) ==
5014 (b->maxDescriptorSetUpdateAfterBindStorageBuffers))) {
5015 onFail("a->maxDescriptorSetUpdateAfterBindStorageBuffers (Error: Value not equal)");
5016 };
5017 if (!((a->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic) ==
5018 (b->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic))) {
5019 onFail("a->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic (Error: Value not equal)");
5020 };
5021 if (!((a->maxDescriptorSetUpdateAfterBindSampledImages) ==
5022 (b->maxDescriptorSetUpdateAfterBindSampledImages))) {
5023 onFail("a->maxDescriptorSetUpdateAfterBindSampledImages (Error: Value not equal)");
5024 };
5025 if (!((a->maxDescriptorSetUpdateAfterBindStorageImages) ==
5026 (b->maxDescriptorSetUpdateAfterBindStorageImages))) {
5027 onFail("a->maxDescriptorSetUpdateAfterBindStorageImages (Error: Value not equal)");
5028 };
5029 if (!((a->maxDescriptorSetUpdateAfterBindInputAttachments) ==
5030 (b->maxDescriptorSetUpdateAfterBindInputAttachments))) {
5031 onFail("a->maxDescriptorSetUpdateAfterBindInputAttachments (Error: Value not equal)");
5032 };
5033 if (!((a->supportedDepthResolveModes) == (b->supportedDepthResolveModes))) {
5034 onFail("a->supportedDepthResolveModes (Error: Value not equal)");
5035 };
5036 if (!((a->supportedStencilResolveModes) == (b->supportedStencilResolveModes))) {
5037 onFail("a->supportedStencilResolveModes (Error: Value not equal)");
5038 };
5039 if (!((a->independentResolveNone) == (b->independentResolveNone))) {
5040 onFail("a->independentResolveNone (Error: Value not equal)");
5041 };
5042 if (!((a->independentResolve) == (b->independentResolve))) {
5043 onFail("a->independentResolve (Error: Value not equal)");
5044 };
5045 if (!((a->filterMinmaxSingleComponentFormats) == (b->filterMinmaxSingleComponentFormats))) {
5046 onFail("a->filterMinmaxSingleComponentFormats (Error: Value not equal)");
5047 };
5048 if (!((a->filterMinmaxImageComponentMapping) == (b->filterMinmaxImageComponentMapping))) {
5049 onFail("a->filterMinmaxImageComponentMapping (Error: Value not equal)");
5050 };
5051 if (!((a->maxTimelineSemaphoreValueDifference) == (b->maxTimelineSemaphoreValueDifference))) {
5052 onFail("a->maxTimelineSemaphoreValueDifference (Error: Value not equal)");
5053 };
5054 if (!((a->framebufferIntegerColorSampleCounts) == (b->framebufferIntegerColorSampleCounts))) {
5055 onFail("a->framebufferIntegerColorSampleCounts (Error: Value not equal)");
5056 };
5057 }
5058
checkEqual_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo * a,const VkImageFormatListCreateInfo * b,OnFailCompareFunc onFail)5059 void checkEqual_VkImageFormatListCreateInfo(const VkImageFormatListCreateInfo* a,
5060 const VkImageFormatListCreateInfo* b,
5061 OnFailCompareFunc onFail) {
5062 if (!((a->sType) == (b->sType))) {
5063 onFail("a->sType (Error: Value not equal)");
5064 };
5065 if (a->pNext) {
5066 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5067 }
5068 if (!((a->viewFormatCount) == (b->viewFormatCount))) {
5069 onFail("a->viewFormatCount (Error: Value not equal)");
5070 };
5071 if (!((a->viewFormatCount) == (b->viewFormatCount))) {
5072 onFail("a->pViewFormats (Error: Lengths not equal)");
5073 };
5074 if (!((memcmp(a->pViewFormats, b->pViewFormats, a->viewFormatCount * sizeof(const VkFormat)) ==
5075 0))) {
5076 onFail("a->pViewFormats (Error: Unequal dyn array)");
5077 };
5078 }
5079
checkEqual_VkAttachmentDescription2(const VkAttachmentDescription2 * a,const VkAttachmentDescription2 * b,OnFailCompareFunc onFail)5080 void checkEqual_VkAttachmentDescription2(const VkAttachmentDescription2* a,
5081 const VkAttachmentDescription2* b,
5082 OnFailCompareFunc onFail) {
5083 if (!((a->sType) == (b->sType))) {
5084 onFail("a->sType (Error: Value not equal)");
5085 };
5086 if (a->pNext) {
5087 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5088 }
5089 if (!((a->flags) == (b->flags))) {
5090 onFail("a->flags (Error: Value not equal)");
5091 };
5092 if (!((a->format) == (b->format))) {
5093 onFail("a->format (Error: Value not equal)");
5094 };
5095 if (!((a->samples) == (b->samples))) {
5096 onFail("a->samples (Error: Value not equal)");
5097 };
5098 if (!((a->loadOp) == (b->loadOp))) {
5099 onFail("a->loadOp (Error: Value not equal)");
5100 };
5101 if (!((a->storeOp) == (b->storeOp))) {
5102 onFail("a->storeOp (Error: Value not equal)");
5103 };
5104 if (!((a->stencilLoadOp) == (b->stencilLoadOp))) {
5105 onFail("a->stencilLoadOp (Error: Value not equal)");
5106 };
5107 if (!((a->stencilStoreOp) == (b->stencilStoreOp))) {
5108 onFail("a->stencilStoreOp (Error: Value not equal)");
5109 };
5110 if (!((a->initialLayout) == (b->initialLayout))) {
5111 onFail("a->initialLayout (Error: Value not equal)");
5112 };
5113 if (!((a->finalLayout) == (b->finalLayout))) {
5114 onFail("a->finalLayout (Error: Value not equal)");
5115 };
5116 }
5117
checkEqual_VkAttachmentReference2(const VkAttachmentReference2 * a,const VkAttachmentReference2 * b,OnFailCompareFunc onFail)5118 void checkEqual_VkAttachmentReference2(const VkAttachmentReference2* a,
5119 const VkAttachmentReference2* b, OnFailCompareFunc onFail) {
5120 if (!((a->sType) == (b->sType))) {
5121 onFail("a->sType (Error: Value not equal)");
5122 };
5123 if (a->pNext) {
5124 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5125 }
5126 if (!((a->attachment) == (b->attachment))) {
5127 onFail("a->attachment (Error: Value not equal)");
5128 };
5129 if (!((a->layout) == (b->layout))) {
5130 onFail("a->layout (Error: Value not equal)");
5131 };
5132 if (!((a->aspectMask) == (b->aspectMask))) {
5133 onFail("a->aspectMask (Error: Value not equal)");
5134 };
5135 }
5136
checkEqual_VkSubpassDescription2(const VkSubpassDescription2 * a,const VkSubpassDescription2 * b,OnFailCompareFunc onFail)5137 void checkEqual_VkSubpassDescription2(const VkSubpassDescription2* a,
5138 const VkSubpassDescription2* b, OnFailCompareFunc onFail) {
5139 if (!((a->sType) == (b->sType))) {
5140 onFail("a->sType (Error: Value not equal)");
5141 };
5142 if (a->pNext) {
5143 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5144 }
5145 if (!((a->flags) == (b->flags))) {
5146 onFail("a->flags (Error: Value not equal)");
5147 };
5148 if (!((a->pipelineBindPoint) == (b->pipelineBindPoint))) {
5149 onFail("a->pipelineBindPoint (Error: Value not equal)");
5150 };
5151 if (!((a->viewMask) == (b->viewMask))) {
5152 onFail("a->viewMask (Error: Value not equal)");
5153 };
5154 if (!((a->inputAttachmentCount) == (b->inputAttachmentCount))) {
5155 onFail("a->inputAttachmentCount (Error: Value not equal)");
5156 };
5157 if ((a->pInputAttachments) && (b->pInputAttachments)) {
5158 if (!((a->inputAttachmentCount) == (b->inputAttachmentCount))) {
5159 onFail("a->pInputAttachments (Error: Lengths not equal)");
5160 };
5161 if ((a->inputAttachmentCount) == (b->inputAttachmentCount)) {
5162 if (a) {
5163 for (uint32_t i = 0; i < (uint32_t)a->inputAttachmentCount; ++i) {
5164 checkEqual_VkAttachmentReference2(a->pInputAttachments + i,
5165 b->pInputAttachments + i, onFail);
5166 }
5167 }
5168 }
5169 }
5170 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
5171 onFail("a->colorAttachmentCount (Error: Value not equal)");
5172 };
5173 if ((a->pColorAttachments) && (b->pColorAttachments)) {
5174 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
5175 onFail("a->pColorAttachments (Error: Lengths not equal)");
5176 };
5177 if ((a->colorAttachmentCount) == (b->colorAttachmentCount)) {
5178 if (a) {
5179 for (uint32_t i = 0; i < (uint32_t)a->colorAttachmentCount; ++i) {
5180 checkEqual_VkAttachmentReference2(a->pColorAttachments + i,
5181 b->pColorAttachments + i, onFail);
5182 }
5183 }
5184 }
5185 }
5186 if (!((!(a->pResolveAttachments) && !(b->pResolveAttachments)) ||
5187 ((a->pResolveAttachments) && (b->pResolveAttachments)))) {
5188 onFail("a->pResolveAttachments (Error: Mismatch in optional field)");
5189 };
5190 if (a->pResolveAttachments && b->pResolveAttachments) {
5191 if ((a->pResolveAttachments) && (b->pResolveAttachments)) {
5192 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
5193 onFail("a->pResolveAttachments (Error: Lengths not equal)");
5194 };
5195 if ((a->colorAttachmentCount) == (b->colorAttachmentCount)) {
5196 if (a) {
5197 for (uint32_t i = 0; i < (uint32_t)a->colorAttachmentCount; ++i) {
5198 checkEqual_VkAttachmentReference2(a->pResolveAttachments + i,
5199 b->pResolveAttachments + i, onFail);
5200 }
5201 }
5202 }
5203 }
5204 }
5205 if (!((!(a->pDepthStencilAttachment) && !(b->pDepthStencilAttachment)) ||
5206 ((a->pDepthStencilAttachment) && (b->pDepthStencilAttachment)))) {
5207 onFail("a->pDepthStencilAttachment (Error: Mismatch in optional field)");
5208 };
5209 if (a->pDepthStencilAttachment && b->pDepthStencilAttachment) {
5210 if ((a->pDepthStencilAttachment) && (b->pDepthStencilAttachment)) {
5211 checkEqual_VkAttachmentReference2(a->pDepthStencilAttachment,
5212 b->pDepthStencilAttachment, onFail);
5213 }
5214 }
5215 if (!((a->preserveAttachmentCount) == (b->preserveAttachmentCount))) {
5216 onFail("a->preserveAttachmentCount (Error: Value not equal)");
5217 };
5218 if (!((a->preserveAttachmentCount) == (b->preserveAttachmentCount))) {
5219 onFail("a->pPreserveAttachments (Error: Lengths not equal)");
5220 };
5221 if (!((memcmp(a->pPreserveAttachments, b->pPreserveAttachments,
5222 a->preserveAttachmentCount * sizeof(const uint32_t)) == 0))) {
5223 onFail("a->pPreserveAttachments (Error: Unequal dyn array)");
5224 };
5225 }
5226
checkEqual_VkSubpassDependency2(const VkSubpassDependency2 * a,const VkSubpassDependency2 * b,OnFailCompareFunc onFail)5227 void checkEqual_VkSubpassDependency2(const VkSubpassDependency2* a, const VkSubpassDependency2* b,
5228 OnFailCompareFunc onFail) {
5229 if (!((a->sType) == (b->sType))) {
5230 onFail("a->sType (Error: Value not equal)");
5231 };
5232 if (a->pNext) {
5233 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5234 }
5235 if (!((a->srcSubpass) == (b->srcSubpass))) {
5236 onFail("a->srcSubpass (Error: Value not equal)");
5237 };
5238 if (!((a->dstSubpass) == (b->dstSubpass))) {
5239 onFail("a->dstSubpass (Error: Value not equal)");
5240 };
5241 if (!((a->srcStageMask) == (b->srcStageMask))) {
5242 onFail("a->srcStageMask (Error: Value not equal)");
5243 };
5244 if (!((a->dstStageMask) == (b->dstStageMask))) {
5245 onFail("a->dstStageMask (Error: Value not equal)");
5246 };
5247 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
5248 onFail("a->srcAccessMask (Error: Value not equal)");
5249 };
5250 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
5251 onFail("a->dstAccessMask (Error: Value not equal)");
5252 };
5253 if (!((a->dependencyFlags) == (b->dependencyFlags))) {
5254 onFail("a->dependencyFlags (Error: Value not equal)");
5255 };
5256 if (!((a->viewOffset) == (b->viewOffset))) {
5257 onFail("a->viewOffset (Error: Value not equal)");
5258 };
5259 }
5260
checkEqual_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2 * a,const VkRenderPassCreateInfo2 * b,OnFailCompareFunc onFail)5261 void checkEqual_VkRenderPassCreateInfo2(const VkRenderPassCreateInfo2* a,
5262 const VkRenderPassCreateInfo2* b,
5263 OnFailCompareFunc onFail) {
5264 if (!((a->sType) == (b->sType))) {
5265 onFail("a->sType (Error: Value not equal)");
5266 };
5267 if (a->pNext) {
5268 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5269 }
5270 if (!((a->flags) == (b->flags))) {
5271 onFail("a->flags (Error: Value not equal)");
5272 };
5273 if (!((a->attachmentCount) == (b->attachmentCount))) {
5274 onFail("a->attachmentCount (Error: Value not equal)");
5275 };
5276 if ((a->pAttachments) && (b->pAttachments)) {
5277 if (!((a->attachmentCount) == (b->attachmentCount))) {
5278 onFail("a->pAttachments (Error: Lengths not equal)");
5279 };
5280 if ((a->attachmentCount) == (b->attachmentCount)) {
5281 if (a) {
5282 for (uint32_t i = 0; i < (uint32_t)a->attachmentCount; ++i) {
5283 checkEqual_VkAttachmentDescription2(a->pAttachments + i, b->pAttachments + i,
5284 onFail);
5285 }
5286 }
5287 }
5288 }
5289 if (!((a->subpassCount) == (b->subpassCount))) {
5290 onFail("a->subpassCount (Error: Value not equal)");
5291 };
5292 if ((a->pSubpasses) && (b->pSubpasses)) {
5293 if (!((a->subpassCount) == (b->subpassCount))) {
5294 onFail("a->pSubpasses (Error: Lengths not equal)");
5295 };
5296 if ((a->subpassCount) == (b->subpassCount)) {
5297 if (a) {
5298 for (uint32_t i = 0; i < (uint32_t)a->subpassCount; ++i) {
5299 checkEqual_VkSubpassDescription2(a->pSubpasses + i, b->pSubpasses + i, onFail);
5300 }
5301 }
5302 }
5303 }
5304 if (!((a->dependencyCount) == (b->dependencyCount))) {
5305 onFail("a->dependencyCount (Error: Value not equal)");
5306 };
5307 if ((a->pDependencies) && (b->pDependencies)) {
5308 if (!((a->dependencyCount) == (b->dependencyCount))) {
5309 onFail("a->pDependencies (Error: Lengths not equal)");
5310 };
5311 if ((a->dependencyCount) == (b->dependencyCount)) {
5312 if (a) {
5313 for (uint32_t i = 0; i < (uint32_t)a->dependencyCount; ++i) {
5314 checkEqual_VkSubpassDependency2(a->pDependencies + i, b->pDependencies + i,
5315 onFail);
5316 }
5317 }
5318 }
5319 }
5320 if (!((a->correlatedViewMaskCount) == (b->correlatedViewMaskCount))) {
5321 onFail("a->correlatedViewMaskCount (Error: Value not equal)");
5322 };
5323 if (!((a->correlatedViewMaskCount) == (b->correlatedViewMaskCount))) {
5324 onFail("a->pCorrelatedViewMasks (Error: Lengths not equal)");
5325 };
5326 if (!((memcmp(a->pCorrelatedViewMasks, b->pCorrelatedViewMasks,
5327 a->correlatedViewMaskCount * sizeof(const uint32_t)) == 0))) {
5328 onFail("a->pCorrelatedViewMasks (Error: Unequal dyn array)");
5329 };
5330 }
5331
checkEqual_VkSubpassBeginInfo(const VkSubpassBeginInfo * a,const VkSubpassBeginInfo * b,OnFailCompareFunc onFail)5332 void checkEqual_VkSubpassBeginInfo(const VkSubpassBeginInfo* a, const VkSubpassBeginInfo* b,
5333 OnFailCompareFunc onFail) {
5334 if (!((a->sType) == (b->sType))) {
5335 onFail("a->sType (Error: Value not equal)");
5336 };
5337 if (a->pNext) {
5338 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5339 }
5340 if (!((a->contents) == (b->contents))) {
5341 onFail("a->contents (Error: Value not equal)");
5342 };
5343 }
5344
checkEqual_VkSubpassEndInfo(const VkSubpassEndInfo * a,const VkSubpassEndInfo * b,OnFailCompareFunc onFail)5345 void checkEqual_VkSubpassEndInfo(const VkSubpassEndInfo* a, const VkSubpassEndInfo* b,
5346 OnFailCompareFunc onFail) {
5347 if (!((a->sType) == (b->sType))) {
5348 onFail("a->sType (Error: Value not equal)");
5349 };
5350 if (a->pNext) {
5351 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5352 }
5353 }
5354
checkEqual_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures * a,const VkPhysicalDevice8BitStorageFeatures * b,OnFailCompareFunc onFail)5355 void checkEqual_VkPhysicalDevice8BitStorageFeatures(const VkPhysicalDevice8BitStorageFeatures* a,
5356 const VkPhysicalDevice8BitStorageFeatures* b,
5357 OnFailCompareFunc onFail) {
5358 if (!((a->sType) == (b->sType))) {
5359 onFail("a->sType (Error: Value not equal)");
5360 };
5361 if (a->pNext) {
5362 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5363 }
5364 if (!((a->storageBuffer8BitAccess) == (b->storageBuffer8BitAccess))) {
5365 onFail("a->storageBuffer8BitAccess (Error: Value not equal)");
5366 };
5367 if (!((a->uniformAndStorageBuffer8BitAccess) == (b->uniformAndStorageBuffer8BitAccess))) {
5368 onFail("a->uniformAndStorageBuffer8BitAccess (Error: Value not equal)");
5369 };
5370 if (!((a->storagePushConstant8) == (b->storagePushConstant8))) {
5371 onFail("a->storagePushConstant8 (Error: Value not equal)");
5372 };
5373 }
5374
checkEqual_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties * a,const VkPhysicalDeviceDriverProperties * b,OnFailCompareFunc onFail)5375 void checkEqual_VkPhysicalDeviceDriverProperties(const VkPhysicalDeviceDriverProperties* a,
5376 const VkPhysicalDeviceDriverProperties* b,
5377 OnFailCompareFunc onFail) {
5378 if (!((a->sType) == (b->sType))) {
5379 onFail("a->sType (Error: Value not equal)");
5380 };
5381 if (a->pNext) {
5382 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5383 }
5384 if (!((a->driverID) == (b->driverID))) {
5385 onFail("a->driverID (Error: Value not equal)");
5386 };
5387 if (!((memcmp(a->driverName, b->driverName, VK_MAX_DRIVER_NAME_SIZE * sizeof(char)) == 0))) {
5388 onFail("a->driverName (Error: Unequal static array)");
5389 };
5390 if (!((memcmp(a->driverInfo, b->driverInfo, VK_MAX_DRIVER_INFO_SIZE * sizeof(char)) == 0))) {
5391 onFail("a->driverInfo (Error: Unequal static array)");
5392 };
5393 checkEqual_VkConformanceVersion(&a->conformanceVersion, &b->conformanceVersion, onFail);
5394 }
5395
checkEqual_VkPhysicalDeviceShaderAtomicInt64Features(const VkPhysicalDeviceShaderAtomicInt64Features * a,const VkPhysicalDeviceShaderAtomicInt64Features * b,OnFailCompareFunc onFail)5396 void checkEqual_VkPhysicalDeviceShaderAtomicInt64Features(
5397 const VkPhysicalDeviceShaderAtomicInt64Features* a,
5398 const VkPhysicalDeviceShaderAtomicInt64Features* b, OnFailCompareFunc onFail) {
5399 if (!((a->sType) == (b->sType))) {
5400 onFail("a->sType (Error: Value not equal)");
5401 };
5402 if (a->pNext) {
5403 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5404 }
5405 if (!((a->shaderBufferInt64Atomics) == (b->shaderBufferInt64Atomics))) {
5406 onFail("a->shaderBufferInt64Atomics (Error: Value not equal)");
5407 };
5408 if (!((a->shaderSharedInt64Atomics) == (b->shaderSharedInt64Atomics))) {
5409 onFail("a->shaderSharedInt64Atomics (Error: Value not equal)");
5410 };
5411 }
5412
checkEqual_VkPhysicalDeviceShaderFloat16Int8Features(const VkPhysicalDeviceShaderFloat16Int8Features * a,const VkPhysicalDeviceShaderFloat16Int8Features * b,OnFailCompareFunc onFail)5413 void checkEqual_VkPhysicalDeviceShaderFloat16Int8Features(
5414 const VkPhysicalDeviceShaderFloat16Int8Features* a,
5415 const VkPhysicalDeviceShaderFloat16Int8Features* b, OnFailCompareFunc onFail) {
5416 if (!((a->sType) == (b->sType))) {
5417 onFail("a->sType (Error: Value not equal)");
5418 };
5419 if (a->pNext) {
5420 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5421 }
5422 if (!((a->shaderFloat16) == (b->shaderFloat16))) {
5423 onFail("a->shaderFloat16 (Error: Value not equal)");
5424 };
5425 if (!((a->shaderInt8) == (b->shaderInt8))) {
5426 onFail("a->shaderInt8 (Error: Value not equal)");
5427 };
5428 }
5429
checkEqual_VkPhysicalDeviceFloatControlsProperties(const VkPhysicalDeviceFloatControlsProperties * a,const VkPhysicalDeviceFloatControlsProperties * b,OnFailCompareFunc onFail)5430 void checkEqual_VkPhysicalDeviceFloatControlsProperties(
5431 const VkPhysicalDeviceFloatControlsProperties* a,
5432 const VkPhysicalDeviceFloatControlsProperties* b, OnFailCompareFunc onFail) {
5433 if (!((a->sType) == (b->sType))) {
5434 onFail("a->sType (Error: Value not equal)");
5435 };
5436 if (a->pNext) {
5437 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5438 }
5439 if (!((a->denormBehaviorIndependence) == (b->denormBehaviorIndependence))) {
5440 onFail("a->denormBehaviorIndependence (Error: Value not equal)");
5441 };
5442 if (!((a->roundingModeIndependence) == (b->roundingModeIndependence))) {
5443 onFail("a->roundingModeIndependence (Error: Value not equal)");
5444 };
5445 if (!((a->shaderSignedZeroInfNanPreserveFloat16) ==
5446 (b->shaderSignedZeroInfNanPreserveFloat16))) {
5447 onFail("a->shaderSignedZeroInfNanPreserveFloat16 (Error: Value not equal)");
5448 };
5449 if (!((a->shaderSignedZeroInfNanPreserveFloat32) ==
5450 (b->shaderSignedZeroInfNanPreserveFloat32))) {
5451 onFail("a->shaderSignedZeroInfNanPreserveFloat32 (Error: Value not equal)");
5452 };
5453 if (!((a->shaderSignedZeroInfNanPreserveFloat64) ==
5454 (b->shaderSignedZeroInfNanPreserveFloat64))) {
5455 onFail("a->shaderSignedZeroInfNanPreserveFloat64 (Error: Value not equal)");
5456 };
5457 if (!((a->shaderDenormPreserveFloat16) == (b->shaderDenormPreserveFloat16))) {
5458 onFail("a->shaderDenormPreserveFloat16 (Error: Value not equal)");
5459 };
5460 if (!((a->shaderDenormPreserveFloat32) == (b->shaderDenormPreserveFloat32))) {
5461 onFail("a->shaderDenormPreserveFloat32 (Error: Value not equal)");
5462 };
5463 if (!((a->shaderDenormPreserveFloat64) == (b->shaderDenormPreserveFloat64))) {
5464 onFail("a->shaderDenormPreserveFloat64 (Error: Value not equal)");
5465 };
5466 if (!((a->shaderDenormFlushToZeroFloat16) == (b->shaderDenormFlushToZeroFloat16))) {
5467 onFail("a->shaderDenormFlushToZeroFloat16 (Error: Value not equal)");
5468 };
5469 if (!((a->shaderDenormFlushToZeroFloat32) == (b->shaderDenormFlushToZeroFloat32))) {
5470 onFail("a->shaderDenormFlushToZeroFloat32 (Error: Value not equal)");
5471 };
5472 if (!((a->shaderDenormFlushToZeroFloat64) == (b->shaderDenormFlushToZeroFloat64))) {
5473 onFail("a->shaderDenormFlushToZeroFloat64 (Error: Value not equal)");
5474 };
5475 if (!((a->shaderRoundingModeRTEFloat16) == (b->shaderRoundingModeRTEFloat16))) {
5476 onFail("a->shaderRoundingModeRTEFloat16 (Error: Value not equal)");
5477 };
5478 if (!((a->shaderRoundingModeRTEFloat32) == (b->shaderRoundingModeRTEFloat32))) {
5479 onFail("a->shaderRoundingModeRTEFloat32 (Error: Value not equal)");
5480 };
5481 if (!((a->shaderRoundingModeRTEFloat64) == (b->shaderRoundingModeRTEFloat64))) {
5482 onFail("a->shaderRoundingModeRTEFloat64 (Error: Value not equal)");
5483 };
5484 if (!((a->shaderRoundingModeRTZFloat16) == (b->shaderRoundingModeRTZFloat16))) {
5485 onFail("a->shaderRoundingModeRTZFloat16 (Error: Value not equal)");
5486 };
5487 if (!((a->shaderRoundingModeRTZFloat32) == (b->shaderRoundingModeRTZFloat32))) {
5488 onFail("a->shaderRoundingModeRTZFloat32 (Error: Value not equal)");
5489 };
5490 if (!((a->shaderRoundingModeRTZFloat64) == (b->shaderRoundingModeRTZFloat64))) {
5491 onFail("a->shaderRoundingModeRTZFloat64 (Error: Value not equal)");
5492 };
5493 }
5494
checkEqual_VkDescriptorSetLayoutBindingFlagsCreateInfo(const VkDescriptorSetLayoutBindingFlagsCreateInfo * a,const VkDescriptorSetLayoutBindingFlagsCreateInfo * b,OnFailCompareFunc onFail)5495 void checkEqual_VkDescriptorSetLayoutBindingFlagsCreateInfo(
5496 const VkDescriptorSetLayoutBindingFlagsCreateInfo* a,
5497 const VkDescriptorSetLayoutBindingFlagsCreateInfo* b, OnFailCompareFunc onFail) {
5498 if (!((a->sType) == (b->sType))) {
5499 onFail("a->sType (Error: Value not equal)");
5500 };
5501 if (a->pNext) {
5502 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5503 }
5504 if (!((a->bindingCount) == (b->bindingCount))) {
5505 onFail("a->bindingCount (Error: Value not equal)");
5506 };
5507 if (!((!(a->pBindingFlags) && !(b->pBindingFlags)) ||
5508 ((a->pBindingFlags) && (b->pBindingFlags)))) {
5509 onFail("a->pBindingFlags (Error: Mismatch in optional field)");
5510 };
5511 if (a->pBindingFlags && b->pBindingFlags) {
5512 if (!((a->bindingCount) == (b->bindingCount))) {
5513 onFail("a->pBindingFlags (Error: Lengths not equal)");
5514 };
5515 if (!((memcmp(a->pBindingFlags, b->pBindingFlags,
5516 a->bindingCount * sizeof(const VkDescriptorBindingFlags)) == 0))) {
5517 onFail("a->pBindingFlags (Error: Unequal dyn array)");
5518 };
5519 }
5520 }
5521
checkEqual_VkPhysicalDeviceDescriptorIndexingFeatures(const VkPhysicalDeviceDescriptorIndexingFeatures * a,const VkPhysicalDeviceDescriptorIndexingFeatures * b,OnFailCompareFunc onFail)5522 void checkEqual_VkPhysicalDeviceDescriptorIndexingFeatures(
5523 const VkPhysicalDeviceDescriptorIndexingFeatures* a,
5524 const VkPhysicalDeviceDescriptorIndexingFeatures* b, OnFailCompareFunc onFail) {
5525 if (!((a->sType) == (b->sType))) {
5526 onFail("a->sType (Error: Value not equal)");
5527 };
5528 if (a->pNext) {
5529 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5530 }
5531 if (!((a->shaderInputAttachmentArrayDynamicIndexing) ==
5532 (b->shaderInputAttachmentArrayDynamicIndexing))) {
5533 onFail("a->shaderInputAttachmentArrayDynamicIndexing (Error: Value not equal)");
5534 };
5535 if (!((a->shaderUniformTexelBufferArrayDynamicIndexing) ==
5536 (b->shaderUniformTexelBufferArrayDynamicIndexing))) {
5537 onFail("a->shaderUniformTexelBufferArrayDynamicIndexing (Error: Value not equal)");
5538 };
5539 if (!((a->shaderStorageTexelBufferArrayDynamicIndexing) ==
5540 (b->shaderStorageTexelBufferArrayDynamicIndexing))) {
5541 onFail("a->shaderStorageTexelBufferArrayDynamicIndexing (Error: Value not equal)");
5542 };
5543 if (!((a->shaderUniformBufferArrayNonUniformIndexing) ==
5544 (b->shaderUniformBufferArrayNonUniformIndexing))) {
5545 onFail("a->shaderUniformBufferArrayNonUniformIndexing (Error: Value not equal)");
5546 };
5547 if (!((a->shaderSampledImageArrayNonUniformIndexing) ==
5548 (b->shaderSampledImageArrayNonUniformIndexing))) {
5549 onFail("a->shaderSampledImageArrayNonUniformIndexing (Error: Value not equal)");
5550 };
5551 if (!((a->shaderStorageBufferArrayNonUniformIndexing) ==
5552 (b->shaderStorageBufferArrayNonUniformIndexing))) {
5553 onFail("a->shaderStorageBufferArrayNonUniformIndexing (Error: Value not equal)");
5554 };
5555 if (!((a->shaderStorageImageArrayNonUniformIndexing) ==
5556 (b->shaderStorageImageArrayNonUniformIndexing))) {
5557 onFail("a->shaderStorageImageArrayNonUniformIndexing (Error: Value not equal)");
5558 };
5559 if (!((a->shaderInputAttachmentArrayNonUniformIndexing) ==
5560 (b->shaderInputAttachmentArrayNonUniformIndexing))) {
5561 onFail("a->shaderInputAttachmentArrayNonUniformIndexing (Error: Value not equal)");
5562 };
5563 if (!((a->shaderUniformTexelBufferArrayNonUniformIndexing) ==
5564 (b->shaderUniformTexelBufferArrayNonUniformIndexing))) {
5565 onFail("a->shaderUniformTexelBufferArrayNonUniformIndexing (Error: Value not equal)");
5566 };
5567 if (!((a->shaderStorageTexelBufferArrayNonUniformIndexing) ==
5568 (b->shaderStorageTexelBufferArrayNonUniformIndexing))) {
5569 onFail("a->shaderStorageTexelBufferArrayNonUniformIndexing (Error: Value not equal)");
5570 };
5571 if (!((a->descriptorBindingUniformBufferUpdateAfterBind) ==
5572 (b->descriptorBindingUniformBufferUpdateAfterBind))) {
5573 onFail("a->descriptorBindingUniformBufferUpdateAfterBind (Error: Value not equal)");
5574 };
5575 if (!((a->descriptorBindingSampledImageUpdateAfterBind) ==
5576 (b->descriptorBindingSampledImageUpdateAfterBind))) {
5577 onFail("a->descriptorBindingSampledImageUpdateAfterBind (Error: Value not equal)");
5578 };
5579 if (!((a->descriptorBindingStorageImageUpdateAfterBind) ==
5580 (b->descriptorBindingStorageImageUpdateAfterBind))) {
5581 onFail("a->descriptorBindingStorageImageUpdateAfterBind (Error: Value not equal)");
5582 };
5583 if (!((a->descriptorBindingStorageBufferUpdateAfterBind) ==
5584 (b->descriptorBindingStorageBufferUpdateAfterBind))) {
5585 onFail("a->descriptorBindingStorageBufferUpdateAfterBind (Error: Value not equal)");
5586 };
5587 if (!((a->descriptorBindingUniformTexelBufferUpdateAfterBind) ==
5588 (b->descriptorBindingUniformTexelBufferUpdateAfterBind))) {
5589 onFail("a->descriptorBindingUniformTexelBufferUpdateAfterBind (Error: Value not equal)");
5590 };
5591 if (!((a->descriptorBindingStorageTexelBufferUpdateAfterBind) ==
5592 (b->descriptorBindingStorageTexelBufferUpdateAfterBind))) {
5593 onFail("a->descriptorBindingStorageTexelBufferUpdateAfterBind (Error: Value not equal)");
5594 };
5595 if (!((a->descriptorBindingUpdateUnusedWhilePending) ==
5596 (b->descriptorBindingUpdateUnusedWhilePending))) {
5597 onFail("a->descriptorBindingUpdateUnusedWhilePending (Error: Value not equal)");
5598 };
5599 if (!((a->descriptorBindingPartiallyBound) == (b->descriptorBindingPartiallyBound))) {
5600 onFail("a->descriptorBindingPartiallyBound (Error: Value not equal)");
5601 };
5602 if (!((a->descriptorBindingVariableDescriptorCount) ==
5603 (b->descriptorBindingVariableDescriptorCount))) {
5604 onFail("a->descriptorBindingVariableDescriptorCount (Error: Value not equal)");
5605 };
5606 if (!((a->runtimeDescriptorArray) == (b->runtimeDescriptorArray))) {
5607 onFail("a->runtimeDescriptorArray (Error: Value not equal)");
5608 };
5609 }
5610
checkEqual_VkPhysicalDeviceDescriptorIndexingProperties(const VkPhysicalDeviceDescriptorIndexingProperties * a,const VkPhysicalDeviceDescriptorIndexingProperties * b,OnFailCompareFunc onFail)5611 void checkEqual_VkPhysicalDeviceDescriptorIndexingProperties(
5612 const VkPhysicalDeviceDescriptorIndexingProperties* a,
5613 const VkPhysicalDeviceDescriptorIndexingProperties* b, OnFailCompareFunc onFail) {
5614 if (!((a->sType) == (b->sType))) {
5615 onFail("a->sType (Error: Value not equal)");
5616 };
5617 if (a->pNext) {
5618 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5619 }
5620 if (!((a->maxUpdateAfterBindDescriptorsInAllPools) ==
5621 (b->maxUpdateAfterBindDescriptorsInAllPools))) {
5622 onFail("a->maxUpdateAfterBindDescriptorsInAllPools (Error: Value not equal)");
5623 };
5624 if (!((a->shaderUniformBufferArrayNonUniformIndexingNative) ==
5625 (b->shaderUniformBufferArrayNonUniformIndexingNative))) {
5626 onFail("a->shaderUniformBufferArrayNonUniformIndexingNative (Error: Value not equal)");
5627 };
5628 if (!((a->shaderSampledImageArrayNonUniformIndexingNative) ==
5629 (b->shaderSampledImageArrayNonUniformIndexingNative))) {
5630 onFail("a->shaderSampledImageArrayNonUniformIndexingNative (Error: Value not equal)");
5631 };
5632 if (!((a->shaderStorageBufferArrayNonUniformIndexingNative) ==
5633 (b->shaderStorageBufferArrayNonUniformIndexingNative))) {
5634 onFail("a->shaderStorageBufferArrayNonUniformIndexingNative (Error: Value not equal)");
5635 };
5636 if (!((a->shaderStorageImageArrayNonUniformIndexingNative) ==
5637 (b->shaderStorageImageArrayNonUniformIndexingNative))) {
5638 onFail("a->shaderStorageImageArrayNonUniformIndexingNative (Error: Value not equal)");
5639 };
5640 if (!((a->shaderInputAttachmentArrayNonUniformIndexingNative) ==
5641 (b->shaderInputAttachmentArrayNonUniformIndexingNative))) {
5642 onFail("a->shaderInputAttachmentArrayNonUniformIndexingNative (Error: Value not equal)");
5643 };
5644 if (!((a->robustBufferAccessUpdateAfterBind) == (b->robustBufferAccessUpdateAfterBind))) {
5645 onFail("a->robustBufferAccessUpdateAfterBind (Error: Value not equal)");
5646 };
5647 if (!((a->quadDivergentImplicitLod) == (b->quadDivergentImplicitLod))) {
5648 onFail("a->quadDivergentImplicitLod (Error: Value not equal)");
5649 };
5650 if (!((a->maxPerStageDescriptorUpdateAfterBindSamplers) ==
5651 (b->maxPerStageDescriptorUpdateAfterBindSamplers))) {
5652 onFail("a->maxPerStageDescriptorUpdateAfterBindSamplers (Error: Value not equal)");
5653 };
5654 if (!((a->maxPerStageDescriptorUpdateAfterBindUniformBuffers) ==
5655 (b->maxPerStageDescriptorUpdateAfterBindUniformBuffers))) {
5656 onFail("a->maxPerStageDescriptorUpdateAfterBindUniformBuffers (Error: Value not equal)");
5657 };
5658 if (!((a->maxPerStageDescriptorUpdateAfterBindStorageBuffers) ==
5659 (b->maxPerStageDescriptorUpdateAfterBindStorageBuffers))) {
5660 onFail("a->maxPerStageDescriptorUpdateAfterBindStorageBuffers (Error: Value not equal)");
5661 };
5662 if (!((a->maxPerStageDescriptorUpdateAfterBindSampledImages) ==
5663 (b->maxPerStageDescriptorUpdateAfterBindSampledImages))) {
5664 onFail("a->maxPerStageDescriptorUpdateAfterBindSampledImages (Error: Value not equal)");
5665 };
5666 if (!((a->maxPerStageDescriptorUpdateAfterBindStorageImages) ==
5667 (b->maxPerStageDescriptorUpdateAfterBindStorageImages))) {
5668 onFail("a->maxPerStageDescriptorUpdateAfterBindStorageImages (Error: Value not equal)");
5669 };
5670 if (!((a->maxPerStageDescriptorUpdateAfterBindInputAttachments) ==
5671 (b->maxPerStageDescriptorUpdateAfterBindInputAttachments))) {
5672 onFail("a->maxPerStageDescriptorUpdateAfterBindInputAttachments (Error: Value not equal)");
5673 };
5674 if (!((a->maxPerStageUpdateAfterBindResources) == (b->maxPerStageUpdateAfterBindResources))) {
5675 onFail("a->maxPerStageUpdateAfterBindResources (Error: Value not equal)");
5676 };
5677 if (!((a->maxDescriptorSetUpdateAfterBindSamplers) ==
5678 (b->maxDescriptorSetUpdateAfterBindSamplers))) {
5679 onFail("a->maxDescriptorSetUpdateAfterBindSamplers (Error: Value not equal)");
5680 };
5681 if (!((a->maxDescriptorSetUpdateAfterBindUniformBuffers) ==
5682 (b->maxDescriptorSetUpdateAfterBindUniformBuffers))) {
5683 onFail("a->maxDescriptorSetUpdateAfterBindUniformBuffers (Error: Value not equal)");
5684 };
5685 if (!((a->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic) ==
5686 (b->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic))) {
5687 onFail("a->maxDescriptorSetUpdateAfterBindUniformBuffersDynamic (Error: Value not equal)");
5688 };
5689 if (!((a->maxDescriptorSetUpdateAfterBindStorageBuffers) ==
5690 (b->maxDescriptorSetUpdateAfterBindStorageBuffers))) {
5691 onFail("a->maxDescriptorSetUpdateAfterBindStorageBuffers (Error: Value not equal)");
5692 };
5693 if (!((a->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic) ==
5694 (b->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic))) {
5695 onFail("a->maxDescriptorSetUpdateAfterBindStorageBuffersDynamic (Error: Value not equal)");
5696 };
5697 if (!((a->maxDescriptorSetUpdateAfterBindSampledImages) ==
5698 (b->maxDescriptorSetUpdateAfterBindSampledImages))) {
5699 onFail("a->maxDescriptorSetUpdateAfterBindSampledImages (Error: Value not equal)");
5700 };
5701 if (!((a->maxDescriptorSetUpdateAfterBindStorageImages) ==
5702 (b->maxDescriptorSetUpdateAfterBindStorageImages))) {
5703 onFail("a->maxDescriptorSetUpdateAfterBindStorageImages (Error: Value not equal)");
5704 };
5705 if (!((a->maxDescriptorSetUpdateAfterBindInputAttachments) ==
5706 (b->maxDescriptorSetUpdateAfterBindInputAttachments))) {
5707 onFail("a->maxDescriptorSetUpdateAfterBindInputAttachments (Error: Value not equal)");
5708 };
5709 }
5710
checkEqual_VkDescriptorSetVariableDescriptorCountAllocateInfo(const VkDescriptorSetVariableDescriptorCountAllocateInfo * a,const VkDescriptorSetVariableDescriptorCountAllocateInfo * b,OnFailCompareFunc onFail)5711 void checkEqual_VkDescriptorSetVariableDescriptorCountAllocateInfo(
5712 const VkDescriptorSetVariableDescriptorCountAllocateInfo* a,
5713 const VkDescriptorSetVariableDescriptorCountAllocateInfo* b, OnFailCompareFunc onFail) {
5714 if (!((a->sType) == (b->sType))) {
5715 onFail("a->sType (Error: Value not equal)");
5716 };
5717 if (a->pNext) {
5718 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5719 }
5720 if (!((a->descriptorSetCount) == (b->descriptorSetCount))) {
5721 onFail("a->descriptorSetCount (Error: Value not equal)");
5722 };
5723 if (!((a->descriptorSetCount) == (b->descriptorSetCount))) {
5724 onFail("a->pDescriptorCounts (Error: Lengths not equal)");
5725 };
5726 if (!((memcmp(a->pDescriptorCounts, b->pDescriptorCounts,
5727 a->descriptorSetCount * sizeof(const uint32_t)) == 0))) {
5728 onFail("a->pDescriptorCounts (Error: Unequal dyn array)");
5729 };
5730 }
5731
checkEqual_VkDescriptorSetVariableDescriptorCountLayoutSupport(const VkDescriptorSetVariableDescriptorCountLayoutSupport * a,const VkDescriptorSetVariableDescriptorCountLayoutSupport * b,OnFailCompareFunc onFail)5732 void checkEqual_VkDescriptorSetVariableDescriptorCountLayoutSupport(
5733 const VkDescriptorSetVariableDescriptorCountLayoutSupport* a,
5734 const VkDescriptorSetVariableDescriptorCountLayoutSupport* b, OnFailCompareFunc onFail) {
5735 if (!((a->sType) == (b->sType))) {
5736 onFail("a->sType (Error: Value not equal)");
5737 };
5738 if (a->pNext) {
5739 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5740 }
5741 if (!((a->maxVariableDescriptorCount) == (b->maxVariableDescriptorCount))) {
5742 onFail("a->maxVariableDescriptorCount (Error: Value not equal)");
5743 };
5744 }
5745
checkEqual_VkSubpassDescriptionDepthStencilResolve(const VkSubpassDescriptionDepthStencilResolve * a,const VkSubpassDescriptionDepthStencilResolve * b,OnFailCompareFunc onFail)5746 void checkEqual_VkSubpassDescriptionDepthStencilResolve(
5747 const VkSubpassDescriptionDepthStencilResolve* a,
5748 const VkSubpassDescriptionDepthStencilResolve* b, OnFailCompareFunc onFail) {
5749 if (!((a->sType) == (b->sType))) {
5750 onFail("a->sType (Error: Value not equal)");
5751 };
5752 if (a->pNext) {
5753 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5754 }
5755 if (!((a->depthResolveMode) == (b->depthResolveMode))) {
5756 onFail("a->depthResolveMode (Error: Value not equal)");
5757 };
5758 if (!((a->stencilResolveMode) == (b->stencilResolveMode))) {
5759 onFail("a->stencilResolveMode (Error: Value not equal)");
5760 };
5761 if (!((!(a->pDepthStencilResolveAttachment) && !(b->pDepthStencilResolveAttachment)) ||
5762 ((a->pDepthStencilResolveAttachment) && (b->pDepthStencilResolveAttachment)))) {
5763 onFail("a->pDepthStencilResolveAttachment (Error: Mismatch in optional field)");
5764 };
5765 if (a->pDepthStencilResolveAttachment && b->pDepthStencilResolveAttachment) {
5766 if ((a->pDepthStencilResolveAttachment) && (b->pDepthStencilResolveAttachment)) {
5767 checkEqual_VkAttachmentReference2(a->pDepthStencilResolveAttachment,
5768 b->pDepthStencilResolveAttachment, onFail);
5769 }
5770 }
5771 }
5772
checkEqual_VkPhysicalDeviceDepthStencilResolveProperties(const VkPhysicalDeviceDepthStencilResolveProperties * a,const VkPhysicalDeviceDepthStencilResolveProperties * b,OnFailCompareFunc onFail)5773 void checkEqual_VkPhysicalDeviceDepthStencilResolveProperties(
5774 const VkPhysicalDeviceDepthStencilResolveProperties* a,
5775 const VkPhysicalDeviceDepthStencilResolveProperties* b, OnFailCompareFunc onFail) {
5776 if (!((a->sType) == (b->sType))) {
5777 onFail("a->sType (Error: Value not equal)");
5778 };
5779 if (a->pNext) {
5780 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5781 }
5782 if (!((a->supportedDepthResolveModes) == (b->supportedDepthResolveModes))) {
5783 onFail("a->supportedDepthResolveModes (Error: Value not equal)");
5784 };
5785 if (!((a->supportedStencilResolveModes) == (b->supportedStencilResolveModes))) {
5786 onFail("a->supportedStencilResolveModes (Error: Value not equal)");
5787 };
5788 if (!((a->independentResolveNone) == (b->independentResolveNone))) {
5789 onFail("a->independentResolveNone (Error: Value not equal)");
5790 };
5791 if (!((a->independentResolve) == (b->independentResolve))) {
5792 onFail("a->independentResolve (Error: Value not equal)");
5793 };
5794 }
5795
checkEqual_VkPhysicalDeviceScalarBlockLayoutFeatures(const VkPhysicalDeviceScalarBlockLayoutFeatures * a,const VkPhysicalDeviceScalarBlockLayoutFeatures * b,OnFailCompareFunc onFail)5796 void checkEqual_VkPhysicalDeviceScalarBlockLayoutFeatures(
5797 const VkPhysicalDeviceScalarBlockLayoutFeatures* a,
5798 const VkPhysicalDeviceScalarBlockLayoutFeatures* b, OnFailCompareFunc onFail) {
5799 if (!((a->sType) == (b->sType))) {
5800 onFail("a->sType (Error: Value not equal)");
5801 };
5802 if (a->pNext) {
5803 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5804 }
5805 if (!((a->scalarBlockLayout) == (b->scalarBlockLayout))) {
5806 onFail("a->scalarBlockLayout (Error: Value not equal)");
5807 };
5808 }
5809
checkEqual_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo * a,const VkImageStencilUsageCreateInfo * b,OnFailCompareFunc onFail)5810 void checkEqual_VkImageStencilUsageCreateInfo(const VkImageStencilUsageCreateInfo* a,
5811 const VkImageStencilUsageCreateInfo* b,
5812 OnFailCompareFunc onFail) {
5813 if (!((a->sType) == (b->sType))) {
5814 onFail("a->sType (Error: Value not equal)");
5815 };
5816 if (a->pNext) {
5817 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5818 }
5819 if (!((a->stencilUsage) == (b->stencilUsage))) {
5820 onFail("a->stencilUsage (Error: Value not equal)");
5821 };
5822 }
5823
checkEqual_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo * a,const VkSamplerReductionModeCreateInfo * b,OnFailCompareFunc onFail)5824 void checkEqual_VkSamplerReductionModeCreateInfo(const VkSamplerReductionModeCreateInfo* a,
5825 const VkSamplerReductionModeCreateInfo* b,
5826 OnFailCompareFunc onFail) {
5827 if (!((a->sType) == (b->sType))) {
5828 onFail("a->sType (Error: Value not equal)");
5829 };
5830 if (a->pNext) {
5831 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5832 }
5833 if (!((a->reductionMode) == (b->reductionMode))) {
5834 onFail("a->reductionMode (Error: Value not equal)");
5835 };
5836 }
5837
checkEqual_VkPhysicalDeviceSamplerFilterMinmaxProperties(const VkPhysicalDeviceSamplerFilterMinmaxProperties * a,const VkPhysicalDeviceSamplerFilterMinmaxProperties * b,OnFailCompareFunc onFail)5838 void checkEqual_VkPhysicalDeviceSamplerFilterMinmaxProperties(
5839 const VkPhysicalDeviceSamplerFilterMinmaxProperties* a,
5840 const VkPhysicalDeviceSamplerFilterMinmaxProperties* b, OnFailCompareFunc onFail) {
5841 if (!((a->sType) == (b->sType))) {
5842 onFail("a->sType (Error: Value not equal)");
5843 };
5844 if (a->pNext) {
5845 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5846 }
5847 if (!((a->filterMinmaxSingleComponentFormats) == (b->filterMinmaxSingleComponentFormats))) {
5848 onFail("a->filterMinmaxSingleComponentFormats (Error: Value not equal)");
5849 };
5850 if (!((a->filterMinmaxImageComponentMapping) == (b->filterMinmaxImageComponentMapping))) {
5851 onFail("a->filterMinmaxImageComponentMapping (Error: Value not equal)");
5852 };
5853 }
5854
checkEqual_VkPhysicalDeviceVulkanMemoryModelFeatures(const VkPhysicalDeviceVulkanMemoryModelFeatures * a,const VkPhysicalDeviceVulkanMemoryModelFeatures * b,OnFailCompareFunc onFail)5855 void checkEqual_VkPhysicalDeviceVulkanMemoryModelFeatures(
5856 const VkPhysicalDeviceVulkanMemoryModelFeatures* a,
5857 const VkPhysicalDeviceVulkanMemoryModelFeatures* b, OnFailCompareFunc onFail) {
5858 if (!((a->sType) == (b->sType))) {
5859 onFail("a->sType (Error: Value not equal)");
5860 };
5861 if (a->pNext) {
5862 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5863 }
5864 if (!((a->vulkanMemoryModel) == (b->vulkanMemoryModel))) {
5865 onFail("a->vulkanMemoryModel (Error: Value not equal)");
5866 };
5867 if (!((a->vulkanMemoryModelDeviceScope) == (b->vulkanMemoryModelDeviceScope))) {
5868 onFail("a->vulkanMemoryModelDeviceScope (Error: Value not equal)");
5869 };
5870 if (!((a->vulkanMemoryModelAvailabilityVisibilityChains) ==
5871 (b->vulkanMemoryModelAvailabilityVisibilityChains))) {
5872 onFail("a->vulkanMemoryModelAvailabilityVisibilityChains (Error: Value not equal)");
5873 };
5874 }
5875
checkEqual_VkPhysicalDeviceImagelessFramebufferFeatures(const VkPhysicalDeviceImagelessFramebufferFeatures * a,const VkPhysicalDeviceImagelessFramebufferFeatures * b,OnFailCompareFunc onFail)5876 void checkEqual_VkPhysicalDeviceImagelessFramebufferFeatures(
5877 const VkPhysicalDeviceImagelessFramebufferFeatures* a,
5878 const VkPhysicalDeviceImagelessFramebufferFeatures* b, OnFailCompareFunc onFail) {
5879 if (!((a->sType) == (b->sType))) {
5880 onFail("a->sType (Error: Value not equal)");
5881 };
5882 if (a->pNext) {
5883 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5884 }
5885 if (!((a->imagelessFramebuffer) == (b->imagelessFramebuffer))) {
5886 onFail("a->imagelessFramebuffer (Error: Value not equal)");
5887 };
5888 }
5889
checkEqual_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo * a,const VkFramebufferAttachmentImageInfo * b,OnFailCompareFunc onFail)5890 void checkEqual_VkFramebufferAttachmentImageInfo(const VkFramebufferAttachmentImageInfo* a,
5891 const VkFramebufferAttachmentImageInfo* b,
5892 OnFailCompareFunc onFail) {
5893 if (!((a->sType) == (b->sType))) {
5894 onFail("a->sType (Error: Value not equal)");
5895 };
5896 if (a->pNext) {
5897 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5898 }
5899 if (!((a->flags) == (b->flags))) {
5900 onFail("a->flags (Error: Value not equal)");
5901 };
5902 if (!((a->usage) == (b->usage))) {
5903 onFail("a->usage (Error: Value not equal)");
5904 };
5905 if (!((a->width) == (b->width))) {
5906 onFail("a->width (Error: Value not equal)");
5907 };
5908 if (!((a->height) == (b->height))) {
5909 onFail("a->height (Error: Value not equal)");
5910 };
5911 if (!((a->layerCount) == (b->layerCount))) {
5912 onFail("a->layerCount (Error: Value not equal)");
5913 };
5914 if (!((a->viewFormatCount) == (b->viewFormatCount))) {
5915 onFail("a->viewFormatCount (Error: Value not equal)");
5916 };
5917 if (!((a->viewFormatCount) == (b->viewFormatCount))) {
5918 onFail("a->pViewFormats (Error: Lengths not equal)");
5919 };
5920 if (!((memcmp(a->pViewFormats, b->pViewFormats, a->viewFormatCount * sizeof(const VkFormat)) ==
5921 0))) {
5922 onFail("a->pViewFormats (Error: Unequal dyn array)");
5923 };
5924 }
5925
checkEqual_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo * a,const VkFramebufferAttachmentsCreateInfo * b,OnFailCompareFunc onFail)5926 void checkEqual_VkFramebufferAttachmentsCreateInfo(const VkFramebufferAttachmentsCreateInfo* a,
5927 const VkFramebufferAttachmentsCreateInfo* b,
5928 OnFailCompareFunc onFail) {
5929 if (!((a->sType) == (b->sType))) {
5930 onFail("a->sType (Error: Value not equal)");
5931 };
5932 if (a->pNext) {
5933 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5934 }
5935 if (!((a->attachmentImageInfoCount) == (b->attachmentImageInfoCount))) {
5936 onFail("a->attachmentImageInfoCount (Error: Value not equal)");
5937 };
5938 if ((a->pAttachmentImageInfos) && (b->pAttachmentImageInfos)) {
5939 if (!((a->attachmentImageInfoCount) == (b->attachmentImageInfoCount))) {
5940 onFail("a->pAttachmentImageInfos (Error: Lengths not equal)");
5941 };
5942 if ((a->attachmentImageInfoCount) == (b->attachmentImageInfoCount)) {
5943 if (a) {
5944 for (uint32_t i = 0; i < (uint32_t)a->attachmentImageInfoCount; ++i) {
5945 checkEqual_VkFramebufferAttachmentImageInfo(
5946 a->pAttachmentImageInfos + i, b->pAttachmentImageInfos + i, onFail);
5947 }
5948 }
5949 }
5950 }
5951 }
5952
checkEqual_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo * a,const VkRenderPassAttachmentBeginInfo * b,OnFailCompareFunc onFail)5953 void checkEqual_VkRenderPassAttachmentBeginInfo(const VkRenderPassAttachmentBeginInfo* a,
5954 const VkRenderPassAttachmentBeginInfo* b,
5955 OnFailCompareFunc onFail) {
5956 if (!((a->sType) == (b->sType))) {
5957 onFail("a->sType (Error: Value not equal)");
5958 };
5959 if (a->pNext) {
5960 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5961 }
5962 if (!((a->attachmentCount) == (b->attachmentCount))) {
5963 onFail("a->attachmentCount (Error: Value not equal)");
5964 };
5965 if (!((a->attachmentCount) == (b->attachmentCount))) {
5966 onFail("a->pAttachments (Error: Lengths not equal)");
5967 };
5968 if (!((memcmp(a->pAttachments, b->pAttachments,
5969 a->attachmentCount * sizeof(const VkImageView)) == 0))) {
5970 onFail("a->pAttachments (Error: Unequal dyn array)");
5971 };
5972 }
5973
checkEqual_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * a,const VkPhysicalDeviceUniformBufferStandardLayoutFeatures * b,OnFailCompareFunc onFail)5974 void checkEqual_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
5975 const VkPhysicalDeviceUniformBufferStandardLayoutFeatures* a,
5976 const VkPhysicalDeviceUniformBufferStandardLayoutFeatures* b, OnFailCompareFunc onFail) {
5977 if (!((a->sType) == (b->sType))) {
5978 onFail("a->sType (Error: Value not equal)");
5979 };
5980 if (a->pNext) {
5981 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5982 }
5983 if (!((a->uniformBufferStandardLayout) == (b->uniformBufferStandardLayout))) {
5984 onFail("a->uniformBufferStandardLayout (Error: Value not equal)");
5985 };
5986 }
5987
checkEqual_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * a,const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures * b,OnFailCompareFunc onFail)5988 void checkEqual_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
5989 const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* a,
5990 const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures* b, OnFailCompareFunc onFail) {
5991 if (!((a->sType) == (b->sType))) {
5992 onFail("a->sType (Error: Value not equal)");
5993 };
5994 if (a->pNext) {
5995 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
5996 }
5997 if (!((a->shaderSubgroupExtendedTypes) == (b->shaderSubgroupExtendedTypes))) {
5998 onFail("a->shaderSubgroupExtendedTypes (Error: Value not equal)");
5999 };
6000 }
6001
checkEqual_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * a,const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures * b,OnFailCompareFunc onFail)6002 void checkEqual_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
6003 const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* a,
6004 const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures* b, OnFailCompareFunc onFail) {
6005 if (!((a->sType) == (b->sType))) {
6006 onFail("a->sType (Error: Value not equal)");
6007 };
6008 if (a->pNext) {
6009 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6010 }
6011 if (!((a->separateDepthStencilLayouts) == (b->separateDepthStencilLayouts))) {
6012 onFail("a->separateDepthStencilLayouts (Error: Value not equal)");
6013 };
6014 }
6015
checkEqual_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout * a,const VkAttachmentReferenceStencilLayout * b,OnFailCompareFunc onFail)6016 void checkEqual_VkAttachmentReferenceStencilLayout(const VkAttachmentReferenceStencilLayout* a,
6017 const VkAttachmentReferenceStencilLayout* b,
6018 OnFailCompareFunc onFail) {
6019 if (!((a->sType) == (b->sType))) {
6020 onFail("a->sType (Error: Value not equal)");
6021 };
6022 if (a->pNext) {
6023 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6024 }
6025 if (!((a->stencilLayout) == (b->stencilLayout))) {
6026 onFail("a->stencilLayout (Error: Value not equal)");
6027 };
6028 }
6029
checkEqual_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout * a,const VkAttachmentDescriptionStencilLayout * b,OnFailCompareFunc onFail)6030 void checkEqual_VkAttachmentDescriptionStencilLayout(const VkAttachmentDescriptionStencilLayout* a,
6031 const VkAttachmentDescriptionStencilLayout* b,
6032 OnFailCompareFunc onFail) {
6033 if (!((a->sType) == (b->sType))) {
6034 onFail("a->sType (Error: Value not equal)");
6035 };
6036 if (a->pNext) {
6037 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6038 }
6039 if (!((a->stencilInitialLayout) == (b->stencilInitialLayout))) {
6040 onFail("a->stencilInitialLayout (Error: Value not equal)");
6041 };
6042 if (!((a->stencilFinalLayout) == (b->stencilFinalLayout))) {
6043 onFail("a->stencilFinalLayout (Error: Value not equal)");
6044 };
6045 }
6046
checkEqual_VkPhysicalDeviceHostQueryResetFeatures(const VkPhysicalDeviceHostQueryResetFeatures * a,const VkPhysicalDeviceHostQueryResetFeatures * b,OnFailCompareFunc onFail)6047 void checkEqual_VkPhysicalDeviceHostQueryResetFeatures(
6048 const VkPhysicalDeviceHostQueryResetFeatures* a,
6049 const VkPhysicalDeviceHostQueryResetFeatures* b, OnFailCompareFunc onFail) {
6050 if (!((a->sType) == (b->sType))) {
6051 onFail("a->sType (Error: Value not equal)");
6052 };
6053 if (a->pNext) {
6054 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6055 }
6056 if (!((a->hostQueryReset) == (b->hostQueryReset))) {
6057 onFail("a->hostQueryReset (Error: Value not equal)");
6058 };
6059 }
6060
checkEqual_VkPhysicalDeviceTimelineSemaphoreFeatures(const VkPhysicalDeviceTimelineSemaphoreFeatures * a,const VkPhysicalDeviceTimelineSemaphoreFeatures * b,OnFailCompareFunc onFail)6061 void checkEqual_VkPhysicalDeviceTimelineSemaphoreFeatures(
6062 const VkPhysicalDeviceTimelineSemaphoreFeatures* a,
6063 const VkPhysicalDeviceTimelineSemaphoreFeatures* b, OnFailCompareFunc onFail) {
6064 if (!((a->sType) == (b->sType))) {
6065 onFail("a->sType (Error: Value not equal)");
6066 };
6067 if (a->pNext) {
6068 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6069 }
6070 if (!((a->timelineSemaphore) == (b->timelineSemaphore))) {
6071 onFail("a->timelineSemaphore (Error: Value not equal)");
6072 };
6073 }
6074
checkEqual_VkPhysicalDeviceTimelineSemaphoreProperties(const VkPhysicalDeviceTimelineSemaphoreProperties * a,const VkPhysicalDeviceTimelineSemaphoreProperties * b,OnFailCompareFunc onFail)6075 void checkEqual_VkPhysicalDeviceTimelineSemaphoreProperties(
6076 const VkPhysicalDeviceTimelineSemaphoreProperties* a,
6077 const VkPhysicalDeviceTimelineSemaphoreProperties* b, OnFailCompareFunc onFail) {
6078 if (!((a->sType) == (b->sType))) {
6079 onFail("a->sType (Error: Value not equal)");
6080 };
6081 if (a->pNext) {
6082 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6083 }
6084 if (!((a->maxTimelineSemaphoreValueDifference) == (b->maxTimelineSemaphoreValueDifference))) {
6085 onFail("a->maxTimelineSemaphoreValueDifference (Error: Value not equal)");
6086 };
6087 }
6088
checkEqual_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo * a,const VkSemaphoreTypeCreateInfo * b,OnFailCompareFunc onFail)6089 void checkEqual_VkSemaphoreTypeCreateInfo(const VkSemaphoreTypeCreateInfo* a,
6090 const VkSemaphoreTypeCreateInfo* b,
6091 OnFailCompareFunc onFail) {
6092 if (!((a->sType) == (b->sType))) {
6093 onFail("a->sType (Error: Value not equal)");
6094 };
6095 if (a->pNext) {
6096 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6097 }
6098 if (!((a->semaphoreType) == (b->semaphoreType))) {
6099 onFail("a->semaphoreType (Error: Value not equal)");
6100 };
6101 if (!((a->initialValue) == (b->initialValue))) {
6102 onFail("a->initialValue (Error: Value not equal)");
6103 };
6104 }
6105
checkEqual_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo * a,const VkTimelineSemaphoreSubmitInfo * b,OnFailCompareFunc onFail)6106 void checkEqual_VkTimelineSemaphoreSubmitInfo(const VkTimelineSemaphoreSubmitInfo* a,
6107 const VkTimelineSemaphoreSubmitInfo* b,
6108 OnFailCompareFunc onFail) {
6109 if (!((a->sType) == (b->sType))) {
6110 onFail("a->sType (Error: Value not equal)");
6111 };
6112 if (a->pNext) {
6113 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6114 }
6115 if (!((a->waitSemaphoreValueCount) == (b->waitSemaphoreValueCount))) {
6116 onFail("a->waitSemaphoreValueCount (Error: Value not equal)");
6117 };
6118 if (!((!(a->pWaitSemaphoreValues) && !(b->pWaitSemaphoreValues)) ||
6119 ((a->pWaitSemaphoreValues) && (b->pWaitSemaphoreValues)))) {
6120 onFail("a->pWaitSemaphoreValues (Error: Mismatch in optional field)");
6121 };
6122 if (a->pWaitSemaphoreValues && b->pWaitSemaphoreValues) {
6123 if (!((a->waitSemaphoreValueCount) == (b->waitSemaphoreValueCount))) {
6124 onFail("a->pWaitSemaphoreValues (Error: Lengths not equal)");
6125 };
6126 if (!((memcmp(a->pWaitSemaphoreValues, b->pWaitSemaphoreValues,
6127 a->waitSemaphoreValueCount * sizeof(const uint64_t)) == 0))) {
6128 onFail("a->pWaitSemaphoreValues (Error: Unequal dyn array)");
6129 };
6130 }
6131 if (!((a->signalSemaphoreValueCount) == (b->signalSemaphoreValueCount))) {
6132 onFail("a->signalSemaphoreValueCount (Error: Value not equal)");
6133 };
6134 if (!((!(a->pSignalSemaphoreValues) && !(b->pSignalSemaphoreValues)) ||
6135 ((a->pSignalSemaphoreValues) && (b->pSignalSemaphoreValues)))) {
6136 onFail("a->pSignalSemaphoreValues (Error: Mismatch in optional field)");
6137 };
6138 if (a->pSignalSemaphoreValues && b->pSignalSemaphoreValues) {
6139 if (!((a->signalSemaphoreValueCount) == (b->signalSemaphoreValueCount))) {
6140 onFail("a->pSignalSemaphoreValues (Error: Lengths not equal)");
6141 };
6142 if (!((memcmp(a->pSignalSemaphoreValues, b->pSignalSemaphoreValues,
6143 a->signalSemaphoreValueCount * sizeof(const uint64_t)) == 0))) {
6144 onFail("a->pSignalSemaphoreValues (Error: Unequal dyn array)");
6145 };
6146 }
6147 }
6148
checkEqual_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo * a,const VkSemaphoreWaitInfo * b,OnFailCompareFunc onFail)6149 void checkEqual_VkSemaphoreWaitInfo(const VkSemaphoreWaitInfo* a, const VkSemaphoreWaitInfo* b,
6150 OnFailCompareFunc onFail) {
6151 if (!((a->sType) == (b->sType))) {
6152 onFail("a->sType (Error: Value not equal)");
6153 };
6154 if (a->pNext) {
6155 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6156 }
6157 if (!((a->flags) == (b->flags))) {
6158 onFail("a->flags (Error: Value not equal)");
6159 };
6160 if (!((a->semaphoreCount) == (b->semaphoreCount))) {
6161 onFail("a->semaphoreCount (Error: Value not equal)");
6162 };
6163 if (!((a->semaphoreCount) == (b->semaphoreCount))) {
6164 onFail("a->pSemaphores (Error: Lengths not equal)");
6165 };
6166 if (!((memcmp(a->pSemaphores, b->pSemaphores, a->semaphoreCount * sizeof(const VkSemaphore)) ==
6167 0))) {
6168 onFail("a->pSemaphores (Error: Unequal dyn array)");
6169 };
6170 if (!((a->semaphoreCount) == (b->semaphoreCount))) {
6171 onFail("a->pValues (Error: Lengths not equal)");
6172 };
6173 if (!((memcmp(a->pValues, b->pValues, a->semaphoreCount * sizeof(const uint64_t)) == 0))) {
6174 onFail("a->pValues (Error: Unequal dyn array)");
6175 };
6176 }
6177
checkEqual_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo * a,const VkSemaphoreSignalInfo * b,OnFailCompareFunc onFail)6178 void checkEqual_VkSemaphoreSignalInfo(const VkSemaphoreSignalInfo* a,
6179 const VkSemaphoreSignalInfo* b, OnFailCompareFunc onFail) {
6180 if (!((a->sType) == (b->sType))) {
6181 onFail("a->sType (Error: Value not equal)");
6182 };
6183 if (a->pNext) {
6184 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6185 }
6186 if (!((a->semaphore) == (b->semaphore))) {
6187 onFail("a->semaphore (Error: Value not equal)");
6188 };
6189 if (!((a->value) == (b->value))) {
6190 onFail("a->value (Error: Value not equal)");
6191 };
6192 }
6193
checkEqual_VkPhysicalDeviceBufferDeviceAddressFeatures(const VkPhysicalDeviceBufferDeviceAddressFeatures * a,const VkPhysicalDeviceBufferDeviceAddressFeatures * b,OnFailCompareFunc onFail)6194 void checkEqual_VkPhysicalDeviceBufferDeviceAddressFeatures(
6195 const VkPhysicalDeviceBufferDeviceAddressFeatures* a,
6196 const VkPhysicalDeviceBufferDeviceAddressFeatures* b, OnFailCompareFunc onFail) {
6197 if (!((a->sType) == (b->sType))) {
6198 onFail("a->sType (Error: Value not equal)");
6199 };
6200 if (a->pNext) {
6201 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6202 }
6203 if (!((a->bufferDeviceAddress) == (b->bufferDeviceAddress))) {
6204 onFail("a->bufferDeviceAddress (Error: Value not equal)");
6205 };
6206 if (!((a->bufferDeviceAddressCaptureReplay) == (b->bufferDeviceAddressCaptureReplay))) {
6207 onFail("a->bufferDeviceAddressCaptureReplay (Error: Value not equal)");
6208 };
6209 if (!((a->bufferDeviceAddressMultiDevice) == (b->bufferDeviceAddressMultiDevice))) {
6210 onFail("a->bufferDeviceAddressMultiDevice (Error: Value not equal)");
6211 };
6212 }
6213
checkEqual_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo * a,const VkBufferDeviceAddressInfo * b,OnFailCompareFunc onFail)6214 void checkEqual_VkBufferDeviceAddressInfo(const VkBufferDeviceAddressInfo* a,
6215 const VkBufferDeviceAddressInfo* b,
6216 OnFailCompareFunc onFail) {
6217 if (!((a->sType) == (b->sType))) {
6218 onFail("a->sType (Error: Value not equal)");
6219 };
6220 if (a->pNext) {
6221 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6222 }
6223 if (!((a->buffer) == (b->buffer))) {
6224 onFail("a->buffer (Error: Value not equal)");
6225 };
6226 }
6227
checkEqual_VkBufferOpaqueCaptureAddressCreateInfo(const VkBufferOpaqueCaptureAddressCreateInfo * a,const VkBufferOpaqueCaptureAddressCreateInfo * b,OnFailCompareFunc onFail)6228 void checkEqual_VkBufferOpaqueCaptureAddressCreateInfo(
6229 const VkBufferOpaqueCaptureAddressCreateInfo* a,
6230 const VkBufferOpaqueCaptureAddressCreateInfo* b, OnFailCompareFunc onFail) {
6231 if (!((a->sType) == (b->sType))) {
6232 onFail("a->sType (Error: Value not equal)");
6233 };
6234 if (a->pNext) {
6235 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6236 }
6237 if (!((a->opaqueCaptureAddress) == (b->opaqueCaptureAddress))) {
6238 onFail("a->opaqueCaptureAddress (Error: Value not equal)");
6239 };
6240 }
6241
checkEqual_VkMemoryOpaqueCaptureAddressAllocateInfo(const VkMemoryOpaqueCaptureAddressAllocateInfo * a,const VkMemoryOpaqueCaptureAddressAllocateInfo * b,OnFailCompareFunc onFail)6242 void checkEqual_VkMemoryOpaqueCaptureAddressAllocateInfo(
6243 const VkMemoryOpaqueCaptureAddressAllocateInfo* a,
6244 const VkMemoryOpaqueCaptureAddressAllocateInfo* b, OnFailCompareFunc onFail) {
6245 if (!((a->sType) == (b->sType))) {
6246 onFail("a->sType (Error: Value not equal)");
6247 };
6248 if (a->pNext) {
6249 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6250 }
6251 if (!((a->opaqueCaptureAddress) == (b->opaqueCaptureAddress))) {
6252 onFail("a->opaqueCaptureAddress (Error: Value not equal)");
6253 };
6254 }
6255
checkEqual_VkDeviceMemoryOpaqueCaptureAddressInfo(const VkDeviceMemoryOpaqueCaptureAddressInfo * a,const VkDeviceMemoryOpaqueCaptureAddressInfo * b,OnFailCompareFunc onFail)6256 void checkEqual_VkDeviceMemoryOpaqueCaptureAddressInfo(
6257 const VkDeviceMemoryOpaqueCaptureAddressInfo* a,
6258 const VkDeviceMemoryOpaqueCaptureAddressInfo* b, OnFailCompareFunc onFail) {
6259 if (!((a->sType) == (b->sType))) {
6260 onFail("a->sType (Error: Value not equal)");
6261 };
6262 if (a->pNext) {
6263 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6264 }
6265 if (!((a->memory) == (b->memory))) {
6266 onFail("a->memory (Error: Value not equal)");
6267 };
6268 }
6269
6270 #endif
6271 #ifdef VK_VERSION_1_3
checkEqual_VkPhysicalDeviceVulkan13Features(const VkPhysicalDeviceVulkan13Features * a,const VkPhysicalDeviceVulkan13Features * b,OnFailCompareFunc onFail)6272 void checkEqual_VkPhysicalDeviceVulkan13Features(const VkPhysicalDeviceVulkan13Features* a,
6273 const VkPhysicalDeviceVulkan13Features* b,
6274 OnFailCompareFunc onFail) {
6275 if (!((a->sType) == (b->sType))) {
6276 onFail("a->sType (Error: Value not equal)");
6277 };
6278 if (a->pNext) {
6279 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6280 }
6281 if (!((a->robustImageAccess) == (b->robustImageAccess))) {
6282 onFail("a->robustImageAccess (Error: Value not equal)");
6283 };
6284 if (!((a->inlineUniformBlock) == (b->inlineUniformBlock))) {
6285 onFail("a->inlineUniformBlock (Error: Value not equal)");
6286 };
6287 if (!((a->descriptorBindingInlineUniformBlockUpdateAfterBind) ==
6288 (b->descriptorBindingInlineUniformBlockUpdateAfterBind))) {
6289 onFail("a->descriptorBindingInlineUniformBlockUpdateAfterBind (Error: Value not equal)");
6290 };
6291 if (!((a->pipelineCreationCacheControl) == (b->pipelineCreationCacheControl))) {
6292 onFail("a->pipelineCreationCacheControl (Error: Value not equal)");
6293 };
6294 if (!((a->privateData) == (b->privateData))) {
6295 onFail("a->privateData (Error: Value not equal)");
6296 };
6297 if (!((a->shaderDemoteToHelperInvocation) == (b->shaderDemoteToHelperInvocation))) {
6298 onFail("a->shaderDemoteToHelperInvocation (Error: Value not equal)");
6299 };
6300 if (!((a->shaderTerminateInvocation) == (b->shaderTerminateInvocation))) {
6301 onFail("a->shaderTerminateInvocation (Error: Value not equal)");
6302 };
6303 if (!((a->subgroupSizeControl) == (b->subgroupSizeControl))) {
6304 onFail("a->subgroupSizeControl (Error: Value not equal)");
6305 };
6306 if (!((a->computeFullSubgroups) == (b->computeFullSubgroups))) {
6307 onFail("a->computeFullSubgroups (Error: Value not equal)");
6308 };
6309 if (!((a->synchronization2) == (b->synchronization2))) {
6310 onFail("a->synchronization2 (Error: Value not equal)");
6311 };
6312 if (!((a->textureCompressionASTC_HDR) == (b->textureCompressionASTC_HDR))) {
6313 onFail("a->textureCompressionASTC_HDR (Error: Value not equal)");
6314 };
6315 if (!((a->shaderZeroInitializeWorkgroupMemory) == (b->shaderZeroInitializeWorkgroupMemory))) {
6316 onFail("a->shaderZeroInitializeWorkgroupMemory (Error: Value not equal)");
6317 };
6318 if (!((a->dynamicRendering) == (b->dynamicRendering))) {
6319 onFail("a->dynamicRendering (Error: Value not equal)");
6320 };
6321 if (!((a->shaderIntegerDotProduct) == (b->shaderIntegerDotProduct))) {
6322 onFail("a->shaderIntegerDotProduct (Error: Value not equal)");
6323 };
6324 if (!((a->maintenance4) == (b->maintenance4))) {
6325 onFail("a->maintenance4 (Error: Value not equal)");
6326 };
6327 }
6328
checkEqual_VkPhysicalDeviceVulkan13Properties(const VkPhysicalDeviceVulkan13Properties * a,const VkPhysicalDeviceVulkan13Properties * b,OnFailCompareFunc onFail)6329 void checkEqual_VkPhysicalDeviceVulkan13Properties(const VkPhysicalDeviceVulkan13Properties* a,
6330 const VkPhysicalDeviceVulkan13Properties* b,
6331 OnFailCompareFunc onFail) {
6332 if (!((a->sType) == (b->sType))) {
6333 onFail("a->sType (Error: Value not equal)");
6334 };
6335 if (a->pNext) {
6336 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6337 }
6338 if (!((a->minSubgroupSize) == (b->minSubgroupSize))) {
6339 onFail("a->minSubgroupSize (Error: Value not equal)");
6340 };
6341 if (!((a->maxSubgroupSize) == (b->maxSubgroupSize))) {
6342 onFail("a->maxSubgroupSize (Error: Value not equal)");
6343 };
6344 if (!((a->maxComputeWorkgroupSubgroups) == (b->maxComputeWorkgroupSubgroups))) {
6345 onFail("a->maxComputeWorkgroupSubgroups (Error: Value not equal)");
6346 };
6347 if (!((a->requiredSubgroupSizeStages) == (b->requiredSubgroupSizeStages))) {
6348 onFail("a->requiredSubgroupSizeStages (Error: Value not equal)");
6349 };
6350 if (!((a->maxInlineUniformBlockSize) == (b->maxInlineUniformBlockSize))) {
6351 onFail("a->maxInlineUniformBlockSize (Error: Value not equal)");
6352 };
6353 if (!((a->maxPerStageDescriptorInlineUniformBlocks) ==
6354 (b->maxPerStageDescriptorInlineUniformBlocks))) {
6355 onFail("a->maxPerStageDescriptorInlineUniformBlocks (Error: Value not equal)");
6356 };
6357 if (!((a->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks) ==
6358 (b->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks))) {
6359 onFail(
6360 "a->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks (Error: Value not equal)");
6361 };
6362 if (!((a->maxDescriptorSetInlineUniformBlocks) == (b->maxDescriptorSetInlineUniformBlocks))) {
6363 onFail("a->maxDescriptorSetInlineUniformBlocks (Error: Value not equal)");
6364 };
6365 if (!((a->maxDescriptorSetUpdateAfterBindInlineUniformBlocks) ==
6366 (b->maxDescriptorSetUpdateAfterBindInlineUniformBlocks))) {
6367 onFail("a->maxDescriptorSetUpdateAfterBindInlineUniformBlocks (Error: Value not equal)");
6368 };
6369 if (!((a->maxInlineUniformTotalSize) == (b->maxInlineUniformTotalSize))) {
6370 onFail("a->maxInlineUniformTotalSize (Error: Value not equal)");
6371 };
6372 if (!((a->integerDotProduct8BitUnsignedAccelerated) ==
6373 (b->integerDotProduct8BitUnsignedAccelerated))) {
6374 onFail("a->integerDotProduct8BitUnsignedAccelerated (Error: Value not equal)");
6375 };
6376 if (!((a->integerDotProduct8BitSignedAccelerated) ==
6377 (b->integerDotProduct8BitSignedAccelerated))) {
6378 onFail("a->integerDotProduct8BitSignedAccelerated (Error: Value not equal)");
6379 };
6380 if (!((a->integerDotProduct8BitMixedSignednessAccelerated) ==
6381 (b->integerDotProduct8BitMixedSignednessAccelerated))) {
6382 onFail("a->integerDotProduct8BitMixedSignednessAccelerated (Error: Value not equal)");
6383 };
6384 if (!((a->integerDotProduct4x8BitPackedUnsignedAccelerated) ==
6385 (b->integerDotProduct4x8BitPackedUnsignedAccelerated))) {
6386 onFail("a->integerDotProduct4x8BitPackedUnsignedAccelerated (Error: Value not equal)");
6387 };
6388 if (!((a->integerDotProduct4x8BitPackedSignedAccelerated) ==
6389 (b->integerDotProduct4x8BitPackedSignedAccelerated))) {
6390 onFail("a->integerDotProduct4x8BitPackedSignedAccelerated (Error: Value not equal)");
6391 };
6392 if (!((a->integerDotProduct4x8BitPackedMixedSignednessAccelerated) ==
6393 (b->integerDotProduct4x8BitPackedMixedSignednessAccelerated))) {
6394 onFail(
6395 "a->integerDotProduct4x8BitPackedMixedSignednessAccelerated (Error: Value not equal)");
6396 };
6397 if (!((a->integerDotProduct16BitUnsignedAccelerated) ==
6398 (b->integerDotProduct16BitUnsignedAccelerated))) {
6399 onFail("a->integerDotProduct16BitUnsignedAccelerated (Error: Value not equal)");
6400 };
6401 if (!((a->integerDotProduct16BitSignedAccelerated) ==
6402 (b->integerDotProduct16BitSignedAccelerated))) {
6403 onFail("a->integerDotProduct16BitSignedAccelerated (Error: Value not equal)");
6404 };
6405 if (!((a->integerDotProduct16BitMixedSignednessAccelerated) ==
6406 (b->integerDotProduct16BitMixedSignednessAccelerated))) {
6407 onFail("a->integerDotProduct16BitMixedSignednessAccelerated (Error: Value not equal)");
6408 };
6409 if (!((a->integerDotProduct32BitUnsignedAccelerated) ==
6410 (b->integerDotProduct32BitUnsignedAccelerated))) {
6411 onFail("a->integerDotProduct32BitUnsignedAccelerated (Error: Value not equal)");
6412 };
6413 if (!((a->integerDotProduct32BitSignedAccelerated) ==
6414 (b->integerDotProduct32BitSignedAccelerated))) {
6415 onFail("a->integerDotProduct32BitSignedAccelerated (Error: Value not equal)");
6416 };
6417 if (!((a->integerDotProduct32BitMixedSignednessAccelerated) ==
6418 (b->integerDotProduct32BitMixedSignednessAccelerated))) {
6419 onFail("a->integerDotProduct32BitMixedSignednessAccelerated (Error: Value not equal)");
6420 };
6421 if (!((a->integerDotProduct64BitUnsignedAccelerated) ==
6422 (b->integerDotProduct64BitUnsignedAccelerated))) {
6423 onFail("a->integerDotProduct64BitUnsignedAccelerated (Error: Value not equal)");
6424 };
6425 if (!((a->integerDotProduct64BitSignedAccelerated) ==
6426 (b->integerDotProduct64BitSignedAccelerated))) {
6427 onFail("a->integerDotProduct64BitSignedAccelerated (Error: Value not equal)");
6428 };
6429 if (!((a->integerDotProduct64BitMixedSignednessAccelerated) ==
6430 (b->integerDotProduct64BitMixedSignednessAccelerated))) {
6431 onFail("a->integerDotProduct64BitMixedSignednessAccelerated (Error: Value not equal)");
6432 };
6433 if (!((a->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated) ==
6434 (b->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated))) {
6435 onFail(
6436 "a->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated (Error: Value not "
6437 "equal)");
6438 };
6439 if (!((a->integerDotProductAccumulatingSaturating8BitSignedAccelerated) ==
6440 (b->integerDotProductAccumulatingSaturating8BitSignedAccelerated))) {
6441 onFail(
6442 "a->integerDotProductAccumulatingSaturating8BitSignedAccelerated (Error: Value not "
6443 "equal)");
6444 };
6445 if (!((a->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated) ==
6446 (b->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated))) {
6447 onFail(
6448 "a->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated (Error: "
6449 "Value not equal)");
6450 };
6451 if (!((a->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated) ==
6452 (b->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated))) {
6453 onFail(
6454 "a->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated (Error: "
6455 "Value not equal)");
6456 };
6457 if (!((a->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated) ==
6458 (b->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated))) {
6459 onFail(
6460 "a->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated (Error: Value "
6461 "not equal)");
6462 };
6463 if (!((a->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated) ==
6464 (b->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated))) {
6465 onFail(
6466 "a->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated "
6467 "(Error: Value not equal)");
6468 };
6469 if (!((a->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated) ==
6470 (b->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated))) {
6471 onFail(
6472 "a->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated (Error: Value not "
6473 "equal)");
6474 };
6475 if (!((a->integerDotProductAccumulatingSaturating16BitSignedAccelerated) ==
6476 (b->integerDotProductAccumulatingSaturating16BitSignedAccelerated))) {
6477 onFail(
6478 "a->integerDotProductAccumulatingSaturating16BitSignedAccelerated (Error: Value not "
6479 "equal)");
6480 };
6481 if (!((a->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated) ==
6482 (b->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated))) {
6483 onFail(
6484 "a->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated (Error: "
6485 "Value not equal)");
6486 };
6487 if (!((a->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated) ==
6488 (b->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated))) {
6489 onFail(
6490 "a->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated (Error: Value not "
6491 "equal)");
6492 };
6493 if (!((a->integerDotProductAccumulatingSaturating32BitSignedAccelerated) ==
6494 (b->integerDotProductAccumulatingSaturating32BitSignedAccelerated))) {
6495 onFail(
6496 "a->integerDotProductAccumulatingSaturating32BitSignedAccelerated (Error: Value not "
6497 "equal)");
6498 };
6499 if (!((a->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated) ==
6500 (b->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated))) {
6501 onFail(
6502 "a->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated (Error: "
6503 "Value not equal)");
6504 };
6505 if (!((a->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated) ==
6506 (b->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated))) {
6507 onFail(
6508 "a->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated (Error: Value not "
6509 "equal)");
6510 };
6511 if (!((a->integerDotProductAccumulatingSaturating64BitSignedAccelerated) ==
6512 (b->integerDotProductAccumulatingSaturating64BitSignedAccelerated))) {
6513 onFail(
6514 "a->integerDotProductAccumulatingSaturating64BitSignedAccelerated (Error: Value not "
6515 "equal)");
6516 };
6517 if (!((a->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated) ==
6518 (b->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated))) {
6519 onFail(
6520 "a->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated (Error: "
6521 "Value not equal)");
6522 };
6523 if (!((a->storageTexelBufferOffsetAlignmentBytes) ==
6524 (b->storageTexelBufferOffsetAlignmentBytes))) {
6525 onFail("a->storageTexelBufferOffsetAlignmentBytes (Error: Value not equal)");
6526 };
6527 if (!((a->storageTexelBufferOffsetSingleTexelAlignment) ==
6528 (b->storageTexelBufferOffsetSingleTexelAlignment))) {
6529 onFail("a->storageTexelBufferOffsetSingleTexelAlignment (Error: Value not equal)");
6530 };
6531 if (!((a->uniformTexelBufferOffsetAlignmentBytes) ==
6532 (b->uniformTexelBufferOffsetAlignmentBytes))) {
6533 onFail("a->uniformTexelBufferOffsetAlignmentBytes (Error: Value not equal)");
6534 };
6535 if (!((a->uniformTexelBufferOffsetSingleTexelAlignment) ==
6536 (b->uniformTexelBufferOffsetSingleTexelAlignment))) {
6537 onFail("a->uniformTexelBufferOffsetSingleTexelAlignment (Error: Value not equal)");
6538 };
6539 if (!((a->maxBufferSize) == (b->maxBufferSize))) {
6540 onFail("a->maxBufferSize (Error: Value not equal)");
6541 };
6542 }
6543
checkEqual_VkPipelineCreationFeedback(const VkPipelineCreationFeedback * a,const VkPipelineCreationFeedback * b,OnFailCompareFunc onFail)6544 void checkEqual_VkPipelineCreationFeedback(const VkPipelineCreationFeedback* a,
6545 const VkPipelineCreationFeedback* b,
6546 OnFailCompareFunc onFail) {
6547 if (!((a->flags) == (b->flags))) {
6548 onFail("a->flags (Error: Value not equal)");
6549 };
6550 if (!((a->duration) == (b->duration))) {
6551 onFail("a->duration (Error: Value not equal)");
6552 };
6553 }
6554
checkEqual_VkPipelineCreationFeedbackCreateInfo(const VkPipelineCreationFeedbackCreateInfo * a,const VkPipelineCreationFeedbackCreateInfo * b,OnFailCompareFunc onFail)6555 void checkEqual_VkPipelineCreationFeedbackCreateInfo(const VkPipelineCreationFeedbackCreateInfo* a,
6556 const VkPipelineCreationFeedbackCreateInfo* b,
6557 OnFailCompareFunc onFail) {
6558 if (!((a->sType) == (b->sType))) {
6559 onFail("a->sType (Error: Value not equal)");
6560 };
6561 if (a->pNext) {
6562 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6563 }
6564 if ((a->pPipelineCreationFeedback) && (b->pPipelineCreationFeedback)) {
6565 checkEqual_VkPipelineCreationFeedback(a->pPipelineCreationFeedback,
6566 b->pPipelineCreationFeedback, onFail);
6567 }
6568 if (!((a->pipelineStageCreationFeedbackCount) == (b->pipelineStageCreationFeedbackCount))) {
6569 onFail("a->pipelineStageCreationFeedbackCount (Error: Value not equal)");
6570 };
6571 if ((a->pPipelineStageCreationFeedbacks) && (b->pPipelineStageCreationFeedbacks)) {
6572 if (!((a->pipelineStageCreationFeedbackCount) == (b->pipelineStageCreationFeedbackCount))) {
6573 onFail("a->pPipelineStageCreationFeedbacks (Error: Lengths not equal)");
6574 };
6575 if ((a->pipelineStageCreationFeedbackCount) == (b->pipelineStageCreationFeedbackCount)) {
6576 if (a) {
6577 for (uint32_t i = 0; i < (uint32_t)a->pipelineStageCreationFeedbackCount; ++i) {
6578 checkEqual_VkPipelineCreationFeedback(a->pPipelineStageCreationFeedbacks + i,
6579 b->pPipelineStageCreationFeedbacks + i,
6580 onFail);
6581 }
6582 }
6583 }
6584 }
6585 }
6586
checkEqual_VkPhysicalDeviceShaderTerminateInvocationFeatures(const VkPhysicalDeviceShaderTerminateInvocationFeatures * a,const VkPhysicalDeviceShaderTerminateInvocationFeatures * b,OnFailCompareFunc onFail)6587 void checkEqual_VkPhysicalDeviceShaderTerminateInvocationFeatures(
6588 const VkPhysicalDeviceShaderTerminateInvocationFeatures* a,
6589 const VkPhysicalDeviceShaderTerminateInvocationFeatures* b, OnFailCompareFunc onFail) {
6590 if (!((a->sType) == (b->sType))) {
6591 onFail("a->sType (Error: Value not equal)");
6592 };
6593 if (a->pNext) {
6594 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6595 }
6596 if (!((a->shaderTerminateInvocation) == (b->shaderTerminateInvocation))) {
6597 onFail("a->shaderTerminateInvocation (Error: Value not equal)");
6598 };
6599 }
6600
checkEqual_VkPhysicalDeviceToolProperties(const VkPhysicalDeviceToolProperties * a,const VkPhysicalDeviceToolProperties * b,OnFailCompareFunc onFail)6601 void checkEqual_VkPhysicalDeviceToolProperties(const VkPhysicalDeviceToolProperties* a,
6602 const VkPhysicalDeviceToolProperties* b,
6603 OnFailCompareFunc onFail) {
6604 if (!((a->sType) == (b->sType))) {
6605 onFail("a->sType (Error: Value not equal)");
6606 };
6607 if (a->pNext) {
6608 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6609 }
6610 if (!((memcmp(a->name, b->name, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)) == 0))) {
6611 onFail("a->name (Error: Unequal static array)");
6612 };
6613 if (!((memcmp(a->version, b->version, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)) == 0))) {
6614 onFail("a->version (Error: Unequal static array)");
6615 };
6616 if (!((a->purposes) == (b->purposes))) {
6617 onFail("a->purposes (Error: Value not equal)");
6618 };
6619 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
6620 onFail("a->description (Error: Unequal static array)");
6621 };
6622 if (!((memcmp(a->layer, b->layer, VK_MAX_EXTENSION_NAME_SIZE * sizeof(char)) == 0))) {
6623 onFail("a->layer (Error: Unequal static array)");
6624 };
6625 }
6626
checkEqual_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures * a,const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures * b,OnFailCompareFunc onFail)6627 void checkEqual_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(
6628 const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* a,
6629 const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures* b, OnFailCompareFunc onFail) {
6630 if (!((a->sType) == (b->sType))) {
6631 onFail("a->sType (Error: Value not equal)");
6632 };
6633 if (a->pNext) {
6634 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6635 }
6636 if (!((a->shaderDemoteToHelperInvocation) == (b->shaderDemoteToHelperInvocation))) {
6637 onFail("a->shaderDemoteToHelperInvocation (Error: Value not equal)");
6638 };
6639 }
6640
checkEqual_VkPhysicalDevicePrivateDataFeatures(const VkPhysicalDevicePrivateDataFeatures * a,const VkPhysicalDevicePrivateDataFeatures * b,OnFailCompareFunc onFail)6641 void checkEqual_VkPhysicalDevicePrivateDataFeatures(const VkPhysicalDevicePrivateDataFeatures* a,
6642 const VkPhysicalDevicePrivateDataFeatures* b,
6643 OnFailCompareFunc onFail) {
6644 if (!((a->sType) == (b->sType))) {
6645 onFail("a->sType (Error: Value not equal)");
6646 };
6647 if (a->pNext) {
6648 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6649 }
6650 if (!((a->privateData) == (b->privateData))) {
6651 onFail("a->privateData (Error: Value not equal)");
6652 };
6653 }
6654
checkEqual_VkDevicePrivateDataCreateInfo(const VkDevicePrivateDataCreateInfo * a,const VkDevicePrivateDataCreateInfo * b,OnFailCompareFunc onFail)6655 void checkEqual_VkDevicePrivateDataCreateInfo(const VkDevicePrivateDataCreateInfo* a,
6656 const VkDevicePrivateDataCreateInfo* b,
6657 OnFailCompareFunc onFail) {
6658 if (!((a->sType) == (b->sType))) {
6659 onFail("a->sType (Error: Value not equal)");
6660 };
6661 if (a->pNext) {
6662 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6663 }
6664 if (!((a->privateDataSlotRequestCount) == (b->privateDataSlotRequestCount))) {
6665 onFail("a->privateDataSlotRequestCount (Error: Value not equal)");
6666 };
6667 }
6668
checkEqual_VkPrivateDataSlotCreateInfo(const VkPrivateDataSlotCreateInfo * a,const VkPrivateDataSlotCreateInfo * b,OnFailCompareFunc onFail)6669 void checkEqual_VkPrivateDataSlotCreateInfo(const VkPrivateDataSlotCreateInfo* a,
6670 const VkPrivateDataSlotCreateInfo* b,
6671 OnFailCompareFunc onFail) {
6672 if (!((a->sType) == (b->sType))) {
6673 onFail("a->sType (Error: Value not equal)");
6674 };
6675 if (a->pNext) {
6676 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6677 }
6678 if (!((a->flags) == (b->flags))) {
6679 onFail("a->flags (Error: Value not equal)");
6680 };
6681 }
6682
checkEqual_VkPhysicalDevicePipelineCreationCacheControlFeatures(const VkPhysicalDevicePipelineCreationCacheControlFeatures * a,const VkPhysicalDevicePipelineCreationCacheControlFeatures * b,OnFailCompareFunc onFail)6683 void checkEqual_VkPhysicalDevicePipelineCreationCacheControlFeatures(
6684 const VkPhysicalDevicePipelineCreationCacheControlFeatures* a,
6685 const VkPhysicalDevicePipelineCreationCacheControlFeatures* b, OnFailCompareFunc onFail) {
6686 if (!((a->sType) == (b->sType))) {
6687 onFail("a->sType (Error: Value not equal)");
6688 };
6689 if (a->pNext) {
6690 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6691 }
6692 if (!((a->pipelineCreationCacheControl) == (b->pipelineCreationCacheControl))) {
6693 onFail("a->pipelineCreationCacheControl (Error: Value not equal)");
6694 };
6695 }
6696
checkEqual_VkMemoryBarrier2(const VkMemoryBarrier2 * a,const VkMemoryBarrier2 * b,OnFailCompareFunc onFail)6697 void checkEqual_VkMemoryBarrier2(const VkMemoryBarrier2* a, const VkMemoryBarrier2* b,
6698 OnFailCompareFunc onFail) {
6699 if (!((a->sType) == (b->sType))) {
6700 onFail("a->sType (Error: Value not equal)");
6701 };
6702 if (a->pNext) {
6703 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6704 }
6705 if (!((a->srcStageMask) == (b->srcStageMask))) {
6706 onFail("a->srcStageMask (Error: Value not equal)");
6707 };
6708 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
6709 onFail("a->srcAccessMask (Error: Value not equal)");
6710 };
6711 if (!((a->dstStageMask) == (b->dstStageMask))) {
6712 onFail("a->dstStageMask (Error: Value not equal)");
6713 };
6714 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
6715 onFail("a->dstAccessMask (Error: Value not equal)");
6716 };
6717 }
6718
checkEqual_VkBufferMemoryBarrier2(const VkBufferMemoryBarrier2 * a,const VkBufferMemoryBarrier2 * b,OnFailCompareFunc onFail)6719 void checkEqual_VkBufferMemoryBarrier2(const VkBufferMemoryBarrier2* a,
6720 const VkBufferMemoryBarrier2* b, OnFailCompareFunc onFail) {
6721 if (!((a->sType) == (b->sType))) {
6722 onFail("a->sType (Error: Value not equal)");
6723 };
6724 if (a->pNext) {
6725 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6726 }
6727 if (!((a->srcStageMask) == (b->srcStageMask))) {
6728 onFail("a->srcStageMask (Error: Value not equal)");
6729 };
6730 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
6731 onFail("a->srcAccessMask (Error: Value not equal)");
6732 };
6733 if (!((a->dstStageMask) == (b->dstStageMask))) {
6734 onFail("a->dstStageMask (Error: Value not equal)");
6735 };
6736 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
6737 onFail("a->dstAccessMask (Error: Value not equal)");
6738 };
6739 if (!((a->srcQueueFamilyIndex) == (b->srcQueueFamilyIndex))) {
6740 onFail("a->srcQueueFamilyIndex (Error: Value not equal)");
6741 };
6742 if (!((a->dstQueueFamilyIndex) == (b->dstQueueFamilyIndex))) {
6743 onFail("a->dstQueueFamilyIndex (Error: Value not equal)");
6744 };
6745 if (!((a->buffer) == (b->buffer))) {
6746 onFail("a->buffer (Error: Value not equal)");
6747 };
6748 if (!((a->offset) == (b->offset))) {
6749 onFail("a->offset (Error: Value not equal)");
6750 };
6751 if (!((a->size) == (b->size))) {
6752 onFail("a->size (Error: Value not equal)");
6753 };
6754 }
6755
checkEqual_VkImageMemoryBarrier2(const VkImageMemoryBarrier2 * a,const VkImageMemoryBarrier2 * b,OnFailCompareFunc onFail)6756 void checkEqual_VkImageMemoryBarrier2(const VkImageMemoryBarrier2* a,
6757 const VkImageMemoryBarrier2* b, OnFailCompareFunc onFail) {
6758 if (!((a->sType) == (b->sType))) {
6759 onFail("a->sType (Error: Value not equal)");
6760 };
6761 if (a->pNext) {
6762 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6763 }
6764 if (!((a->srcStageMask) == (b->srcStageMask))) {
6765 onFail("a->srcStageMask (Error: Value not equal)");
6766 };
6767 if (!((a->srcAccessMask) == (b->srcAccessMask))) {
6768 onFail("a->srcAccessMask (Error: Value not equal)");
6769 };
6770 if (!((a->dstStageMask) == (b->dstStageMask))) {
6771 onFail("a->dstStageMask (Error: Value not equal)");
6772 };
6773 if (!((a->dstAccessMask) == (b->dstAccessMask))) {
6774 onFail("a->dstAccessMask (Error: Value not equal)");
6775 };
6776 if (!((a->oldLayout) == (b->oldLayout))) {
6777 onFail("a->oldLayout (Error: Value not equal)");
6778 };
6779 if (!((a->newLayout) == (b->newLayout))) {
6780 onFail("a->newLayout (Error: Value not equal)");
6781 };
6782 if (!((a->srcQueueFamilyIndex) == (b->srcQueueFamilyIndex))) {
6783 onFail("a->srcQueueFamilyIndex (Error: Value not equal)");
6784 };
6785 if (!((a->dstQueueFamilyIndex) == (b->dstQueueFamilyIndex))) {
6786 onFail("a->dstQueueFamilyIndex (Error: Value not equal)");
6787 };
6788 if (!((a->image) == (b->image))) {
6789 onFail("a->image (Error: Value not equal)");
6790 };
6791 checkEqual_VkImageSubresourceRange(&a->subresourceRange, &b->subresourceRange, onFail);
6792 }
6793
checkEqual_VkDependencyInfo(const VkDependencyInfo * a,const VkDependencyInfo * b,OnFailCompareFunc onFail)6794 void checkEqual_VkDependencyInfo(const VkDependencyInfo* a, const VkDependencyInfo* b,
6795 OnFailCompareFunc onFail) {
6796 if (!((a->sType) == (b->sType))) {
6797 onFail("a->sType (Error: Value not equal)");
6798 };
6799 if (a->pNext) {
6800 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6801 }
6802 if (!((a->dependencyFlags) == (b->dependencyFlags))) {
6803 onFail("a->dependencyFlags (Error: Value not equal)");
6804 };
6805 if (!((a->memoryBarrierCount) == (b->memoryBarrierCount))) {
6806 onFail("a->memoryBarrierCount (Error: Value not equal)");
6807 };
6808 if ((a->pMemoryBarriers) && (b->pMemoryBarriers)) {
6809 if (!((a->memoryBarrierCount) == (b->memoryBarrierCount))) {
6810 onFail("a->pMemoryBarriers (Error: Lengths not equal)");
6811 };
6812 if ((a->memoryBarrierCount) == (b->memoryBarrierCount)) {
6813 if (a) {
6814 for (uint32_t i = 0; i < (uint32_t)a->memoryBarrierCount; ++i) {
6815 checkEqual_VkMemoryBarrier2(a->pMemoryBarriers + i, b->pMemoryBarriers + i,
6816 onFail);
6817 }
6818 }
6819 }
6820 }
6821 if (!((a->bufferMemoryBarrierCount) == (b->bufferMemoryBarrierCount))) {
6822 onFail("a->bufferMemoryBarrierCount (Error: Value not equal)");
6823 };
6824 if ((a->pBufferMemoryBarriers) && (b->pBufferMemoryBarriers)) {
6825 if (!((a->bufferMemoryBarrierCount) == (b->bufferMemoryBarrierCount))) {
6826 onFail("a->pBufferMemoryBarriers (Error: Lengths not equal)");
6827 };
6828 if ((a->bufferMemoryBarrierCount) == (b->bufferMemoryBarrierCount)) {
6829 if (a) {
6830 for (uint32_t i = 0; i < (uint32_t)a->bufferMemoryBarrierCount; ++i) {
6831 checkEqual_VkBufferMemoryBarrier2(a->pBufferMemoryBarriers + i,
6832 b->pBufferMemoryBarriers + i, onFail);
6833 }
6834 }
6835 }
6836 }
6837 if (!((a->imageMemoryBarrierCount) == (b->imageMemoryBarrierCount))) {
6838 onFail("a->imageMemoryBarrierCount (Error: Value not equal)");
6839 };
6840 if ((a->pImageMemoryBarriers) && (b->pImageMemoryBarriers)) {
6841 if (!((a->imageMemoryBarrierCount) == (b->imageMemoryBarrierCount))) {
6842 onFail("a->pImageMemoryBarriers (Error: Lengths not equal)");
6843 };
6844 if ((a->imageMemoryBarrierCount) == (b->imageMemoryBarrierCount)) {
6845 if (a) {
6846 for (uint32_t i = 0; i < (uint32_t)a->imageMemoryBarrierCount; ++i) {
6847 checkEqual_VkImageMemoryBarrier2(a->pImageMemoryBarriers + i,
6848 b->pImageMemoryBarriers + i, onFail);
6849 }
6850 }
6851 }
6852 }
6853 }
6854
checkEqual_VkSemaphoreSubmitInfo(const VkSemaphoreSubmitInfo * a,const VkSemaphoreSubmitInfo * b,OnFailCompareFunc onFail)6855 void checkEqual_VkSemaphoreSubmitInfo(const VkSemaphoreSubmitInfo* a,
6856 const VkSemaphoreSubmitInfo* b, OnFailCompareFunc onFail) {
6857 if (!((a->sType) == (b->sType))) {
6858 onFail("a->sType (Error: Value not equal)");
6859 };
6860 if (a->pNext) {
6861 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6862 }
6863 if (!((a->semaphore) == (b->semaphore))) {
6864 onFail("a->semaphore (Error: Value not equal)");
6865 };
6866 if (!((a->value) == (b->value))) {
6867 onFail("a->value (Error: Value not equal)");
6868 };
6869 if (!((a->stageMask) == (b->stageMask))) {
6870 onFail("a->stageMask (Error: Value not equal)");
6871 };
6872 if (!((a->deviceIndex) == (b->deviceIndex))) {
6873 onFail("a->deviceIndex (Error: Value not equal)");
6874 };
6875 }
6876
checkEqual_VkCommandBufferSubmitInfo(const VkCommandBufferSubmitInfo * a,const VkCommandBufferSubmitInfo * b,OnFailCompareFunc onFail)6877 void checkEqual_VkCommandBufferSubmitInfo(const VkCommandBufferSubmitInfo* a,
6878 const VkCommandBufferSubmitInfo* b,
6879 OnFailCompareFunc onFail) {
6880 if (!((a->sType) == (b->sType))) {
6881 onFail("a->sType (Error: Value not equal)");
6882 };
6883 if (a->pNext) {
6884 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6885 }
6886 if (!((a->commandBuffer) == (b->commandBuffer))) {
6887 onFail("a->commandBuffer (Error: Value not equal)");
6888 };
6889 if (!((a->deviceMask) == (b->deviceMask))) {
6890 onFail("a->deviceMask (Error: Value not equal)");
6891 };
6892 }
6893
checkEqual_VkSubmitInfo2(const VkSubmitInfo2 * a,const VkSubmitInfo2 * b,OnFailCompareFunc onFail)6894 void checkEqual_VkSubmitInfo2(const VkSubmitInfo2* a, const VkSubmitInfo2* b,
6895 OnFailCompareFunc onFail) {
6896 if (!((a->sType) == (b->sType))) {
6897 onFail("a->sType (Error: Value not equal)");
6898 };
6899 if (a->pNext) {
6900 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6901 }
6902 if (!((a->flags) == (b->flags))) {
6903 onFail("a->flags (Error: Value not equal)");
6904 };
6905 if (!((a->waitSemaphoreInfoCount) == (b->waitSemaphoreInfoCount))) {
6906 onFail("a->waitSemaphoreInfoCount (Error: Value not equal)");
6907 };
6908 if ((a->pWaitSemaphoreInfos) && (b->pWaitSemaphoreInfos)) {
6909 if (!((a->waitSemaphoreInfoCount) == (b->waitSemaphoreInfoCount))) {
6910 onFail("a->pWaitSemaphoreInfos (Error: Lengths not equal)");
6911 };
6912 if ((a->waitSemaphoreInfoCount) == (b->waitSemaphoreInfoCount)) {
6913 if (a) {
6914 for (uint32_t i = 0; i < (uint32_t)a->waitSemaphoreInfoCount; ++i) {
6915 checkEqual_VkSemaphoreSubmitInfo(a->pWaitSemaphoreInfos + i,
6916 b->pWaitSemaphoreInfos + i, onFail);
6917 }
6918 }
6919 }
6920 }
6921 if (!((a->commandBufferInfoCount) == (b->commandBufferInfoCount))) {
6922 onFail("a->commandBufferInfoCount (Error: Value not equal)");
6923 };
6924 if ((a->pCommandBufferInfos) && (b->pCommandBufferInfos)) {
6925 if (!((a->commandBufferInfoCount) == (b->commandBufferInfoCount))) {
6926 onFail("a->pCommandBufferInfos (Error: Lengths not equal)");
6927 };
6928 if ((a->commandBufferInfoCount) == (b->commandBufferInfoCount)) {
6929 if (a) {
6930 for (uint32_t i = 0; i < (uint32_t)a->commandBufferInfoCount; ++i) {
6931 checkEqual_VkCommandBufferSubmitInfo(a->pCommandBufferInfos + i,
6932 b->pCommandBufferInfos + i, onFail);
6933 }
6934 }
6935 }
6936 }
6937 if (!((a->signalSemaphoreInfoCount) == (b->signalSemaphoreInfoCount))) {
6938 onFail("a->signalSemaphoreInfoCount (Error: Value not equal)");
6939 };
6940 if ((a->pSignalSemaphoreInfos) && (b->pSignalSemaphoreInfos)) {
6941 if (!((a->signalSemaphoreInfoCount) == (b->signalSemaphoreInfoCount))) {
6942 onFail("a->pSignalSemaphoreInfos (Error: Lengths not equal)");
6943 };
6944 if ((a->signalSemaphoreInfoCount) == (b->signalSemaphoreInfoCount)) {
6945 if (a) {
6946 for (uint32_t i = 0; i < (uint32_t)a->signalSemaphoreInfoCount; ++i) {
6947 checkEqual_VkSemaphoreSubmitInfo(a->pSignalSemaphoreInfos + i,
6948 b->pSignalSemaphoreInfos + i, onFail);
6949 }
6950 }
6951 }
6952 }
6953 }
6954
checkEqual_VkPhysicalDeviceSynchronization2Features(const VkPhysicalDeviceSynchronization2Features * a,const VkPhysicalDeviceSynchronization2Features * b,OnFailCompareFunc onFail)6955 void checkEqual_VkPhysicalDeviceSynchronization2Features(
6956 const VkPhysicalDeviceSynchronization2Features* a,
6957 const VkPhysicalDeviceSynchronization2Features* b, OnFailCompareFunc onFail) {
6958 if (!((a->sType) == (b->sType))) {
6959 onFail("a->sType (Error: Value not equal)");
6960 };
6961 if (a->pNext) {
6962 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6963 }
6964 if (!((a->synchronization2) == (b->synchronization2))) {
6965 onFail("a->synchronization2 (Error: Value not equal)");
6966 };
6967 }
6968
checkEqual_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures * a,const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures * b,OnFailCompareFunc onFail)6969 void checkEqual_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(
6970 const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* a,
6971 const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures* b, OnFailCompareFunc onFail) {
6972 if (!((a->sType) == (b->sType))) {
6973 onFail("a->sType (Error: Value not equal)");
6974 };
6975 if (a->pNext) {
6976 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6977 }
6978 if (!((a->shaderZeroInitializeWorkgroupMemory) == (b->shaderZeroInitializeWorkgroupMemory))) {
6979 onFail("a->shaderZeroInitializeWorkgroupMemory (Error: Value not equal)");
6980 };
6981 }
6982
checkEqual_VkPhysicalDeviceImageRobustnessFeatures(const VkPhysicalDeviceImageRobustnessFeatures * a,const VkPhysicalDeviceImageRobustnessFeatures * b,OnFailCompareFunc onFail)6983 void checkEqual_VkPhysicalDeviceImageRobustnessFeatures(
6984 const VkPhysicalDeviceImageRobustnessFeatures* a,
6985 const VkPhysicalDeviceImageRobustnessFeatures* b, OnFailCompareFunc onFail) {
6986 if (!((a->sType) == (b->sType))) {
6987 onFail("a->sType (Error: Value not equal)");
6988 };
6989 if (a->pNext) {
6990 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
6991 }
6992 if (!((a->robustImageAccess) == (b->robustImageAccess))) {
6993 onFail("a->robustImageAccess (Error: Value not equal)");
6994 };
6995 }
6996
checkEqual_VkBufferCopy2(const VkBufferCopy2 * a,const VkBufferCopy2 * b,OnFailCompareFunc onFail)6997 void checkEqual_VkBufferCopy2(const VkBufferCopy2* a, const VkBufferCopy2* b,
6998 OnFailCompareFunc onFail) {
6999 if (!((a->sType) == (b->sType))) {
7000 onFail("a->sType (Error: Value not equal)");
7001 };
7002 if (a->pNext) {
7003 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7004 }
7005 if (!((a->srcOffset) == (b->srcOffset))) {
7006 onFail("a->srcOffset (Error: Value not equal)");
7007 };
7008 if (!((a->dstOffset) == (b->dstOffset))) {
7009 onFail("a->dstOffset (Error: Value not equal)");
7010 };
7011 if (!((a->size) == (b->size))) {
7012 onFail("a->size (Error: Value not equal)");
7013 };
7014 }
7015
checkEqual_VkCopyBufferInfo2(const VkCopyBufferInfo2 * a,const VkCopyBufferInfo2 * b,OnFailCompareFunc onFail)7016 void checkEqual_VkCopyBufferInfo2(const VkCopyBufferInfo2* a, const VkCopyBufferInfo2* b,
7017 OnFailCompareFunc onFail) {
7018 if (!((a->sType) == (b->sType))) {
7019 onFail("a->sType (Error: Value not equal)");
7020 };
7021 if (a->pNext) {
7022 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7023 }
7024 if (!((a->srcBuffer) == (b->srcBuffer))) {
7025 onFail("a->srcBuffer (Error: Value not equal)");
7026 };
7027 if (!((a->dstBuffer) == (b->dstBuffer))) {
7028 onFail("a->dstBuffer (Error: Value not equal)");
7029 };
7030 if (!((a->regionCount) == (b->regionCount))) {
7031 onFail("a->regionCount (Error: Value not equal)");
7032 };
7033 if ((a->pRegions) && (b->pRegions)) {
7034 if (!((a->regionCount) == (b->regionCount))) {
7035 onFail("a->pRegions (Error: Lengths not equal)");
7036 };
7037 if ((a->regionCount) == (b->regionCount)) {
7038 if (a) {
7039 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
7040 checkEqual_VkBufferCopy2(a->pRegions + i, b->pRegions + i, onFail);
7041 }
7042 }
7043 }
7044 }
7045 }
7046
checkEqual_VkImageCopy2(const VkImageCopy2 * a,const VkImageCopy2 * b,OnFailCompareFunc onFail)7047 void checkEqual_VkImageCopy2(const VkImageCopy2* a, const VkImageCopy2* b,
7048 OnFailCompareFunc onFail) {
7049 if (!((a->sType) == (b->sType))) {
7050 onFail("a->sType (Error: Value not equal)");
7051 };
7052 if (a->pNext) {
7053 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7054 }
7055 checkEqual_VkImageSubresourceLayers(&a->srcSubresource, &b->srcSubresource, onFail);
7056 checkEqual_VkOffset3D(&a->srcOffset, &b->srcOffset, onFail);
7057 checkEqual_VkImageSubresourceLayers(&a->dstSubresource, &b->dstSubresource, onFail);
7058 checkEqual_VkOffset3D(&a->dstOffset, &b->dstOffset, onFail);
7059 checkEqual_VkExtent3D(&a->extent, &b->extent, onFail);
7060 }
7061
checkEqual_VkCopyImageInfo2(const VkCopyImageInfo2 * a,const VkCopyImageInfo2 * b,OnFailCompareFunc onFail)7062 void checkEqual_VkCopyImageInfo2(const VkCopyImageInfo2* a, const VkCopyImageInfo2* b,
7063 OnFailCompareFunc onFail) {
7064 if (!((a->sType) == (b->sType))) {
7065 onFail("a->sType (Error: Value not equal)");
7066 };
7067 if (a->pNext) {
7068 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7069 }
7070 if (!((a->srcImage) == (b->srcImage))) {
7071 onFail("a->srcImage (Error: Value not equal)");
7072 };
7073 if (!((a->srcImageLayout) == (b->srcImageLayout))) {
7074 onFail("a->srcImageLayout (Error: Value not equal)");
7075 };
7076 if (!((a->dstImage) == (b->dstImage))) {
7077 onFail("a->dstImage (Error: Value not equal)");
7078 };
7079 if (!((a->dstImageLayout) == (b->dstImageLayout))) {
7080 onFail("a->dstImageLayout (Error: Value not equal)");
7081 };
7082 if (!((a->regionCount) == (b->regionCount))) {
7083 onFail("a->regionCount (Error: Value not equal)");
7084 };
7085 if ((a->pRegions) && (b->pRegions)) {
7086 if (!((a->regionCount) == (b->regionCount))) {
7087 onFail("a->pRegions (Error: Lengths not equal)");
7088 };
7089 if ((a->regionCount) == (b->regionCount)) {
7090 if (a) {
7091 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
7092 checkEqual_VkImageCopy2(a->pRegions + i, b->pRegions + i, onFail);
7093 }
7094 }
7095 }
7096 }
7097 }
7098
checkEqual_VkBufferImageCopy2(const VkBufferImageCopy2 * a,const VkBufferImageCopy2 * b,OnFailCompareFunc onFail)7099 void checkEqual_VkBufferImageCopy2(const VkBufferImageCopy2* a, const VkBufferImageCopy2* b,
7100 OnFailCompareFunc onFail) {
7101 if (!((a->sType) == (b->sType))) {
7102 onFail("a->sType (Error: Value not equal)");
7103 };
7104 if (a->pNext) {
7105 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7106 }
7107 if (!((a->bufferOffset) == (b->bufferOffset))) {
7108 onFail("a->bufferOffset (Error: Value not equal)");
7109 };
7110 if (!((a->bufferRowLength) == (b->bufferRowLength))) {
7111 onFail("a->bufferRowLength (Error: Value not equal)");
7112 };
7113 if (!((a->bufferImageHeight) == (b->bufferImageHeight))) {
7114 onFail("a->bufferImageHeight (Error: Value not equal)");
7115 };
7116 checkEqual_VkImageSubresourceLayers(&a->imageSubresource, &b->imageSubresource, onFail);
7117 checkEqual_VkOffset3D(&a->imageOffset, &b->imageOffset, onFail);
7118 checkEqual_VkExtent3D(&a->imageExtent, &b->imageExtent, onFail);
7119 }
7120
checkEqual_VkCopyBufferToImageInfo2(const VkCopyBufferToImageInfo2 * a,const VkCopyBufferToImageInfo2 * b,OnFailCompareFunc onFail)7121 void checkEqual_VkCopyBufferToImageInfo2(const VkCopyBufferToImageInfo2* a,
7122 const VkCopyBufferToImageInfo2* b,
7123 OnFailCompareFunc onFail) {
7124 if (!((a->sType) == (b->sType))) {
7125 onFail("a->sType (Error: Value not equal)");
7126 };
7127 if (a->pNext) {
7128 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7129 }
7130 if (!((a->srcBuffer) == (b->srcBuffer))) {
7131 onFail("a->srcBuffer (Error: Value not equal)");
7132 };
7133 if (!((a->dstImage) == (b->dstImage))) {
7134 onFail("a->dstImage (Error: Value not equal)");
7135 };
7136 if (!((a->dstImageLayout) == (b->dstImageLayout))) {
7137 onFail("a->dstImageLayout (Error: Value not equal)");
7138 };
7139 if (!((a->regionCount) == (b->regionCount))) {
7140 onFail("a->regionCount (Error: Value not equal)");
7141 };
7142 if ((a->pRegions) && (b->pRegions)) {
7143 if (!((a->regionCount) == (b->regionCount))) {
7144 onFail("a->pRegions (Error: Lengths not equal)");
7145 };
7146 if ((a->regionCount) == (b->regionCount)) {
7147 if (a) {
7148 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
7149 checkEqual_VkBufferImageCopy2(a->pRegions + i, b->pRegions + i, onFail);
7150 }
7151 }
7152 }
7153 }
7154 }
7155
checkEqual_VkCopyImageToBufferInfo2(const VkCopyImageToBufferInfo2 * a,const VkCopyImageToBufferInfo2 * b,OnFailCompareFunc onFail)7156 void checkEqual_VkCopyImageToBufferInfo2(const VkCopyImageToBufferInfo2* a,
7157 const VkCopyImageToBufferInfo2* b,
7158 OnFailCompareFunc onFail) {
7159 if (!((a->sType) == (b->sType))) {
7160 onFail("a->sType (Error: Value not equal)");
7161 };
7162 if (a->pNext) {
7163 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7164 }
7165 if (!((a->srcImage) == (b->srcImage))) {
7166 onFail("a->srcImage (Error: Value not equal)");
7167 };
7168 if (!((a->srcImageLayout) == (b->srcImageLayout))) {
7169 onFail("a->srcImageLayout (Error: Value not equal)");
7170 };
7171 if (!((a->dstBuffer) == (b->dstBuffer))) {
7172 onFail("a->dstBuffer (Error: Value not equal)");
7173 };
7174 if (!((a->regionCount) == (b->regionCount))) {
7175 onFail("a->regionCount (Error: Value not equal)");
7176 };
7177 if ((a->pRegions) && (b->pRegions)) {
7178 if (!((a->regionCount) == (b->regionCount))) {
7179 onFail("a->pRegions (Error: Lengths not equal)");
7180 };
7181 if ((a->regionCount) == (b->regionCount)) {
7182 if (a) {
7183 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
7184 checkEqual_VkBufferImageCopy2(a->pRegions + i, b->pRegions + i, onFail);
7185 }
7186 }
7187 }
7188 }
7189 }
7190
checkEqual_VkImageBlit2(const VkImageBlit2 * a,const VkImageBlit2 * b,OnFailCompareFunc onFail)7191 void checkEqual_VkImageBlit2(const VkImageBlit2* a, const VkImageBlit2* b,
7192 OnFailCompareFunc onFail) {
7193 if (!((a->sType) == (b->sType))) {
7194 onFail("a->sType (Error: Value not equal)");
7195 };
7196 if (a->pNext) {
7197 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7198 }
7199 checkEqual_VkImageSubresourceLayers(&a->srcSubresource, &b->srcSubresource, onFail);
7200 if (!((2) == (2))) {
7201 onFail("a->srcOffsets (Error: Lengths not equal)");
7202 };
7203 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
7204 checkEqual_VkOffset3D(a->srcOffsets + i, b->srcOffsets + i, onFail);
7205 }
7206 checkEqual_VkImageSubresourceLayers(&a->dstSubresource, &b->dstSubresource, onFail);
7207 if (!((2) == (2))) {
7208 onFail("a->dstOffsets (Error: Lengths not equal)");
7209 };
7210 for (uint32_t i = 0; i < (uint32_t)2; ++i) {
7211 checkEqual_VkOffset3D(a->dstOffsets + i, b->dstOffsets + i, onFail);
7212 }
7213 }
7214
checkEqual_VkBlitImageInfo2(const VkBlitImageInfo2 * a,const VkBlitImageInfo2 * b,OnFailCompareFunc onFail)7215 void checkEqual_VkBlitImageInfo2(const VkBlitImageInfo2* a, const VkBlitImageInfo2* b,
7216 OnFailCompareFunc onFail) {
7217 if (!((a->sType) == (b->sType))) {
7218 onFail("a->sType (Error: Value not equal)");
7219 };
7220 if (a->pNext) {
7221 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7222 }
7223 if (!((a->srcImage) == (b->srcImage))) {
7224 onFail("a->srcImage (Error: Value not equal)");
7225 };
7226 if (!((a->srcImageLayout) == (b->srcImageLayout))) {
7227 onFail("a->srcImageLayout (Error: Value not equal)");
7228 };
7229 if (!((a->dstImage) == (b->dstImage))) {
7230 onFail("a->dstImage (Error: Value not equal)");
7231 };
7232 if (!((a->dstImageLayout) == (b->dstImageLayout))) {
7233 onFail("a->dstImageLayout (Error: Value not equal)");
7234 };
7235 if (!((a->regionCount) == (b->regionCount))) {
7236 onFail("a->regionCount (Error: Value not equal)");
7237 };
7238 if ((a->pRegions) && (b->pRegions)) {
7239 if (!((a->regionCount) == (b->regionCount))) {
7240 onFail("a->pRegions (Error: Lengths not equal)");
7241 };
7242 if ((a->regionCount) == (b->regionCount)) {
7243 if (a) {
7244 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
7245 checkEqual_VkImageBlit2(a->pRegions + i, b->pRegions + i, onFail);
7246 }
7247 }
7248 }
7249 }
7250 if (!((a->filter) == (b->filter))) {
7251 onFail("a->filter (Error: Value not equal)");
7252 };
7253 }
7254
checkEqual_VkImageResolve2(const VkImageResolve2 * a,const VkImageResolve2 * b,OnFailCompareFunc onFail)7255 void checkEqual_VkImageResolve2(const VkImageResolve2* a, const VkImageResolve2* b,
7256 OnFailCompareFunc onFail) {
7257 if (!((a->sType) == (b->sType))) {
7258 onFail("a->sType (Error: Value not equal)");
7259 };
7260 if (a->pNext) {
7261 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7262 }
7263 checkEqual_VkImageSubresourceLayers(&a->srcSubresource, &b->srcSubresource, onFail);
7264 checkEqual_VkOffset3D(&a->srcOffset, &b->srcOffset, onFail);
7265 checkEqual_VkImageSubresourceLayers(&a->dstSubresource, &b->dstSubresource, onFail);
7266 checkEqual_VkOffset3D(&a->dstOffset, &b->dstOffset, onFail);
7267 checkEqual_VkExtent3D(&a->extent, &b->extent, onFail);
7268 }
7269
checkEqual_VkResolveImageInfo2(const VkResolveImageInfo2 * a,const VkResolveImageInfo2 * b,OnFailCompareFunc onFail)7270 void checkEqual_VkResolveImageInfo2(const VkResolveImageInfo2* a, const VkResolveImageInfo2* b,
7271 OnFailCompareFunc onFail) {
7272 if (!((a->sType) == (b->sType))) {
7273 onFail("a->sType (Error: Value not equal)");
7274 };
7275 if (a->pNext) {
7276 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7277 }
7278 if (!((a->srcImage) == (b->srcImage))) {
7279 onFail("a->srcImage (Error: Value not equal)");
7280 };
7281 if (!((a->srcImageLayout) == (b->srcImageLayout))) {
7282 onFail("a->srcImageLayout (Error: Value not equal)");
7283 };
7284 if (!((a->dstImage) == (b->dstImage))) {
7285 onFail("a->dstImage (Error: Value not equal)");
7286 };
7287 if (!((a->dstImageLayout) == (b->dstImageLayout))) {
7288 onFail("a->dstImageLayout (Error: Value not equal)");
7289 };
7290 if (!((a->regionCount) == (b->regionCount))) {
7291 onFail("a->regionCount (Error: Value not equal)");
7292 };
7293 if ((a->pRegions) && (b->pRegions)) {
7294 if (!((a->regionCount) == (b->regionCount))) {
7295 onFail("a->pRegions (Error: Lengths not equal)");
7296 };
7297 if ((a->regionCount) == (b->regionCount)) {
7298 if (a) {
7299 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
7300 checkEqual_VkImageResolve2(a->pRegions + i, b->pRegions + i, onFail);
7301 }
7302 }
7303 }
7304 }
7305 }
7306
checkEqual_VkPhysicalDeviceSubgroupSizeControlFeatures(const VkPhysicalDeviceSubgroupSizeControlFeatures * a,const VkPhysicalDeviceSubgroupSizeControlFeatures * b,OnFailCompareFunc onFail)7307 void checkEqual_VkPhysicalDeviceSubgroupSizeControlFeatures(
7308 const VkPhysicalDeviceSubgroupSizeControlFeatures* a,
7309 const VkPhysicalDeviceSubgroupSizeControlFeatures* b, OnFailCompareFunc onFail) {
7310 if (!((a->sType) == (b->sType))) {
7311 onFail("a->sType (Error: Value not equal)");
7312 };
7313 if (a->pNext) {
7314 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7315 }
7316 if (!((a->subgroupSizeControl) == (b->subgroupSizeControl))) {
7317 onFail("a->subgroupSizeControl (Error: Value not equal)");
7318 };
7319 if (!((a->computeFullSubgroups) == (b->computeFullSubgroups))) {
7320 onFail("a->computeFullSubgroups (Error: Value not equal)");
7321 };
7322 }
7323
checkEqual_VkPhysicalDeviceSubgroupSizeControlProperties(const VkPhysicalDeviceSubgroupSizeControlProperties * a,const VkPhysicalDeviceSubgroupSizeControlProperties * b,OnFailCompareFunc onFail)7324 void checkEqual_VkPhysicalDeviceSubgroupSizeControlProperties(
7325 const VkPhysicalDeviceSubgroupSizeControlProperties* a,
7326 const VkPhysicalDeviceSubgroupSizeControlProperties* b, OnFailCompareFunc onFail) {
7327 if (!((a->sType) == (b->sType))) {
7328 onFail("a->sType (Error: Value not equal)");
7329 };
7330 if (a->pNext) {
7331 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7332 }
7333 if (!((a->minSubgroupSize) == (b->minSubgroupSize))) {
7334 onFail("a->minSubgroupSize (Error: Value not equal)");
7335 };
7336 if (!((a->maxSubgroupSize) == (b->maxSubgroupSize))) {
7337 onFail("a->maxSubgroupSize (Error: Value not equal)");
7338 };
7339 if (!((a->maxComputeWorkgroupSubgroups) == (b->maxComputeWorkgroupSubgroups))) {
7340 onFail("a->maxComputeWorkgroupSubgroups (Error: Value not equal)");
7341 };
7342 if (!((a->requiredSubgroupSizeStages) == (b->requiredSubgroupSizeStages))) {
7343 onFail("a->requiredSubgroupSizeStages (Error: Value not equal)");
7344 };
7345 }
7346
checkEqual_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo * a,const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo * b,OnFailCompareFunc onFail)7347 void checkEqual_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(
7348 const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* a,
7349 const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo* b, OnFailCompareFunc onFail) {
7350 if (!((a->sType) == (b->sType))) {
7351 onFail("a->sType (Error: Value not equal)");
7352 };
7353 if (a->pNext) {
7354 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7355 }
7356 if (!((a->requiredSubgroupSize) == (b->requiredSubgroupSize))) {
7357 onFail("a->requiredSubgroupSize (Error: Value not equal)");
7358 };
7359 }
7360
checkEqual_VkPhysicalDeviceInlineUniformBlockFeatures(const VkPhysicalDeviceInlineUniformBlockFeatures * a,const VkPhysicalDeviceInlineUniformBlockFeatures * b,OnFailCompareFunc onFail)7361 void checkEqual_VkPhysicalDeviceInlineUniformBlockFeatures(
7362 const VkPhysicalDeviceInlineUniformBlockFeatures* a,
7363 const VkPhysicalDeviceInlineUniformBlockFeatures* b, OnFailCompareFunc onFail) {
7364 if (!((a->sType) == (b->sType))) {
7365 onFail("a->sType (Error: Value not equal)");
7366 };
7367 if (a->pNext) {
7368 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7369 }
7370 if (!((a->inlineUniformBlock) == (b->inlineUniformBlock))) {
7371 onFail("a->inlineUniformBlock (Error: Value not equal)");
7372 };
7373 if (!((a->descriptorBindingInlineUniformBlockUpdateAfterBind) ==
7374 (b->descriptorBindingInlineUniformBlockUpdateAfterBind))) {
7375 onFail("a->descriptorBindingInlineUniformBlockUpdateAfterBind (Error: Value not equal)");
7376 };
7377 }
7378
checkEqual_VkPhysicalDeviceInlineUniformBlockProperties(const VkPhysicalDeviceInlineUniformBlockProperties * a,const VkPhysicalDeviceInlineUniformBlockProperties * b,OnFailCompareFunc onFail)7379 void checkEqual_VkPhysicalDeviceInlineUniformBlockProperties(
7380 const VkPhysicalDeviceInlineUniformBlockProperties* a,
7381 const VkPhysicalDeviceInlineUniformBlockProperties* b, OnFailCompareFunc onFail) {
7382 if (!((a->sType) == (b->sType))) {
7383 onFail("a->sType (Error: Value not equal)");
7384 };
7385 if (a->pNext) {
7386 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7387 }
7388 if (!((a->maxInlineUniformBlockSize) == (b->maxInlineUniformBlockSize))) {
7389 onFail("a->maxInlineUniformBlockSize (Error: Value not equal)");
7390 };
7391 if (!((a->maxPerStageDescriptorInlineUniformBlocks) ==
7392 (b->maxPerStageDescriptorInlineUniformBlocks))) {
7393 onFail("a->maxPerStageDescriptorInlineUniformBlocks (Error: Value not equal)");
7394 };
7395 if (!((a->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks) ==
7396 (b->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks))) {
7397 onFail(
7398 "a->maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks (Error: Value not equal)");
7399 };
7400 if (!((a->maxDescriptorSetInlineUniformBlocks) == (b->maxDescriptorSetInlineUniformBlocks))) {
7401 onFail("a->maxDescriptorSetInlineUniformBlocks (Error: Value not equal)");
7402 };
7403 if (!((a->maxDescriptorSetUpdateAfterBindInlineUniformBlocks) ==
7404 (b->maxDescriptorSetUpdateAfterBindInlineUniformBlocks))) {
7405 onFail("a->maxDescriptorSetUpdateAfterBindInlineUniformBlocks (Error: Value not equal)");
7406 };
7407 }
7408
checkEqual_VkWriteDescriptorSetInlineUniformBlock(const VkWriteDescriptorSetInlineUniformBlock * a,const VkWriteDescriptorSetInlineUniformBlock * b,OnFailCompareFunc onFail)7409 void checkEqual_VkWriteDescriptorSetInlineUniformBlock(
7410 const VkWriteDescriptorSetInlineUniformBlock* a,
7411 const VkWriteDescriptorSetInlineUniformBlock* b, OnFailCompareFunc onFail) {
7412 if (!((a->sType) == (b->sType))) {
7413 onFail("a->sType (Error: Value not equal)");
7414 };
7415 if (a->pNext) {
7416 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7417 }
7418 if (!((a->dataSize) == (b->dataSize))) {
7419 onFail("a->dataSize (Error: Value not equal)");
7420 };
7421 }
7422
checkEqual_VkDescriptorPoolInlineUniformBlockCreateInfo(const VkDescriptorPoolInlineUniformBlockCreateInfo * a,const VkDescriptorPoolInlineUniformBlockCreateInfo * b,OnFailCompareFunc onFail)7423 void checkEqual_VkDescriptorPoolInlineUniformBlockCreateInfo(
7424 const VkDescriptorPoolInlineUniformBlockCreateInfo* a,
7425 const VkDescriptorPoolInlineUniformBlockCreateInfo* b, OnFailCompareFunc onFail) {
7426 if (!((a->sType) == (b->sType))) {
7427 onFail("a->sType (Error: Value not equal)");
7428 };
7429 if (a->pNext) {
7430 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7431 }
7432 if (!((a->maxInlineUniformBlockBindings) == (b->maxInlineUniformBlockBindings))) {
7433 onFail("a->maxInlineUniformBlockBindings (Error: Value not equal)");
7434 };
7435 }
7436
checkEqual_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(const VkPhysicalDeviceTextureCompressionASTCHDRFeatures * a,const VkPhysicalDeviceTextureCompressionASTCHDRFeatures * b,OnFailCompareFunc onFail)7437 void checkEqual_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(
7438 const VkPhysicalDeviceTextureCompressionASTCHDRFeatures* a,
7439 const VkPhysicalDeviceTextureCompressionASTCHDRFeatures* b, OnFailCompareFunc onFail) {
7440 if (!((a->sType) == (b->sType))) {
7441 onFail("a->sType (Error: Value not equal)");
7442 };
7443 if (a->pNext) {
7444 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7445 }
7446 if (!((a->textureCompressionASTC_HDR) == (b->textureCompressionASTC_HDR))) {
7447 onFail("a->textureCompressionASTC_HDR (Error: Value not equal)");
7448 };
7449 }
7450
checkEqual_VkRenderingAttachmentInfo(const VkRenderingAttachmentInfo * a,const VkRenderingAttachmentInfo * b,OnFailCompareFunc onFail)7451 void checkEqual_VkRenderingAttachmentInfo(const VkRenderingAttachmentInfo* a,
7452 const VkRenderingAttachmentInfo* b,
7453 OnFailCompareFunc onFail) {
7454 if (!((a->sType) == (b->sType))) {
7455 onFail("a->sType (Error: Value not equal)");
7456 };
7457 if (a->pNext) {
7458 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7459 }
7460 if (!((a->imageView) == (b->imageView))) {
7461 onFail("a->imageView (Error: Value not equal)");
7462 };
7463 if (!((a->imageLayout) == (b->imageLayout))) {
7464 onFail("a->imageLayout (Error: Value not equal)");
7465 };
7466 if (!((a->resolveMode) == (b->resolveMode))) {
7467 onFail("a->resolveMode (Error: Value not equal)");
7468 };
7469 if (!((a->resolveImageView) == (b->resolveImageView))) {
7470 onFail("a->resolveImageView (Error: Value not equal)");
7471 };
7472 if (!((a->resolveImageLayout) == (b->resolveImageLayout))) {
7473 onFail("a->resolveImageLayout (Error: Value not equal)");
7474 };
7475 if (!((a->loadOp) == (b->loadOp))) {
7476 onFail("a->loadOp (Error: Value not equal)");
7477 };
7478 if (!((a->storeOp) == (b->storeOp))) {
7479 onFail("a->storeOp (Error: Value not equal)");
7480 };
7481 checkEqual_VkClearValue(&a->clearValue, &b->clearValue, onFail);
7482 }
7483
checkEqual_VkRenderingInfo(const VkRenderingInfo * a,const VkRenderingInfo * b,OnFailCompareFunc onFail)7484 void checkEqual_VkRenderingInfo(const VkRenderingInfo* a, const VkRenderingInfo* b,
7485 OnFailCompareFunc onFail) {
7486 if (!((a->sType) == (b->sType))) {
7487 onFail("a->sType (Error: Value not equal)");
7488 };
7489 if (a->pNext) {
7490 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7491 }
7492 if (!((a->flags) == (b->flags))) {
7493 onFail("a->flags (Error: Value not equal)");
7494 };
7495 checkEqual_VkRect2D(&a->renderArea, &b->renderArea, onFail);
7496 if (!((a->layerCount) == (b->layerCount))) {
7497 onFail("a->layerCount (Error: Value not equal)");
7498 };
7499 if (!((a->viewMask) == (b->viewMask))) {
7500 onFail("a->viewMask (Error: Value not equal)");
7501 };
7502 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
7503 onFail("a->colorAttachmentCount (Error: Value not equal)");
7504 };
7505 if ((a->pColorAttachments) && (b->pColorAttachments)) {
7506 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
7507 onFail("a->pColorAttachments (Error: Lengths not equal)");
7508 };
7509 if ((a->colorAttachmentCount) == (b->colorAttachmentCount)) {
7510 if (a) {
7511 for (uint32_t i = 0; i < (uint32_t)a->colorAttachmentCount; ++i) {
7512 checkEqual_VkRenderingAttachmentInfo(a->pColorAttachments + i,
7513 b->pColorAttachments + i, onFail);
7514 }
7515 }
7516 }
7517 }
7518 if (!((!(a->pDepthAttachment) && !(b->pDepthAttachment)) ||
7519 ((a->pDepthAttachment) && (b->pDepthAttachment)))) {
7520 onFail("a->pDepthAttachment (Error: Mismatch in optional field)");
7521 };
7522 if (a->pDepthAttachment && b->pDepthAttachment) {
7523 if ((a->pDepthAttachment) && (b->pDepthAttachment)) {
7524 checkEqual_VkRenderingAttachmentInfo(a->pDepthAttachment, b->pDepthAttachment, onFail);
7525 }
7526 }
7527 if (!((!(a->pStencilAttachment) && !(b->pStencilAttachment)) ||
7528 ((a->pStencilAttachment) && (b->pStencilAttachment)))) {
7529 onFail("a->pStencilAttachment (Error: Mismatch in optional field)");
7530 };
7531 if (a->pStencilAttachment && b->pStencilAttachment) {
7532 if ((a->pStencilAttachment) && (b->pStencilAttachment)) {
7533 checkEqual_VkRenderingAttachmentInfo(a->pStencilAttachment, b->pStencilAttachment,
7534 onFail);
7535 }
7536 }
7537 }
7538
checkEqual_VkPipelineRenderingCreateInfo(const VkPipelineRenderingCreateInfo * a,const VkPipelineRenderingCreateInfo * b,OnFailCompareFunc onFail)7539 void checkEqual_VkPipelineRenderingCreateInfo(const VkPipelineRenderingCreateInfo* a,
7540 const VkPipelineRenderingCreateInfo* b,
7541 OnFailCompareFunc onFail) {
7542 if (!((a->sType) == (b->sType))) {
7543 onFail("a->sType (Error: Value not equal)");
7544 };
7545 if (a->pNext) {
7546 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7547 }
7548 if (!((a->viewMask) == (b->viewMask))) {
7549 onFail("a->viewMask (Error: Value not equal)");
7550 };
7551 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
7552 onFail("a->colorAttachmentCount (Error: Value not equal)");
7553 };
7554 if (!((!(a->pColorAttachmentFormats) && !(b->pColorAttachmentFormats)) ||
7555 ((a->pColorAttachmentFormats) && (b->pColorAttachmentFormats)))) {
7556 onFail("a->pColorAttachmentFormats (Error: Mismatch in optional field)");
7557 };
7558 if (a->pColorAttachmentFormats && b->pColorAttachmentFormats) {
7559 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
7560 onFail("a->pColorAttachmentFormats (Error: Lengths not equal)");
7561 };
7562 if (!((memcmp(a->pColorAttachmentFormats, b->pColorAttachmentFormats,
7563 a->colorAttachmentCount * sizeof(const VkFormat)) == 0))) {
7564 onFail("a->pColorAttachmentFormats (Error: Unequal dyn array)");
7565 };
7566 }
7567 if (!((a->depthAttachmentFormat) == (b->depthAttachmentFormat))) {
7568 onFail("a->depthAttachmentFormat (Error: Value not equal)");
7569 };
7570 if (!((a->stencilAttachmentFormat) == (b->stencilAttachmentFormat))) {
7571 onFail("a->stencilAttachmentFormat (Error: Value not equal)");
7572 };
7573 }
7574
checkEqual_VkPhysicalDeviceDynamicRenderingFeatures(const VkPhysicalDeviceDynamicRenderingFeatures * a,const VkPhysicalDeviceDynamicRenderingFeatures * b,OnFailCompareFunc onFail)7575 void checkEqual_VkPhysicalDeviceDynamicRenderingFeatures(
7576 const VkPhysicalDeviceDynamicRenderingFeatures* a,
7577 const VkPhysicalDeviceDynamicRenderingFeatures* b, OnFailCompareFunc onFail) {
7578 if (!((a->sType) == (b->sType))) {
7579 onFail("a->sType (Error: Value not equal)");
7580 };
7581 if (a->pNext) {
7582 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7583 }
7584 if (!((a->dynamicRendering) == (b->dynamicRendering))) {
7585 onFail("a->dynamicRendering (Error: Value not equal)");
7586 };
7587 }
7588
checkEqual_VkCommandBufferInheritanceRenderingInfo(const VkCommandBufferInheritanceRenderingInfo * a,const VkCommandBufferInheritanceRenderingInfo * b,OnFailCompareFunc onFail)7589 void checkEqual_VkCommandBufferInheritanceRenderingInfo(
7590 const VkCommandBufferInheritanceRenderingInfo* a,
7591 const VkCommandBufferInheritanceRenderingInfo* b, OnFailCompareFunc onFail) {
7592 if (!((a->sType) == (b->sType))) {
7593 onFail("a->sType (Error: Value not equal)");
7594 };
7595 if (a->pNext) {
7596 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7597 }
7598 if (!((a->flags) == (b->flags))) {
7599 onFail("a->flags (Error: Value not equal)");
7600 };
7601 if (!((a->viewMask) == (b->viewMask))) {
7602 onFail("a->viewMask (Error: Value not equal)");
7603 };
7604 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
7605 onFail("a->colorAttachmentCount (Error: Value not equal)");
7606 };
7607 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
7608 onFail("a->pColorAttachmentFormats (Error: Lengths not equal)");
7609 };
7610 if (!((memcmp(a->pColorAttachmentFormats, b->pColorAttachmentFormats,
7611 a->colorAttachmentCount * sizeof(const VkFormat)) == 0))) {
7612 onFail("a->pColorAttachmentFormats (Error: Unequal dyn array)");
7613 };
7614 if (!((a->depthAttachmentFormat) == (b->depthAttachmentFormat))) {
7615 onFail("a->depthAttachmentFormat (Error: Value not equal)");
7616 };
7617 if (!((a->stencilAttachmentFormat) == (b->stencilAttachmentFormat))) {
7618 onFail("a->stencilAttachmentFormat (Error: Value not equal)");
7619 };
7620 if (!((a->rasterizationSamples) == (b->rasterizationSamples))) {
7621 onFail("a->rasterizationSamples (Error: Value not equal)");
7622 };
7623 }
7624
checkEqual_VkPhysicalDeviceShaderIntegerDotProductFeatures(const VkPhysicalDeviceShaderIntegerDotProductFeatures * a,const VkPhysicalDeviceShaderIntegerDotProductFeatures * b,OnFailCompareFunc onFail)7625 void checkEqual_VkPhysicalDeviceShaderIntegerDotProductFeatures(
7626 const VkPhysicalDeviceShaderIntegerDotProductFeatures* a,
7627 const VkPhysicalDeviceShaderIntegerDotProductFeatures* b, OnFailCompareFunc onFail) {
7628 if (!((a->sType) == (b->sType))) {
7629 onFail("a->sType (Error: Value not equal)");
7630 };
7631 if (a->pNext) {
7632 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7633 }
7634 if (!((a->shaderIntegerDotProduct) == (b->shaderIntegerDotProduct))) {
7635 onFail("a->shaderIntegerDotProduct (Error: Value not equal)");
7636 };
7637 }
7638
checkEqual_VkPhysicalDeviceShaderIntegerDotProductProperties(const VkPhysicalDeviceShaderIntegerDotProductProperties * a,const VkPhysicalDeviceShaderIntegerDotProductProperties * b,OnFailCompareFunc onFail)7639 void checkEqual_VkPhysicalDeviceShaderIntegerDotProductProperties(
7640 const VkPhysicalDeviceShaderIntegerDotProductProperties* a,
7641 const VkPhysicalDeviceShaderIntegerDotProductProperties* b, OnFailCompareFunc onFail) {
7642 if (!((a->sType) == (b->sType))) {
7643 onFail("a->sType (Error: Value not equal)");
7644 };
7645 if (a->pNext) {
7646 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7647 }
7648 if (!((a->integerDotProduct8BitUnsignedAccelerated) ==
7649 (b->integerDotProduct8BitUnsignedAccelerated))) {
7650 onFail("a->integerDotProduct8BitUnsignedAccelerated (Error: Value not equal)");
7651 };
7652 if (!((a->integerDotProduct8BitSignedAccelerated) ==
7653 (b->integerDotProduct8BitSignedAccelerated))) {
7654 onFail("a->integerDotProduct8BitSignedAccelerated (Error: Value not equal)");
7655 };
7656 if (!((a->integerDotProduct8BitMixedSignednessAccelerated) ==
7657 (b->integerDotProduct8BitMixedSignednessAccelerated))) {
7658 onFail("a->integerDotProduct8BitMixedSignednessAccelerated (Error: Value not equal)");
7659 };
7660 if (!((a->integerDotProduct4x8BitPackedUnsignedAccelerated) ==
7661 (b->integerDotProduct4x8BitPackedUnsignedAccelerated))) {
7662 onFail("a->integerDotProduct4x8BitPackedUnsignedAccelerated (Error: Value not equal)");
7663 };
7664 if (!((a->integerDotProduct4x8BitPackedSignedAccelerated) ==
7665 (b->integerDotProduct4x8BitPackedSignedAccelerated))) {
7666 onFail("a->integerDotProduct4x8BitPackedSignedAccelerated (Error: Value not equal)");
7667 };
7668 if (!((a->integerDotProduct4x8BitPackedMixedSignednessAccelerated) ==
7669 (b->integerDotProduct4x8BitPackedMixedSignednessAccelerated))) {
7670 onFail(
7671 "a->integerDotProduct4x8BitPackedMixedSignednessAccelerated (Error: Value not equal)");
7672 };
7673 if (!((a->integerDotProduct16BitUnsignedAccelerated) ==
7674 (b->integerDotProduct16BitUnsignedAccelerated))) {
7675 onFail("a->integerDotProduct16BitUnsignedAccelerated (Error: Value not equal)");
7676 };
7677 if (!((a->integerDotProduct16BitSignedAccelerated) ==
7678 (b->integerDotProduct16BitSignedAccelerated))) {
7679 onFail("a->integerDotProduct16BitSignedAccelerated (Error: Value not equal)");
7680 };
7681 if (!((a->integerDotProduct16BitMixedSignednessAccelerated) ==
7682 (b->integerDotProduct16BitMixedSignednessAccelerated))) {
7683 onFail("a->integerDotProduct16BitMixedSignednessAccelerated (Error: Value not equal)");
7684 };
7685 if (!((a->integerDotProduct32BitUnsignedAccelerated) ==
7686 (b->integerDotProduct32BitUnsignedAccelerated))) {
7687 onFail("a->integerDotProduct32BitUnsignedAccelerated (Error: Value not equal)");
7688 };
7689 if (!((a->integerDotProduct32BitSignedAccelerated) ==
7690 (b->integerDotProduct32BitSignedAccelerated))) {
7691 onFail("a->integerDotProduct32BitSignedAccelerated (Error: Value not equal)");
7692 };
7693 if (!((a->integerDotProduct32BitMixedSignednessAccelerated) ==
7694 (b->integerDotProduct32BitMixedSignednessAccelerated))) {
7695 onFail("a->integerDotProduct32BitMixedSignednessAccelerated (Error: Value not equal)");
7696 };
7697 if (!((a->integerDotProduct64BitUnsignedAccelerated) ==
7698 (b->integerDotProduct64BitUnsignedAccelerated))) {
7699 onFail("a->integerDotProduct64BitUnsignedAccelerated (Error: Value not equal)");
7700 };
7701 if (!((a->integerDotProduct64BitSignedAccelerated) ==
7702 (b->integerDotProduct64BitSignedAccelerated))) {
7703 onFail("a->integerDotProduct64BitSignedAccelerated (Error: Value not equal)");
7704 };
7705 if (!((a->integerDotProduct64BitMixedSignednessAccelerated) ==
7706 (b->integerDotProduct64BitMixedSignednessAccelerated))) {
7707 onFail("a->integerDotProduct64BitMixedSignednessAccelerated (Error: Value not equal)");
7708 };
7709 if (!((a->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated) ==
7710 (b->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated))) {
7711 onFail(
7712 "a->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated (Error: Value not "
7713 "equal)");
7714 };
7715 if (!((a->integerDotProductAccumulatingSaturating8BitSignedAccelerated) ==
7716 (b->integerDotProductAccumulatingSaturating8BitSignedAccelerated))) {
7717 onFail(
7718 "a->integerDotProductAccumulatingSaturating8BitSignedAccelerated (Error: Value not "
7719 "equal)");
7720 };
7721 if (!((a->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated) ==
7722 (b->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated))) {
7723 onFail(
7724 "a->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated (Error: "
7725 "Value not equal)");
7726 };
7727 if (!((a->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated) ==
7728 (b->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated))) {
7729 onFail(
7730 "a->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated (Error: "
7731 "Value not equal)");
7732 };
7733 if (!((a->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated) ==
7734 (b->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated))) {
7735 onFail(
7736 "a->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated (Error: Value "
7737 "not equal)");
7738 };
7739 if (!((a->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated) ==
7740 (b->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated))) {
7741 onFail(
7742 "a->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated "
7743 "(Error: Value not equal)");
7744 };
7745 if (!((a->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated) ==
7746 (b->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated))) {
7747 onFail(
7748 "a->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated (Error: Value not "
7749 "equal)");
7750 };
7751 if (!((a->integerDotProductAccumulatingSaturating16BitSignedAccelerated) ==
7752 (b->integerDotProductAccumulatingSaturating16BitSignedAccelerated))) {
7753 onFail(
7754 "a->integerDotProductAccumulatingSaturating16BitSignedAccelerated (Error: Value not "
7755 "equal)");
7756 };
7757 if (!((a->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated) ==
7758 (b->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated))) {
7759 onFail(
7760 "a->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated (Error: "
7761 "Value not equal)");
7762 };
7763 if (!((a->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated) ==
7764 (b->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated))) {
7765 onFail(
7766 "a->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated (Error: Value not "
7767 "equal)");
7768 };
7769 if (!((a->integerDotProductAccumulatingSaturating32BitSignedAccelerated) ==
7770 (b->integerDotProductAccumulatingSaturating32BitSignedAccelerated))) {
7771 onFail(
7772 "a->integerDotProductAccumulatingSaturating32BitSignedAccelerated (Error: Value not "
7773 "equal)");
7774 };
7775 if (!((a->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated) ==
7776 (b->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated))) {
7777 onFail(
7778 "a->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated (Error: "
7779 "Value not equal)");
7780 };
7781 if (!((a->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated) ==
7782 (b->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated))) {
7783 onFail(
7784 "a->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated (Error: Value not "
7785 "equal)");
7786 };
7787 if (!((a->integerDotProductAccumulatingSaturating64BitSignedAccelerated) ==
7788 (b->integerDotProductAccumulatingSaturating64BitSignedAccelerated))) {
7789 onFail(
7790 "a->integerDotProductAccumulatingSaturating64BitSignedAccelerated (Error: Value not "
7791 "equal)");
7792 };
7793 if (!((a->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated) ==
7794 (b->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated))) {
7795 onFail(
7796 "a->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated (Error: "
7797 "Value not equal)");
7798 };
7799 }
7800
checkEqual_VkPhysicalDeviceTexelBufferAlignmentProperties(const VkPhysicalDeviceTexelBufferAlignmentProperties * a,const VkPhysicalDeviceTexelBufferAlignmentProperties * b,OnFailCompareFunc onFail)7801 void checkEqual_VkPhysicalDeviceTexelBufferAlignmentProperties(
7802 const VkPhysicalDeviceTexelBufferAlignmentProperties* a,
7803 const VkPhysicalDeviceTexelBufferAlignmentProperties* b, OnFailCompareFunc onFail) {
7804 if (!((a->sType) == (b->sType))) {
7805 onFail("a->sType (Error: Value not equal)");
7806 };
7807 if (a->pNext) {
7808 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7809 }
7810 if (!((a->storageTexelBufferOffsetAlignmentBytes) ==
7811 (b->storageTexelBufferOffsetAlignmentBytes))) {
7812 onFail("a->storageTexelBufferOffsetAlignmentBytes (Error: Value not equal)");
7813 };
7814 if (!((a->storageTexelBufferOffsetSingleTexelAlignment) ==
7815 (b->storageTexelBufferOffsetSingleTexelAlignment))) {
7816 onFail("a->storageTexelBufferOffsetSingleTexelAlignment (Error: Value not equal)");
7817 };
7818 if (!((a->uniformTexelBufferOffsetAlignmentBytes) ==
7819 (b->uniformTexelBufferOffsetAlignmentBytes))) {
7820 onFail("a->uniformTexelBufferOffsetAlignmentBytes (Error: Value not equal)");
7821 };
7822 if (!((a->uniformTexelBufferOffsetSingleTexelAlignment) ==
7823 (b->uniformTexelBufferOffsetSingleTexelAlignment))) {
7824 onFail("a->uniformTexelBufferOffsetSingleTexelAlignment (Error: Value not equal)");
7825 };
7826 }
7827
checkEqual_VkFormatProperties3(const VkFormatProperties3 * a,const VkFormatProperties3 * b,OnFailCompareFunc onFail)7828 void checkEqual_VkFormatProperties3(const VkFormatProperties3* a, const VkFormatProperties3* b,
7829 OnFailCompareFunc onFail) {
7830 if (!((a->sType) == (b->sType))) {
7831 onFail("a->sType (Error: Value not equal)");
7832 };
7833 if (a->pNext) {
7834 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7835 }
7836 if (!((a->linearTilingFeatures) == (b->linearTilingFeatures))) {
7837 onFail("a->linearTilingFeatures (Error: Value not equal)");
7838 };
7839 if (!((a->optimalTilingFeatures) == (b->optimalTilingFeatures))) {
7840 onFail("a->optimalTilingFeatures (Error: Value not equal)");
7841 };
7842 if (!((a->bufferFeatures) == (b->bufferFeatures))) {
7843 onFail("a->bufferFeatures (Error: Value not equal)");
7844 };
7845 }
7846
checkEqual_VkPhysicalDeviceMaintenance4Features(const VkPhysicalDeviceMaintenance4Features * a,const VkPhysicalDeviceMaintenance4Features * b,OnFailCompareFunc onFail)7847 void checkEqual_VkPhysicalDeviceMaintenance4Features(const VkPhysicalDeviceMaintenance4Features* a,
7848 const VkPhysicalDeviceMaintenance4Features* b,
7849 OnFailCompareFunc onFail) {
7850 if (!((a->sType) == (b->sType))) {
7851 onFail("a->sType (Error: Value not equal)");
7852 };
7853 if (a->pNext) {
7854 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7855 }
7856 if (!((a->maintenance4) == (b->maintenance4))) {
7857 onFail("a->maintenance4 (Error: Value not equal)");
7858 };
7859 }
7860
checkEqual_VkPhysicalDeviceMaintenance4Properties(const VkPhysicalDeviceMaintenance4Properties * a,const VkPhysicalDeviceMaintenance4Properties * b,OnFailCompareFunc onFail)7861 void checkEqual_VkPhysicalDeviceMaintenance4Properties(
7862 const VkPhysicalDeviceMaintenance4Properties* a,
7863 const VkPhysicalDeviceMaintenance4Properties* b, OnFailCompareFunc onFail) {
7864 if (!((a->sType) == (b->sType))) {
7865 onFail("a->sType (Error: Value not equal)");
7866 };
7867 if (a->pNext) {
7868 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7869 }
7870 if (!((a->maxBufferSize) == (b->maxBufferSize))) {
7871 onFail("a->maxBufferSize (Error: Value not equal)");
7872 };
7873 }
7874
checkEqual_VkDeviceBufferMemoryRequirements(const VkDeviceBufferMemoryRequirements * a,const VkDeviceBufferMemoryRequirements * b,OnFailCompareFunc onFail)7875 void checkEqual_VkDeviceBufferMemoryRequirements(const VkDeviceBufferMemoryRequirements* a,
7876 const VkDeviceBufferMemoryRequirements* b,
7877 OnFailCompareFunc onFail) {
7878 if (!((a->sType) == (b->sType))) {
7879 onFail("a->sType (Error: Value not equal)");
7880 };
7881 if (a->pNext) {
7882 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7883 }
7884 if ((a->pCreateInfo) && (b->pCreateInfo)) {
7885 checkEqual_VkBufferCreateInfo(a->pCreateInfo, b->pCreateInfo, onFail);
7886 }
7887 }
7888
checkEqual_VkDeviceImageMemoryRequirements(const VkDeviceImageMemoryRequirements * a,const VkDeviceImageMemoryRequirements * b,OnFailCompareFunc onFail)7889 void checkEqual_VkDeviceImageMemoryRequirements(const VkDeviceImageMemoryRequirements* a,
7890 const VkDeviceImageMemoryRequirements* b,
7891 OnFailCompareFunc onFail) {
7892 if (!((a->sType) == (b->sType))) {
7893 onFail("a->sType (Error: Value not equal)");
7894 };
7895 if (a->pNext) {
7896 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7897 }
7898 if ((a->pCreateInfo) && (b->pCreateInfo)) {
7899 checkEqual_VkImageCreateInfo(a->pCreateInfo, b->pCreateInfo, onFail);
7900 }
7901 if (!((a->planeAspect) == (b->planeAspect))) {
7902 onFail("a->planeAspect (Error: Value not equal)");
7903 };
7904 }
7905
7906 #endif
7907 #ifdef VK_KHR_surface
checkEqual_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR * a,const VkSurfaceCapabilitiesKHR * b,OnFailCompareFunc onFail)7908 void checkEqual_VkSurfaceCapabilitiesKHR(const VkSurfaceCapabilitiesKHR* a,
7909 const VkSurfaceCapabilitiesKHR* b,
7910 OnFailCompareFunc onFail) {
7911 if (!((a->minImageCount) == (b->minImageCount))) {
7912 onFail("a->minImageCount (Error: Value not equal)");
7913 };
7914 if (!((a->maxImageCount) == (b->maxImageCount))) {
7915 onFail("a->maxImageCount (Error: Value not equal)");
7916 };
7917 checkEqual_VkExtent2D(&a->currentExtent, &b->currentExtent, onFail);
7918 checkEqual_VkExtent2D(&a->minImageExtent, &b->minImageExtent, onFail);
7919 checkEqual_VkExtent2D(&a->maxImageExtent, &b->maxImageExtent, onFail);
7920 if (!((a->maxImageArrayLayers) == (b->maxImageArrayLayers))) {
7921 onFail("a->maxImageArrayLayers (Error: Value not equal)");
7922 };
7923 if (!((a->supportedTransforms) == (b->supportedTransforms))) {
7924 onFail("a->supportedTransforms (Error: Value not equal)");
7925 };
7926 if (!((a->currentTransform) == (b->currentTransform))) {
7927 onFail("a->currentTransform (Error: Value not equal)");
7928 };
7929 if (!((a->supportedCompositeAlpha) == (b->supportedCompositeAlpha))) {
7930 onFail("a->supportedCompositeAlpha (Error: Value not equal)");
7931 };
7932 if (!((a->supportedUsageFlags) == (b->supportedUsageFlags))) {
7933 onFail("a->supportedUsageFlags (Error: Value not equal)");
7934 };
7935 }
7936
checkEqual_VkSurfaceFormatKHR(const VkSurfaceFormatKHR * a,const VkSurfaceFormatKHR * b,OnFailCompareFunc onFail)7937 void checkEqual_VkSurfaceFormatKHR(const VkSurfaceFormatKHR* a, const VkSurfaceFormatKHR* b,
7938 OnFailCompareFunc onFail) {
7939 if (!((a->format) == (b->format))) {
7940 onFail("a->format (Error: Value not equal)");
7941 };
7942 if (!((a->colorSpace) == (b->colorSpace))) {
7943 onFail("a->colorSpace (Error: Value not equal)");
7944 };
7945 }
7946
7947 #endif
7948 #ifdef VK_KHR_swapchain
checkEqual_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR * a,const VkSwapchainCreateInfoKHR * b,OnFailCompareFunc onFail)7949 void checkEqual_VkSwapchainCreateInfoKHR(const VkSwapchainCreateInfoKHR* a,
7950 const VkSwapchainCreateInfoKHR* b,
7951 OnFailCompareFunc onFail) {
7952 if (!((a->sType) == (b->sType))) {
7953 onFail("a->sType (Error: Value not equal)");
7954 };
7955 if (a->pNext) {
7956 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
7957 }
7958 if (!((a->flags) == (b->flags))) {
7959 onFail("a->flags (Error: Value not equal)");
7960 };
7961 if (!((a->surface) == (b->surface))) {
7962 onFail("a->surface (Error: Value not equal)");
7963 };
7964 if (!((a->minImageCount) == (b->minImageCount))) {
7965 onFail("a->minImageCount (Error: Value not equal)");
7966 };
7967 if (!((a->imageFormat) == (b->imageFormat))) {
7968 onFail("a->imageFormat (Error: Value not equal)");
7969 };
7970 if (!((a->imageColorSpace) == (b->imageColorSpace))) {
7971 onFail("a->imageColorSpace (Error: Value not equal)");
7972 };
7973 checkEqual_VkExtent2D(&a->imageExtent, &b->imageExtent, onFail);
7974 if (!((a->imageArrayLayers) == (b->imageArrayLayers))) {
7975 onFail("a->imageArrayLayers (Error: Value not equal)");
7976 };
7977 if (!((a->imageUsage) == (b->imageUsage))) {
7978 onFail("a->imageUsage (Error: Value not equal)");
7979 };
7980 if (!((a->imageSharingMode) == (b->imageSharingMode))) {
7981 onFail("a->imageSharingMode (Error: Value not equal)");
7982 };
7983 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
7984 onFail("a->queueFamilyIndexCount (Error: Value not equal)");
7985 };
7986 if (!((!(a->pQueueFamilyIndices) && !(b->pQueueFamilyIndices)) ||
7987 ((a->pQueueFamilyIndices) && (b->pQueueFamilyIndices)))) {
7988 onFail("a->pQueueFamilyIndices (Error: Mismatch in optional field)");
7989 };
7990 if (a->pQueueFamilyIndices && b->pQueueFamilyIndices) {
7991 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
7992 onFail("a->pQueueFamilyIndices (Error: Lengths not equal)");
7993 };
7994 if (!((memcmp(a->pQueueFamilyIndices, b->pQueueFamilyIndices,
7995 a->queueFamilyIndexCount * sizeof(const uint32_t)) == 0))) {
7996 onFail("a->pQueueFamilyIndices (Error: Unequal dyn array)");
7997 };
7998 }
7999 if (!((a->preTransform) == (b->preTransform))) {
8000 onFail("a->preTransform (Error: Value not equal)");
8001 };
8002 if (!((a->compositeAlpha) == (b->compositeAlpha))) {
8003 onFail("a->compositeAlpha (Error: Value not equal)");
8004 };
8005 if (!((a->presentMode) == (b->presentMode))) {
8006 onFail("a->presentMode (Error: Value not equal)");
8007 };
8008 if (!((a->clipped) == (b->clipped))) {
8009 onFail("a->clipped (Error: Value not equal)");
8010 };
8011 if (!((a->oldSwapchain) == (b->oldSwapchain))) {
8012 onFail("a->oldSwapchain (Error: Value not equal)");
8013 };
8014 }
8015
checkEqual_VkPresentInfoKHR(const VkPresentInfoKHR * a,const VkPresentInfoKHR * b,OnFailCompareFunc onFail)8016 void checkEqual_VkPresentInfoKHR(const VkPresentInfoKHR* a, const VkPresentInfoKHR* b,
8017 OnFailCompareFunc onFail) {
8018 if (!((a->sType) == (b->sType))) {
8019 onFail("a->sType (Error: Value not equal)");
8020 };
8021 if (a->pNext) {
8022 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8023 }
8024 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
8025 onFail("a->waitSemaphoreCount (Error: Value not equal)");
8026 };
8027 if (!((a->waitSemaphoreCount) == (b->waitSemaphoreCount))) {
8028 onFail("a->pWaitSemaphores (Error: Lengths not equal)");
8029 };
8030 if (!((memcmp(a->pWaitSemaphores, b->pWaitSemaphores,
8031 a->waitSemaphoreCount * sizeof(const VkSemaphore)) == 0))) {
8032 onFail("a->pWaitSemaphores (Error: Unequal dyn array)");
8033 };
8034 if (!((a->swapchainCount) == (b->swapchainCount))) {
8035 onFail("a->swapchainCount (Error: Value not equal)");
8036 };
8037 if (!((a->swapchainCount) == (b->swapchainCount))) {
8038 onFail("a->pSwapchains (Error: Lengths not equal)");
8039 };
8040 if (!((memcmp(a->pSwapchains, b->pSwapchains,
8041 a->swapchainCount * sizeof(const VkSwapchainKHR)) == 0))) {
8042 onFail("a->pSwapchains (Error: Unequal dyn array)");
8043 };
8044 if (!((a->swapchainCount) == (b->swapchainCount))) {
8045 onFail("a->pImageIndices (Error: Lengths not equal)");
8046 };
8047 if (!((memcmp(a->pImageIndices, b->pImageIndices, a->swapchainCount * sizeof(const uint32_t)) ==
8048 0))) {
8049 onFail("a->pImageIndices (Error: Unequal dyn array)");
8050 };
8051 if (!((!(a->pResults) && !(b->pResults)) || ((a->pResults) && (b->pResults)))) {
8052 onFail("a->pResults (Error: Mismatch in optional field)");
8053 };
8054 if (a->pResults && b->pResults) {
8055 if (!((a->swapchainCount) == (b->swapchainCount))) {
8056 onFail("a->pResults (Error: Lengths not equal)");
8057 };
8058 if (!((memcmp(a->pResults, b->pResults, a->swapchainCount * sizeof(VkResult)) == 0))) {
8059 onFail("a->pResults (Error: Unequal dyn array)");
8060 };
8061 }
8062 }
8063
checkEqual_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR * a,const VkImageSwapchainCreateInfoKHR * b,OnFailCompareFunc onFail)8064 void checkEqual_VkImageSwapchainCreateInfoKHR(const VkImageSwapchainCreateInfoKHR* a,
8065 const VkImageSwapchainCreateInfoKHR* b,
8066 OnFailCompareFunc onFail) {
8067 if (!((a->sType) == (b->sType))) {
8068 onFail("a->sType (Error: Value not equal)");
8069 };
8070 if (a->pNext) {
8071 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8072 }
8073 if (!((a->swapchain) == (b->swapchain))) {
8074 onFail("a->swapchain (Error: Value not equal)");
8075 };
8076 }
8077
checkEqual_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR * a,const VkBindImageMemorySwapchainInfoKHR * b,OnFailCompareFunc onFail)8078 void checkEqual_VkBindImageMemorySwapchainInfoKHR(const VkBindImageMemorySwapchainInfoKHR* a,
8079 const VkBindImageMemorySwapchainInfoKHR* b,
8080 OnFailCompareFunc onFail) {
8081 if (!((a->sType) == (b->sType))) {
8082 onFail("a->sType (Error: Value not equal)");
8083 };
8084 if (a->pNext) {
8085 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8086 }
8087 if (!((a->swapchain) == (b->swapchain))) {
8088 onFail("a->swapchain (Error: Value not equal)");
8089 };
8090 if (!((a->imageIndex) == (b->imageIndex))) {
8091 onFail("a->imageIndex (Error: Value not equal)");
8092 };
8093 }
8094
checkEqual_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR * a,const VkAcquireNextImageInfoKHR * b,OnFailCompareFunc onFail)8095 void checkEqual_VkAcquireNextImageInfoKHR(const VkAcquireNextImageInfoKHR* a,
8096 const VkAcquireNextImageInfoKHR* b,
8097 OnFailCompareFunc onFail) {
8098 if (!((a->sType) == (b->sType))) {
8099 onFail("a->sType (Error: Value not equal)");
8100 };
8101 if (a->pNext) {
8102 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8103 }
8104 if (!((a->swapchain) == (b->swapchain))) {
8105 onFail("a->swapchain (Error: Value not equal)");
8106 };
8107 if (!((a->timeout) == (b->timeout))) {
8108 onFail("a->timeout (Error: Value not equal)");
8109 };
8110 if (!((a->semaphore) == (b->semaphore))) {
8111 onFail("a->semaphore (Error: Value not equal)");
8112 };
8113 if (!((a->fence) == (b->fence))) {
8114 onFail("a->fence (Error: Value not equal)");
8115 };
8116 if (!((a->deviceMask) == (b->deviceMask))) {
8117 onFail("a->deviceMask (Error: Value not equal)");
8118 };
8119 }
8120
checkEqual_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR * a,const VkDeviceGroupPresentCapabilitiesKHR * b,OnFailCompareFunc onFail)8121 void checkEqual_VkDeviceGroupPresentCapabilitiesKHR(const VkDeviceGroupPresentCapabilitiesKHR* a,
8122 const VkDeviceGroupPresentCapabilitiesKHR* b,
8123 OnFailCompareFunc onFail) {
8124 if (!((a->sType) == (b->sType))) {
8125 onFail("a->sType (Error: Value not equal)");
8126 };
8127 if (a->pNext) {
8128 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8129 }
8130 if (!((memcmp(a->presentMask, b->presentMask, VK_MAX_DEVICE_GROUP_SIZE * sizeof(uint32_t)) ==
8131 0))) {
8132 onFail("a->presentMask (Error: Unequal static array)");
8133 };
8134 if (!((a->modes) == (b->modes))) {
8135 onFail("a->modes (Error: Value not equal)");
8136 };
8137 }
8138
checkEqual_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR * a,const VkDeviceGroupPresentInfoKHR * b,OnFailCompareFunc onFail)8139 void checkEqual_VkDeviceGroupPresentInfoKHR(const VkDeviceGroupPresentInfoKHR* a,
8140 const VkDeviceGroupPresentInfoKHR* b,
8141 OnFailCompareFunc onFail) {
8142 if (!((a->sType) == (b->sType))) {
8143 onFail("a->sType (Error: Value not equal)");
8144 };
8145 if (a->pNext) {
8146 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8147 }
8148 if (!((a->swapchainCount) == (b->swapchainCount))) {
8149 onFail("a->swapchainCount (Error: Value not equal)");
8150 };
8151 if (!((a->swapchainCount) == (b->swapchainCount))) {
8152 onFail("a->pDeviceMasks (Error: Lengths not equal)");
8153 };
8154 if (!((memcmp(a->pDeviceMasks, b->pDeviceMasks, a->swapchainCount * sizeof(const uint32_t)) ==
8155 0))) {
8156 onFail("a->pDeviceMasks (Error: Unequal dyn array)");
8157 };
8158 if (!((a->mode) == (b->mode))) {
8159 onFail("a->mode (Error: Value not equal)");
8160 };
8161 }
8162
checkEqual_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR * a,const VkDeviceGroupSwapchainCreateInfoKHR * b,OnFailCompareFunc onFail)8163 void checkEqual_VkDeviceGroupSwapchainCreateInfoKHR(const VkDeviceGroupSwapchainCreateInfoKHR* a,
8164 const VkDeviceGroupSwapchainCreateInfoKHR* b,
8165 OnFailCompareFunc onFail) {
8166 if (!((a->sType) == (b->sType))) {
8167 onFail("a->sType (Error: Value not equal)");
8168 };
8169 if (a->pNext) {
8170 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8171 }
8172 if (!((a->modes) == (b->modes))) {
8173 onFail("a->modes (Error: Value not equal)");
8174 };
8175 }
8176
8177 #endif
8178 #ifdef VK_KHR_display
checkEqual_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR * a,const VkDisplayModeParametersKHR * b,OnFailCompareFunc onFail)8179 void checkEqual_VkDisplayModeParametersKHR(const VkDisplayModeParametersKHR* a,
8180 const VkDisplayModeParametersKHR* b,
8181 OnFailCompareFunc onFail) {
8182 checkEqual_VkExtent2D(&a->visibleRegion, &b->visibleRegion, onFail);
8183 if (!((a->refreshRate) == (b->refreshRate))) {
8184 onFail("a->refreshRate (Error: Value not equal)");
8185 };
8186 }
8187
checkEqual_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR * a,const VkDisplayModeCreateInfoKHR * b,OnFailCompareFunc onFail)8188 void checkEqual_VkDisplayModeCreateInfoKHR(const VkDisplayModeCreateInfoKHR* a,
8189 const VkDisplayModeCreateInfoKHR* b,
8190 OnFailCompareFunc onFail) {
8191 if (!((a->sType) == (b->sType))) {
8192 onFail("a->sType (Error: Value not equal)");
8193 };
8194 if (a->pNext) {
8195 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8196 }
8197 if (!((a->flags) == (b->flags))) {
8198 onFail("a->flags (Error: Value not equal)");
8199 };
8200 checkEqual_VkDisplayModeParametersKHR(&a->parameters, &b->parameters, onFail);
8201 }
8202
checkEqual_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR * a,const VkDisplayModePropertiesKHR * b,OnFailCompareFunc onFail)8203 void checkEqual_VkDisplayModePropertiesKHR(const VkDisplayModePropertiesKHR* a,
8204 const VkDisplayModePropertiesKHR* b,
8205 OnFailCompareFunc onFail) {
8206 if (!((a->displayMode) == (b->displayMode))) {
8207 onFail("a->displayMode (Error: Value not equal)");
8208 };
8209 checkEqual_VkDisplayModeParametersKHR(&a->parameters, &b->parameters, onFail);
8210 }
8211
checkEqual_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR * a,const VkDisplayPlaneCapabilitiesKHR * b,OnFailCompareFunc onFail)8212 void checkEqual_VkDisplayPlaneCapabilitiesKHR(const VkDisplayPlaneCapabilitiesKHR* a,
8213 const VkDisplayPlaneCapabilitiesKHR* b,
8214 OnFailCompareFunc onFail) {
8215 if (!((a->supportedAlpha) == (b->supportedAlpha))) {
8216 onFail("a->supportedAlpha (Error: Value not equal)");
8217 };
8218 checkEqual_VkOffset2D(&a->minSrcPosition, &b->minSrcPosition, onFail);
8219 checkEqual_VkOffset2D(&a->maxSrcPosition, &b->maxSrcPosition, onFail);
8220 checkEqual_VkExtent2D(&a->minSrcExtent, &b->minSrcExtent, onFail);
8221 checkEqual_VkExtent2D(&a->maxSrcExtent, &b->maxSrcExtent, onFail);
8222 checkEqual_VkOffset2D(&a->minDstPosition, &b->minDstPosition, onFail);
8223 checkEqual_VkOffset2D(&a->maxDstPosition, &b->maxDstPosition, onFail);
8224 checkEqual_VkExtent2D(&a->minDstExtent, &b->minDstExtent, onFail);
8225 checkEqual_VkExtent2D(&a->maxDstExtent, &b->maxDstExtent, onFail);
8226 }
8227
checkEqual_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR * a,const VkDisplayPlanePropertiesKHR * b,OnFailCompareFunc onFail)8228 void checkEqual_VkDisplayPlanePropertiesKHR(const VkDisplayPlanePropertiesKHR* a,
8229 const VkDisplayPlanePropertiesKHR* b,
8230 OnFailCompareFunc onFail) {
8231 if (!((a->currentDisplay) == (b->currentDisplay))) {
8232 onFail("a->currentDisplay (Error: Value not equal)");
8233 };
8234 if (!((a->currentStackIndex) == (b->currentStackIndex))) {
8235 onFail("a->currentStackIndex (Error: Value not equal)");
8236 };
8237 }
8238
checkEqual_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR * a,const VkDisplayPropertiesKHR * b,OnFailCompareFunc onFail)8239 void checkEqual_VkDisplayPropertiesKHR(const VkDisplayPropertiesKHR* a,
8240 const VkDisplayPropertiesKHR* b, OnFailCompareFunc onFail) {
8241 if (!((a->display) == (b->display))) {
8242 onFail("a->display (Error: Value not equal)");
8243 };
8244 if (!((!(a->displayName) && !(b->displayName)) || ((a->displayName) && (b->displayName)))) {
8245 onFail("a->displayName (Error: Mismatch in string pointer nullness)");
8246 };
8247 if ((a->displayName) && (b->displayName)) {
8248 if (!((strcmp(a->displayName, b->displayName) == 0))) {
8249 onFail("a->displayName (Error: Unequal strings)");
8250 };
8251 }
8252 checkEqual_VkExtent2D(&a->physicalDimensions, &b->physicalDimensions, onFail);
8253 checkEqual_VkExtent2D(&a->physicalResolution, &b->physicalResolution, onFail);
8254 if (!((a->supportedTransforms) == (b->supportedTransforms))) {
8255 onFail("a->supportedTransforms (Error: Value not equal)");
8256 };
8257 if (!((a->planeReorderPossible) == (b->planeReorderPossible))) {
8258 onFail("a->planeReorderPossible (Error: Value not equal)");
8259 };
8260 if (!((a->persistentContent) == (b->persistentContent))) {
8261 onFail("a->persistentContent (Error: Value not equal)");
8262 };
8263 }
8264
checkEqual_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR * a,const VkDisplaySurfaceCreateInfoKHR * b,OnFailCompareFunc onFail)8265 void checkEqual_VkDisplaySurfaceCreateInfoKHR(const VkDisplaySurfaceCreateInfoKHR* a,
8266 const VkDisplaySurfaceCreateInfoKHR* b,
8267 OnFailCompareFunc onFail) {
8268 if (!((a->sType) == (b->sType))) {
8269 onFail("a->sType (Error: Value not equal)");
8270 };
8271 if (a->pNext) {
8272 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8273 }
8274 if (!((a->flags) == (b->flags))) {
8275 onFail("a->flags (Error: Value not equal)");
8276 };
8277 if (!((a->displayMode) == (b->displayMode))) {
8278 onFail("a->displayMode (Error: Value not equal)");
8279 };
8280 if (!((a->planeIndex) == (b->planeIndex))) {
8281 onFail("a->planeIndex (Error: Value not equal)");
8282 };
8283 if (!((a->planeStackIndex) == (b->planeStackIndex))) {
8284 onFail("a->planeStackIndex (Error: Value not equal)");
8285 };
8286 if (!((a->transform) == (b->transform))) {
8287 onFail("a->transform (Error: Value not equal)");
8288 };
8289 if (!((a->globalAlpha) == (b->globalAlpha))) {
8290 onFail("a->globalAlpha (Error: Value not equal)");
8291 };
8292 if (!((a->alphaMode) == (b->alphaMode))) {
8293 onFail("a->alphaMode (Error: Value not equal)");
8294 };
8295 checkEqual_VkExtent2D(&a->imageExtent, &b->imageExtent, onFail);
8296 }
8297
8298 #endif
8299 #ifdef VK_KHR_display_swapchain
checkEqual_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR * a,const VkDisplayPresentInfoKHR * b,OnFailCompareFunc onFail)8300 void checkEqual_VkDisplayPresentInfoKHR(const VkDisplayPresentInfoKHR* a,
8301 const VkDisplayPresentInfoKHR* b,
8302 OnFailCompareFunc onFail) {
8303 if (!((a->sType) == (b->sType))) {
8304 onFail("a->sType (Error: Value not equal)");
8305 };
8306 if (a->pNext) {
8307 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8308 }
8309 checkEqual_VkRect2D(&a->srcRect, &b->srcRect, onFail);
8310 checkEqual_VkRect2D(&a->dstRect, &b->dstRect, onFail);
8311 if (!((a->persistent) == (b->persistent))) {
8312 onFail("a->persistent (Error: Value not equal)");
8313 };
8314 }
8315
8316 #endif
8317 #ifdef VK_KHR_xlib_surface
checkEqual_VkXlibSurfaceCreateInfoKHR(const VkXlibSurfaceCreateInfoKHR * a,const VkXlibSurfaceCreateInfoKHR * b,OnFailCompareFunc onFail)8318 void checkEqual_VkXlibSurfaceCreateInfoKHR(const VkXlibSurfaceCreateInfoKHR* a,
8319 const VkXlibSurfaceCreateInfoKHR* b,
8320 OnFailCompareFunc onFail) {
8321 if (!((a->sType) == (b->sType))) {
8322 onFail("a->sType (Error: Value not equal)");
8323 };
8324 if (a->pNext) {
8325 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8326 }
8327 if (!((a->flags) == (b->flags))) {
8328 onFail("a->flags (Error: Value not equal)");
8329 };
8330 if (!((!(a->dpy) && !(b->dpy)) || ((a->dpy) && (b->dpy)))) {
8331 onFail("a->dpy (Error: Mismatch in optional field)");
8332 };
8333 if (a->dpy && b->dpy) {
8334 if (!((memcmp(a->dpy, b->dpy, sizeof(Display)) == 0))) {
8335 onFail("a->dpy (Error: Unequal dyn array)");
8336 };
8337 }
8338 if (!((a->window) == (b->window))) {
8339 onFail("a->window (Error: Value not equal)");
8340 };
8341 }
8342
8343 #endif
8344 #ifdef VK_KHR_xcb_surface
checkEqual_VkXcbSurfaceCreateInfoKHR(const VkXcbSurfaceCreateInfoKHR * a,const VkXcbSurfaceCreateInfoKHR * b,OnFailCompareFunc onFail)8345 void checkEqual_VkXcbSurfaceCreateInfoKHR(const VkXcbSurfaceCreateInfoKHR* a,
8346 const VkXcbSurfaceCreateInfoKHR* b,
8347 OnFailCompareFunc onFail) {
8348 if (!((a->sType) == (b->sType))) {
8349 onFail("a->sType (Error: Value not equal)");
8350 };
8351 if (a->pNext) {
8352 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8353 }
8354 if (!((a->flags) == (b->flags))) {
8355 onFail("a->flags (Error: Value not equal)");
8356 };
8357 if (!((!(a->connection) && !(b->connection)) || ((a->connection) && (b->connection)))) {
8358 onFail("a->connection (Error: Mismatch in optional field)");
8359 };
8360 if (a->connection && b->connection) {
8361 if (!((memcmp(a->connection, b->connection, sizeof(xcb_connection_t)) == 0))) {
8362 onFail("a->connection (Error: Unequal dyn array)");
8363 };
8364 }
8365 if (!((a->window) == (b->window))) {
8366 onFail("a->window (Error: Value not equal)");
8367 };
8368 }
8369
8370 #endif
8371 #ifdef VK_KHR_wayland_surface
checkEqual_VkWaylandSurfaceCreateInfoKHR(const VkWaylandSurfaceCreateInfoKHR * a,const VkWaylandSurfaceCreateInfoKHR * b,OnFailCompareFunc onFail)8372 void checkEqual_VkWaylandSurfaceCreateInfoKHR(const VkWaylandSurfaceCreateInfoKHR* a,
8373 const VkWaylandSurfaceCreateInfoKHR* b,
8374 OnFailCompareFunc onFail) {
8375 if (!((a->sType) == (b->sType))) {
8376 onFail("a->sType (Error: Value not equal)");
8377 };
8378 if (a->pNext) {
8379 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8380 }
8381 if (!((a->flags) == (b->flags))) {
8382 onFail("a->flags (Error: Value not equal)");
8383 };
8384 if (!((!(a->display) && !(b->display)) || ((a->display) && (b->display)))) {
8385 onFail("a->display (Error: Mismatch in optional field)");
8386 };
8387 if (a->display && b->display) {
8388 if (!((memcmp(a->display, b->display, sizeof(wl_display)) == 0))) {
8389 onFail("a->display (Error: Unequal dyn array)");
8390 };
8391 }
8392 if (!((!(a->surface) && !(b->surface)) || ((a->surface) && (b->surface)))) {
8393 onFail("a->surface (Error: Mismatch in optional field)");
8394 };
8395 if (a->surface && b->surface) {
8396 if (!((memcmp(a->surface, b->surface, sizeof(wl_surface)) == 0))) {
8397 onFail("a->surface (Error: Unequal dyn array)");
8398 };
8399 }
8400 }
8401
8402 #endif
8403 #ifdef VK_KHR_android_surface
checkEqual_VkAndroidSurfaceCreateInfoKHR(const VkAndroidSurfaceCreateInfoKHR * a,const VkAndroidSurfaceCreateInfoKHR * b,OnFailCompareFunc onFail)8404 void checkEqual_VkAndroidSurfaceCreateInfoKHR(const VkAndroidSurfaceCreateInfoKHR* a,
8405 const VkAndroidSurfaceCreateInfoKHR* b,
8406 OnFailCompareFunc onFail) {
8407 if (!((a->sType) == (b->sType))) {
8408 onFail("a->sType (Error: Value not equal)");
8409 };
8410 if (a->pNext) {
8411 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8412 }
8413 if (!((a->flags) == (b->flags))) {
8414 onFail("a->flags (Error: Value not equal)");
8415 };
8416 if (!((!(a->window) && !(b->window)) || ((a->window) && (b->window)))) {
8417 onFail("a->window (Error: Mismatch in optional field)");
8418 };
8419 if (a->window && b->window) {
8420 if (!((memcmp(a->window, b->window, sizeof(ANativeWindow)) == 0))) {
8421 onFail("a->window (Error: Unequal dyn array)");
8422 };
8423 }
8424 }
8425
8426 #endif
8427 #ifdef VK_KHR_win32_surface
checkEqual_VkWin32SurfaceCreateInfoKHR(const VkWin32SurfaceCreateInfoKHR * a,const VkWin32SurfaceCreateInfoKHR * b,OnFailCompareFunc onFail)8428 void checkEqual_VkWin32SurfaceCreateInfoKHR(const VkWin32SurfaceCreateInfoKHR* a,
8429 const VkWin32SurfaceCreateInfoKHR* b,
8430 OnFailCompareFunc onFail) {
8431 if (!((a->sType) == (b->sType))) {
8432 onFail("a->sType (Error: Value not equal)");
8433 };
8434 if (a->pNext) {
8435 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8436 }
8437 if (!((a->flags) == (b->flags))) {
8438 onFail("a->flags (Error: Value not equal)");
8439 };
8440 if (!((a->hinstance) == (b->hinstance))) {
8441 onFail("a->hinstance (Error: Value not equal)");
8442 };
8443 if (!((a->hwnd) == (b->hwnd))) {
8444 onFail("a->hwnd (Error: Value not equal)");
8445 };
8446 }
8447
8448 #endif
8449 #ifdef VK_KHR_sampler_mirror_clamp_to_edge
8450 #endif
8451 #ifdef VK_KHR_video_queue
checkEqual_VkQueueFamilyQueryResultStatusPropertiesKHR(const VkQueueFamilyQueryResultStatusPropertiesKHR * a,const VkQueueFamilyQueryResultStatusPropertiesKHR * b,OnFailCompareFunc onFail)8452 void checkEqual_VkQueueFamilyQueryResultStatusPropertiesKHR(
8453 const VkQueueFamilyQueryResultStatusPropertiesKHR* a,
8454 const VkQueueFamilyQueryResultStatusPropertiesKHR* b, OnFailCompareFunc onFail) {
8455 if (!((a->sType) == (b->sType))) {
8456 onFail("a->sType (Error: Value not equal)");
8457 };
8458 if (a->pNext) {
8459 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8460 }
8461 if (!((a->queryResultStatusSupport) == (b->queryResultStatusSupport))) {
8462 onFail("a->queryResultStatusSupport (Error: Value not equal)");
8463 };
8464 }
8465
checkEqual_VkQueueFamilyVideoPropertiesKHR(const VkQueueFamilyVideoPropertiesKHR * a,const VkQueueFamilyVideoPropertiesKHR * b,OnFailCompareFunc onFail)8466 void checkEqual_VkQueueFamilyVideoPropertiesKHR(const VkQueueFamilyVideoPropertiesKHR* a,
8467 const VkQueueFamilyVideoPropertiesKHR* b,
8468 OnFailCompareFunc onFail) {
8469 if (!((a->sType) == (b->sType))) {
8470 onFail("a->sType (Error: Value not equal)");
8471 };
8472 if (a->pNext) {
8473 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8474 }
8475 if (!((a->videoCodecOperations) == (b->videoCodecOperations))) {
8476 onFail("a->videoCodecOperations (Error: Value not equal)");
8477 };
8478 }
8479
checkEqual_VkVideoProfileInfoKHR(const VkVideoProfileInfoKHR * a,const VkVideoProfileInfoKHR * b,OnFailCompareFunc onFail)8480 void checkEqual_VkVideoProfileInfoKHR(const VkVideoProfileInfoKHR* a,
8481 const VkVideoProfileInfoKHR* b, OnFailCompareFunc onFail) {
8482 if (!((a->sType) == (b->sType))) {
8483 onFail("a->sType (Error: Value not equal)");
8484 };
8485 if (a->pNext) {
8486 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8487 }
8488 if (!((a->videoCodecOperation) == (b->videoCodecOperation))) {
8489 onFail("a->videoCodecOperation (Error: Value not equal)");
8490 };
8491 if (!((a->chromaSubsampling) == (b->chromaSubsampling))) {
8492 onFail("a->chromaSubsampling (Error: Value not equal)");
8493 };
8494 if (!((a->lumaBitDepth) == (b->lumaBitDepth))) {
8495 onFail("a->lumaBitDepth (Error: Value not equal)");
8496 };
8497 if (!((a->chromaBitDepth) == (b->chromaBitDepth))) {
8498 onFail("a->chromaBitDepth (Error: Value not equal)");
8499 };
8500 }
8501
checkEqual_VkVideoProfileListInfoKHR(const VkVideoProfileListInfoKHR * a,const VkVideoProfileListInfoKHR * b,OnFailCompareFunc onFail)8502 void checkEqual_VkVideoProfileListInfoKHR(const VkVideoProfileListInfoKHR* a,
8503 const VkVideoProfileListInfoKHR* b,
8504 OnFailCompareFunc onFail) {
8505 if (!((a->sType) == (b->sType))) {
8506 onFail("a->sType (Error: Value not equal)");
8507 };
8508 if (a->pNext) {
8509 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8510 }
8511 if (!((a->profileCount) == (b->profileCount))) {
8512 onFail("a->profileCount (Error: Value not equal)");
8513 };
8514 if ((a->pProfiles) && (b->pProfiles)) {
8515 if (!((a->profileCount) == (b->profileCount))) {
8516 onFail("a->pProfiles (Error: Lengths not equal)");
8517 };
8518 if ((a->profileCount) == (b->profileCount)) {
8519 if (a) {
8520 for (uint32_t i = 0; i < (uint32_t)a->profileCount; ++i) {
8521 checkEqual_VkVideoProfileInfoKHR(a->pProfiles + i, b->pProfiles + i, onFail);
8522 }
8523 }
8524 }
8525 }
8526 }
8527
checkEqual_VkVideoCapabilitiesKHR(const VkVideoCapabilitiesKHR * a,const VkVideoCapabilitiesKHR * b,OnFailCompareFunc onFail)8528 void checkEqual_VkVideoCapabilitiesKHR(const VkVideoCapabilitiesKHR* a,
8529 const VkVideoCapabilitiesKHR* b, OnFailCompareFunc onFail) {
8530 if (!((a->sType) == (b->sType))) {
8531 onFail("a->sType (Error: Value not equal)");
8532 };
8533 if (a->pNext) {
8534 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8535 }
8536 if (!((a->flags) == (b->flags))) {
8537 onFail("a->flags (Error: Value not equal)");
8538 };
8539 if (!((a->minBitstreamBufferOffsetAlignment) == (b->minBitstreamBufferOffsetAlignment))) {
8540 onFail("a->minBitstreamBufferOffsetAlignment (Error: Value not equal)");
8541 };
8542 if (!((a->minBitstreamBufferSizeAlignment) == (b->minBitstreamBufferSizeAlignment))) {
8543 onFail("a->minBitstreamBufferSizeAlignment (Error: Value not equal)");
8544 };
8545 checkEqual_VkExtent2D(&a->pictureAccessGranularity, &b->pictureAccessGranularity, onFail);
8546 checkEqual_VkExtent2D(&a->minCodedExtent, &b->minCodedExtent, onFail);
8547 checkEqual_VkExtent2D(&a->maxCodedExtent, &b->maxCodedExtent, onFail);
8548 if (!((a->maxDpbSlots) == (b->maxDpbSlots))) {
8549 onFail("a->maxDpbSlots (Error: Value not equal)");
8550 };
8551 if (!((a->maxActiveReferencePictures) == (b->maxActiveReferencePictures))) {
8552 onFail("a->maxActiveReferencePictures (Error: Value not equal)");
8553 };
8554 checkEqual_VkExtensionProperties(&a->stdHeaderVersion, &b->stdHeaderVersion, onFail);
8555 }
8556
checkEqual_VkPhysicalDeviceVideoFormatInfoKHR(const VkPhysicalDeviceVideoFormatInfoKHR * a,const VkPhysicalDeviceVideoFormatInfoKHR * b,OnFailCompareFunc onFail)8557 void checkEqual_VkPhysicalDeviceVideoFormatInfoKHR(const VkPhysicalDeviceVideoFormatInfoKHR* a,
8558 const VkPhysicalDeviceVideoFormatInfoKHR* b,
8559 OnFailCompareFunc onFail) {
8560 if (!((a->sType) == (b->sType))) {
8561 onFail("a->sType (Error: Value not equal)");
8562 };
8563 if (a->pNext) {
8564 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8565 }
8566 if (!((a->imageUsage) == (b->imageUsage))) {
8567 onFail("a->imageUsage (Error: Value not equal)");
8568 };
8569 }
8570
checkEqual_VkVideoFormatPropertiesKHR(const VkVideoFormatPropertiesKHR * a,const VkVideoFormatPropertiesKHR * b,OnFailCompareFunc onFail)8571 void checkEqual_VkVideoFormatPropertiesKHR(const VkVideoFormatPropertiesKHR* a,
8572 const VkVideoFormatPropertiesKHR* b,
8573 OnFailCompareFunc onFail) {
8574 if (!((a->sType) == (b->sType))) {
8575 onFail("a->sType (Error: Value not equal)");
8576 };
8577 if (a->pNext) {
8578 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8579 }
8580 if (!((a->format) == (b->format))) {
8581 onFail("a->format (Error: Value not equal)");
8582 };
8583 checkEqual_VkComponentMapping(&a->componentMapping, &b->componentMapping, onFail);
8584 if (!((a->imageCreateFlags) == (b->imageCreateFlags))) {
8585 onFail("a->imageCreateFlags (Error: Value not equal)");
8586 };
8587 if (!((a->imageType) == (b->imageType))) {
8588 onFail("a->imageType (Error: Value not equal)");
8589 };
8590 if (!((a->imageTiling) == (b->imageTiling))) {
8591 onFail("a->imageTiling (Error: Value not equal)");
8592 };
8593 if (!((a->imageUsageFlags) == (b->imageUsageFlags))) {
8594 onFail("a->imageUsageFlags (Error: Value not equal)");
8595 };
8596 }
8597
checkEqual_VkVideoPictureResourceInfoKHR(const VkVideoPictureResourceInfoKHR * a,const VkVideoPictureResourceInfoKHR * b,OnFailCompareFunc onFail)8598 void checkEqual_VkVideoPictureResourceInfoKHR(const VkVideoPictureResourceInfoKHR* a,
8599 const VkVideoPictureResourceInfoKHR* b,
8600 OnFailCompareFunc onFail) {
8601 if (!((a->sType) == (b->sType))) {
8602 onFail("a->sType (Error: Value not equal)");
8603 };
8604 if (a->pNext) {
8605 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8606 }
8607 checkEqual_VkOffset2D(&a->codedOffset, &b->codedOffset, onFail);
8608 checkEqual_VkExtent2D(&a->codedExtent, &b->codedExtent, onFail);
8609 if (!((a->baseArrayLayer) == (b->baseArrayLayer))) {
8610 onFail("a->baseArrayLayer (Error: Value not equal)");
8611 };
8612 if (!((a->imageViewBinding) == (b->imageViewBinding))) {
8613 onFail("a->imageViewBinding (Error: Value not equal)");
8614 };
8615 }
8616
checkEqual_VkVideoReferenceSlotInfoKHR(const VkVideoReferenceSlotInfoKHR * a,const VkVideoReferenceSlotInfoKHR * b,OnFailCompareFunc onFail)8617 void checkEqual_VkVideoReferenceSlotInfoKHR(const VkVideoReferenceSlotInfoKHR* a,
8618 const VkVideoReferenceSlotInfoKHR* b,
8619 OnFailCompareFunc onFail) {
8620 if (!((a->sType) == (b->sType))) {
8621 onFail("a->sType (Error: Value not equal)");
8622 };
8623 if (a->pNext) {
8624 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8625 }
8626 if (!((a->slotIndex) == (b->slotIndex))) {
8627 onFail("a->slotIndex (Error: Value not equal)");
8628 };
8629 if (!((!(a->pPictureResource) && !(b->pPictureResource)) ||
8630 ((a->pPictureResource) && (b->pPictureResource)))) {
8631 onFail("a->pPictureResource (Error: Mismatch in optional field)");
8632 };
8633 if (a->pPictureResource && b->pPictureResource) {
8634 if ((a->pPictureResource) && (b->pPictureResource)) {
8635 checkEqual_VkVideoPictureResourceInfoKHR(a->pPictureResource, b->pPictureResource,
8636 onFail);
8637 }
8638 }
8639 }
8640
checkEqual_VkVideoSessionMemoryRequirementsKHR(const VkVideoSessionMemoryRequirementsKHR * a,const VkVideoSessionMemoryRequirementsKHR * b,OnFailCompareFunc onFail)8641 void checkEqual_VkVideoSessionMemoryRequirementsKHR(const VkVideoSessionMemoryRequirementsKHR* a,
8642 const VkVideoSessionMemoryRequirementsKHR* b,
8643 OnFailCompareFunc onFail) {
8644 if (!((a->sType) == (b->sType))) {
8645 onFail("a->sType (Error: Value not equal)");
8646 };
8647 if (a->pNext) {
8648 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8649 }
8650 if (!((a->memoryBindIndex) == (b->memoryBindIndex))) {
8651 onFail("a->memoryBindIndex (Error: Value not equal)");
8652 };
8653 checkEqual_VkMemoryRequirements(&a->memoryRequirements, &b->memoryRequirements, onFail);
8654 }
8655
checkEqual_VkBindVideoSessionMemoryInfoKHR(const VkBindVideoSessionMemoryInfoKHR * a,const VkBindVideoSessionMemoryInfoKHR * b,OnFailCompareFunc onFail)8656 void checkEqual_VkBindVideoSessionMemoryInfoKHR(const VkBindVideoSessionMemoryInfoKHR* a,
8657 const VkBindVideoSessionMemoryInfoKHR* b,
8658 OnFailCompareFunc onFail) {
8659 if (!((a->sType) == (b->sType))) {
8660 onFail("a->sType (Error: Value not equal)");
8661 };
8662 if (a->pNext) {
8663 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8664 }
8665 if (!((a->memoryBindIndex) == (b->memoryBindIndex))) {
8666 onFail("a->memoryBindIndex (Error: Value not equal)");
8667 };
8668 if (!((a->memory) == (b->memory))) {
8669 onFail("a->memory (Error: Value not equal)");
8670 };
8671 if (!((a->memoryOffset) == (b->memoryOffset))) {
8672 onFail("a->memoryOffset (Error: Value not equal)");
8673 };
8674 if (!((a->memorySize) == (b->memorySize))) {
8675 onFail("a->memorySize (Error: Value not equal)");
8676 };
8677 }
8678
checkEqual_VkVideoSessionCreateInfoKHR(const VkVideoSessionCreateInfoKHR * a,const VkVideoSessionCreateInfoKHR * b,OnFailCompareFunc onFail)8679 void checkEqual_VkVideoSessionCreateInfoKHR(const VkVideoSessionCreateInfoKHR* a,
8680 const VkVideoSessionCreateInfoKHR* b,
8681 OnFailCompareFunc onFail) {
8682 if (!((a->sType) == (b->sType))) {
8683 onFail("a->sType (Error: Value not equal)");
8684 };
8685 if (a->pNext) {
8686 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8687 }
8688 if (!((a->queueFamilyIndex) == (b->queueFamilyIndex))) {
8689 onFail("a->queueFamilyIndex (Error: Value not equal)");
8690 };
8691 if (!((a->flags) == (b->flags))) {
8692 onFail("a->flags (Error: Value not equal)");
8693 };
8694 if ((a->pVideoProfile) && (b->pVideoProfile)) {
8695 checkEqual_VkVideoProfileInfoKHR(a->pVideoProfile, b->pVideoProfile, onFail);
8696 }
8697 if (!((a->pictureFormat) == (b->pictureFormat))) {
8698 onFail("a->pictureFormat (Error: Value not equal)");
8699 };
8700 checkEqual_VkExtent2D(&a->maxCodedExtent, &b->maxCodedExtent, onFail);
8701 if (!((a->referencePictureFormat) == (b->referencePictureFormat))) {
8702 onFail("a->referencePictureFormat (Error: Value not equal)");
8703 };
8704 if (!((a->maxDpbSlots) == (b->maxDpbSlots))) {
8705 onFail("a->maxDpbSlots (Error: Value not equal)");
8706 };
8707 if (!((a->maxActiveReferencePictures) == (b->maxActiveReferencePictures))) {
8708 onFail("a->maxActiveReferencePictures (Error: Value not equal)");
8709 };
8710 if ((a->pStdHeaderVersion) && (b->pStdHeaderVersion)) {
8711 checkEqual_VkExtensionProperties(a->pStdHeaderVersion, b->pStdHeaderVersion, onFail);
8712 }
8713 }
8714
checkEqual_VkVideoSessionParametersCreateInfoKHR(const VkVideoSessionParametersCreateInfoKHR * a,const VkVideoSessionParametersCreateInfoKHR * b,OnFailCompareFunc onFail)8715 void checkEqual_VkVideoSessionParametersCreateInfoKHR(
8716 const VkVideoSessionParametersCreateInfoKHR* a, const VkVideoSessionParametersCreateInfoKHR* b,
8717 OnFailCompareFunc onFail) {
8718 if (!((a->sType) == (b->sType))) {
8719 onFail("a->sType (Error: Value not equal)");
8720 };
8721 if (a->pNext) {
8722 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8723 }
8724 if (!((a->flags) == (b->flags))) {
8725 onFail("a->flags (Error: Value not equal)");
8726 };
8727 if (!((a->videoSessionParametersTemplate) == (b->videoSessionParametersTemplate))) {
8728 onFail("a->videoSessionParametersTemplate (Error: Value not equal)");
8729 };
8730 if (!((a->videoSession) == (b->videoSession))) {
8731 onFail("a->videoSession (Error: Value not equal)");
8732 };
8733 }
8734
checkEqual_VkVideoSessionParametersUpdateInfoKHR(const VkVideoSessionParametersUpdateInfoKHR * a,const VkVideoSessionParametersUpdateInfoKHR * b,OnFailCompareFunc onFail)8735 void checkEqual_VkVideoSessionParametersUpdateInfoKHR(
8736 const VkVideoSessionParametersUpdateInfoKHR* a, const VkVideoSessionParametersUpdateInfoKHR* b,
8737 OnFailCompareFunc onFail) {
8738 if (!((a->sType) == (b->sType))) {
8739 onFail("a->sType (Error: Value not equal)");
8740 };
8741 if (a->pNext) {
8742 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8743 }
8744 if (!((a->updateSequenceCount) == (b->updateSequenceCount))) {
8745 onFail("a->updateSequenceCount (Error: Value not equal)");
8746 };
8747 }
8748
checkEqual_VkVideoBeginCodingInfoKHR(const VkVideoBeginCodingInfoKHR * a,const VkVideoBeginCodingInfoKHR * b,OnFailCompareFunc onFail)8749 void checkEqual_VkVideoBeginCodingInfoKHR(const VkVideoBeginCodingInfoKHR* a,
8750 const VkVideoBeginCodingInfoKHR* b,
8751 OnFailCompareFunc onFail) {
8752 if (!((a->sType) == (b->sType))) {
8753 onFail("a->sType (Error: Value not equal)");
8754 };
8755 if (a->pNext) {
8756 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8757 }
8758 if (!((a->flags) == (b->flags))) {
8759 onFail("a->flags (Error: Value not equal)");
8760 };
8761 if (!((a->videoSession) == (b->videoSession))) {
8762 onFail("a->videoSession (Error: Value not equal)");
8763 };
8764 if (!((a->videoSessionParameters) == (b->videoSessionParameters))) {
8765 onFail("a->videoSessionParameters (Error: Value not equal)");
8766 };
8767 if (!((a->referenceSlotCount) == (b->referenceSlotCount))) {
8768 onFail("a->referenceSlotCount (Error: Value not equal)");
8769 };
8770 if ((a->pReferenceSlots) && (b->pReferenceSlots)) {
8771 if (!((a->referenceSlotCount) == (b->referenceSlotCount))) {
8772 onFail("a->pReferenceSlots (Error: Lengths not equal)");
8773 };
8774 if ((a->referenceSlotCount) == (b->referenceSlotCount)) {
8775 if (a) {
8776 for (uint32_t i = 0; i < (uint32_t)a->referenceSlotCount; ++i) {
8777 checkEqual_VkVideoReferenceSlotInfoKHR(a->pReferenceSlots + i,
8778 b->pReferenceSlots + i, onFail);
8779 }
8780 }
8781 }
8782 }
8783 }
8784
checkEqual_VkVideoEndCodingInfoKHR(const VkVideoEndCodingInfoKHR * a,const VkVideoEndCodingInfoKHR * b,OnFailCompareFunc onFail)8785 void checkEqual_VkVideoEndCodingInfoKHR(const VkVideoEndCodingInfoKHR* a,
8786 const VkVideoEndCodingInfoKHR* b,
8787 OnFailCompareFunc onFail) {
8788 if (!((a->sType) == (b->sType))) {
8789 onFail("a->sType (Error: Value not equal)");
8790 };
8791 if (a->pNext) {
8792 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8793 }
8794 if (!((a->flags) == (b->flags))) {
8795 onFail("a->flags (Error: Value not equal)");
8796 };
8797 }
8798
checkEqual_VkVideoCodingControlInfoKHR(const VkVideoCodingControlInfoKHR * a,const VkVideoCodingControlInfoKHR * b,OnFailCompareFunc onFail)8799 void checkEqual_VkVideoCodingControlInfoKHR(const VkVideoCodingControlInfoKHR* a,
8800 const VkVideoCodingControlInfoKHR* b,
8801 OnFailCompareFunc onFail) {
8802 if (!((a->sType) == (b->sType))) {
8803 onFail("a->sType (Error: Value not equal)");
8804 };
8805 if (a->pNext) {
8806 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8807 }
8808 if (!((a->flags) == (b->flags))) {
8809 onFail("a->flags (Error: Value not equal)");
8810 };
8811 }
8812
8813 #endif
8814 #ifdef VK_KHR_video_decode_queue
checkEqual_VkVideoDecodeCapabilitiesKHR(const VkVideoDecodeCapabilitiesKHR * a,const VkVideoDecodeCapabilitiesKHR * b,OnFailCompareFunc onFail)8815 void checkEqual_VkVideoDecodeCapabilitiesKHR(const VkVideoDecodeCapabilitiesKHR* a,
8816 const VkVideoDecodeCapabilitiesKHR* b,
8817 OnFailCompareFunc onFail) {
8818 if (!((a->sType) == (b->sType))) {
8819 onFail("a->sType (Error: Value not equal)");
8820 };
8821 if (a->pNext) {
8822 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8823 }
8824 if (!((a->flags) == (b->flags))) {
8825 onFail("a->flags (Error: Value not equal)");
8826 };
8827 }
8828
checkEqual_VkVideoDecodeUsageInfoKHR(const VkVideoDecodeUsageInfoKHR * a,const VkVideoDecodeUsageInfoKHR * b,OnFailCompareFunc onFail)8829 void checkEqual_VkVideoDecodeUsageInfoKHR(const VkVideoDecodeUsageInfoKHR* a,
8830 const VkVideoDecodeUsageInfoKHR* b,
8831 OnFailCompareFunc onFail) {
8832 if (!((a->sType) == (b->sType))) {
8833 onFail("a->sType (Error: Value not equal)");
8834 };
8835 if (a->pNext) {
8836 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8837 }
8838 if (!((a->videoUsageHints) == (b->videoUsageHints))) {
8839 onFail("a->videoUsageHints (Error: Value not equal)");
8840 };
8841 }
8842
checkEqual_VkVideoDecodeInfoKHR(const VkVideoDecodeInfoKHR * a,const VkVideoDecodeInfoKHR * b,OnFailCompareFunc onFail)8843 void checkEqual_VkVideoDecodeInfoKHR(const VkVideoDecodeInfoKHR* a, const VkVideoDecodeInfoKHR* b,
8844 OnFailCompareFunc onFail) {
8845 if (!((a->sType) == (b->sType))) {
8846 onFail("a->sType (Error: Value not equal)");
8847 };
8848 if (a->pNext) {
8849 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8850 }
8851 if (!((a->flags) == (b->flags))) {
8852 onFail("a->flags (Error: Value not equal)");
8853 };
8854 if (!((a->srcBuffer) == (b->srcBuffer))) {
8855 onFail("a->srcBuffer (Error: Value not equal)");
8856 };
8857 if (!((a->srcBufferOffset) == (b->srcBufferOffset))) {
8858 onFail("a->srcBufferOffset (Error: Value not equal)");
8859 };
8860 if (!((a->srcBufferRange) == (b->srcBufferRange))) {
8861 onFail("a->srcBufferRange (Error: Value not equal)");
8862 };
8863 checkEqual_VkVideoPictureResourceInfoKHR(&a->dstPictureResource, &b->dstPictureResource,
8864 onFail);
8865 if ((a->pSetupReferenceSlot) && (b->pSetupReferenceSlot)) {
8866 checkEqual_VkVideoReferenceSlotInfoKHR(a->pSetupReferenceSlot, b->pSetupReferenceSlot,
8867 onFail);
8868 }
8869 if (!((a->referenceSlotCount) == (b->referenceSlotCount))) {
8870 onFail("a->referenceSlotCount (Error: Value not equal)");
8871 };
8872 if ((a->pReferenceSlots) && (b->pReferenceSlots)) {
8873 if (!((a->referenceSlotCount) == (b->referenceSlotCount))) {
8874 onFail("a->pReferenceSlots (Error: Lengths not equal)");
8875 };
8876 if ((a->referenceSlotCount) == (b->referenceSlotCount)) {
8877 if (a) {
8878 for (uint32_t i = 0; i < (uint32_t)a->referenceSlotCount; ++i) {
8879 checkEqual_VkVideoReferenceSlotInfoKHR(a->pReferenceSlots + i,
8880 b->pReferenceSlots + i, onFail);
8881 }
8882 }
8883 }
8884 }
8885 }
8886
8887 #endif
8888 #ifdef VK_KHR_video_decode_h264
checkEqual_VkVideoDecodeH264ProfileInfoKHR(const VkVideoDecodeH264ProfileInfoKHR * a,const VkVideoDecodeH264ProfileInfoKHR * b,OnFailCompareFunc onFail)8889 void checkEqual_VkVideoDecodeH264ProfileInfoKHR(const VkVideoDecodeH264ProfileInfoKHR* a,
8890 const VkVideoDecodeH264ProfileInfoKHR* b,
8891 OnFailCompareFunc onFail) {
8892 if (!((a->sType) == (b->sType))) {
8893 onFail("a->sType (Error: Value not equal)");
8894 };
8895 if (a->pNext) {
8896 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8897 }
8898 if (!((a->stdProfileIdc) == (b->stdProfileIdc))) {
8899 onFail("a->stdProfileIdc (Error: Value not equal)");
8900 };
8901 if (!((a->pictureLayout) == (b->pictureLayout))) {
8902 onFail("a->pictureLayout (Error: Value not equal)");
8903 };
8904 }
8905
checkEqual_VkVideoDecodeH264CapabilitiesKHR(const VkVideoDecodeH264CapabilitiesKHR * a,const VkVideoDecodeH264CapabilitiesKHR * b,OnFailCompareFunc onFail)8906 void checkEqual_VkVideoDecodeH264CapabilitiesKHR(const VkVideoDecodeH264CapabilitiesKHR* a,
8907 const VkVideoDecodeH264CapabilitiesKHR* b,
8908 OnFailCompareFunc onFail) {
8909 if (!((a->sType) == (b->sType))) {
8910 onFail("a->sType (Error: Value not equal)");
8911 };
8912 if (a->pNext) {
8913 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8914 }
8915 if (!((a->maxLevelIdc) == (b->maxLevelIdc))) {
8916 onFail("a->maxLevelIdc (Error: Value not equal)");
8917 };
8918 checkEqual_VkOffset2D(&a->fieldOffsetGranularity, &b->fieldOffsetGranularity, onFail);
8919 }
8920
checkEqual_VkVideoDecodeH264SessionParametersAddInfoKHR(const VkVideoDecodeH264SessionParametersAddInfoKHR * a,const VkVideoDecodeH264SessionParametersAddInfoKHR * b,OnFailCompareFunc onFail)8921 void checkEqual_VkVideoDecodeH264SessionParametersAddInfoKHR(
8922 const VkVideoDecodeH264SessionParametersAddInfoKHR* a,
8923 const VkVideoDecodeH264SessionParametersAddInfoKHR* b, OnFailCompareFunc onFail) {
8924 if (!((a->sType) == (b->sType))) {
8925 onFail("a->sType (Error: Value not equal)");
8926 };
8927 if (a->pNext) {
8928 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8929 }
8930 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
8931 onFail("a->stdSPSCount (Error: Value not equal)");
8932 };
8933 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
8934 onFail("a->pStdSPSs (Error: Lengths not equal)");
8935 };
8936 if (!((memcmp(a->pStdSPSs, b->pStdSPSs,
8937 a->stdSPSCount * sizeof(const StdVideoH264SequenceParameterSet)) == 0))) {
8938 onFail("a->pStdSPSs (Error: Unequal dyn array)");
8939 };
8940 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
8941 onFail("a->stdPPSCount (Error: Value not equal)");
8942 };
8943 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
8944 onFail("a->pStdPPSs (Error: Lengths not equal)");
8945 };
8946 if (!((memcmp(a->pStdPPSs, b->pStdPPSs,
8947 a->stdPPSCount * sizeof(const StdVideoH264PictureParameterSet)) == 0))) {
8948 onFail("a->pStdPPSs (Error: Unequal dyn array)");
8949 };
8950 }
8951
checkEqual_VkVideoDecodeH264SessionParametersCreateInfoKHR(const VkVideoDecodeH264SessionParametersCreateInfoKHR * a,const VkVideoDecodeH264SessionParametersCreateInfoKHR * b,OnFailCompareFunc onFail)8952 void checkEqual_VkVideoDecodeH264SessionParametersCreateInfoKHR(
8953 const VkVideoDecodeH264SessionParametersCreateInfoKHR* a,
8954 const VkVideoDecodeH264SessionParametersCreateInfoKHR* b, OnFailCompareFunc onFail) {
8955 if (!((a->sType) == (b->sType))) {
8956 onFail("a->sType (Error: Value not equal)");
8957 };
8958 if (a->pNext) {
8959 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8960 }
8961 if (!((a->maxStdSPSCount) == (b->maxStdSPSCount))) {
8962 onFail("a->maxStdSPSCount (Error: Value not equal)");
8963 };
8964 if (!((a->maxStdPPSCount) == (b->maxStdPPSCount))) {
8965 onFail("a->maxStdPPSCount (Error: Value not equal)");
8966 };
8967 if (!((!(a->pParametersAddInfo) && !(b->pParametersAddInfo)) ||
8968 ((a->pParametersAddInfo) && (b->pParametersAddInfo)))) {
8969 onFail("a->pParametersAddInfo (Error: Mismatch in optional field)");
8970 };
8971 if (a->pParametersAddInfo && b->pParametersAddInfo) {
8972 if ((a->pParametersAddInfo) && (b->pParametersAddInfo)) {
8973 checkEqual_VkVideoDecodeH264SessionParametersAddInfoKHR(a->pParametersAddInfo,
8974 b->pParametersAddInfo, onFail);
8975 }
8976 }
8977 }
8978
checkEqual_VkVideoDecodeH264PictureInfoKHR(const VkVideoDecodeH264PictureInfoKHR * a,const VkVideoDecodeH264PictureInfoKHR * b,OnFailCompareFunc onFail)8979 void checkEqual_VkVideoDecodeH264PictureInfoKHR(const VkVideoDecodeH264PictureInfoKHR* a,
8980 const VkVideoDecodeH264PictureInfoKHR* b,
8981 OnFailCompareFunc onFail) {
8982 if (!((a->sType) == (b->sType))) {
8983 onFail("a->sType (Error: Value not equal)");
8984 };
8985 if (a->pNext) {
8986 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
8987 }
8988 if (!((memcmp(a->pStdPictureInfo, b->pStdPictureInfo,
8989 sizeof(const StdVideoDecodeH264PictureInfo)) == 0))) {
8990 onFail("a->pStdPictureInfo (Error: Unequal dyn array)");
8991 };
8992 if (!((a->sliceCount) == (b->sliceCount))) {
8993 onFail("a->sliceCount (Error: Value not equal)");
8994 };
8995 if (!((a->sliceCount) == (b->sliceCount))) {
8996 onFail("a->pSliceOffsets (Error: Lengths not equal)");
8997 };
8998 if (!((memcmp(a->pSliceOffsets, b->pSliceOffsets, a->sliceCount * sizeof(const uint32_t)) ==
8999 0))) {
9000 onFail("a->pSliceOffsets (Error: Unequal dyn array)");
9001 };
9002 }
9003
checkEqual_VkVideoDecodeH264DpbSlotInfoKHR(const VkVideoDecodeH264DpbSlotInfoKHR * a,const VkVideoDecodeH264DpbSlotInfoKHR * b,OnFailCompareFunc onFail)9004 void checkEqual_VkVideoDecodeH264DpbSlotInfoKHR(const VkVideoDecodeH264DpbSlotInfoKHR* a,
9005 const VkVideoDecodeH264DpbSlotInfoKHR* b,
9006 OnFailCompareFunc onFail) {
9007 if (!((a->sType) == (b->sType))) {
9008 onFail("a->sType (Error: Value not equal)");
9009 };
9010 if (a->pNext) {
9011 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9012 }
9013 if (!((memcmp(a->pStdReferenceInfo, b->pStdReferenceInfo,
9014 sizeof(const StdVideoDecodeH264ReferenceInfo)) == 0))) {
9015 onFail("a->pStdReferenceInfo (Error: Unequal dyn array)");
9016 };
9017 }
9018
9019 #endif
9020 #ifdef VK_KHR_dynamic_rendering
checkEqual_VkRenderingFragmentShadingRateAttachmentInfoKHR(const VkRenderingFragmentShadingRateAttachmentInfoKHR * a,const VkRenderingFragmentShadingRateAttachmentInfoKHR * b,OnFailCompareFunc onFail)9021 void checkEqual_VkRenderingFragmentShadingRateAttachmentInfoKHR(
9022 const VkRenderingFragmentShadingRateAttachmentInfoKHR* a,
9023 const VkRenderingFragmentShadingRateAttachmentInfoKHR* b, OnFailCompareFunc onFail) {
9024 if (!((a->sType) == (b->sType))) {
9025 onFail("a->sType (Error: Value not equal)");
9026 };
9027 if (a->pNext) {
9028 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9029 }
9030 if (!((a->imageView) == (b->imageView))) {
9031 onFail("a->imageView (Error: Value not equal)");
9032 };
9033 if (!((a->imageLayout) == (b->imageLayout))) {
9034 onFail("a->imageLayout (Error: Value not equal)");
9035 };
9036 checkEqual_VkExtent2D(&a->shadingRateAttachmentTexelSize, &b->shadingRateAttachmentTexelSize,
9037 onFail);
9038 }
9039
checkEqual_VkRenderingFragmentDensityMapAttachmentInfoEXT(const VkRenderingFragmentDensityMapAttachmentInfoEXT * a,const VkRenderingFragmentDensityMapAttachmentInfoEXT * b,OnFailCompareFunc onFail)9040 void checkEqual_VkRenderingFragmentDensityMapAttachmentInfoEXT(
9041 const VkRenderingFragmentDensityMapAttachmentInfoEXT* a,
9042 const VkRenderingFragmentDensityMapAttachmentInfoEXT* b, OnFailCompareFunc onFail) {
9043 if (!((a->sType) == (b->sType))) {
9044 onFail("a->sType (Error: Value not equal)");
9045 };
9046 if (a->pNext) {
9047 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9048 }
9049 if (!((a->imageView) == (b->imageView))) {
9050 onFail("a->imageView (Error: Value not equal)");
9051 };
9052 if (!((a->imageLayout) == (b->imageLayout))) {
9053 onFail("a->imageLayout (Error: Value not equal)");
9054 };
9055 }
9056
checkEqual_VkAttachmentSampleCountInfoAMD(const VkAttachmentSampleCountInfoAMD * a,const VkAttachmentSampleCountInfoAMD * b,OnFailCompareFunc onFail)9057 void checkEqual_VkAttachmentSampleCountInfoAMD(const VkAttachmentSampleCountInfoAMD* a,
9058 const VkAttachmentSampleCountInfoAMD* b,
9059 OnFailCompareFunc onFail) {
9060 if (!((a->sType) == (b->sType))) {
9061 onFail("a->sType (Error: Value not equal)");
9062 };
9063 if (a->pNext) {
9064 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9065 }
9066 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
9067 onFail("a->colorAttachmentCount (Error: Value not equal)");
9068 };
9069 if (!((!(a->pColorAttachmentSamples) && !(b->pColorAttachmentSamples)) ||
9070 ((a->pColorAttachmentSamples) && (b->pColorAttachmentSamples)))) {
9071 onFail("a->pColorAttachmentSamples (Error: Mismatch in optional field)");
9072 };
9073 if (a->pColorAttachmentSamples && b->pColorAttachmentSamples) {
9074 if (!((a->colorAttachmentCount) == (b->colorAttachmentCount))) {
9075 onFail("a->pColorAttachmentSamples (Error: Lengths not equal)");
9076 };
9077 if (!((memcmp(a->pColorAttachmentSamples, b->pColorAttachmentSamples,
9078 a->colorAttachmentCount * sizeof(const VkSampleCountFlagBits)) == 0))) {
9079 onFail("a->pColorAttachmentSamples (Error: Unequal dyn array)");
9080 };
9081 }
9082 if (!((a->depthStencilAttachmentSamples) == (b->depthStencilAttachmentSamples))) {
9083 onFail("a->depthStencilAttachmentSamples (Error: Value not equal)");
9084 };
9085 }
9086
checkEqual_VkMultiviewPerViewAttributesInfoNVX(const VkMultiviewPerViewAttributesInfoNVX * a,const VkMultiviewPerViewAttributesInfoNVX * b,OnFailCompareFunc onFail)9087 void checkEqual_VkMultiviewPerViewAttributesInfoNVX(const VkMultiviewPerViewAttributesInfoNVX* a,
9088 const VkMultiviewPerViewAttributesInfoNVX* b,
9089 OnFailCompareFunc onFail) {
9090 if (!((a->sType) == (b->sType))) {
9091 onFail("a->sType (Error: Value not equal)");
9092 };
9093 if (a->pNext) {
9094 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9095 }
9096 if (!((a->perViewAttributes) == (b->perViewAttributes))) {
9097 onFail("a->perViewAttributes (Error: Value not equal)");
9098 };
9099 if (!((a->perViewAttributesPositionXOnly) == (b->perViewAttributesPositionXOnly))) {
9100 onFail("a->perViewAttributesPositionXOnly (Error: Value not equal)");
9101 };
9102 }
9103
9104 #endif
9105 #ifdef VK_KHR_multiview
9106 #endif
9107 #ifdef VK_KHR_get_physical_device_properties2
9108 #endif
9109 #ifdef VK_KHR_device_group
9110 #endif
9111 #ifdef VK_KHR_shader_draw_parameters
9112 #endif
9113 #ifdef VK_KHR_maintenance1
9114 #endif
9115 #ifdef VK_KHR_device_group_creation
9116 #endif
9117 #ifdef VK_KHR_external_memory_capabilities
9118 #endif
9119 #ifdef VK_KHR_external_memory
9120 #endif
9121 #ifdef VK_KHR_external_memory_win32
checkEqual_VkImportMemoryWin32HandleInfoKHR(const VkImportMemoryWin32HandleInfoKHR * a,const VkImportMemoryWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9122 void checkEqual_VkImportMemoryWin32HandleInfoKHR(const VkImportMemoryWin32HandleInfoKHR* a,
9123 const VkImportMemoryWin32HandleInfoKHR* b,
9124 OnFailCompareFunc onFail) {
9125 if (!((a->sType) == (b->sType))) {
9126 onFail("a->sType (Error: Value not equal)");
9127 };
9128 if (a->pNext) {
9129 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9130 }
9131 if (!((a->handleType) == (b->handleType))) {
9132 onFail("a->handleType (Error: Value not equal)");
9133 };
9134 if (!((a->handle) == (b->handle))) {
9135 onFail("a->handle (Error: Value not equal)");
9136 };
9137 if (!((a->name) == (b->name))) {
9138 onFail("a->name (Error: Value not equal)");
9139 };
9140 }
9141
checkEqual_VkExportMemoryWin32HandleInfoKHR(const VkExportMemoryWin32HandleInfoKHR * a,const VkExportMemoryWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9142 void checkEqual_VkExportMemoryWin32HandleInfoKHR(const VkExportMemoryWin32HandleInfoKHR* a,
9143 const VkExportMemoryWin32HandleInfoKHR* b,
9144 OnFailCompareFunc onFail) {
9145 if (!((a->sType) == (b->sType))) {
9146 onFail("a->sType (Error: Value not equal)");
9147 };
9148 if (a->pNext) {
9149 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9150 }
9151 if (!((!(a->pAttributes) && !(b->pAttributes)) || ((a->pAttributes) && (b->pAttributes)))) {
9152 onFail("a->pAttributes (Error: Mismatch in optional field)");
9153 };
9154 if (a->pAttributes && b->pAttributes) {
9155 if (!((memcmp(a->pAttributes, b->pAttributes, sizeof(const SECURITY_ATTRIBUTES)) == 0))) {
9156 onFail("a->pAttributes (Error: Unequal dyn array)");
9157 };
9158 }
9159 if (!((a->dwAccess) == (b->dwAccess))) {
9160 onFail("a->dwAccess (Error: Value not equal)");
9161 };
9162 if (!((a->name) == (b->name))) {
9163 onFail("a->name (Error: Value not equal)");
9164 };
9165 }
9166
checkEqual_VkMemoryWin32HandlePropertiesKHR(const VkMemoryWin32HandlePropertiesKHR * a,const VkMemoryWin32HandlePropertiesKHR * b,OnFailCompareFunc onFail)9167 void checkEqual_VkMemoryWin32HandlePropertiesKHR(const VkMemoryWin32HandlePropertiesKHR* a,
9168 const VkMemoryWin32HandlePropertiesKHR* b,
9169 OnFailCompareFunc onFail) {
9170 if (!((a->sType) == (b->sType))) {
9171 onFail("a->sType (Error: Value not equal)");
9172 };
9173 if (a->pNext) {
9174 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9175 }
9176 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
9177 onFail("a->memoryTypeBits (Error: Value not equal)");
9178 };
9179 }
9180
checkEqual_VkMemoryGetWin32HandleInfoKHR(const VkMemoryGetWin32HandleInfoKHR * a,const VkMemoryGetWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9181 void checkEqual_VkMemoryGetWin32HandleInfoKHR(const VkMemoryGetWin32HandleInfoKHR* a,
9182 const VkMemoryGetWin32HandleInfoKHR* b,
9183 OnFailCompareFunc onFail) {
9184 if (!((a->sType) == (b->sType))) {
9185 onFail("a->sType (Error: Value not equal)");
9186 };
9187 if (a->pNext) {
9188 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9189 }
9190 if (!((a->memory) == (b->memory))) {
9191 onFail("a->memory (Error: Value not equal)");
9192 };
9193 if (!((a->handleType) == (b->handleType))) {
9194 onFail("a->handleType (Error: Value not equal)");
9195 };
9196 }
9197
9198 #endif
9199 #ifdef VK_KHR_external_memory_fd
checkEqual_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR * a,const VkImportMemoryFdInfoKHR * b,OnFailCompareFunc onFail)9200 void checkEqual_VkImportMemoryFdInfoKHR(const VkImportMemoryFdInfoKHR* a,
9201 const VkImportMemoryFdInfoKHR* b,
9202 OnFailCompareFunc onFail) {
9203 if (!((a->sType) == (b->sType))) {
9204 onFail("a->sType (Error: Value not equal)");
9205 };
9206 if (a->pNext) {
9207 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9208 }
9209 if (!((a->handleType) == (b->handleType))) {
9210 onFail("a->handleType (Error: Value not equal)");
9211 };
9212 if (!((a->fd) == (b->fd))) {
9213 onFail("a->fd (Error: Value not equal)");
9214 };
9215 }
9216
checkEqual_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR * a,const VkMemoryFdPropertiesKHR * b,OnFailCompareFunc onFail)9217 void checkEqual_VkMemoryFdPropertiesKHR(const VkMemoryFdPropertiesKHR* a,
9218 const VkMemoryFdPropertiesKHR* b,
9219 OnFailCompareFunc onFail) {
9220 if (!((a->sType) == (b->sType))) {
9221 onFail("a->sType (Error: Value not equal)");
9222 };
9223 if (a->pNext) {
9224 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9225 }
9226 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
9227 onFail("a->memoryTypeBits (Error: Value not equal)");
9228 };
9229 }
9230
checkEqual_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR * a,const VkMemoryGetFdInfoKHR * b,OnFailCompareFunc onFail)9231 void checkEqual_VkMemoryGetFdInfoKHR(const VkMemoryGetFdInfoKHR* a, const VkMemoryGetFdInfoKHR* b,
9232 OnFailCompareFunc onFail) {
9233 if (!((a->sType) == (b->sType))) {
9234 onFail("a->sType (Error: Value not equal)");
9235 };
9236 if (a->pNext) {
9237 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9238 }
9239 if (!((a->memory) == (b->memory))) {
9240 onFail("a->memory (Error: Value not equal)");
9241 };
9242 if (!((a->handleType) == (b->handleType))) {
9243 onFail("a->handleType (Error: Value not equal)");
9244 };
9245 }
9246
9247 #endif
9248 #ifdef VK_KHR_win32_keyed_mutex
checkEqual_VkWin32KeyedMutexAcquireReleaseInfoKHR(const VkWin32KeyedMutexAcquireReleaseInfoKHR * a,const VkWin32KeyedMutexAcquireReleaseInfoKHR * b,OnFailCompareFunc onFail)9249 void checkEqual_VkWin32KeyedMutexAcquireReleaseInfoKHR(
9250 const VkWin32KeyedMutexAcquireReleaseInfoKHR* a,
9251 const VkWin32KeyedMutexAcquireReleaseInfoKHR* b, OnFailCompareFunc onFail) {
9252 if (!((a->sType) == (b->sType))) {
9253 onFail("a->sType (Error: Value not equal)");
9254 };
9255 if (a->pNext) {
9256 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9257 }
9258 if (!((a->acquireCount) == (b->acquireCount))) {
9259 onFail("a->acquireCount (Error: Value not equal)");
9260 };
9261 if (!((a->acquireCount) == (b->acquireCount))) {
9262 onFail("a->pAcquireSyncs (Error: Lengths not equal)");
9263 };
9264 if (!((memcmp(a->pAcquireSyncs, b->pAcquireSyncs,
9265 a->acquireCount * sizeof(const VkDeviceMemory)) == 0))) {
9266 onFail("a->pAcquireSyncs (Error: Unequal dyn array)");
9267 };
9268 if (!((a->acquireCount) == (b->acquireCount))) {
9269 onFail("a->pAcquireKeys (Error: Lengths not equal)");
9270 };
9271 if (!((memcmp(a->pAcquireKeys, b->pAcquireKeys, a->acquireCount * sizeof(const uint64_t)) ==
9272 0))) {
9273 onFail("a->pAcquireKeys (Error: Unequal dyn array)");
9274 };
9275 if (!((a->acquireCount) == (b->acquireCount))) {
9276 onFail("a->pAcquireTimeouts (Error: Lengths not equal)");
9277 };
9278 if (!((memcmp(a->pAcquireTimeouts, b->pAcquireTimeouts,
9279 a->acquireCount * sizeof(const uint32_t)) == 0))) {
9280 onFail("a->pAcquireTimeouts (Error: Unequal dyn array)");
9281 };
9282 if (!((a->releaseCount) == (b->releaseCount))) {
9283 onFail("a->releaseCount (Error: Value not equal)");
9284 };
9285 if (!((a->releaseCount) == (b->releaseCount))) {
9286 onFail("a->pReleaseSyncs (Error: Lengths not equal)");
9287 };
9288 if (!((memcmp(a->pReleaseSyncs, b->pReleaseSyncs,
9289 a->releaseCount * sizeof(const VkDeviceMemory)) == 0))) {
9290 onFail("a->pReleaseSyncs (Error: Unequal dyn array)");
9291 };
9292 if (!((a->releaseCount) == (b->releaseCount))) {
9293 onFail("a->pReleaseKeys (Error: Lengths not equal)");
9294 };
9295 if (!((memcmp(a->pReleaseKeys, b->pReleaseKeys, a->releaseCount * sizeof(const uint64_t)) ==
9296 0))) {
9297 onFail("a->pReleaseKeys (Error: Unequal dyn array)");
9298 };
9299 }
9300
9301 #endif
9302 #ifdef VK_KHR_external_semaphore_capabilities
9303 #endif
9304 #ifdef VK_KHR_external_semaphore
9305 #endif
9306 #ifdef VK_KHR_external_semaphore_win32
checkEqual_VkImportSemaphoreWin32HandleInfoKHR(const VkImportSemaphoreWin32HandleInfoKHR * a,const VkImportSemaphoreWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9307 void checkEqual_VkImportSemaphoreWin32HandleInfoKHR(const VkImportSemaphoreWin32HandleInfoKHR* a,
9308 const VkImportSemaphoreWin32HandleInfoKHR* b,
9309 OnFailCompareFunc onFail) {
9310 if (!((a->sType) == (b->sType))) {
9311 onFail("a->sType (Error: Value not equal)");
9312 };
9313 if (a->pNext) {
9314 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9315 }
9316 if (!((a->semaphore) == (b->semaphore))) {
9317 onFail("a->semaphore (Error: Value not equal)");
9318 };
9319 if (!((a->flags) == (b->flags))) {
9320 onFail("a->flags (Error: Value not equal)");
9321 };
9322 if (!((a->handleType) == (b->handleType))) {
9323 onFail("a->handleType (Error: Value not equal)");
9324 };
9325 if (!((a->handle) == (b->handle))) {
9326 onFail("a->handle (Error: Value not equal)");
9327 };
9328 if (!((a->name) == (b->name))) {
9329 onFail("a->name (Error: Value not equal)");
9330 };
9331 }
9332
checkEqual_VkExportSemaphoreWin32HandleInfoKHR(const VkExportSemaphoreWin32HandleInfoKHR * a,const VkExportSemaphoreWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9333 void checkEqual_VkExportSemaphoreWin32HandleInfoKHR(const VkExportSemaphoreWin32HandleInfoKHR* a,
9334 const VkExportSemaphoreWin32HandleInfoKHR* b,
9335 OnFailCompareFunc onFail) {
9336 if (!((a->sType) == (b->sType))) {
9337 onFail("a->sType (Error: Value not equal)");
9338 };
9339 if (a->pNext) {
9340 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9341 }
9342 if (!((!(a->pAttributes) && !(b->pAttributes)) || ((a->pAttributes) && (b->pAttributes)))) {
9343 onFail("a->pAttributes (Error: Mismatch in optional field)");
9344 };
9345 if (a->pAttributes && b->pAttributes) {
9346 if (!((memcmp(a->pAttributes, b->pAttributes, sizeof(const SECURITY_ATTRIBUTES)) == 0))) {
9347 onFail("a->pAttributes (Error: Unequal dyn array)");
9348 };
9349 }
9350 if (!((a->dwAccess) == (b->dwAccess))) {
9351 onFail("a->dwAccess (Error: Value not equal)");
9352 };
9353 if (!((a->name) == (b->name))) {
9354 onFail("a->name (Error: Value not equal)");
9355 };
9356 }
9357
checkEqual_VkD3D12FenceSubmitInfoKHR(const VkD3D12FenceSubmitInfoKHR * a,const VkD3D12FenceSubmitInfoKHR * b,OnFailCompareFunc onFail)9358 void checkEqual_VkD3D12FenceSubmitInfoKHR(const VkD3D12FenceSubmitInfoKHR* a,
9359 const VkD3D12FenceSubmitInfoKHR* b,
9360 OnFailCompareFunc onFail) {
9361 if (!((a->sType) == (b->sType))) {
9362 onFail("a->sType (Error: Value not equal)");
9363 };
9364 if (a->pNext) {
9365 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9366 }
9367 if (!((a->waitSemaphoreValuesCount) == (b->waitSemaphoreValuesCount))) {
9368 onFail("a->waitSemaphoreValuesCount (Error: Value not equal)");
9369 };
9370 if (!((!(a->pWaitSemaphoreValues) && !(b->pWaitSemaphoreValues)) ||
9371 ((a->pWaitSemaphoreValues) && (b->pWaitSemaphoreValues)))) {
9372 onFail("a->pWaitSemaphoreValues (Error: Mismatch in optional field)");
9373 };
9374 if (a->pWaitSemaphoreValues && b->pWaitSemaphoreValues) {
9375 if (!((a->waitSemaphoreValuesCount) == (b->waitSemaphoreValuesCount))) {
9376 onFail("a->pWaitSemaphoreValues (Error: Lengths not equal)");
9377 };
9378 if (!((memcmp(a->pWaitSemaphoreValues, b->pWaitSemaphoreValues,
9379 a->waitSemaphoreValuesCount * sizeof(const uint64_t)) == 0))) {
9380 onFail("a->pWaitSemaphoreValues (Error: Unequal dyn array)");
9381 };
9382 }
9383 if (!((a->signalSemaphoreValuesCount) == (b->signalSemaphoreValuesCount))) {
9384 onFail("a->signalSemaphoreValuesCount (Error: Value not equal)");
9385 };
9386 if (!((!(a->pSignalSemaphoreValues) && !(b->pSignalSemaphoreValues)) ||
9387 ((a->pSignalSemaphoreValues) && (b->pSignalSemaphoreValues)))) {
9388 onFail("a->pSignalSemaphoreValues (Error: Mismatch in optional field)");
9389 };
9390 if (a->pSignalSemaphoreValues && b->pSignalSemaphoreValues) {
9391 if (!((a->signalSemaphoreValuesCount) == (b->signalSemaphoreValuesCount))) {
9392 onFail("a->pSignalSemaphoreValues (Error: Lengths not equal)");
9393 };
9394 if (!((memcmp(a->pSignalSemaphoreValues, b->pSignalSemaphoreValues,
9395 a->signalSemaphoreValuesCount * sizeof(const uint64_t)) == 0))) {
9396 onFail("a->pSignalSemaphoreValues (Error: Unequal dyn array)");
9397 };
9398 }
9399 }
9400
checkEqual_VkSemaphoreGetWin32HandleInfoKHR(const VkSemaphoreGetWin32HandleInfoKHR * a,const VkSemaphoreGetWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9401 void checkEqual_VkSemaphoreGetWin32HandleInfoKHR(const VkSemaphoreGetWin32HandleInfoKHR* a,
9402 const VkSemaphoreGetWin32HandleInfoKHR* b,
9403 OnFailCompareFunc onFail) {
9404 if (!((a->sType) == (b->sType))) {
9405 onFail("a->sType (Error: Value not equal)");
9406 };
9407 if (a->pNext) {
9408 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9409 }
9410 if (!((a->semaphore) == (b->semaphore))) {
9411 onFail("a->semaphore (Error: Value not equal)");
9412 };
9413 if (!((a->handleType) == (b->handleType))) {
9414 onFail("a->handleType (Error: Value not equal)");
9415 };
9416 }
9417
9418 #endif
9419 #ifdef VK_KHR_external_semaphore_fd
checkEqual_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR * a,const VkImportSemaphoreFdInfoKHR * b,OnFailCompareFunc onFail)9420 void checkEqual_VkImportSemaphoreFdInfoKHR(const VkImportSemaphoreFdInfoKHR* a,
9421 const VkImportSemaphoreFdInfoKHR* b,
9422 OnFailCompareFunc onFail) {
9423 if (!((a->sType) == (b->sType))) {
9424 onFail("a->sType (Error: Value not equal)");
9425 };
9426 if (a->pNext) {
9427 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9428 }
9429 if (!((a->semaphore) == (b->semaphore))) {
9430 onFail("a->semaphore (Error: Value not equal)");
9431 };
9432 if (!((a->flags) == (b->flags))) {
9433 onFail("a->flags (Error: Value not equal)");
9434 };
9435 if (!((a->handleType) == (b->handleType))) {
9436 onFail("a->handleType (Error: Value not equal)");
9437 };
9438 if (!((a->fd) == (b->fd))) {
9439 onFail("a->fd (Error: Value not equal)");
9440 };
9441 }
9442
checkEqual_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR * a,const VkSemaphoreGetFdInfoKHR * b,OnFailCompareFunc onFail)9443 void checkEqual_VkSemaphoreGetFdInfoKHR(const VkSemaphoreGetFdInfoKHR* a,
9444 const VkSemaphoreGetFdInfoKHR* b,
9445 OnFailCompareFunc onFail) {
9446 if (!((a->sType) == (b->sType))) {
9447 onFail("a->sType (Error: Value not equal)");
9448 };
9449 if (a->pNext) {
9450 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9451 }
9452 if (!((a->semaphore) == (b->semaphore))) {
9453 onFail("a->semaphore (Error: Value not equal)");
9454 };
9455 if (!((a->handleType) == (b->handleType))) {
9456 onFail("a->handleType (Error: Value not equal)");
9457 };
9458 }
9459
9460 #endif
9461 #ifdef VK_KHR_push_descriptor
checkEqual_VkPhysicalDevicePushDescriptorPropertiesKHR(const VkPhysicalDevicePushDescriptorPropertiesKHR * a,const VkPhysicalDevicePushDescriptorPropertiesKHR * b,OnFailCompareFunc onFail)9462 void checkEqual_VkPhysicalDevicePushDescriptorPropertiesKHR(
9463 const VkPhysicalDevicePushDescriptorPropertiesKHR* a,
9464 const VkPhysicalDevicePushDescriptorPropertiesKHR* b, OnFailCompareFunc onFail) {
9465 if (!((a->sType) == (b->sType))) {
9466 onFail("a->sType (Error: Value not equal)");
9467 };
9468 if (a->pNext) {
9469 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9470 }
9471 if (!((a->maxPushDescriptors) == (b->maxPushDescriptors))) {
9472 onFail("a->maxPushDescriptors (Error: Value not equal)");
9473 };
9474 }
9475
9476 #endif
9477 #ifdef VK_KHR_shader_float16_int8
9478 #endif
9479 #ifdef VK_KHR_16bit_storage
9480 #endif
9481 #ifdef VK_KHR_incremental_present
checkEqual_VkRectLayerKHR(const VkRectLayerKHR * a,const VkRectLayerKHR * b,OnFailCompareFunc onFail)9482 void checkEqual_VkRectLayerKHR(const VkRectLayerKHR* a, const VkRectLayerKHR* b,
9483 OnFailCompareFunc onFail) {
9484 checkEqual_VkOffset2D(&a->offset, &b->offset, onFail);
9485 checkEqual_VkExtent2D(&a->extent, &b->extent, onFail);
9486 if (!((a->layer) == (b->layer))) {
9487 onFail("a->layer (Error: Value not equal)");
9488 };
9489 }
9490
checkEqual_VkPresentRegionKHR(const VkPresentRegionKHR * a,const VkPresentRegionKHR * b,OnFailCompareFunc onFail)9491 void checkEqual_VkPresentRegionKHR(const VkPresentRegionKHR* a, const VkPresentRegionKHR* b,
9492 OnFailCompareFunc onFail) {
9493 if (!((a->rectangleCount) == (b->rectangleCount))) {
9494 onFail("a->rectangleCount (Error: Value not equal)");
9495 };
9496 if (!((!(a->pRectangles) && !(b->pRectangles)) || ((a->pRectangles) && (b->pRectangles)))) {
9497 onFail("a->pRectangles (Error: Mismatch in optional field)");
9498 };
9499 if (a->pRectangles && b->pRectangles) {
9500 if ((a->pRectangles) && (b->pRectangles)) {
9501 if (!((a->rectangleCount) == (b->rectangleCount))) {
9502 onFail("a->pRectangles (Error: Lengths not equal)");
9503 };
9504 if ((a->rectangleCount) == (b->rectangleCount)) {
9505 if (a) {
9506 for (uint32_t i = 0; i < (uint32_t)a->rectangleCount; ++i) {
9507 checkEqual_VkRectLayerKHR(a->pRectangles + i, b->pRectangles + i, onFail);
9508 }
9509 }
9510 }
9511 }
9512 }
9513 }
9514
checkEqual_VkPresentRegionsKHR(const VkPresentRegionsKHR * a,const VkPresentRegionsKHR * b,OnFailCompareFunc onFail)9515 void checkEqual_VkPresentRegionsKHR(const VkPresentRegionsKHR* a, const VkPresentRegionsKHR* b,
9516 OnFailCompareFunc onFail) {
9517 if (!((a->sType) == (b->sType))) {
9518 onFail("a->sType (Error: Value not equal)");
9519 };
9520 if (a->pNext) {
9521 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9522 }
9523 if (!((a->swapchainCount) == (b->swapchainCount))) {
9524 onFail("a->swapchainCount (Error: Value not equal)");
9525 };
9526 if (!((!(a->pRegions) && !(b->pRegions)) || ((a->pRegions) && (b->pRegions)))) {
9527 onFail("a->pRegions (Error: Mismatch in optional field)");
9528 };
9529 if (a->pRegions && b->pRegions) {
9530 if ((a->pRegions) && (b->pRegions)) {
9531 if (!((a->swapchainCount) == (b->swapchainCount))) {
9532 onFail("a->pRegions (Error: Lengths not equal)");
9533 };
9534 if ((a->swapchainCount) == (b->swapchainCount)) {
9535 if (a) {
9536 for (uint32_t i = 0; i < (uint32_t)a->swapchainCount; ++i) {
9537 checkEqual_VkPresentRegionKHR(a->pRegions + i, b->pRegions + i, onFail);
9538 }
9539 }
9540 }
9541 }
9542 }
9543 }
9544
9545 #endif
9546 #ifdef VK_KHR_descriptor_update_template
9547 #endif
9548 #ifdef VK_KHR_imageless_framebuffer
9549 #endif
9550 #ifdef VK_KHR_create_renderpass2
9551 #endif
9552 #ifdef VK_KHR_shared_presentable_image
checkEqual_VkSharedPresentSurfaceCapabilitiesKHR(const VkSharedPresentSurfaceCapabilitiesKHR * a,const VkSharedPresentSurfaceCapabilitiesKHR * b,OnFailCompareFunc onFail)9553 void checkEqual_VkSharedPresentSurfaceCapabilitiesKHR(
9554 const VkSharedPresentSurfaceCapabilitiesKHR* a, const VkSharedPresentSurfaceCapabilitiesKHR* b,
9555 OnFailCompareFunc onFail) {
9556 if (!((a->sType) == (b->sType))) {
9557 onFail("a->sType (Error: Value not equal)");
9558 };
9559 if (a->pNext) {
9560 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9561 }
9562 if (!((a->sharedPresentSupportedUsageFlags) == (b->sharedPresentSupportedUsageFlags))) {
9563 onFail("a->sharedPresentSupportedUsageFlags (Error: Value not equal)");
9564 };
9565 }
9566
9567 #endif
9568 #ifdef VK_KHR_external_fence_capabilities
9569 #endif
9570 #ifdef VK_KHR_external_fence
9571 #endif
9572 #ifdef VK_KHR_external_fence_win32
checkEqual_VkImportFenceWin32HandleInfoKHR(const VkImportFenceWin32HandleInfoKHR * a,const VkImportFenceWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9573 void checkEqual_VkImportFenceWin32HandleInfoKHR(const VkImportFenceWin32HandleInfoKHR* a,
9574 const VkImportFenceWin32HandleInfoKHR* b,
9575 OnFailCompareFunc onFail) {
9576 if (!((a->sType) == (b->sType))) {
9577 onFail("a->sType (Error: Value not equal)");
9578 };
9579 if (a->pNext) {
9580 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9581 }
9582 if (!((a->fence) == (b->fence))) {
9583 onFail("a->fence (Error: Value not equal)");
9584 };
9585 if (!((a->flags) == (b->flags))) {
9586 onFail("a->flags (Error: Value not equal)");
9587 };
9588 if (!((a->handleType) == (b->handleType))) {
9589 onFail("a->handleType (Error: Value not equal)");
9590 };
9591 if (!((a->handle) == (b->handle))) {
9592 onFail("a->handle (Error: Value not equal)");
9593 };
9594 if (!((a->name) == (b->name))) {
9595 onFail("a->name (Error: Value not equal)");
9596 };
9597 }
9598
checkEqual_VkExportFenceWin32HandleInfoKHR(const VkExportFenceWin32HandleInfoKHR * a,const VkExportFenceWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9599 void checkEqual_VkExportFenceWin32HandleInfoKHR(const VkExportFenceWin32HandleInfoKHR* a,
9600 const VkExportFenceWin32HandleInfoKHR* b,
9601 OnFailCompareFunc onFail) {
9602 if (!((a->sType) == (b->sType))) {
9603 onFail("a->sType (Error: Value not equal)");
9604 };
9605 if (a->pNext) {
9606 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9607 }
9608 if (!((!(a->pAttributes) && !(b->pAttributes)) || ((a->pAttributes) && (b->pAttributes)))) {
9609 onFail("a->pAttributes (Error: Mismatch in optional field)");
9610 };
9611 if (a->pAttributes && b->pAttributes) {
9612 if (!((memcmp(a->pAttributes, b->pAttributes, sizeof(const SECURITY_ATTRIBUTES)) == 0))) {
9613 onFail("a->pAttributes (Error: Unequal dyn array)");
9614 };
9615 }
9616 if (!((a->dwAccess) == (b->dwAccess))) {
9617 onFail("a->dwAccess (Error: Value not equal)");
9618 };
9619 if (!((a->name) == (b->name))) {
9620 onFail("a->name (Error: Value not equal)");
9621 };
9622 }
9623
checkEqual_VkFenceGetWin32HandleInfoKHR(const VkFenceGetWin32HandleInfoKHR * a,const VkFenceGetWin32HandleInfoKHR * b,OnFailCompareFunc onFail)9624 void checkEqual_VkFenceGetWin32HandleInfoKHR(const VkFenceGetWin32HandleInfoKHR* a,
9625 const VkFenceGetWin32HandleInfoKHR* b,
9626 OnFailCompareFunc onFail) {
9627 if (!((a->sType) == (b->sType))) {
9628 onFail("a->sType (Error: Value not equal)");
9629 };
9630 if (a->pNext) {
9631 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9632 }
9633 if (!((a->fence) == (b->fence))) {
9634 onFail("a->fence (Error: Value not equal)");
9635 };
9636 if (!((a->handleType) == (b->handleType))) {
9637 onFail("a->handleType (Error: Value not equal)");
9638 };
9639 }
9640
9641 #endif
9642 #ifdef VK_KHR_external_fence_fd
checkEqual_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR * a,const VkImportFenceFdInfoKHR * b,OnFailCompareFunc onFail)9643 void checkEqual_VkImportFenceFdInfoKHR(const VkImportFenceFdInfoKHR* a,
9644 const VkImportFenceFdInfoKHR* b, OnFailCompareFunc onFail) {
9645 if (!((a->sType) == (b->sType))) {
9646 onFail("a->sType (Error: Value not equal)");
9647 };
9648 if (a->pNext) {
9649 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9650 }
9651 if (!((a->fence) == (b->fence))) {
9652 onFail("a->fence (Error: Value not equal)");
9653 };
9654 if (!((a->flags) == (b->flags))) {
9655 onFail("a->flags (Error: Value not equal)");
9656 };
9657 if (!((a->handleType) == (b->handleType))) {
9658 onFail("a->handleType (Error: Value not equal)");
9659 };
9660 if (!((a->fd) == (b->fd))) {
9661 onFail("a->fd (Error: Value not equal)");
9662 };
9663 }
9664
checkEqual_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR * a,const VkFenceGetFdInfoKHR * b,OnFailCompareFunc onFail)9665 void checkEqual_VkFenceGetFdInfoKHR(const VkFenceGetFdInfoKHR* a, const VkFenceGetFdInfoKHR* b,
9666 OnFailCompareFunc onFail) {
9667 if (!((a->sType) == (b->sType))) {
9668 onFail("a->sType (Error: Value not equal)");
9669 };
9670 if (a->pNext) {
9671 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9672 }
9673 if (!((a->fence) == (b->fence))) {
9674 onFail("a->fence (Error: Value not equal)");
9675 };
9676 if (!((a->handleType) == (b->handleType))) {
9677 onFail("a->handleType (Error: Value not equal)");
9678 };
9679 }
9680
9681 #endif
9682 #ifdef VK_KHR_performance_query
checkEqual_VkPhysicalDevicePerformanceQueryFeaturesKHR(const VkPhysicalDevicePerformanceQueryFeaturesKHR * a,const VkPhysicalDevicePerformanceQueryFeaturesKHR * b,OnFailCompareFunc onFail)9683 void checkEqual_VkPhysicalDevicePerformanceQueryFeaturesKHR(
9684 const VkPhysicalDevicePerformanceQueryFeaturesKHR* a,
9685 const VkPhysicalDevicePerformanceQueryFeaturesKHR* b, OnFailCompareFunc onFail) {
9686 if (!((a->sType) == (b->sType))) {
9687 onFail("a->sType (Error: Value not equal)");
9688 };
9689 if (a->pNext) {
9690 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9691 }
9692 if (!((a->performanceCounterQueryPools) == (b->performanceCounterQueryPools))) {
9693 onFail("a->performanceCounterQueryPools (Error: Value not equal)");
9694 };
9695 if (!((a->performanceCounterMultipleQueryPools) == (b->performanceCounterMultipleQueryPools))) {
9696 onFail("a->performanceCounterMultipleQueryPools (Error: Value not equal)");
9697 };
9698 }
9699
checkEqual_VkPhysicalDevicePerformanceQueryPropertiesKHR(const VkPhysicalDevicePerformanceQueryPropertiesKHR * a,const VkPhysicalDevicePerformanceQueryPropertiesKHR * b,OnFailCompareFunc onFail)9700 void checkEqual_VkPhysicalDevicePerformanceQueryPropertiesKHR(
9701 const VkPhysicalDevicePerformanceQueryPropertiesKHR* a,
9702 const VkPhysicalDevicePerformanceQueryPropertiesKHR* b, OnFailCompareFunc onFail) {
9703 if (!((a->sType) == (b->sType))) {
9704 onFail("a->sType (Error: Value not equal)");
9705 };
9706 if (a->pNext) {
9707 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9708 }
9709 if (!((a->allowCommandBufferQueryCopies) == (b->allowCommandBufferQueryCopies))) {
9710 onFail("a->allowCommandBufferQueryCopies (Error: Value not equal)");
9711 };
9712 }
9713
checkEqual_VkPerformanceCounterKHR(const VkPerformanceCounterKHR * a,const VkPerformanceCounterKHR * b,OnFailCompareFunc onFail)9714 void checkEqual_VkPerformanceCounterKHR(const VkPerformanceCounterKHR* a,
9715 const VkPerformanceCounterKHR* b,
9716 OnFailCompareFunc onFail) {
9717 if (!((a->sType) == (b->sType))) {
9718 onFail("a->sType (Error: Value not equal)");
9719 };
9720 if (a->pNext) {
9721 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9722 }
9723 if (!((a->unit) == (b->unit))) {
9724 onFail("a->unit (Error: Value not equal)");
9725 };
9726 if (!((a->scope) == (b->scope))) {
9727 onFail("a->scope (Error: Value not equal)");
9728 };
9729 if (!((a->storage) == (b->storage))) {
9730 onFail("a->storage (Error: Value not equal)");
9731 };
9732 if (!((memcmp(a->uuid, b->uuid, VK_UUID_SIZE * sizeof(uint8_t)) == 0))) {
9733 onFail("a->uuid (Error: Unequal static array)");
9734 };
9735 }
9736
checkEqual_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR * a,const VkPerformanceCounterDescriptionKHR * b,OnFailCompareFunc onFail)9737 void checkEqual_VkPerformanceCounterDescriptionKHR(const VkPerformanceCounterDescriptionKHR* a,
9738 const VkPerformanceCounterDescriptionKHR* b,
9739 OnFailCompareFunc onFail) {
9740 if (!((a->sType) == (b->sType))) {
9741 onFail("a->sType (Error: Value not equal)");
9742 };
9743 if (a->pNext) {
9744 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9745 }
9746 if (!((a->flags) == (b->flags))) {
9747 onFail("a->flags (Error: Value not equal)");
9748 };
9749 if (!((memcmp(a->name, b->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
9750 onFail("a->name (Error: Unequal static array)");
9751 };
9752 if (!((memcmp(a->category, b->category, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
9753 onFail("a->category (Error: Unequal static array)");
9754 };
9755 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
9756 onFail("a->description (Error: Unequal static array)");
9757 };
9758 }
9759
checkEqual_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR * a,const VkQueryPoolPerformanceCreateInfoKHR * b,OnFailCompareFunc onFail)9760 void checkEqual_VkQueryPoolPerformanceCreateInfoKHR(const VkQueryPoolPerformanceCreateInfoKHR* a,
9761 const VkQueryPoolPerformanceCreateInfoKHR* b,
9762 OnFailCompareFunc onFail) {
9763 if (!((a->sType) == (b->sType))) {
9764 onFail("a->sType (Error: Value not equal)");
9765 };
9766 if (a->pNext) {
9767 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9768 }
9769 if (!((a->queueFamilyIndex) == (b->queueFamilyIndex))) {
9770 onFail("a->queueFamilyIndex (Error: Value not equal)");
9771 };
9772 if (!((a->counterIndexCount) == (b->counterIndexCount))) {
9773 onFail("a->counterIndexCount (Error: Value not equal)");
9774 };
9775 if (!((a->counterIndexCount) == (b->counterIndexCount))) {
9776 onFail("a->pCounterIndices (Error: Lengths not equal)");
9777 };
9778 if (!((memcmp(a->pCounterIndices, b->pCounterIndices,
9779 a->counterIndexCount * sizeof(const uint32_t)) == 0))) {
9780 onFail("a->pCounterIndices (Error: Unequal dyn array)");
9781 };
9782 }
9783
checkEqual_VkPerformanceCounterResultKHR(const VkPerformanceCounterResultKHR * a,const VkPerformanceCounterResultKHR * b,OnFailCompareFunc onFail)9784 void checkEqual_VkPerformanceCounterResultKHR(const VkPerformanceCounterResultKHR* a,
9785 const VkPerformanceCounterResultKHR* b,
9786 OnFailCompareFunc onFail) {
9787 if (!((a->int32) == (b->int32))) {
9788 onFail("a->int32 (Error: Value not equal)");
9789 };
9790 if (!((a->int64) == (b->int64))) {
9791 onFail("a->int64 (Error: Value not equal)");
9792 };
9793 if (!((a->uint32) == (b->uint32))) {
9794 onFail("a->uint32 (Error: Value not equal)");
9795 };
9796 if (!((a->uint64) == (b->uint64))) {
9797 onFail("a->uint64 (Error: Value not equal)");
9798 };
9799 if (!((a->float32) == (b->float32))) {
9800 onFail("a->float32 (Error: Value not equal)");
9801 };
9802 if (!((a->float64) == (b->float64))) {
9803 onFail("a->float64 (Error: Value not equal)");
9804 };
9805 }
9806
checkEqual_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR * a,const VkAcquireProfilingLockInfoKHR * b,OnFailCompareFunc onFail)9807 void checkEqual_VkAcquireProfilingLockInfoKHR(const VkAcquireProfilingLockInfoKHR* a,
9808 const VkAcquireProfilingLockInfoKHR* b,
9809 OnFailCompareFunc onFail) {
9810 if (!((a->sType) == (b->sType))) {
9811 onFail("a->sType (Error: Value not equal)");
9812 };
9813 if (a->pNext) {
9814 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9815 }
9816 if (!((a->flags) == (b->flags))) {
9817 onFail("a->flags (Error: Value not equal)");
9818 };
9819 if (!((a->timeout) == (b->timeout))) {
9820 onFail("a->timeout (Error: Value not equal)");
9821 };
9822 }
9823
checkEqual_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR * a,const VkPerformanceQuerySubmitInfoKHR * b,OnFailCompareFunc onFail)9824 void checkEqual_VkPerformanceQuerySubmitInfoKHR(const VkPerformanceQuerySubmitInfoKHR* a,
9825 const VkPerformanceQuerySubmitInfoKHR* b,
9826 OnFailCompareFunc onFail) {
9827 if (!((a->sType) == (b->sType))) {
9828 onFail("a->sType (Error: Value not equal)");
9829 };
9830 if (a->pNext) {
9831 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9832 }
9833 if (!((a->counterPassIndex) == (b->counterPassIndex))) {
9834 onFail("a->counterPassIndex (Error: Value not equal)");
9835 };
9836 }
9837
9838 #endif
9839 #ifdef VK_KHR_maintenance2
9840 #endif
9841 #ifdef VK_KHR_get_surface_capabilities2
checkEqual_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR * a,const VkPhysicalDeviceSurfaceInfo2KHR * b,OnFailCompareFunc onFail)9842 void checkEqual_VkPhysicalDeviceSurfaceInfo2KHR(const VkPhysicalDeviceSurfaceInfo2KHR* a,
9843 const VkPhysicalDeviceSurfaceInfo2KHR* b,
9844 OnFailCompareFunc onFail) {
9845 if (!((a->sType) == (b->sType))) {
9846 onFail("a->sType (Error: Value not equal)");
9847 };
9848 if (a->pNext) {
9849 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9850 }
9851 if (!((a->surface) == (b->surface))) {
9852 onFail("a->surface (Error: Value not equal)");
9853 };
9854 }
9855
checkEqual_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR * a,const VkSurfaceCapabilities2KHR * b,OnFailCompareFunc onFail)9856 void checkEqual_VkSurfaceCapabilities2KHR(const VkSurfaceCapabilities2KHR* a,
9857 const VkSurfaceCapabilities2KHR* b,
9858 OnFailCompareFunc onFail) {
9859 if (!((a->sType) == (b->sType))) {
9860 onFail("a->sType (Error: Value not equal)");
9861 };
9862 if (a->pNext) {
9863 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9864 }
9865 checkEqual_VkSurfaceCapabilitiesKHR(&a->surfaceCapabilities, &b->surfaceCapabilities, onFail);
9866 }
9867
checkEqual_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR * a,const VkSurfaceFormat2KHR * b,OnFailCompareFunc onFail)9868 void checkEqual_VkSurfaceFormat2KHR(const VkSurfaceFormat2KHR* a, const VkSurfaceFormat2KHR* b,
9869 OnFailCompareFunc onFail) {
9870 if (!((a->sType) == (b->sType))) {
9871 onFail("a->sType (Error: Value not equal)");
9872 };
9873 if (a->pNext) {
9874 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9875 }
9876 checkEqual_VkSurfaceFormatKHR(&a->surfaceFormat, &b->surfaceFormat, onFail);
9877 }
9878
9879 #endif
9880 #ifdef VK_KHR_variable_pointers
9881 #endif
9882 #ifdef VK_KHR_get_display_properties2
checkEqual_VkDisplayProperties2KHR(const VkDisplayProperties2KHR * a,const VkDisplayProperties2KHR * b,OnFailCompareFunc onFail)9883 void checkEqual_VkDisplayProperties2KHR(const VkDisplayProperties2KHR* a,
9884 const VkDisplayProperties2KHR* b,
9885 OnFailCompareFunc onFail) {
9886 if (!((a->sType) == (b->sType))) {
9887 onFail("a->sType (Error: Value not equal)");
9888 };
9889 if (a->pNext) {
9890 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9891 }
9892 checkEqual_VkDisplayPropertiesKHR(&a->displayProperties, &b->displayProperties, onFail);
9893 }
9894
checkEqual_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR * a,const VkDisplayPlaneProperties2KHR * b,OnFailCompareFunc onFail)9895 void checkEqual_VkDisplayPlaneProperties2KHR(const VkDisplayPlaneProperties2KHR* a,
9896 const VkDisplayPlaneProperties2KHR* b,
9897 OnFailCompareFunc onFail) {
9898 if (!((a->sType) == (b->sType))) {
9899 onFail("a->sType (Error: Value not equal)");
9900 };
9901 if (a->pNext) {
9902 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9903 }
9904 checkEqual_VkDisplayPlanePropertiesKHR(&a->displayPlaneProperties, &b->displayPlaneProperties,
9905 onFail);
9906 }
9907
checkEqual_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR * a,const VkDisplayModeProperties2KHR * b,OnFailCompareFunc onFail)9908 void checkEqual_VkDisplayModeProperties2KHR(const VkDisplayModeProperties2KHR* a,
9909 const VkDisplayModeProperties2KHR* b,
9910 OnFailCompareFunc onFail) {
9911 if (!((a->sType) == (b->sType))) {
9912 onFail("a->sType (Error: Value not equal)");
9913 };
9914 if (a->pNext) {
9915 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9916 }
9917 checkEqual_VkDisplayModePropertiesKHR(&a->displayModeProperties, &b->displayModeProperties,
9918 onFail);
9919 }
9920
checkEqual_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR * a,const VkDisplayPlaneInfo2KHR * b,OnFailCompareFunc onFail)9921 void checkEqual_VkDisplayPlaneInfo2KHR(const VkDisplayPlaneInfo2KHR* a,
9922 const VkDisplayPlaneInfo2KHR* b, OnFailCompareFunc onFail) {
9923 if (!((a->sType) == (b->sType))) {
9924 onFail("a->sType (Error: Value not equal)");
9925 };
9926 if (a->pNext) {
9927 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9928 }
9929 if (!((a->mode) == (b->mode))) {
9930 onFail("a->mode (Error: Value not equal)");
9931 };
9932 if (!((a->planeIndex) == (b->planeIndex))) {
9933 onFail("a->planeIndex (Error: Value not equal)");
9934 };
9935 }
9936
checkEqual_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR * a,const VkDisplayPlaneCapabilities2KHR * b,OnFailCompareFunc onFail)9937 void checkEqual_VkDisplayPlaneCapabilities2KHR(const VkDisplayPlaneCapabilities2KHR* a,
9938 const VkDisplayPlaneCapabilities2KHR* b,
9939 OnFailCompareFunc onFail) {
9940 if (!((a->sType) == (b->sType))) {
9941 onFail("a->sType (Error: Value not equal)");
9942 };
9943 if (a->pNext) {
9944 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9945 }
9946 checkEqual_VkDisplayPlaneCapabilitiesKHR(&a->capabilities, &b->capabilities, onFail);
9947 }
9948
9949 #endif
9950 #ifdef VK_KHR_dedicated_allocation
9951 #endif
9952 #ifdef VK_KHR_storage_buffer_storage_class
9953 #endif
9954 #ifdef VK_KHR_relaxed_block_layout
9955 #endif
9956 #ifdef VK_KHR_get_memory_requirements2
9957 #endif
9958 #ifdef VK_KHR_image_format_list
9959 #endif
9960 #ifdef VK_KHR_sampler_ycbcr_conversion
9961 #endif
9962 #ifdef VK_KHR_bind_memory2
9963 #endif
9964 #ifdef VK_KHR_portability_subset
checkEqual_VkPhysicalDevicePortabilitySubsetFeaturesKHR(const VkPhysicalDevicePortabilitySubsetFeaturesKHR * a,const VkPhysicalDevicePortabilitySubsetFeaturesKHR * b,OnFailCompareFunc onFail)9965 void checkEqual_VkPhysicalDevicePortabilitySubsetFeaturesKHR(
9966 const VkPhysicalDevicePortabilitySubsetFeaturesKHR* a,
9967 const VkPhysicalDevicePortabilitySubsetFeaturesKHR* b, OnFailCompareFunc onFail) {
9968 if (!((a->sType) == (b->sType))) {
9969 onFail("a->sType (Error: Value not equal)");
9970 };
9971 if (a->pNext) {
9972 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
9973 }
9974 if (!((a->constantAlphaColorBlendFactors) == (b->constantAlphaColorBlendFactors))) {
9975 onFail("a->constantAlphaColorBlendFactors (Error: Value not equal)");
9976 };
9977 if (!((a->events) == (b->events))) {
9978 onFail("a->events (Error: Value not equal)");
9979 };
9980 if (!((a->imageViewFormatReinterpretation) == (b->imageViewFormatReinterpretation))) {
9981 onFail("a->imageViewFormatReinterpretation (Error: Value not equal)");
9982 };
9983 if (!((a->imageViewFormatSwizzle) == (b->imageViewFormatSwizzle))) {
9984 onFail("a->imageViewFormatSwizzle (Error: Value not equal)");
9985 };
9986 if (!((a->imageView2DOn3DImage) == (b->imageView2DOn3DImage))) {
9987 onFail("a->imageView2DOn3DImage (Error: Value not equal)");
9988 };
9989 if (!((a->multisampleArrayImage) == (b->multisampleArrayImage))) {
9990 onFail("a->multisampleArrayImage (Error: Value not equal)");
9991 };
9992 if (!((a->mutableComparisonSamplers) == (b->mutableComparisonSamplers))) {
9993 onFail("a->mutableComparisonSamplers (Error: Value not equal)");
9994 };
9995 if (!((a->pointPolygons) == (b->pointPolygons))) {
9996 onFail("a->pointPolygons (Error: Value not equal)");
9997 };
9998 if (!((a->samplerMipLodBias) == (b->samplerMipLodBias))) {
9999 onFail("a->samplerMipLodBias (Error: Value not equal)");
10000 };
10001 if (!((a->separateStencilMaskRef) == (b->separateStencilMaskRef))) {
10002 onFail("a->separateStencilMaskRef (Error: Value not equal)");
10003 };
10004 if (!((a->shaderSampleRateInterpolationFunctions) ==
10005 (b->shaderSampleRateInterpolationFunctions))) {
10006 onFail("a->shaderSampleRateInterpolationFunctions (Error: Value not equal)");
10007 };
10008 if (!((a->tessellationIsolines) == (b->tessellationIsolines))) {
10009 onFail("a->tessellationIsolines (Error: Value not equal)");
10010 };
10011 if (!((a->tessellationPointMode) == (b->tessellationPointMode))) {
10012 onFail("a->tessellationPointMode (Error: Value not equal)");
10013 };
10014 if (!((a->triangleFans) == (b->triangleFans))) {
10015 onFail("a->triangleFans (Error: Value not equal)");
10016 };
10017 if (!((a->vertexAttributeAccessBeyondStride) == (b->vertexAttributeAccessBeyondStride))) {
10018 onFail("a->vertexAttributeAccessBeyondStride (Error: Value not equal)");
10019 };
10020 }
10021
checkEqual_VkPhysicalDevicePortabilitySubsetPropertiesKHR(const VkPhysicalDevicePortabilitySubsetPropertiesKHR * a,const VkPhysicalDevicePortabilitySubsetPropertiesKHR * b,OnFailCompareFunc onFail)10022 void checkEqual_VkPhysicalDevicePortabilitySubsetPropertiesKHR(
10023 const VkPhysicalDevicePortabilitySubsetPropertiesKHR* a,
10024 const VkPhysicalDevicePortabilitySubsetPropertiesKHR* b, OnFailCompareFunc onFail) {
10025 if (!((a->sType) == (b->sType))) {
10026 onFail("a->sType (Error: Value not equal)");
10027 };
10028 if (a->pNext) {
10029 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10030 }
10031 if (!((a->minVertexInputBindingStrideAlignment) == (b->minVertexInputBindingStrideAlignment))) {
10032 onFail("a->minVertexInputBindingStrideAlignment (Error: Value not equal)");
10033 };
10034 }
10035
10036 #endif
10037 #ifdef VK_KHR_maintenance3
10038 #endif
10039 #ifdef VK_KHR_draw_indirect_count
10040 #endif
10041 #ifdef VK_KHR_shader_subgroup_extended_types
10042 #endif
10043 #ifdef VK_KHR_8bit_storage
10044 #endif
10045 #ifdef VK_KHR_shader_atomic_int64
10046 #endif
10047 #ifdef VK_KHR_shader_clock
checkEqual_VkPhysicalDeviceShaderClockFeaturesKHR(const VkPhysicalDeviceShaderClockFeaturesKHR * a,const VkPhysicalDeviceShaderClockFeaturesKHR * b,OnFailCompareFunc onFail)10048 void checkEqual_VkPhysicalDeviceShaderClockFeaturesKHR(
10049 const VkPhysicalDeviceShaderClockFeaturesKHR* a,
10050 const VkPhysicalDeviceShaderClockFeaturesKHR* b, OnFailCompareFunc onFail) {
10051 if (!((a->sType) == (b->sType))) {
10052 onFail("a->sType (Error: Value not equal)");
10053 };
10054 if (a->pNext) {
10055 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10056 }
10057 if (!((a->shaderSubgroupClock) == (b->shaderSubgroupClock))) {
10058 onFail("a->shaderSubgroupClock (Error: Value not equal)");
10059 };
10060 if (!((a->shaderDeviceClock) == (b->shaderDeviceClock))) {
10061 onFail("a->shaderDeviceClock (Error: Value not equal)");
10062 };
10063 }
10064
10065 #endif
10066 #ifdef VK_KHR_video_decode_h265
checkEqual_VkVideoDecodeH265ProfileInfoKHR(const VkVideoDecodeH265ProfileInfoKHR * a,const VkVideoDecodeH265ProfileInfoKHR * b,OnFailCompareFunc onFail)10067 void checkEqual_VkVideoDecodeH265ProfileInfoKHR(const VkVideoDecodeH265ProfileInfoKHR* a,
10068 const VkVideoDecodeH265ProfileInfoKHR* b,
10069 OnFailCompareFunc onFail) {
10070 if (!((a->sType) == (b->sType))) {
10071 onFail("a->sType (Error: Value not equal)");
10072 };
10073 if (a->pNext) {
10074 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10075 }
10076 if (!((a->stdProfileIdc) == (b->stdProfileIdc))) {
10077 onFail("a->stdProfileIdc (Error: Value not equal)");
10078 };
10079 }
10080
checkEqual_VkVideoDecodeH265CapabilitiesKHR(const VkVideoDecodeH265CapabilitiesKHR * a,const VkVideoDecodeH265CapabilitiesKHR * b,OnFailCompareFunc onFail)10081 void checkEqual_VkVideoDecodeH265CapabilitiesKHR(const VkVideoDecodeH265CapabilitiesKHR* a,
10082 const VkVideoDecodeH265CapabilitiesKHR* b,
10083 OnFailCompareFunc onFail) {
10084 if (!((a->sType) == (b->sType))) {
10085 onFail("a->sType (Error: Value not equal)");
10086 };
10087 if (a->pNext) {
10088 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10089 }
10090 if (!((a->maxLevelIdc) == (b->maxLevelIdc))) {
10091 onFail("a->maxLevelIdc (Error: Value not equal)");
10092 };
10093 }
10094
checkEqual_VkVideoDecodeH265SessionParametersAddInfoKHR(const VkVideoDecodeH265SessionParametersAddInfoKHR * a,const VkVideoDecodeH265SessionParametersAddInfoKHR * b,OnFailCompareFunc onFail)10095 void checkEqual_VkVideoDecodeH265SessionParametersAddInfoKHR(
10096 const VkVideoDecodeH265SessionParametersAddInfoKHR* a,
10097 const VkVideoDecodeH265SessionParametersAddInfoKHR* b, OnFailCompareFunc onFail) {
10098 if (!((a->sType) == (b->sType))) {
10099 onFail("a->sType (Error: Value not equal)");
10100 };
10101 if (a->pNext) {
10102 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10103 }
10104 if (!((a->stdVPSCount) == (b->stdVPSCount))) {
10105 onFail("a->stdVPSCount (Error: Value not equal)");
10106 };
10107 if (!((a->stdVPSCount) == (b->stdVPSCount))) {
10108 onFail("a->pStdVPSs (Error: Lengths not equal)");
10109 };
10110 if (!((memcmp(a->pStdVPSs, b->pStdVPSs,
10111 a->stdVPSCount * sizeof(const StdVideoH265VideoParameterSet)) == 0))) {
10112 onFail("a->pStdVPSs (Error: Unequal dyn array)");
10113 };
10114 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
10115 onFail("a->stdSPSCount (Error: Value not equal)");
10116 };
10117 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
10118 onFail("a->pStdSPSs (Error: Lengths not equal)");
10119 };
10120 if (!((memcmp(a->pStdSPSs, b->pStdSPSs,
10121 a->stdSPSCount * sizeof(const StdVideoH265SequenceParameterSet)) == 0))) {
10122 onFail("a->pStdSPSs (Error: Unequal dyn array)");
10123 };
10124 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
10125 onFail("a->stdPPSCount (Error: Value not equal)");
10126 };
10127 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
10128 onFail("a->pStdPPSs (Error: Lengths not equal)");
10129 };
10130 if (!((memcmp(a->pStdPPSs, b->pStdPPSs,
10131 a->stdPPSCount * sizeof(const StdVideoH265PictureParameterSet)) == 0))) {
10132 onFail("a->pStdPPSs (Error: Unequal dyn array)");
10133 };
10134 }
10135
checkEqual_VkVideoDecodeH265SessionParametersCreateInfoKHR(const VkVideoDecodeH265SessionParametersCreateInfoKHR * a,const VkVideoDecodeH265SessionParametersCreateInfoKHR * b,OnFailCompareFunc onFail)10136 void checkEqual_VkVideoDecodeH265SessionParametersCreateInfoKHR(
10137 const VkVideoDecodeH265SessionParametersCreateInfoKHR* a,
10138 const VkVideoDecodeH265SessionParametersCreateInfoKHR* b, OnFailCompareFunc onFail) {
10139 if (!((a->sType) == (b->sType))) {
10140 onFail("a->sType (Error: Value not equal)");
10141 };
10142 if (a->pNext) {
10143 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10144 }
10145 if (!((a->maxStdVPSCount) == (b->maxStdVPSCount))) {
10146 onFail("a->maxStdVPSCount (Error: Value not equal)");
10147 };
10148 if (!((a->maxStdSPSCount) == (b->maxStdSPSCount))) {
10149 onFail("a->maxStdSPSCount (Error: Value not equal)");
10150 };
10151 if (!((a->maxStdPPSCount) == (b->maxStdPPSCount))) {
10152 onFail("a->maxStdPPSCount (Error: Value not equal)");
10153 };
10154 if (!((!(a->pParametersAddInfo) && !(b->pParametersAddInfo)) ||
10155 ((a->pParametersAddInfo) && (b->pParametersAddInfo)))) {
10156 onFail("a->pParametersAddInfo (Error: Mismatch in optional field)");
10157 };
10158 if (a->pParametersAddInfo && b->pParametersAddInfo) {
10159 if ((a->pParametersAddInfo) && (b->pParametersAddInfo)) {
10160 checkEqual_VkVideoDecodeH265SessionParametersAddInfoKHR(a->pParametersAddInfo,
10161 b->pParametersAddInfo, onFail);
10162 }
10163 }
10164 }
10165
checkEqual_VkVideoDecodeH265PictureInfoKHR(const VkVideoDecodeH265PictureInfoKHR * a,const VkVideoDecodeH265PictureInfoKHR * b,OnFailCompareFunc onFail)10166 void checkEqual_VkVideoDecodeH265PictureInfoKHR(const VkVideoDecodeH265PictureInfoKHR* a,
10167 const VkVideoDecodeH265PictureInfoKHR* b,
10168 OnFailCompareFunc onFail) {
10169 if (!((a->sType) == (b->sType))) {
10170 onFail("a->sType (Error: Value not equal)");
10171 };
10172 if (a->pNext) {
10173 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10174 }
10175 if (!((memcmp(a->pStdPictureInfo, b->pStdPictureInfo,
10176 sizeof(const StdVideoDecodeH265PictureInfo)) == 0))) {
10177 onFail("a->pStdPictureInfo (Error: Unequal dyn array)");
10178 };
10179 if (!((a->sliceSegmentCount) == (b->sliceSegmentCount))) {
10180 onFail("a->sliceSegmentCount (Error: Value not equal)");
10181 };
10182 if (!((a->sliceSegmentCount) == (b->sliceSegmentCount))) {
10183 onFail("a->pSliceSegmentOffsets (Error: Lengths not equal)");
10184 };
10185 if (!((memcmp(a->pSliceSegmentOffsets, b->pSliceSegmentOffsets,
10186 a->sliceSegmentCount * sizeof(const uint32_t)) == 0))) {
10187 onFail("a->pSliceSegmentOffsets (Error: Unequal dyn array)");
10188 };
10189 }
10190
checkEqual_VkVideoDecodeH265DpbSlotInfoKHR(const VkVideoDecodeH265DpbSlotInfoKHR * a,const VkVideoDecodeH265DpbSlotInfoKHR * b,OnFailCompareFunc onFail)10191 void checkEqual_VkVideoDecodeH265DpbSlotInfoKHR(const VkVideoDecodeH265DpbSlotInfoKHR* a,
10192 const VkVideoDecodeH265DpbSlotInfoKHR* b,
10193 OnFailCompareFunc onFail) {
10194 if (!((a->sType) == (b->sType))) {
10195 onFail("a->sType (Error: Value not equal)");
10196 };
10197 if (a->pNext) {
10198 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10199 }
10200 if (!((memcmp(a->pStdReferenceInfo, b->pStdReferenceInfo,
10201 sizeof(const StdVideoDecodeH265ReferenceInfo)) == 0))) {
10202 onFail("a->pStdReferenceInfo (Error: Unequal dyn array)");
10203 };
10204 }
10205
10206 #endif
10207 #ifdef VK_KHR_global_priority
checkEqual_VkDeviceQueueGlobalPriorityCreateInfoKHR(const VkDeviceQueueGlobalPriorityCreateInfoKHR * a,const VkDeviceQueueGlobalPriorityCreateInfoKHR * b,OnFailCompareFunc onFail)10208 void checkEqual_VkDeviceQueueGlobalPriorityCreateInfoKHR(
10209 const VkDeviceQueueGlobalPriorityCreateInfoKHR* a,
10210 const VkDeviceQueueGlobalPriorityCreateInfoKHR* b, OnFailCompareFunc onFail) {
10211 if (!((a->sType) == (b->sType))) {
10212 onFail("a->sType (Error: Value not equal)");
10213 };
10214 if (a->pNext) {
10215 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10216 }
10217 if (!((a->globalPriority) == (b->globalPriority))) {
10218 onFail("a->globalPriority (Error: Value not equal)");
10219 };
10220 }
10221
checkEqual_VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR(const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR * a,const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR * b,OnFailCompareFunc onFail)10222 void checkEqual_VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR(
10223 const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* a,
10224 const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR* b, OnFailCompareFunc onFail) {
10225 if (!((a->sType) == (b->sType))) {
10226 onFail("a->sType (Error: Value not equal)");
10227 };
10228 if (a->pNext) {
10229 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10230 }
10231 if (!((a->globalPriorityQuery) == (b->globalPriorityQuery))) {
10232 onFail("a->globalPriorityQuery (Error: Value not equal)");
10233 };
10234 }
10235
checkEqual_VkQueueFamilyGlobalPriorityPropertiesKHR(const VkQueueFamilyGlobalPriorityPropertiesKHR * a,const VkQueueFamilyGlobalPriorityPropertiesKHR * b,OnFailCompareFunc onFail)10236 void checkEqual_VkQueueFamilyGlobalPriorityPropertiesKHR(
10237 const VkQueueFamilyGlobalPriorityPropertiesKHR* a,
10238 const VkQueueFamilyGlobalPriorityPropertiesKHR* b, OnFailCompareFunc onFail) {
10239 if (!((a->sType) == (b->sType))) {
10240 onFail("a->sType (Error: Value not equal)");
10241 };
10242 if (a->pNext) {
10243 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10244 }
10245 if (!((a->priorityCount) == (b->priorityCount))) {
10246 onFail("a->priorityCount (Error: Value not equal)");
10247 };
10248 if (!((memcmp(a->priorities, b->priorities,
10249 VK_MAX_GLOBAL_PRIORITY_SIZE_KHR * sizeof(VkQueueGlobalPriorityKHR)) == 0))) {
10250 onFail("a->priorities (Error: Unequal static array)");
10251 };
10252 }
10253
10254 #endif
10255 #ifdef VK_KHR_driver_properties
10256 #endif
10257 #ifdef VK_KHR_shader_float_controls
10258 #endif
10259 #ifdef VK_KHR_depth_stencil_resolve
10260 #endif
10261 #ifdef VK_KHR_swapchain_mutable_format
10262 #endif
10263 #ifdef VK_KHR_timeline_semaphore
10264 #endif
10265 #ifdef VK_KHR_vulkan_memory_model
10266 #endif
10267 #ifdef VK_KHR_shader_terminate_invocation
10268 #endif
10269 #ifdef VK_KHR_fragment_shading_rate
checkEqual_VkFragmentShadingRateAttachmentInfoKHR(const VkFragmentShadingRateAttachmentInfoKHR * a,const VkFragmentShadingRateAttachmentInfoKHR * b,OnFailCompareFunc onFail)10270 void checkEqual_VkFragmentShadingRateAttachmentInfoKHR(
10271 const VkFragmentShadingRateAttachmentInfoKHR* a,
10272 const VkFragmentShadingRateAttachmentInfoKHR* b, OnFailCompareFunc onFail) {
10273 if (!((a->sType) == (b->sType))) {
10274 onFail("a->sType (Error: Value not equal)");
10275 };
10276 if (a->pNext) {
10277 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10278 }
10279 if (!((!(a->pFragmentShadingRateAttachment) && !(b->pFragmentShadingRateAttachment)) ||
10280 ((a->pFragmentShadingRateAttachment) && (b->pFragmentShadingRateAttachment)))) {
10281 onFail("a->pFragmentShadingRateAttachment (Error: Mismatch in optional field)");
10282 };
10283 if (a->pFragmentShadingRateAttachment && b->pFragmentShadingRateAttachment) {
10284 if ((a->pFragmentShadingRateAttachment) && (b->pFragmentShadingRateAttachment)) {
10285 checkEqual_VkAttachmentReference2(a->pFragmentShadingRateAttachment,
10286 b->pFragmentShadingRateAttachment, onFail);
10287 }
10288 }
10289 checkEqual_VkExtent2D(&a->shadingRateAttachmentTexelSize, &b->shadingRateAttachmentTexelSize,
10290 onFail);
10291 }
10292
checkEqual_VkPipelineFragmentShadingRateStateCreateInfoKHR(const VkPipelineFragmentShadingRateStateCreateInfoKHR * a,const VkPipelineFragmentShadingRateStateCreateInfoKHR * b,OnFailCompareFunc onFail)10293 void checkEqual_VkPipelineFragmentShadingRateStateCreateInfoKHR(
10294 const VkPipelineFragmentShadingRateStateCreateInfoKHR* a,
10295 const VkPipelineFragmentShadingRateStateCreateInfoKHR* b, OnFailCompareFunc onFail) {
10296 if (!((a->sType) == (b->sType))) {
10297 onFail("a->sType (Error: Value not equal)");
10298 };
10299 if (a->pNext) {
10300 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10301 }
10302 checkEqual_VkExtent2D(&a->fragmentSize, &b->fragmentSize, onFail);
10303 if (!((memcmp(a->combinerOps, b->combinerOps, 2 * sizeof(VkFragmentShadingRateCombinerOpKHR)) ==
10304 0))) {
10305 onFail("a->combinerOps (Error: Unequal static array)");
10306 };
10307 }
10308
checkEqual_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * a,const VkPhysicalDeviceFragmentShadingRateFeaturesKHR * b,OnFailCompareFunc onFail)10309 void checkEqual_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(
10310 const VkPhysicalDeviceFragmentShadingRateFeaturesKHR* a,
10311 const VkPhysicalDeviceFragmentShadingRateFeaturesKHR* b, OnFailCompareFunc onFail) {
10312 if (!((a->sType) == (b->sType))) {
10313 onFail("a->sType (Error: Value not equal)");
10314 };
10315 if (a->pNext) {
10316 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10317 }
10318 if (!((a->pipelineFragmentShadingRate) == (b->pipelineFragmentShadingRate))) {
10319 onFail("a->pipelineFragmentShadingRate (Error: Value not equal)");
10320 };
10321 if (!((a->primitiveFragmentShadingRate) == (b->primitiveFragmentShadingRate))) {
10322 onFail("a->primitiveFragmentShadingRate (Error: Value not equal)");
10323 };
10324 if (!((a->attachmentFragmentShadingRate) == (b->attachmentFragmentShadingRate))) {
10325 onFail("a->attachmentFragmentShadingRate (Error: Value not equal)");
10326 };
10327 }
10328
checkEqual_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * a,const VkPhysicalDeviceFragmentShadingRatePropertiesKHR * b,OnFailCompareFunc onFail)10329 void checkEqual_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(
10330 const VkPhysicalDeviceFragmentShadingRatePropertiesKHR* a,
10331 const VkPhysicalDeviceFragmentShadingRatePropertiesKHR* b, OnFailCompareFunc onFail) {
10332 if (!((a->sType) == (b->sType))) {
10333 onFail("a->sType (Error: Value not equal)");
10334 };
10335 if (a->pNext) {
10336 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10337 }
10338 checkEqual_VkExtent2D(&a->minFragmentShadingRateAttachmentTexelSize,
10339 &b->minFragmentShadingRateAttachmentTexelSize, onFail);
10340 checkEqual_VkExtent2D(&a->maxFragmentShadingRateAttachmentTexelSize,
10341 &b->maxFragmentShadingRateAttachmentTexelSize, onFail);
10342 if (!((a->maxFragmentShadingRateAttachmentTexelSizeAspectRatio) ==
10343 (b->maxFragmentShadingRateAttachmentTexelSizeAspectRatio))) {
10344 onFail("a->maxFragmentShadingRateAttachmentTexelSizeAspectRatio (Error: Value not equal)");
10345 };
10346 if (!((a->primitiveFragmentShadingRateWithMultipleViewports) ==
10347 (b->primitiveFragmentShadingRateWithMultipleViewports))) {
10348 onFail("a->primitiveFragmentShadingRateWithMultipleViewports (Error: Value not equal)");
10349 };
10350 if (!((a->layeredShadingRateAttachments) == (b->layeredShadingRateAttachments))) {
10351 onFail("a->layeredShadingRateAttachments (Error: Value not equal)");
10352 };
10353 if (!((a->fragmentShadingRateNonTrivialCombinerOps) ==
10354 (b->fragmentShadingRateNonTrivialCombinerOps))) {
10355 onFail("a->fragmentShadingRateNonTrivialCombinerOps (Error: Value not equal)");
10356 };
10357 checkEqual_VkExtent2D(&a->maxFragmentSize, &b->maxFragmentSize, onFail);
10358 if (!((a->maxFragmentSizeAspectRatio) == (b->maxFragmentSizeAspectRatio))) {
10359 onFail("a->maxFragmentSizeAspectRatio (Error: Value not equal)");
10360 };
10361 if (!((a->maxFragmentShadingRateCoverageSamples) ==
10362 (b->maxFragmentShadingRateCoverageSamples))) {
10363 onFail("a->maxFragmentShadingRateCoverageSamples (Error: Value not equal)");
10364 };
10365 if (!((a->maxFragmentShadingRateRasterizationSamples) ==
10366 (b->maxFragmentShadingRateRasterizationSamples))) {
10367 onFail("a->maxFragmentShadingRateRasterizationSamples (Error: Value not equal)");
10368 };
10369 if (!((a->fragmentShadingRateWithShaderDepthStencilWrites) ==
10370 (b->fragmentShadingRateWithShaderDepthStencilWrites))) {
10371 onFail("a->fragmentShadingRateWithShaderDepthStencilWrites (Error: Value not equal)");
10372 };
10373 if (!((a->fragmentShadingRateWithSampleMask) == (b->fragmentShadingRateWithSampleMask))) {
10374 onFail("a->fragmentShadingRateWithSampleMask (Error: Value not equal)");
10375 };
10376 if (!((a->fragmentShadingRateWithShaderSampleMask) ==
10377 (b->fragmentShadingRateWithShaderSampleMask))) {
10378 onFail("a->fragmentShadingRateWithShaderSampleMask (Error: Value not equal)");
10379 };
10380 if (!((a->fragmentShadingRateWithConservativeRasterization) ==
10381 (b->fragmentShadingRateWithConservativeRasterization))) {
10382 onFail("a->fragmentShadingRateWithConservativeRasterization (Error: Value not equal)");
10383 };
10384 if (!((a->fragmentShadingRateWithFragmentShaderInterlock) ==
10385 (b->fragmentShadingRateWithFragmentShaderInterlock))) {
10386 onFail("a->fragmentShadingRateWithFragmentShaderInterlock (Error: Value not equal)");
10387 };
10388 if (!((a->fragmentShadingRateWithCustomSampleLocations) ==
10389 (b->fragmentShadingRateWithCustomSampleLocations))) {
10390 onFail("a->fragmentShadingRateWithCustomSampleLocations (Error: Value not equal)");
10391 };
10392 if (!((a->fragmentShadingRateStrictMultiplyCombiner) ==
10393 (b->fragmentShadingRateStrictMultiplyCombiner))) {
10394 onFail("a->fragmentShadingRateStrictMultiplyCombiner (Error: Value not equal)");
10395 };
10396 }
10397
checkEqual_VkPhysicalDeviceFragmentShadingRateKHR(const VkPhysicalDeviceFragmentShadingRateKHR * a,const VkPhysicalDeviceFragmentShadingRateKHR * b,OnFailCompareFunc onFail)10398 void checkEqual_VkPhysicalDeviceFragmentShadingRateKHR(
10399 const VkPhysicalDeviceFragmentShadingRateKHR* a,
10400 const VkPhysicalDeviceFragmentShadingRateKHR* b, OnFailCompareFunc onFail) {
10401 if (!((a->sType) == (b->sType))) {
10402 onFail("a->sType (Error: Value not equal)");
10403 };
10404 if (a->pNext) {
10405 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10406 }
10407 if (!((a->sampleCounts) == (b->sampleCounts))) {
10408 onFail("a->sampleCounts (Error: Value not equal)");
10409 };
10410 checkEqual_VkExtent2D(&a->fragmentSize, &b->fragmentSize, onFail);
10411 }
10412
10413 #endif
10414 #ifdef VK_KHR_spirv_1_4
10415 #endif
10416 #ifdef VK_KHR_surface_protected_capabilities
checkEqual_VkSurfaceProtectedCapabilitiesKHR(const VkSurfaceProtectedCapabilitiesKHR * a,const VkSurfaceProtectedCapabilitiesKHR * b,OnFailCompareFunc onFail)10417 void checkEqual_VkSurfaceProtectedCapabilitiesKHR(const VkSurfaceProtectedCapabilitiesKHR* a,
10418 const VkSurfaceProtectedCapabilitiesKHR* b,
10419 OnFailCompareFunc onFail) {
10420 if (!((a->sType) == (b->sType))) {
10421 onFail("a->sType (Error: Value not equal)");
10422 };
10423 if (a->pNext) {
10424 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10425 }
10426 if (!((a->supportsProtected) == (b->supportsProtected))) {
10427 onFail("a->supportsProtected (Error: Value not equal)");
10428 };
10429 }
10430
10431 #endif
10432 #ifdef VK_KHR_separate_depth_stencil_layouts
10433 #endif
10434 #ifdef VK_KHR_present_wait
checkEqual_VkPhysicalDevicePresentWaitFeaturesKHR(const VkPhysicalDevicePresentWaitFeaturesKHR * a,const VkPhysicalDevicePresentWaitFeaturesKHR * b,OnFailCompareFunc onFail)10435 void checkEqual_VkPhysicalDevicePresentWaitFeaturesKHR(
10436 const VkPhysicalDevicePresentWaitFeaturesKHR* a,
10437 const VkPhysicalDevicePresentWaitFeaturesKHR* b, OnFailCompareFunc onFail) {
10438 if (!((a->sType) == (b->sType))) {
10439 onFail("a->sType (Error: Value not equal)");
10440 };
10441 if (a->pNext) {
10442 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10443 }
10444 if (!((a->presentWait) == (b->presentWait))) {
10445 onFail("a->presentWait (Error: Value not equal)");
10446 };
10447 }
10448
10449 #endif
10450 #ifdef VK_KHR_uniform_buffer_standard_layout
10451 #endif
10452 #ifdef VK_KHR_buffer_device_address
10453 #endif
10454 #ifdef VK_KHR_deferred_host_operations
10455 #endif
10456 #ifdef VK_KHR_pipeline_executable_properties
checkEqual_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR * a,const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR * b,OnFailCompareFunc onFail)10457 void checkEqual_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
10458 const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* a,
10459 const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR* b, OnFailCompareFunc onFail) {
10460 if (!((a->sType) == (b->sType))) {
10461 onFail("a->sType (Error: Value not equal)");
10462 };
10463 if (a->pNext) {
10464 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10465 }
10466 if (!((a->pipelineExecutableInfo) == (b->pipelineExecutableInfo))) {
10467 onFail("a->pipelineExecutableInfo (Error: Value not equal)");
10468 };
10469 }
10470
checkEqual_VkPipelineInfoKHR(const VkPipelineInfoKHR * a,const VkPipelineInfoKHR * b,OnFailCompareFunc onFail)10471 void checkEqual_VkPipelineInfoKHR(const VkPipelineInfoKHR* a, const VkPipelineInfoKHR* b,
10472 OnFailCompareFunc onFail) {
10473 if (!((a->sType) == (b->sType))) {
10474 onFail("a->sType (Error: Value not equal)");
10475 };
10476 if (a->pNext) {
10477 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10478 }
10479 if (!((a->pipeline) == (b->pipeline))) {
10480 onFail("a->pipeline (Error: Value not equal)");
10481 };
10482 }
10483
checkEqual_VkPipelineExecutablePropertiesKHR(const VkPipelineExecutablePropertiesKHR * a,const VkPipelineExecutablePropertiesKHR * b,OnFailCompareFunc onFail)10484 void checkEqual_VkPipelineExecutablePropertiesKHR(const VkPipelineExecutablePropertiesKHR* a,
10485 const VkPipelineExecutablePropertiesKHR* b,
10486 OnFailCompareFunc onFail) {
10487 if (!((a->sType) == (b->sType))) {
10488 onFail("a->sType (Error: Value not equal)");
10489 };
10490 if (a->pNext) {
10491 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10492 }
10493 if (!((a->stages) == (b->stages))) {
10494 onFail("a->stages (Error: Value not equal)");
10495 };
10496 if (!((memcmp(a->name, b->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
10497 onFail("a->name (Error: Unequal static array)");
10498 };
10499 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
10500 onFail("a->description (Error: Unequal static array)");
10501 };
10502 if (!((a->subgroupSize) == (b->subgroupSize))) {
10503 onFail("a->subgroupSize (Error: Value not equal)");
10504 };
10505 }
10506
checkEqual_VkPipelineExecutableInfoKHR(const VkPipelineExecutableInfoKHR * a,const VkPipelineExecutableInfoKHR * b,OnFailCompareFunc onFail)10507 void checkEqual_VkPipelineExecutableInfoKHR(const VkPipelineExecutableInfoKHR* a,
10508 const VkPipelineExecutableInfoKHR* b,
10509 OnFailCompareFunc onFail) {
10510 if (!((a->sType) == (b->sType))) {
10511 onFail("a->sType (Error: Value not equal)");
10512 };
10513 if (a->pNext) {
10514 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10515 }
10516 if (!((a->pipeline) == (b->pipeline))) {
10517 onFail("a->pipeline (Error: Value not equal)");
10518 };
10519 if (!((a->executableIndex) == (b->executableIndex))) {
10520 onFail("a->executableIndex (Error: Value not equal)");
10521 };
10522 }
10523
checkEqual_VkPipelineExecutableStatisticValueKHR(const VkPipelineExecutableStatisticValueKHR * a,const VkPipelineExecutableStatisticValueKHR * b,OnFailCompareFunc onFail)10524 void checkEqual_VkPipelineExecutableStatisticValueKHR(
10525 const VkPipelineExecutableStatisticValueKHR* a, const VkPipelineExecutableStatisticValueKHR* b,
10526 OnFailCompareFunc onFail) {
10527 if (!((a->b32) == (b->b32))) {
10528 onFail("a->b32 (Error: Value not equal)");
10529 };
10530 if (!((a->i64) == (b->i64))) {
10531 onFail("a->i64 (Error: Value not equal)");
10532 };
10533 if (!((a->u64) == (b->u64))) {
10534 onFail("a->u64 (Error: Value not equal)");
10535 };
10536 if (!((a->f64) == (b->f64))) {
10537 onFail("a->f64 (Error: Value not equal)");
10538 };
10539 }
10540
checkEqual_VkPipelineExecutableStatisticKHR(const VkPipelineExecutableStatisticKHR * a,const VkPipelineExecutableStatisticKHR * b,OnFailCompareFunc onFail)10541 void checkEqual_VkPipelineExecutableStatisticKHR(const VkPipelineExecutableStatisticKHR* a,
10542 const VkPipelineExecutableStatisticKHR* b,
10543 OnFailCompareFunc onFail) {
10544 if (!((a->sType) == (b->sType))) {
10545 onFail("a->sType (Error: Value not equal)");
10546 };
10547 if (a->pNext) {
10548 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10549 }
10550 if (!((memcmp(a->name, b->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
10551 onFail("a->name (Error: Unequal static array)");
10552 };
10553 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
10554 onFail("a->description (Error: Unequal static array)");
10555 };
10556 if (!((a->format) == (b->format))) {
10557 onFail("a->format (Error: Value not equal)");
10558 };
10559 checkEqual_VkPipelineExecutableStatisticValueKHR(&a->value, &b->value, onFail);
10560 }
10561
checkEqual_VkPipelineExecutableInternalRepresentationKHR(const VkPipelineExecutableInternalRepresentationKHR * a,const VkPipelineExecutableInternalRepresentationKHR * b,OnFailCompareFunc onFail)10562 void checkEqual_VkPipelineExecutableInternalRepresentationKHR(
10563 const VkPipelineExecutableInternalRepresentationKHR* a,
10564 const VkPipelineExecutableInternalRepresentationKHR* b, OnFailCompareFunc onFail) {
10565 if (!((a->sType) == (b->sType))) {
10566 onFail("a->sType (Error: Value not equal)");
10567 };
10568 if (a->pNext) {
10569 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10570 }
10571 if (!((memcmp(a->name, b->name, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
10572 onFail("a->name (Error: Unequal static array)");
10573 };
10574 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
10575 onFail("a->description (Error: Unequal static array)");
10576 };
10577 if (!((a->isText) == (b->isText))) {
10578 onFail("a->isText (Error: Value not equal)");
10579 };
10580 if (!((a->dataSize) == (b->dataSize))) {
10581 onFail("a->dataSize (Error: Value not equal)");
10582 };
10583 if (!((!(a->pData) && !(b->pData)) || ((a->pData) && (b->pData)))) {
10584 onFail("a->pData (Error: Mismatch in optional field)");
10585 };
10586 }
10587
10588 #endif
10589 #ifdef VK_KHR_map_memory2
checkEqual_VkMemoryMapInfoKHR(const VkMemoryMapInfoKHR * a,const VkMemoryMapInfoKHR * b,OnFailCompareFunc onFail)10590 void checkEqual_VkMemoryMapInfoKHR(const VkMemoryMapInfoKHR* a, const VkMemoryMapInfoKHR* b,
10591 OnFailCompareFunc onFail) {
10592 if (!((a->sType) == (b->sType))) {
10593 onFail("a->sType (Error: Value not equal)");
10594 };
10595 if (a->pNext) {
10596 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10597 }
10598 if (!((a->flags) == (b->flags))) {
10599 onFail("a->flags (Error: Value not equal)");
10600 };
10601 if (!((a->memory) == (b->memory))) {
10602 onFail("a->memory (Error: Value not equal)");
10603 };
10604 if (!((a->offset) == (b->offset))) {
10605 onFail("a->offset (Error: Value not equal)");
10606 };
10607 if (!((a->size) == (b->size))) {
10608 onFail("a->size (Error: Value not equal)");
10609 };
10610 }
10611
checkEqual_VkMemoryUnmapInfoKHR(const VkMemoryUnmapInfoKHR * a,const VkMemoryUnmapInfoKHR * b,OnFailCompareFunc onFail)10612 void checkEqual_VkMemoryUnmapInfoKHR(const VkMemoryUnmapInfoKHR* a, const VkMemoryUnmapInfoKHR* b,
10613 OnFailCompareFunc onFail) {
10614 if (!((a->sType) == (b->sType))) {
10615 onFail("a->sType (Error: Value not equal)");
10616 };
10617 if (a->pNext) {
10618 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10619 }
10620 if (!((a->flags) == (b->flags))) {
10621 onFail("a->flags (Error: Value not equal)");
10622 };
10623 if (!((a->memory) == (b->memory))) {
10624 onFail("a->memory (Error: Value not equal)");
10625 };
10626 }
10627
10628 #endif
10629 #ifdef VK_KHR_shader_integer_dot_product
10630 #endif
10631 #ifdef VK_KHR_pipeline_library
checkEqual_VkPipelineLibraryCreateInfoKHR(const VkPipelineLibraryCreateInfoKHR * a,const VkPipelineLibraryCreateInfoKHR * b,OnFailCompareFunc onFail)10632 void checkEqual_VkPipelineLibraryCreateInfoKHR(const VkPipelineLibraryCreateInfoKHR* a,
10633 const VkPipelineLibraryCreateInfoKHR* b,
10634 OnFailCompareFunc onFail) {
10635 if (!((a->sType) == (b->sType))) {
10636 onFail("a->sType (Error: Value not equal)");
10637 };
10638 if (a->pNext) {
10639 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10640 }
10641 if (!((a->libraryCount) == (b->libraryCount))) {
10642 onFail("a->libraryCount (Error: Value not equal)");
10643 };
10644 if (!((a->libraryCount) == (b->libraryCount))) {
10645 onFail("a->pLibraries (Error: Lengths not equal)");
10646 };
10647 if (!((memcmp(a->pLibraries, b->pLibraries, a->libraryCount * sizeof(const VkPipeline)) ==
10648 0))) {
10649 onFail("a->pLibraries (Error: Unequal dyn array)");
10650 };
10651 }
10652
10653 #endif
10654 #ifdef VK_KHR_shader_non_semantic_info
10655 #endif
10656 #ifdef VK_KHR_present_id
checkEqual_VkPresentIdKHR(const VkPresentIdKHR * a,const VkPresentIdKHR * b,OnFailCompareFunc onFail)10657 void checkEqual_VkPresentIdKHR(const VkPresentIdKHR* a, const VkPresentIdKHR* b,
10658 OnFailCompareFunc onFail) {
10659 if (!((a->sType) == (b->sType))) {
10660 onFail("a->sType (Error: Value not equal)");
10661 };
10662 if (a->pNext) {
10663 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10664 }
10665 if (!((a->swapchainCount) == (b->swapchainCount))) {
10666 onFail("a->swapchainCount (Error: Value not equal)");
10667 };
10668 if (!((!(a->pPresentIds) && !(b->pPresentIds)) || ((a->pPresentIds) && (b->pPresentIds)))) {
10669 onFail("a->pPresentIds (Error: Mismatch in optional field)");
10670 };
10671 if (a->pPresentIds && b->pPresentIds) {
10672 if (!((a->swapchainCount) == (b->swapchainCount))) {
10673 onFail("a->pPresentIds (Error: Lengths not equal)");
10674 };
10675 if (!((memcmp(a->pPresentIds, b->pPresentIds, a->swapchainCount * sizeof(const uint64_t)) ==
10676 0))) {
10677 onFail("a->pPresentIds (Error: Unequal dyn array)");
10678 };
10679 }
10680 }
10681
checkEqual_VkPhysicalDevicePresentIdFeaturesKHR(const VkPhysicalDevicePresentIdFeaturesKHR * a,const VkPhysicalDevicePresentIdFeaturesKHR * b,OnFailCompareFunc onFail)10682 void checkEqual_VkPhysicalDevicePresentIdFeaturesKHR(const VkPhysicalDevicePresentIdFeaturesKHR* a,
10683 const VkPhysicalDevicePresentIdFeaturesKHR* b,
10684 OnFailCompareFunc onFail) {
10685 if (!((a->sType) == (b->sType))) {
10686 onFail("a->sType (Error: Value not equal)");
10687 };
10688 if (a->pNext) {
10689 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10690 }
10691 if (!((a->presentId) == (b->presentId))) {
10692 onFail("a->presentId (Error: Value not equal)");
10693 };
10694 }
10695
10696 #endif
10697 #ifdef VK_KHR_video_encode_queue
checkEqual_VkVideoEncodeInfoKHR(const VkVideoEncodeInfoKHR * a,const VkVideoEncodeInfoKHR * b,OnFailCompareFunc onFail)10698 void checkEqual_VkVideoEncodeInfoKHR(const VkVideoEncodeInfoKHR* a, const VkVideoEncodeInfoKHR* b,
10699 OnFailCompareFunc onFail) {
10700 if (!((a->sType) == (b->sType))) {
10701 onFail("a->sType (Error: Value not equal)");
10702 };
10703 if (a->pNext) {
10704 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10705 }
10706 if (!((a->flags) == (b->flags))) {
10707 onFail("a->flags (Error: Value not equal)");
10708 };
10709 if (!((a->qualityLevel) == (b->qualityLevel))) {
10710 onFail("a->qualityLevel (Error: Value not equal)");
10711 };
10712 if (!((a->dstBuffer) == (b->dstBuffer))) {
10713 onFail("a->dstBuffer (Error: Value not equal)");
10714 };
10715 if (!((a->dstBufferOffset) == (b->dstBufferOffset))) {
10716 onFail("a->dstBufferOffset (Error: Value not equal)");
10717 };
10718 if (!((a->dstBufferRange) == (b->dstBufferRange))) {
10719 onFail("a->dstBufferRange (Error: Value not equal)");
10720 };
10721 checkEqual_VkVideoPictureResourceInfoKHR(&a->srcPictureResource, &b->srcPictureResource,
10722 onFail);
10723 if (!((!(a->pSetupReferenceSlot) && !(b->pSetupReferenceSlot)) ||
10724 ((a->pSetupReferenceSlot) && (b->pSetupReferenceSlot)))) {
10725 onFail("a->pSetupReferenceSlot (Error: Mismatch in optional field)");
10726 };
10727 if (a->pSetupReferenceSlot && b->pSetupReferenceSlot) {
10728 if ((a->pSetupReferenceSlot) && (b->pSetupReferenceSlot)) {
10729 checkEqual_VkVideoReferenceSlotInfoKHR(a->pSetupReferenceSlot, b->pSetupReferenceSlot,
10730 onFail);
10731 }
10732 }
10733 if (!((a->referenceSlotCount) == (b->referenceSlotCount))) {
10734 onFail("a->referenceSlotCount (Error: Value not equal)");
10735 };
10736 if ((a->pReferenceSlots) && (b->pReferenceSlots)) {
10737 if (!((a->referenceSlotCount) == (b->referenceSlotCount))) {
10738 onFail("a->pReferenceSlots (Error: Lengths not equal)");
10739 };
10740 if ((a->referenceSlotCount) == (b->referenceSlotCount)) {
10741 if (a) {
10742 for (uint32_t i = 0; i < (uint32_t)a->referenceSlotCount; ++i) {
10743 checkEqual_VkVideoReferenceSlotInfoKHR(a->pReferenceSlots + i,
10744 b->pReferenceSlots + i, onFail);
10745 }
10746 }
10747 }
10748 }
10749 if (!((a->precedingExternallyEncodedBytes) == (b->precedingExternallyEncodedBytes))) {
10750 onFail("a->precedingExternallyEncodedBytes (Error: Value not equal)");
10751 };
10752 }
10753
checkEqual_VkVideoEncodeCapabilitiesKHR(const VkVideoEncodeCapabilitiesKHR * a,const VkVideoEncodeCapabilitiesKHR * b,OnFailCompareFunc onFail)10754 void checkEqual_VkVideoEncodeCapabilitiesKHR(const VkVideoEncodeCapabilitiesKHR* a,
10755 const VkVideoEncodeCapabilitiesKHR* b,
10756 OnFailCompareFunc onFail) {
10757 if (!((a->sType) == (b->sType))) {
10758 onFail("a->sType (Error: Value not equal)");
10759 };
10760 if (a->pNext) {
10761 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10762 }
10763 if (!((a->flags) == (b->flags))) {
10764 onFail("a->flags (Error: Value not equal)");
10765 };
10766 if (!((a->rateControlModes) == (b->rateControlModes))) {
10767 onFail("a->rateControlModes (Error: Value not equal)");
10768 };
10769 if (!((a->maxRateControlLayers) == (b->maxRateControlLayers))) {
10770 onFail("a->maxRateControlLayers (Error: Value not equal)");
10771 };
10772 if (!((a->maxQualityLevels) == (b->maxQualityLevels))) {
10773 onFail("a->maxQualityLevels (Error: Value not equal)");
10774 };
10775 checkEqual_VkExtent2D(&a->inputImageDataFillAlignment, &b->inputImageDataFillAlignment, onFail);
10776 if (!((a->supportedEncodeFeedbackFlags) == (b->supportedEncodeFeedbackFlags))) {
10777 onFail("a->supportedEncodeFeedbackFlags (Error: Value not equal)");
10778 };
10779 }
10780
checkEqual_VkQueryPoolVideoEncodeFeedbackCreateInfoKHR(const VkQueryPoolVideoEncodeFeedbackCreateInfoKHR * a,const VkQueryPoolVideoEncodeFeedbackCreateInfoKHR * b,OnFailCompareFunc onFail)10781 void checkEqual_VkQueryPoolVideoEncodeFeedbackCreateInfoKHR(
10782 const VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* a,
10783 const VkQueryPoolVideoEncodeFeedbackCreateInfoKHR* b, OnFailCompareFunc onFail) {
10784 if (!((a->sType) == (b->sType))) {
10785 onFail("a->sType (Error: Value not equal)");
10786 };
10787 if (a->pNext) {
10788 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10789 }
10790 if (!((a->encodeFeedbackFlags) == (b->encodeFeedbackFlags))) {
10791 onFail("a->encodeFeedbackFlags (Error: Value not equal)");
10792 };
10793 }
10794
checkEqual_VkVideoEncodeUsageInfoKHR(const VkVideoEncodeUsageInfoKHR * a,const VkVideoEncodeUsageInfoKHR * b,OnFailCompareFunc onFail)10795 void checkEqual_VkVideoEncodeUsageInfoKHR(const VkVideoEncodeUsageInfoKHR* a,
10796 const VkVideoEncodeUsageInfoKHR* b,
10797 OnFailCompareFunc onFail) {
10798 if (!((a->sType) == (b->sType))) {
10799 onFail("a->sType (Error: Value not equal)");
10800 };
10801 if (a->pNext) {
10802 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10803 }
10804 if (!((a->videoUsageHints) == (b->videoUsageHints))) {
10805 onFail("a->videoUsageHints (Error: Value not equal)");
10806 };
10807 if (!((a->videoContentHints) == (b->videoContentHints))) {
10808 onFail("a->videoContentHints (Error: Value not equal)");
10809 };
10810 if (!((a->tuningMode) == (b->tuningMode))) {
10811 onFail("a->tuningMode (Error: Value not equal)");
10812 };
10813 }
10814
checkEqual_VkVideoEncodeRateControlLayerInfoKHR(const VkVideoEncodeRateControlLayerInfoKHR * a,const VkVideoEncodeRateControlLayerInfoKHR * b,OnFailCompareFunc onFail)10815 void checkEqual_VkVideoEncodeRateControlLayerInfoKHR(const VkVideoEncodeRateControlLayerInfoKHR* a,
10816 const VkVideoEncodeRateControlLayerInfoKHR* b,
10817 OnFailCompareFunc onFail) {
10818 if (!((a->sType) == (b->sType))) {
10819 onFail("a->sType (Error: Value not equal)");
10820 };
10821 if (a->pNext) {
10822 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10823 }
10824 if (!((a->averageBitrate) == (b->averageBitrate))) {
10825 onFail("a->averageBitrate (Error: Value not equal)");
10826 };
10827 if (!((a->maxBitrate) == (b->maxBitrate))) {
10828 onFail("a->maxBitrate (Error: Value not equal)");
10829 };
10830 if (!((a->frameRateNumerator) == (b->frameRateNumerator))) {
10831 onFail("a->frameRateNumerator (Error: Value not equal)");
10832 };
10833 if (!((a->frameRateDenominator) == (b->frameRateDenominator))) {
10834 onFail("a->frameRateDenominator (Error: Value not equal)");
10835 };
10836 if (!((a->virtualBufferSizeInMs) == (b->virtualBufferSizeInMs))) {
10837 onFail("a->virtualBufferSizeInMs (Error: Value not equal)");
10838 };
10839 if (!((a->initialVirtualBufferSizeInMs) == (b->initialVirtualBufferSizeInMs))) {
10840 onFail("a->initialVirtualBufferSizeInMs (Error: Value not equal)");
10841 };
10842 }
10843
checkEqual_VkVideoEncodeRateControlInfoKHR(const VkVideoEncodeRateControlInfoKHR * a,const VkVideoEncodeRateControlInfoKHR * b,OnFailCompareFunc onFail)10844 void checkEqual_VkVideoEncodeRateControlInfoKHR(const VkVideoEncodeRateControlInfoKHR* a,
10845 const VkVideoEncodeRateControlInfoKHR* b,
10846 OnFailCompareFunc onFail) {
10847 if (!((a->sType) == (b->sType))) {
10848 onFail("a->sType (Error: Value not equal)");
10849 };
10850 if (a->pNext) {
10851 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10852 }
10853 if (!((a->flags) == (b->flags))) {
10854 onFail("a->flags (Error: Value not equal)");
10855 };
10856 if (!((a->rateControlMode) == (b->rateControlMode))) {
10857 onFail("a->rateControlMode (Error: Value not equal)");
10858 };
10859 if (!((a->layerCount) == (b->layerCount))) {
10860 onFail("a->layerCount (Error: Value not equal)");
10861 };
10862 if ((a->pLayers) && (b->pLayers)) {
10863 if (!((a->layerCount) == (b->layerCount))) {
10864 onFail("a->pLayers (Error: Lengths not equal)");
10865 };
10866 if ((a->layerCount) == (b->layerCount)) {
10867 if (a) {
10868 for (uint32_t i = 0; i < (uint32_t)a->layerCount; ++i) {
10869 checkEqual_VkVideoEncodeRateControlLayerInfoKHR(a->pLayers + i, b->pLayers + i,
10870 onFail);
10871 }
10872 }
10873 }
10874 }
10875 }
10876
10877 #endif
10878 #ifdef VK_KHR_synchronization2
checkEqual_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV * a,const VkQueueFamilyCheckpointProperties2NV * b,OnFailCompareFunc onFail)10879 void checkEqual_VkQueueFamilyCheckpointProperties2NV(const VkQueueFamilyCheckpointProperties2NV* a,
10880 const VkQueueFamilyCheckpointProperties2NV* b,
10881 OnFailCompareFunc onFail) {
10882 if (!((a->sType) == (b->sType))) {
10883 onFail("a->sType (Error: Value not equal)");
10884 };
10885 if (a->pNext) {
10886 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10887 }
10888 if (!((a->checkpointExecutionStageMask) == (b->checkpointExecutionStageMask))) {
10889 onFail("a->checkpointExecutionStageMask (Error: Value not equal)");
10890 };
10891 }
10892
checkEqual_VkCheckpointData2NV(const VkCheckpointData2NV * a,const VkCheckpointData2NV * b,OnFailCompareFunc onFail)10893 void checkEqual_VkCheckpointData2NV(const VkCheckpointData2NV* a, const VkCheckpointData2NV* b,
10894 OnFailCompareFunc onFail) {
10895 if (!((a->sType) == (b->sType))) {
10896 onFail("a->sType (Error: Value not equal)");
10897 };
10898 if (a->pNext) {
10899 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10900 }
10901 if (!((a->stage) == (b->stage))) {
10902 onFail("a->stage (Error: Value not equal)");
10903 };
10904 if (!((!(a->pCheckpointMarker) && !(b->pCheckpointMarker)) ||
10905 ((a->pCheckpointMarker) && (b->pCheckpointMarker)))) {
10906 onFail("a->pCheckpointMarker (Error: Mismatch in optional field)");
10907 };
10908 }
10909
10910 #endif
10911 #ifdef VK_KHR_fragment_shader_barycentric
checkEqual_VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR(const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR * a,const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR * b,OnFailCompareFunc onFail)10912 void checkEqual_VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR(
10913 const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* a,
10914 const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR* b, OnFailCompareFunc onFail) {
10915 if (!((a->sType) == (b->sType))) {
10916 onFail("a->sType (Error: Value not equal)");
10917 };
10918 if (a->pNext) {
10919 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10920 }
10921 if (!((a->fragmentShaderBarycentric) == (b->fragmentShaderBarycentric))) {
10922 onFail("a->fragmentShaderBarycentric (Error: Value not equal)");
10923 };
10924 }
10925
checkEqual_VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR(const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR * a,const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR * b,OnFailCompareFunc onFail)10926 void checkEqual_VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR(
10927 const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* a,
10928 const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR* b, OnFailCompareFunc onFail) {
10929 if (!((a->sType) == (b->sType))) {
10930 onFail("a->sType (Error: Value not equal)");
10931 };
10932 if (a->pNext) {
10933 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10934 }
10935 if (!((a->triStripVertexOrderIndependentOfProvokingVertex) ==
10936 (b->triStripVertexOrderIndependentOfProvokingVertex))) {
10937 onFail("a->triStripVertexOrderIndependentOfProvokingVertex (Error: Value not equal)");
10938 };
10939 }
10940
10941 #endif
10942 #ifdef VK_KHR_shader_subgroup_uniform_control_flow
checkEqual_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR * a,const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR * b,OnFailCompareFunc onFail)10943 void checkEqual_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
10944 const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* a,
10945 const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* b,
10946 OnFailCompareFunc onFail) {
10947 if (!((a->sType) == (b->sType))) {
10948 onFail("a->sType (Error: Value not equal)");
10949 };
10950 if (a->pNext) {
10951 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10952 }
10953 if (!((a->shaderSubgroupUniformControlFlow) == (b->shaderSubgroupUniformControlFlow))) {
10954 onFail("a->shaderSubgroupUniformControlFlow (Error: Value not equal)");
10955 };
10956 }
10957
10958 #endif
10959 #ifdef VK_KHR_zero_initialize_workgroup_memory
10960 #endif
10961 #ifdef VK_KHR_workgroup_memory_explicit_layout
checkEqual_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR * a,const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR * b,OnFailCompareFunc onFail)10962 void checkEqual_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
10963 const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* a,
10964 const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* b, OnFailCompareFunc onFail) {
10965 if (!((a->sType) == (b->sType))) {
10966 onFail("a->sType (Error: Value not equal)");
10967 };
10968 if (a->pNext) {
10969 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
10970 }
10971 if (!((a->workgroupMemoryExplicitLayout) == (b->workgroupMemoryExplicitLayout))) {
10972 onFail("a->workgroupMemoryExplicitLayout (Error: Value not equal)");
10973 };
10974 if (!((a->workgroupMemoryExplicitLayoutScalarBlockLayout) ==
10975 (b->workgroupMemoryExplicitLayoutScalarBlockLayout))) {
10976 onFail("a->workgroupMemoryExplicitLayoutScalarBlockLayout (Error: Value not equal)");
10977 };
10978 if (!((a->workgroupMemoryExplicitLayout8BitAccess) ==
10979 (b->workgroupMemoryExplicitLayout8BitAccess))) {
10980 onFail("a->workgroupMemoryExplicitLayout8BitAccess (Error: Value not equal)");
10981 };
10982 if (!((a->workgroupMemoryExplicitLayout16BitAccess) ==
10983 (b->workgroupMemoryExplicitLayout16BitAccess))) {
10984 onFail("a->workgroupMemoryExplicitLayout16BitAccess (Error: Value not equal)");
10985 };
10986 }
10987
10988 #endif
10989 #ifdef VK_KHR_copy_commands2
10990 #endif
10991 #ifdef VK_KHR_format_feature_flags2
10992 #endif
10993 #ifdef VK_KHR_ray_tracing_maintenance1
checkEqual_VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR * a,const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR * b,OnFailCompareFunc onFail)10994 void checkEqual_VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(
10995 const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* a,
10996 const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR* b, OnFailCompareFunc onFail) {
10997 if (!((a->sType) == (b->sType))) {
10998 onFail("a->sType (Error: Value not equal)");
10999 };
11000 if (a->pNext) {
11001 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11002 }
11003 if (!((a->rayTracingMaintenance1) == (b->rayTracingMaintenance1))) {
11004 onFail("a->rayTracingMaintenance1 (Error: Value not equal)");
11005 };
11006 if (!((a->rayTracingPipelineTraceRaysIndirect2) == (b->rayTracingPipelineTraceRaysIndirect2))) {
11007 onFail("a->rayTracingPipelineTraceRaysIndirect2 (Error: Value not equal)");
11008 };
11009 }
11010
checkEqual_VkTraceRaysIndirectCommand2KHR(const VkTraceRaysIndirectCommand2KHR * a,const VkTraceRaysIndirectCommand2KHR * b,OnFailCompareFunc onFail)11011 void checkEqual_VkTraceRaysIndirectCommand2KHR(const VkTraceRaysIndirectCommand2KHR* a,
11012 const VkTraceRaysIndirectCommand2KHR* b,
11013 OnFailCompareFunc onFail) {
11014 if (!((a->raygenShaderRecordAddress) == (b->raygenShaderRecordAddress))) {
11015 onFail("a->raygenShaderRecordAddress (Error: Value not equal)");
11016 };
11017 if (!((a->raygenShaderRecordSize) == (b->raygenShaderRecordSize))) {
11018 onFail("a->raygenShaderRecordSize (Error: Value not equal)");
11019 };
11020 if (!((a->missShaderBindingTableAddress) == (b->missShaderBindingTableAddress))) {
11021 onFail("a->missShaderBindingTableAddress (Error: Value not equal)");
11022 };
11023 if (!((a->missShaderBindingTableSize) == (b->missShaderBindingTableSize))) {
11024 onFail("a->missShaderBindingTableSize (Error: Value not equal)");
11025 };
11026 if (!((a->missShaderBindingTableStride) == (b->missShaderBindingTableStride))) {
11027 onFail("a->missShaderBindingTableStride (Error: Value not equal)");
11028 };
11029 if (!((a->hitShaderBindingTableAddress) == (b->hitShaderBindingTableAddress))) {
11030 onFail("a->hitShaderBindingTableAddress (Error: Value not equal)");
11031 };
11032 if (!((a->hitShaderBindingTableSize) == (b->hitShaderBindingTableSize))) {
11033 onFail("a->hitShaderBindingTableSize (Error: Value not equal)");
11034 };
11035 if (!((a->hitShaderBindingTableStride) == (b->hitShaderBindingTableStride))) {
11036 onFail("a->hitShaderBindingTableStride (Error: Value not equal)");
11037 };
11038 if (!((a->callableShaderBindingTableAddress) == (b->callableShaderBindingTableAddress))) {
11039 onFail("a->callableShaderBindingTableAddress (Error: Value not equal)");
11040 };
11041 if (!((a->callableShaderBindingTableSize) == (b->callableShaderBindingTableSize))) {
11042 onFail("a->callableShaderBindingTableSize (Error: Value not equal)");
11043 };
11044 if (!((a->callableShaderBindingTableStride) == (b->callableShaderBindingTableStride))) {
11045 onFail("a->callableShaderBindingTableStride (Error: Value not equal)");
11046 };
11047 if (!((a->width) == (b->width))) {
11048 onFail("a->width (Error: Value not equal)");
11049 };
11050 if (!((a->height) == (b->height))) {
11051 onFail("a->height (Error: Value not equal)");
11052 };
11053 if (!((a->depth) == (b->depth))) {
11054 onFail("a->depth (Error: Value not equal)");
11055 };
11056 }
11057
11058 #endif
11059 #ifdef VK_KHR_portability_enumeration
11060 #endif
11061 #ifdef VK_KHR_maintenance4
11062 #endif
11063 #ifdef VK_KHR_ray_tracing_position_fetch
checkEqual_VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR(const VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR * a,const VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR * b,OnFailCompareFunc onFail)11064 void checkEqual_VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR(
11065 const VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* a,
11066 const VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR* b, OnFailCompareFunc onFail) {
11067 if (!((a->sType) == (b->sType))) {
11068 onFail("a->sType (Error: Value not equal)");
11069 };
11070 if (a->pNext) {
11071 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11072 }
11073 if (!((a->rayTracingPositionFetch) == (b->rayTracingPositionFetch))) {
11074 onFail("a->rayTracingPositionFetch (Error: Value not equal)");
11075 };
11076 }
11077
11078 #endif
11079 #ifdef VK_ANDROID_native_buffer
checkEqual_VkNativeBufferUsage2ANDROID(const VkNativeBufferUsage2ANDROID * a,const VkNativeBufferUsage2ANDROID * b,OnFailCompareFunc onFail)11080 void checkEqual_VkNativeBufferUsage2ANDROID(const VkNativeBufferUsage2ANDROID* a,
11081 const VkNativeBufferUsage2ANDROID* b,
11082 OnFailCompareFunc onFail) {
11083 if (!((a->consumer) == (b->consumer))) {
11084 onFail("a->consumer (Error: Value not equal)");
11085 };
11086 if (!((a->producer) == (b->producer))) {
11087 onFail("a->producer (Error: Value not equal)");
11088 };
11089 }
11090
checkEqual_VkNativeBufferANDROID(const VkNativeBufferANDROID * a,const VkNativeBufferANDROID * b,OnFailCompareFunc onFail)11091 void checkEqual_VkNativeBufferANDROID(const VkNativeBufferANDROID* a,
11092 const VkNativeBufferANDROID* b, OnFailCompareFunc onFail) {
11093 if (!((a->sType) == (b->sType))) {
11094 onFail("a->sType (Error: Value not equal)");
11095 };
11096 if (a->pNext) {
11097 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11098 }
11099 if (!((!(a->handle) && !(b->handle)) || ((a->handle) && (b->handle)))) {
11100 onFail("a->handle (Error: Mismatch in optional field)");
11101 };
11102 if (a->handle && b->handle) {
11103 if (!((memcmp(a->handle, b->handle, sizeof(const uint32_t)) == 0))) {
11104 onFail("a->handle (Error: Unequal dyn array)");
11105 };
11106 }
11107 if (!((a->stride) == (b->stride))) {
11108 onFail("a->stride (Error: Value not equal)");
11109 };
11110 if (!((a->format) == (b->format))) {
11111 onFail("a->format (Error: Value not equal)");
11112 };
11113 if (!((a->usage) == (b->usage))) {
11114 onFail("a->usage (Error: Value not equal)");
11115 };
11116 checkEqual_VkNativeBufferUsage2ANDROID(&a->usage2, &b->usage2, onFail);
11117 }
11118
checkEqual_VkSwapchainImageCreateInfoANDROID(const VkSwapchainImageCreateInfoANDROID * a,const VkSwapchainImageCreateInfoANDROID * b,OnFailCompareFunc onFail)11119 void checkEqual_VkSwapchainImageCreateInfoANDROID(const VkSwapchainImageCreateInfoANDROID* a,
11120 const VkSwapchainImageCreateInfoANDROID* b,
11121 OnFailCompareFunc onFail) {
11122 if (!((a->sType) == (b->sType))) {
11123 onFail("a->sType (Error: Value not equal)");
11124 };
11125 if (a->pNext) {
11126 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11127 }
11128 if (!((a->usage) == (b->usage))) {
11129 onFail("a->usage (Error: Value not equal)");
11130 };
11131 }
11132
checkEqual_VkPhysicalDevicePresentationPropertiesANDROID(const VkPhysicalDevicePresentationPropertiesANDROID * a,const VkPhysicalDevicePresentationPropertiesANDROID * b,OnFailCompareFunc onFail)11133 void checkEqual_VkPhysicalDevicePresentationPropertiesANDROID(
11134 const VkPhysicalDevicePresentationPropertiesANDROID* a,
11135 const VkPhysicalDevicePresentationPropertiesANDROID* b, OnFailCompareFunc onFail) {
11136 if (!((a->sType) == (b->sType))) {
11137 onFail("a->sType (Error: Value not equal)");
11138 };
11139 if (a->pNext) {
11140 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11141 }
11142 if (!((a->sharedImage) == (b->sharedImage))) {
11143 onFail("a->sharedImage (Error: Value not equal)");
11144 };
11145 }
11146
11147 #endif
11148 #ifdef VK_EXT_debug_report
checkEqual_VkDebugReportCallbackCreateInfoEXT(const VkDebugReportCallbackCreateInfoEXT * a,const VkDebugReportCallbackCreateInfoEXT * b,OnFailCompareFunc onFail)11149 void checkEqual_VkDebugReportCallbackCreateInfoEXT(const VkDebugReportCallbackCreateInfoEXT* a,
11150 const VkDebugReportCallbackCreateInfoEXT* b,
11151 OnFailCompareFunc onFail) {
11152 if (!((a->sType) == (b->sType))) {
11153 onFail("a->sType (Error: Value not equal)");
11154 };
11155 if (a->pNext) {
11156 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11157 }
11158 if (!((a->flags) == (b->flags))) {
11159 onFail("a->flags (Error: Value not equal)");
11160 };
11161 if (!((a->pfnCallback) == (b->pfnCallback))) {
11162 onFail("a->pfnCallback (Error: Value not equal)");
11163 };
11164 if (!((!(a->pUserData) && !(b->pUserData)) || ((a->pUserData) && (b->pUserData)))) {
11165 onFail("a->pUserData (Error: Mismatch in optional field)");
11166 };
11167 }
11168
11169 #endif
11170 #ifdef VK_NV_glsl_shader
11171 #endif
11172 #ifdef VK_EXT_depth_range_unrestricted
11173 #endif
11174 #ifdef VK_IMG_filter_cubic
11175 #endif
11176 #ifdef VK_AMD_rasterization_order
checkEqual_VkPipelineRasterizationStateRasterizationOrderAMD(const VkPipelineRasterizationStateRasterizationOrderAMD * a,const VkPipelineRasterizationStateRasterizationOrderAMD * b,OnFailCompareFunc onFail)11177 void checkEqual_VkPipelineRasterizationStateRasterizationOrderAMD(
11178 const VkPipelineRasterizationStateRasterizationOrderAMD* a,
11179 const VkPipelineRasterizationStateRasterizationOrderAMD* b, OnFailCompareFunc onFail) {
11180 if (!((a->sType) == (b->sType))) {
11181 onFail("a->sType (Error: Value not equal)");
11182 };
11183 if (a->pNext) {
11184 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11185 }
11186 if (!((a->rasterizationOrder) == (b->rasterizationOrder))) {
11187 onFail("a->rasterizationOrder (Error: Value not equal)");
11188 };
11189 }
11190
11191 #endif
11192 #ifdef VK_AMD_shader_trinary_minmax
11193 #endif
11194 #ifdef VK_AMD_shader_explicit_vertex_parameter
11195 #endif
11196 #ifdef VK_EXT_debug_marker
checkEqual_VkDebugMarkerObjectNameInfoEXT(const VkDebugMarkerObjectNameInfoEXT * a,const VkDebugMarkerObjectNameInfoEXT * b,OnFailCompareFunc onFail)11197 void checkEqual_VkDebugMarkerObjectNameInfoEXT(const VkDebugMarkerObjectNameInfoEXT* a,
11198 const VkDebugMarkerObjectNameInfoEXT* b,
11199 OnFailCompareFunc onFail) {
11200 if (!((a->sType) == (b->sType))) {
11201 onFail("a->sType (Error: Value not equal)");
11202 };
11203 if (a->pNext) {
11204 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11205 }
11206 if (!((a->objectType) == (b->objectType))) {
11207 onFail("a->objectType (Error: Value not equal)");
11208 };
11209 if (!((a->object) == (b->object))) {
11210 onFail("a->object (Error: Value not equal)");
11211 };
11212 if (!((!(a->pObjectName) && !(b->pObjectName)) || ((a->pObjectName) && (b->pObjectName)))) {
11213 onFail("a->pObjectName (Error: Mismatch in string pointer nullness)");
11214 };
11215 if ((a->pObjectName) && (b->pObjectName)) {
11216 if (!((strcmp(a->pObjectName, b->pObjectName) == 0))) {
11217 onFail("a->pObjectName (Error: Unequal strings)");
11218 };
11219 }
11220 }
11221
checkEqual_VkDebugMarkerObjectTagInfoEXT(const VkDebugMarkerObjectTagInfoEXT * a,const VkDebugMarkerObjectTagInfoEXT * b,OnFailCompareFunc onFail)11222 void checkEqual_VkDebugMarkerObjectTagInfoEXT(const VkDebugMarkerObjectTagInfoEXT* a,
11223 const VkDebugMarkerObjectTagInfoEXT* b,
11224 OnFailCompareFunc onFail) {
11225 if (!((a->sType) == (b->sType))) {
11226 onFail("a->sType (Error: Value not equal)");
11227 };
11228 if (a->pNext) {
11229 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11230 }
11231 if (!((a->objectType) == (b->objectType))) {
11232 onFail("a->objectType (Error: Value not equal)");
11233 };
11234 if (!((a->object) == (b->object))) {
11235 onFail("a->object (Error: Value not equal)");
11236 };
11237 if (!((a->tagName) == (b->tagName))) {
11238 onFail("a->tagName (Error: Value not equal)");
11239 };
11240 if (!((a->tagSize) == (b->tagSize))) {
11241 onFail("a->tagSize (Error: Value not equal)");
11242 };
11243 }
11244
checkEqual_VkDebugMarkerMarkerInfoEXT(const VkDebugMarkerMarkerInfoEXT * a,const VkDebugMarkerMarkerInfoEXT * b,OnFailCompareFunc onFail)11245 void checkEqual_VkDebugMarkerMarkerInfoEXT(const VkDebugMarkerMarkerInfoEXT* a,
11246 const VkDebugMarkerMarkerInfoEXT* b,
11247 OnFailCompareFunc onFail) {
11248 if (!((a->sType) == (b->sType))) {
11249 onFail("a->sType (Error: Value not equal)");
11250 };
11251 if (a->pNext) {
11252 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11253 }
11254 if (!((!(a->pMarkerName) && !(b->pMarkerName)) || ((a->pMarkerName) && (b->pMarkerName)))) {
11255 onFail("a->pMarkerName (Error: Mismatch in string pointer nullness)");
11256 };
11257 if ((a->pMarkerName) && (b->pMarkerName)) {
11258 if (!((strcmp(a->pMarkerName, b->pMarkerName) == 0))) {
11259 onFail("a->pMarkerName (Error: Unequal strings)");
11260 };
11261 }
11262 if (!((memcmp(a->color, b->color, 4 * sizeof(float)) == 0))) {
11263 onFail("a->color (Error: Unequal static array)");
11264 };
11265 }
11266
11267 #endif
11268 #ifdef VK_AMD_gcn_shader
11269 #endif
11270 #ifdef VK_NV_dedicated_allocation
checkEqual_VkDedicatedAllocationImageCreateInfoNV(const VkDedicatedAllocationImageCreateInfoNV * a,const VkDedicatedAllocationImageCreateInfoNV * b,OnFailCompareFunc onFail)11271 void checkEqual_VkDedicatedAllocationImageCreateInfoNV(
11272 const VkDedicatedAllocationImageCreateInfoNV* a,
11273 const VkDedicatedAllocationImageCreateInfoNV* b, OnFailCompareFunc onFail) {
11274 if (!((a->sType) == (b->sType))) {
11275 onFail("a->sType (Error: Value not equal)");
11276 };
11277 if (a->pNext) {
11278 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11279 }
11280 if (!((a->dedicatedAllocation) == (b->dedicatedAllocation))) {
11281 onFail("a->dedicatedAllocation (Error: Value not equal)");
11282 };
11283 }
11284
checkEqual_VkDedicatedAllocationBufferCreateInfoNV(const VkDedicatedAllocationBufferCreateInfoNV * a,const VkDedicatedAllocationBufferCreateInfoNV * b,OnFailCompareFunc onFail)11285 void checkEqual_VkDedicatedAllocationBufferCreateInfoNV(
11286 const VkDedicatedAllocationBufferCreateInfoNV* a,
11287 const VkDedicatedAllocationBufferCreateInfoNV* b, OnFailCompareFunc onFail) {
11288 if (!((a->sType) == (b->sType))) {
11289 onFail("a->sType (Error: Value not equal)");
11290 };
11291 if (a->pNext) {
11292 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11293 }
11294 if (!((a->dedicatedAllocation) == (b->dedicatedAllocation))) {
11295 onFail("a->dedicatedAllocation (Error: Value not equal)");
11296 };
11297 }
11298
checkEqual_VkDedicatedAllocationMemoryAllocateInfoNV(const VkDedicatedAllocationMemoryAllocateInfoNV * a,const VkDedicatedAllocationMemoryAllocateInfoNV * b,OnFailCompareFunc onFail)11299 void checkEqual_VkDedicatedAllocationMemoryAllocateInfoNV(
11300 const VkDedicatedAllocationMemoryAllocateInfoNV* a,
11301 const VkDedicatedAllocationMemoryAllocateInfoNV* b, OnFailCompareFunc onFail) {
11302 if (!((a->sType) == (b->sType))) {
11303 onFail("a->sType (Error: Value not equal)");
11304 };
11305 if (a->pNext) {
11306 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11307 }
11308 if (!((a->image) == (b->image))) {
11309 onFail("a->image (Error: Value not equal)");
11310 };
11311 if (!((a->buffer) == (b->buffer))) {
11312 onFail("a->buffer (Error: Value not equal)");
11313 };
11314 }
11315
11316 #endif
11317 #ifdef VK_EXT_transform_feedback
checkEqual_VkPhysicalDeviceTransformFeedbackFeaturesEXT(const VkPhysicalDeviceTransformFeedbackFeaturesEXT * a,const VkPhysicalDeviceTransformFeedbackFeaturesEXT * b,OnFailCompareFunc onFail)11318 void checkEqual_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
11319 const VkPhysicalDeviceTransformFeedbackFeaturesEXT* a,
11320 const VkPhysicalDeviceTransformFeedbackFeaturesEXT* b, OnFailCompareFunc onFail) {
11321 if (!((a->sType) == (b->sType))) {
11322 onFail("a->sType (Error: Value not equal)");
11323 };
11324 if (a->pNext) {
11325 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11326 }
11327 if (!((a->transformFeedback) == (b->transformFeedback))) {
11328 onFail("a->transformFeedback (Error: Value not equal)");
11329 };
11330 if (!((a->geometryStreams) == (b->geometryStreams))) {
11331 onFail("a->geometryStreams (Error: Value not equal)");
11332 };
11333 }
11334
checkEqual_VkPhysicalDeviceTransformFeedbackPropertiesEXT(const VkPhysicalDeviceTransformFeedbackPropertiesEXT * a,const VkPhysicalDeviceTransformFeedbackPropertiesEXT * b,OnFailCompareFunc onFail)11335 void checkEqual_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
11336 const VkPhysicalDeviceTransformFeedbackPropertiesEXT* a,
11337 const VkPhysicalDeviceTransformFeedbackPropertiesEXT* b, OnFailCompareFunc onFail) {
11338 if (!((a->sType) == (b->sType))) {
11339 onFail("a->sType (Error: Value not equal)");
11340 };
11341 if (a->pNext) {
11342 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11343 }
11344 if (!((a->maxTransformFeedbackStreams) == (b->maxTransformFeedbackStreams))) {
11345 onFail("a->maxTransformFeedbackStreams (Error: Value not equal)");
11346 };
11347 if (!((a->maxTransformFeedbackBuffers) == (b->maxTransformFeedbackBuffers))) {
11348 onFail("a->maxTransformFeedbackBuffers (Error: Value not equal)");
11349 };
11350 if (!((a->maxTransformFeedbackBufferSize) == (b->maxTransformFeedbackBufferSize))) {
11351 onFail("a->maxTransformFeedbackBufferSize (Error: Value not equal)");
11352 };
11353 if (!((a->maxTransformFeedbackStreamDataSize) == (b->maxTransformFeedbackStreamDataSize))) {
11354 onFail("a->maxTransformFeedbackStreamDataSize (Error: Value not equal)");
11355 };
11356 if (!((a->maxTransformFeedbackBufferDataSize) == (b->maxTransformFeedbackBufferDataSize))) {
11357 onFail("a->maxTransformFeedbackBufferDataSize (Error: Value not equal)");
11358 };
11359 if (!((a->maxTransformFeedbackBufferDataStride) == (b->maxTransformFeedbackBufferDataStride))) {
11360 onFail("a->maxTransformFeedbackBufferDataStride (Error: Value not equal)");
11361 };
11362 if (!((a->transformFeedbackQueries) == (b->transformFeedbackQueries))) {
11363 onFail("a->transformFeedbackQueries (Error: Value not equal)");
11364 };
11365 if (!((a->transformFeedbackStreamsLinesTriangles) ==
11366 (b->transformFeedbackStreamsLinesTriangles))) {
11367 onFail("a->transformFeedbackStreamsLinesTriangles (Error: Value not equal)");
11368 };
11369 if (!((a->transformFeedbackRasterizationStreamSelect) ==
11370 (b->transformFeedbackRasterizationStreamSelect))) {
11371 onFail("a->transformFeedbackRasterizationStreamSelect (Error: Value not equal)");
11372 };
11373 if (!((a->transformFeedbackDraw) == (b->transformFeedbackDraw))) {
11374 onFail("a->transformFeedbackDraw (Error: Value not equal)");
11375 };
11376 }
11377
checkEqual_VkPipelineRasterizationStateStreamCreateInfoEXT(const VkPipelineRasterizationStateStreamCreateInfoEXT * a,const VkPipelineRasterizationStateStreamCreateInfoEXT * b,OnFailCompareFunc onFail)11378 void checkEqual_VkPipelineRasterizationStateStreamCreateInfoEXT(
11379 const VkPipelineRasterizationStateStreamCreateInfoEXT* a,
11380 const VkPipelineRasterizationStateStreamCreateInfoEXT* b, OnFailCompareFunc onFail) {
11381 if (!((a->sType) == (b->sType))) {
11382 onFail("a->sType (Error: Value not equal)");
11383 };
11384 if (a->pNext) {
11385 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11386 }
11387 if (!((a->flags) == (b->flags))) {
11388 onFail("a->flags (Error: Value not equal)");
11389 };
11390 if (!((a->rasterizationStream) == (b->rasterizationStream))) {
11391 onFail("a->rasterizationStream (Error: Value not equal)");
11392 };
11393 }
11394
11395 #endif
11396 #ifdef VK_NVX_binary_import
checkEqual_VkCuModuleCreateInfoNVX(const VkCuModuleCreateInfoNVX * a,const VkCuModuleCreateInfoNVX * b,OnFailCompareFunc onFail)11397 void checkEqual_VkCuModuleCreateInfoNVX(const VkCuModuleCreateInfoNVX* a,
11398 const VkCuModuleCreateInfoNVX* b,
11399 OnFailCompareFunc onFail) {
11400 if (!((a->sType) == (b->sType))) {
11401 onFail("a->sType (Error: Value not equal)");
11402 };
11403 if (a->pNext) {
11404 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11405 }
11406 if (!((a->dataSize) == (b->dataSize))) {
11407 onFail("a->dataSize (Error: Value not equal)");
11408 };
11409 }
11410
checkEqual_VkCuFunctionCreateInfoNVX(const VkCuFunctionCreateInfoNVX * a,const VkCuFunctionCreateInfoNVX * b,OnFailCompareFunc onFail)11411 void checkEqual_VkCuFunctionCreateInfoNVX(const VkCuFunctionCreateInfoNVX* a,
11412 const VkCuFunctionCreateInfoNVX* b,
11413 OnFailCompareFunc onFail) {
11414 if (!((a->sType) == (b->sType))) {
11415 onFail("a->sType (Error: Value not equal)");
11416 };
11417 if (a->pNext) {
11418 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11419 }
11420 if (!((a->module) == (b->module))) {
11421 onFail("a->module (Error: Value not equal)");
11422 };
11423 if (!((!(a->pName) && !(b->pName)) || ((a->pName) && (b->pName)))) {
11424 onFail("a->pName (Error: Mismatch in string pointer nullness)");
11425 };
11426 if ((a->pName) && (b->pName)) {
11427 if (!((strcmp(a->pName, b->pName) == 0))) {
11428 onFail("a->pName (Error: Unequal strings)");
11429 };
11430 }
11431 }
11432
checkEqual_VkCuLaunchInfoNVX(const VkCuLaunchInfoNVX * a,const VkCuLaunchInfoNVX * b,OnFailCompareFunc onFail)11433 void checkEqual_VkCuLaunchInfoNVX(const VkCuLaunchInfoNVX* a, const VkCuLaunchInfoNVX* b,
11434 OnFailCompareFunc onFail) {
11435 if (!((a->sType) == (b->sType))) {
11436 onFail("a->sType (Error: Value not equal)");
11437 };
11438 if (a->pNext) {
11439 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11440 }
11441 if (!((a->function) == (b->function))) {
11442 onFail("a->function (Error: Value not equal)");
11443 };
11444 if (!((a->gridDimX) == (b->gridDimX))) {
11445 onFail("a->gridDimX (Error: Value not equal)");
11446 };
11447 if (!((a->gridDimY) == (b->gridDimY))) {
11448 onFail("a->gridDimY (Error: Value not equal)");
11449 };
11450 if (!((a->gridDimZ) == (b->gridDimZ))) {
11451 onFail("a->gridDimZ (Error: Value not equal)");
11452 };
11453 if (!((a->blockDimX) == (b->blockDimX))) {
11454 onFail("a->blockDimX (Error: Value not equal)");
11455 };
11456 if (!((a->blockDimY) == (b->blockDimY))) {
11457 onFail("a->blockDimY (Error: Value not equal)");
11458 };
11459 if (!((a->blockDimZ) == (b->blockDimZ))) {
11460 onFail("a->blockDimZ (Error: Value not equal)");
11461 };
11462 if (!((a->sharedMemBytes) == (b->sharedMemBytes))) {
11463 onFail("a->sharedMemBytes (Error: Value not equal)");
11464 };
11465 if (!((a->paramCount) == (b->paramCount))) {
11466 onFail("a->paramCount (Error: Value not equal)");
11467 };
11468 if (!((a->extraCount) == (b->extraCount))) {
11469 onFail("a->extraCount (Error: Value not equal)");
11470 };
11471 }
11472
11473 #endif
11474 #ifdef VK_NVX_image_view_handle
checkEqual_VkImageViewHandleInfoNVX(const VkImageViewHandleInfoNVX * a,const VkImageViewHandleInfoNVX * b,OnFailCompareFunc onFail)11475 void checkEqual_VkImageViewHandleInfoNVX(const VkImageViewHandleInfoNVX* a,
11476 const VkImageViewHandleInfoNVX* b,
11477 OnFailCompareFunc onFail) {
11478 if (!((a->sType) == (b->sType))) {
11479 onFail("a->sType (Error: Value not equal)");
11480 };
11481 if (a->pNext) {
11482 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11483 }
11484 if (!((a->imageView) == (b->imageView))) {
11485 onFail("a->imageView (Error: Value not equal)");
11486 };
11487 if (!((a->descriptorType) == (b->descriptorType))) {
11488 onFail("a->descriptorType (Error: Value not equal)");
11489 };
11490 if (!((a->sampler) == (b->sampler))) {
11491 onFail("a->sampler (Error: Value not equal)");
11492 };
11493 }
11494
checkEqual_VkImageViewAddressPropertiesNVX(const VkImageViewAddressPropertiesNVX * a,const VkImageViewAddressPropertiesNVX * b,OnFailCompareFunc onFail)11495 void checkEqual_VkImageViewAddressPropertiesNVX(const VkImageViewAddressPropertiesNVX* a,
11496 const VkImageViewAddressPropertiesNVX* b,
11497 OnFailCompareFunc onFail) {
11498 if (!((a->sType) == (b->sType))) {
11499 onFail("a->sType (Error: Value not equal)");
11500 };
11501 if (a->pNext) {
11502 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11503 }
11504 if (!((a->deviceAddress) == (b->deviceAddress))) {
11505 onFail("a->deviceAddress (Error: Value not equal)");
11506 };
11507 if (!((a->size) == (b->size))) {
11508 onFail("a->size (Error: Value not equal)");
11509 };
11510 }
11511
11512 #endif
11513 #ifdef VK_AMD_draw_indirect_count
11514 #endif
11515 #ifdef VK_AMD_negative_viewport_height
11516 #endif
11517 #ifdef VK_AMD_gpu_shader_half_float
11518 #endif
11519 #ifdef VK_AMD_shader_ballot
11520 #endif
11521 #ifdef VK_EXT_video_encode_h264
checkEqual_VkVideoEncodeH264CapabilitiesEXT(const VkVideoEncodeH264CapabilitiesEXT * a,const VkVideoEncodeH264CapabilitiesEXT * b,OnFailCompareFunc onFail)11522 void checkEqual_VkVideoEncodeH264CapabilitiesEXT(const VkVideoEncodeH264CapabilitiesEXT* a,
11523 const VkVideoEncodeH264CapabilitiesEXT* b,
11524 OnFailCompareFunc onFail) {
11525 if (!((a->sType) == (b->sType))) {
11526 onFail("a->sType (Error: Value not equal)");
11527 };
11528 if (a->pNext) {
11529 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11530 }
11531 if (!((a->flags) == (b->flags))) {
11532 onFail("a->flags (Error: Value not equal)");
11533 };
11534 if (!((a->maxPPictureL0ReferenceCount) == (b->maxPPictureL0ReferenceCount))) {
11535 onFail("a->maxPPictureL0ReferenceCount (Error: Value not equal)");
11536 };
11537 if (!((a->maxBPictureL0ReferenceCount) == (b->maxBPictureL0ReferenceCount))) {
11538 onFail("a->maxBPictureL0ReferenceCount (Error: Value not equal)");
11539 };
11540 if (!((a->maxL1ReferenceCount) == (b->maxL1ReferenceCount))) {
11541 onFail("a->maxL1ReferenceCount (Error: Value not equal)");
11542 };
11543 if (!((a->motionVectorsOverPicBoundariesFlag) == (b->motionVectorsOverPicBoundariesFlag))) {
11544 onFail("a->motionVectorsOverPicBoundariesFlag (Error: Value not equal)");
11545 };
11546 if (!((a->maxBytesPerPicDenom) == (b->maxBytesPerPicDenom))) {
11547 onFail("a->maxBytesPerPicDenom (Error: Value not equal)");
11548 };
11549 if (!((a->maxBitsPerMbDenom) == (b->maxBitsPerMbDenom))) {
11550 onFail("a->maxBitsPerMbDenom (Error: Value not equal)");
11551 };
11552 if (!((a->log2MaxMvLengthHorizontal) == (b->log2MaxMvLengthHorizontal))) {
11553 onFail("a->log2MaxMvLengthHorizontal (Error: Value not equal)");
11554 };
11555 if (!((a->log2MaxMvLengthVertical) == (b->log2MaxMvLengthVertical))) {
11556 onFail("a->log2MaxMvLengthVertical (Error: Value not equal)");
11557 };
11558 }
11559
checkEqual_VkVideoEncodeH264SessionParametersAddInfoEXT(const VkVideoEncodeH264SessionParametersAddInfoEXT * a,const VkVideoEncodeH264SessionParametersAddInfoEXT * b,OnFailCompareFunc onFail)11560 void checkEqual_VkVideoEncodeH264SessionParametersAddInfoEXT(
11561 const VkVideoEncodeH264SessionParametersAddInfoEXT* a,
11562 const VkVideoEncodeH264SessionParametersAddInfoEXT* b, OnFailCompareFunc onFail) {
11563 if (!((a->sType) == (b->sType))) {
11564 onFail("a->sType (Error: Value not equal)");
11565 };
11566 if (a->pNext) {
11567 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11568 }
11569 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
11570 onFail("a->stdSPSCount (Error: Value not equal)");
11571 };
11572 if (!((!(a->pStdSPSs) && !(b->pStdSPSs)) || ((a->pStdSPSs) && (b->pStdSPSs)))) {
11573 onFail("a->pStdSPSs (Error: Mismatch in optional field)");
11574 };
11575 if (a->pStdSPSs && b->pStdSPSs) {
11576 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
11577 onFail("a->pStdSPSs (Error: Lengths not equal)");
11578 };
11579 if (!((memcmp(a->pStdSPSs, b->pStdSPSs,
11580 a->stdSPSCount * sizeof(const StdVideoH264SequenceParameterSet)) == 0))) {
11581 onFail("a->pStdSPSs (Error: Unequal dyn array)");
11582 };
11583 }
11584 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
11585 onFail("a->stdPPSCount (Error: Value not equal)");
11586 };
11587 if (!((!(a->pStdPPSs) && !(b->pStdPPSs)) || ((a->pStdPPSs) && (b->pStdPPSs)))) {
11588 onFail("a->pStdPPSs (Error: Mismatch in optional field)");
11589 };
11590 if (a->pStdPPSs && b->pStdPPSs) {
11591 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
11592 onFail("a->pStdPPSs (Error: Lengths not equal)");
11593 };
11594 if (!((memcmp(a->pStdPPSs, b->pStdPPSs,
11595 a->stdPPSCount * sizeof(const StdVideoH264PictureParameterSet)) == 0))) {
11596 onFail("a->pStdPPSs (Error: Unequal dyn array)");
11597 };
11598 }
11599 }
11600
checkEqual_VkVideoEncodeH264SessionParametersCreateInfoEXT(const VkVideoEncodeH264SessionParametersCreateInfoEXT * a,const VkVideoEncodeH264SessionParametersCreateInfoEXT * b,OnFailCompareFunc onFail)11601 void checkEqual_VkVideoEncodeH264SessionParametersCreateInfoEXT(
11602 const VkVideoEncodeH264SessionParametersCreateInfoEXT* a,
11603 const VkVideoEncodeH264SessionParametersCreateInfoEXT* b, OnFailCompareFunc onFail) {
11604 if (!((a->sType) == (b->sType))) {
11605 onFail("a->sType (Error: Value not equal)");
11606 };
11607 if (a->pNext) {
11608 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11609 }
11610 if (!((a->maxStdSPSCount) == (b->maxStdSPSCount))) {
11611 onFail("a->maxStdSPSCount (Error: Value not equal)");
11612 };
11613 if (!((a->maxStdPPSCount) == (b->maxStdPPSCount))) {
11614 onFail("a->maxStdPPSCount (Error: Value not equal)");
11615 };
11616 if (!((!(a->pParametersAddInfo) && !(b->pParametersAddInfo)) ||
11617 ((a->pParametersAddInfo) && (b->pParametersAddInfo)))) {
11618 onFail("a->pParametersAddInfo (Error: Mismatch in optional field)");
11619 };
11620 if (a->pParametersAddInfo && b->pParametersAddInfo) {
11621 if ((a->pParametersAddInfo) && (b->pParametersAddInfo)) {
11622 checkEqual_VkVideoEncodeH264SessionParametersAddInfoEXT(a->pParametersAddInfo,
11623 b->pParametersAddInfo, onFail);
11624 }
11625 }
11626 }
11627
checkEqual_VkVideoEncodeH264NaluSliceInfoEXT(const VkVideoEncodeH264NaluSliceInfoEXT * a,const VkVideoEncodeH264NaluSliceInfoEXT * b,OnFailCompareFunc onFail)11628 void checkEqual_VkVideoEncodeH264NaluSliceInfoEXT(const VkVideoEncodeH264NaluSliceInfoEXT* a,
11629 const VkVideoEncodeH264NaluSliceInfoEXT* b,
11630 OnFailCompareFunc onFail) {
11631 if (!((a->sType) == (b->sType))) {
11632 onFail("a->sType (Error: Value not equal)");
11633 };
11634 if (a->pNext) {
11635 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11636 }
11637 if (!((a->mbCount) == (b->mbCount))) {
11638 onFail("a->mbCount (Error: Value not equal)");
11639 };
11640 if (!((!(a->pStdReferenceFinalLists) && !(b->pStdReferenceFinalLists)) ||
11641 ((a->pStdReferenceFinalLists) && (b->pStdReferenceFinalLists)))) {
11642 onFail("a->pStdReferenceFinalLists (Error: Mismatch in optional field)");
11643 };
11644 if (a->pStdReferenceFinalLists && b->pStdReferenceFinalLists) {
11645 if (!((memcmp(a->pStdReferenceFinalLists, b->pStdReferenceFinalLists,
11646 sizeof(const StdVideoEncodeH264ReferenceListsInfo)) == 0))) {
11647 onFail("a->pStdReferenceFinalLists (Error: Unequal dyn array)");
11648 };
11649 }
11650 if (!((memcmp(a->pStdSliceHeader, b->pStdSliceHeader,
11651 sizeof(const StdVideoEncodeH264SliceHeader)) == 0))) {
11652 onFail("a->pStdSliceHeader (Error: Unequal dyn array)");
11653 };
11654 }
11655
checkEqual_VkVideoEncodeH264VclFrameInfoEXT(const VkVideoEncodeH264VclFrameInfoEXT * a,const VkVideoEncodeH264VclFrameInfoEXT * b,OnFailCompareFunc onFail)11656 void checkEqual_VkVideoEncodeH264VclFrameInfoEXT(const VkVideoEncodeH264VclFrameInfoEXT* a,
11657 const VkVideoEncodeH264VclFrameInfoEXT* b,
11658 OnFailCompareFunc onFail) {
11659 if (!((a->sType) == (b->sType))) {
11660 onFail("a->sType (Error: Value not equal)");
11661 };
11662 if (a->pNext) {
11663 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11664 }
11665 if (!((!(a->pStdReferenceFinalLists) && !(b->pStdReferenceFinalLists)) ||
11666 ((a->pStdReferenceFinalLists) && (b->pStdReferenceFinalLists)))) {
11667 onFail("a->pStdReferenceFinalLists (Error: Mismatch in optional field)");
11668 };
11669 if (a->pStdReferenceFinalLists && b->pStdReferenceFinalLists) {
11670 if (!((memcmp(a->pStdReferenceFinalLists, b->pStdReferenceFinalLists,
11671 sizeof(const StdVideoEncodeH264ReferenceListsInfo)) == 0))) {
11672 onFail("a->pStdReferenceFinalLists (Error: Unequal dyn array)");
11673 };
11674 }
11675 if (!((a->naluSliceEntryCount) == (b->naluSliceEntryCount))) {
11676 onFail("a->naluSliceEntryCount (Error: Value not equal)");
11677 };
11678 if ((a->pNaluSliceEntries) && (b->pNaluSliceEntries)) {
11679 if (!((a->naluSliceEntryCount) == (b->naluSliceEntryCount))) {
11680 onFail("a->pNaluSliceEntries (Error: Lengths not equal)");
11681 };
11682 if ((a->naluSliceEntryCount) == (b->naluSliceEntryCount)) {
11683 if (a) {
11684 for (uint32_t i = 0; i < (uint32_t)a->naluSliceEntryCount; ++i) {
11685 checkEqual_VkVideoEncodeH264NaluSliceInfoEXT(a->pNaluSliceEntries + i,
11686 b->pNaluSliceEntries + i, onFail);
11687 }
11688 }
11689 }
11690 }
11691 if (!((memcmp(a->pStdPictureInfo, b->pStdPictureInfo,
11692 sizeof(const StdVideoEncodeH264PictureInfo)) == 0))) {
11693 onFail("a->pStdPictureInfo (Error: Unequal dyn array)");
11694 };
11695 }
11696
checkEqual_VkVideoEncodeH264DpbSlotInfoEXT(const VkVideoEncodeH264DpbSlotInfoEXT * a,const VkVideoEncodeH264DpbSlotInfoEXT * b,OnFailCompareFunc onFail)11697 void checkEqual_VkVideoEncodeH264DpbSlotInfoEXT(const VkVideoEncodeH264DpbSlotInfoEXT* a,
11698 const VkVideoEncodeH264DpbSlotInfoEXT* b,
11699 OnFailCompareFunc onFail) {
11700 if (!((a->sType) == (b->sType))) {
11701 onFail("a->sType (Error: Value not equal)");
11702 };
11703 if (a->pNext) {
11704 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11705 }
11706 if (!((memcmp(a->pStdReferenceInfo, b->pStdReferenceInfo,
11707 sizeof(const StdVideoEncodeH264ReferenceInfo)) == 0))) {
11708 onFail("a->pStdReferenceInfo (Error: Unequal dyn array)");
11709 };
11710 }
11711
checkEqual_VkVideoEncodeH264ProfileInfoEXT(const VkVideoEncodeH264ProfileInfoEXT * a,const VkVideoEncodeH264ProfileInfoEXT * b,OnFailCompareFunc onFail)11712 void checkEqual_VkVideoEncodeH264ProfileInfoEXT(const VkVideoEncodeH264ProfileInfoEXT* a,
11713 const VkVideoEncodeH264ProfileInfoEXT* b,
11714 OnFailCompareFunc onFail) {
11715 if (!((a->sType) == (b->sType))) {
11716 onFail("a->sType (Error: Value not equal)");
11717 };
11718 if (a->pNext) {
11719 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11720 }
11721 if (!((a->stdProfileIdc) == (b->stdProfileIdc))) {
11722 onFail("a->stdProfileIdc (Error: Value not equal)");
11723 };
11724 }
11725
checkEqual_VkVideoEncodeH264RateControlInfoEXT(const VkVideoEncodeH264RateControlInfoEXT * a,const VkVideoEncodeH264RateControlInfoEXT * b,OnFailCompareFunc onFail)11726 void checkEqual_VkVideoEncodeH264RateControlInfoEXT(const VkVideoEncodeH264RateControlInfoEXT* a,
11727 const VkVideoEncodeH264RateControlInfoEXT* b,
11728 OnFailCompareFunc onFail) {
11729 if (!((a->sType) == (b->sType))) {
11730 onFail("a->sType (Error: Value not equal)");
11731 };
11732 if (a->pNext) {
11733 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11734 }
11735 if (!((a->gopFrameCount) == (b->gopFrameCount))) {
11736 onFail("a->gopFrameCount (Error: Value not equal)");
11737 };
11738 if (!((a->idrPeriod) == (b->idrPeriod))) {
11739 onFail("a->idrPeriod (Error: Value not equal)");
11740 };
11741 if (!((a->consecutiveBFrameCount) == (b->consecutiveBFrameCount))) {
11742 onFail("a->consecutiveBFrameCount (Error: Value not equal)");
11743 };
11744 if (!((a->rateControlStructure) == (b->rateControlStructure))) {
11745 onFail("a->rateControlStructure (Error: Value not equal)");
11746 };
11747 if (!((a->temporalLayerCount) == (b->temporalLayerCount))) {
11748 onFail("a->temporalLayerCount (Error: Value not equal)");
11749 };
11750 }
11751
checkEqual_VkVideoEncodeH264QpEXT(const VkVideoEncodeH264QpEXT * a,const VkVideoEncodeH264QpEXT * b,OnFailCompareFunc onFail)11752 void checkEqual_VkVideoEncodeH264QpEXT(const VkVideoEncodeH264QpEXT* a,
11753 const VkVideoEncodeH264QpEXT* b, OnFailCompareFunc onFail) {
11754 if (!((a->qpI) == (b->qpI))) {
11755 onFail("a->qpI (Error: Value not equal)");
11756 };
11757 if (!((a->qpP) == (b->qpP))) {
11758 onFail("a->qpP (Error: Value not equal)");
11759 };
11760 if (!((a->qpB) == (b->qpB))) {
11761 onFail("a->qpB (Error: Value not equal)");
11762 };
11763 }
11764
checkEqual_VkVideoEncodeH264FrameSizeEXT(const VkVideoEncodeH264FrameSizeEXT * a,const VkVideoEncodeH264FrameSizeEXT * b,OnFailCompareFunc onFail)11765 void checkEqual_VkVideoEncodeH264FrameSizeEXT(const VkVideoEncodeH264FrameSizeEXT* a,
11766 const VkVideoEncodeH264FrameSizeEXT* b,
11767 OnFailCompareFunc onFail) {
11768 if (!((a->frameISize) == (b->frameISize))) {
11769 onFail("a->frameISize (Error: Value not equal)");
11770 };
11771 if (!((a->framePSize) == (b->framePSize))) {
11772 onFail("a->framePSize (Error: Value not equal)");
11773 };
11774 if (!((a->frameBSize) == (b->frameBSize))) {
11775 onFail("a->frameBSize (Error: Value not equal)");
11776 };
11777 }
11778
checkEqual_VkVideoEncodeH264RateControlLayerInfoEXT(const VkVideoEncodeH264RateControlLayerInfoEXT * a,const VkVideoEncodeH264RateControlLayerInfoEXT * b,OnFailCompareFunc onFail)11779 void checkEqual_VkVideoEncodeH264RateControlLayerInfoEXT(
11780 const VkVideoEncodeH264RateControlLayerInfoEXT* a,
11781 const VkVideoEncodeH264RateControlLayerInfoEXT* b, OnFailCompareFunc onFail) {
11782 if (!((a->sType) == (b->sType))) {
11783 onFail("a->sType (Error: Value not equal)");
11784 };
11785 if (a->pNext) {
11786 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11787 }
11788 if (!((a->temporalLayerId) == (b->temporalLayerId))) {
11789 onFail("a->temporalLayerId (Error: Value not equal)");
11790 };
11791 if (!((a->useInitialRcQp) == (b->useInitialRcQp))) {
11792 onFail("a->useInitialRcQp (Error: Value not equal)");
11793 };
11794 checkEqual_VkVideoEncodeH264QpEXT(&a->initialRcQp, &b->initialRcQp, onFail);
11795 if (!((a->useMinQp) == (b->useMinQp))) {
11796 onFail("a->useMinQp (Error: Value not equal)");
11797 };
11798 checkEqual_VkVideoEncodeH264QpEXT(&a->minQp, &b->minQp, onFail);
11799 if (!((a->useMaxQp) == (b->useMaxQp))) {
11800 onFail("a->useMaxQp (Error: Value not equal)");
11801 };
11802 checkEqual_VkVideoEncodeH264QpEXT(&a->maxQp, &b->maxQp, onFail);
11803 if (!((a->useMaxFrameSize) == (b->useMaxFrameSize))) {
11804 onFail("a->useMaxFrameSize (Error: Value not equal)");
11805 };
11806 checkEqual_VkVideoEncodeH264FrameSizeEXT(&a->maxFrameSize, &b->maxFrameSize, onFail);
11807 }
11808
11809 #endif
11810 #ifdef VK_EXT_video_encode_h265
checkEqual_VkVideoEncodeH265CapabilitiesEXT(const VkVideoEncodeH265CapabilitiesEXT * a,const VkVideoEncodeH265CapabilitiesEXT * b,OnFailCompareFunc onFail)11811 void checkEqual_VkVideoEncodeH265CapabilitiesEXT(const VkVideoEncodeH265CapabilitiesEXT* a,
11812 const VkVideoEncodeH265CapabilitiesEXT* b,
11813 OnFailCompareFunc onFail) {
11814 if (!((a->sType) == (b->sType))) {
11815 onFail("a->sType (Error: Value not equal)");
11816 };
11817 if (a->pNext) {
11818 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11819 }
11820 if (!((a->flags) == (b->flags))) {
11821 onFail("a->flags (Error: Value not equal)");
11822 };
11823 if (!((a->ctbSizes) == (b->ctbSizes))) {
11824 onFail("a->ctbSizes (Error: Value not equal)");
11825 };
11826 if (!((a->transformBlockSizes) == (b->transformBlockSizes))) {
11827 onFail("a->transformBlockSizes (Error: Value not equal)");
11828 };
11829 if (!((a->maxPPictureL0ReferenceCount) == (b->maxPPictureL0ReferenceCount))) {
11830 onFail("a->maxPPictureL0ReferenceCount (Error: Value not equal)");
11831 };
11832 if (!((a->maxBPictureL0ReferenceCount) == (b->maxBPictureL0ReferenceCount))) {
11833 onFail("a->maxBPictureL0ReferenceCount (Error: Value not equal)");
11834 };
11835 if (!((a->maxL1ReferenceCount) == (b->maxL1ReferenceCount))) {
11836 onFail("a->maxL1ReferenceCount (Error: Value not equal)");
11837 };
11838 if (!((a->maxSubLayersCount) == (b->maxSubLayersCount))) {
11839 onFail("a->maxSubLayersCount (Error: Value not equal)");
11840 };
11841 if (!((a->minLog2MinLumaCodingBlockSizeMinus3) == (b->minLog2MinLumaCodingBlockSizeMinus3))) {
11842 onFail("a->minLog2MinLumaCodingBlockSizeMinus3 (Error: Value not equal)");
11843 };
11844 if (!((a->maxLog2MinLumaCodingBlockSizeMinus3) == (b->maxLog2MinLumaCodingBlockSizeMinus3))) {
11845 onFail("a->maxLog2MinLumaCodingBlockSizeMinus3 (Error: Value not equal)");
11846 };
11847 if (!((a->minLog2MinLumaTransformBlockSizeMinus2) ==
11848 (b->minLog2MinLumaTransformBlockSizeMinus2))) {
11849 onFail("a->minLog2MinLumaTransformBlockSizeMinus2 (Error: Value not equal)");
11850 };
11851 if (!((a->maxLog2MinLumaTransformBlockSizeMinus2) ==
11852 (b->maxLog2MinLumaTransformBlockSizeMinus2))) {
11853 onFail("a->maxLog2MinLumaTransformBlockSizeMinus2 (Error: Value not equal)");
11854 };
11855 if (!((a->minMaxTransformHierarchyDepthInter) == (b->minMaxTransformHierarchyDepthInter))) {
11856 onFail("a->minMaxTransformHierarchyDepthInter (Error: Value not equal)");
11857 };
11858 if (!((a->maxMaxTransformHierarchyDepthInter) == (b->maxMaxTransformHierarchyDepthInter))) {
11859 onFail("a->maxMaxTransformHierarchyDepthInter (Error: Value not equal)");
11860 };
11861 if (!((a->minMaxTransformHierarchyDepthIntra) == (b->minMaxTransformHierarchyDepthIntra))) {
11862 onFail("a->minMaxTransformHierarchyDepthIntra (Error: Value not equal)");
11863 };
11864 if (!((a->maxMaxTransformHierarchyDepthIntra) == (b->maxMaxTransformHierarchyDepthIntra))) {
11865 onFail("a->maxMaxTransformHierarchyDepthIntra (Error: Value not equal)");
11866 };
11867 if (!((a->maxDiffCuQpDeltaDepth) == (b->maxDiffCuQpDeltaDepth))) {
11868 onFail("a->maxDiffCuQpDeltaDepth (Error: Value not equal)");
11869 };
11870 if (!((a->minMaxNumMergeCand) == (b->minMaxNumMergeCand))) {
11871 onFail("a->minMaxNumMergeCand (Error: Value not equal)");
11872 };
11873 if (!((a->maxMaxNumMergeCand) == (b->maxMaxNumMergeCand))) {
11874 onFail("a->maxMaxNumMergeCand (Error: Value not equal)");
11875 };
11876 }
11877
checkEqual_VkVideoEncodeH265SessionParametersAddInfoEXT(const VkVideoEncodeH265SessionParametersAddInfoEXT * a,const VkVideoEncodeH265SessionParametersAddInfoEXT * b,OnFailCompareFunc onFail)11878 void checkEqual_VkVideoEncodeH265SessionParametersAddInfoEXT(
11879 const VkVideoEncodeH265SessionParametersAddInfoEXT* a,
11880 const VkVideoEncodeH265SessionParametersAddInfoEXT* b, OnFailCompareFunc onFail) {
11881 if (!((a->sType) == (b->sType))) {
11882 onFail("a->sType (Error: Value not equal)");
11883 };
11884 if (a->pNext) {
11885 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11886 }
11887 if (!((a->stdVPSCount) == (b->stdVPSCount))) {
11888 onFail("a->stdVPSCount (Error: Value not equal)");
11889 };
11890 if (!((!(a->pStdVPSs) && !(b->pStdVPSs)) || ((a->pStdVPSs) && (b->pStdVPSs)))) {
11891 onFail("a->pStdVPSs (Error: Mismatch in optional field)");
11892 };
11893 if (a->pStdVPSs && b->pStdVPSs) {
11894 if (!((a->stdVPSCount) == (b->stdVPSCount))) {
11895 onFail("a->pStdVPSs (Error: Lengths not equal)");
11896 };
11897 if (!((memcmp(a->pStdVPSs, b->pStdVPSs,
11898 a->stdVPSCount * sizeof(const StdVideoH265VideoParameterSet)) == 0))) {
11899 onFail("a->pStdVPSs (Error: Unequal dyn array)");
11900 };
11901 }
11902 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
11903 onFail("a->stdSPSCount (Error: Value not equal)");
11904 };
11905 if (!((!(a->pStdSPSs) && !(b->pStdSPSs)) || ((a->pStdSPSs) && (b->pStdSPSs)))) {
11906 onFail("a->pStdSPSs (Error: Mismatch in optional field)");
11907 };
11908 if (a->pStdSPSs && b->pStdSPSs) {
11909 if (!((a->stdSPSCount) == (b->stdSPSCount))) {
11910 onFail("a->pStdSPSs (Error: Lengths not equal)");
11911 };
11912 if (!((memcmp(a->pStdSPSs, b->pStdSPSs,
11913 a->stdSPSCount * sizeof(const StdVideoH265SequenceParameterSet)) == 0))) {
11914 onFail("a->pStdSPSs (Error: Unequal dyn array)");
11915 };
11916 }
11917 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
11918 onFail("a->stdPPSCount (Error: Value not equal)");
11919 };
11920 if (!((!(a->pStdPPSs) && !(b->pStdPPSs)) || ((a->pStdPPSs) && (b->pStdPPSs)))) {
11921 onFail("a->pStdPPSs (Error: Mismatch in optional field)");
11922 };
11923 if (a->pStdPPSs && b->pStdPPSs) {
11924 if (!((a->stdPPSCount) == (b->stdPPSCount))) {
11925 onFail("a->pStdPPSs (Error: Lengths not equal)");
11926 };
11927 if (!((memcmp(a->pStdPPSs, b->pStdPPSs,
11928 a->stdPPSCount * sizeof(const StdVideoH265PictureParameterSet)) == 0))) {
11929 onFail("a->pStdPPSs (Error: Unequal dyn array)");
11930 };
11931 }
11932 }
11933
checkEqual_VkVideoEncodeH265SessionParametersCreateInfoEXT(const VkVideoEncodeH265SessionParametersCreateInfoEXT * a,const VkVideoEncodeH265SessionParametersCreateInfoEXT * b,OnFailCompareFunc onFail)11934 void checkEqual_VkVideoEncodeH265SessionParametersCreateInfoEXT(
11935 const VkVideoEncodeH265SessionParametersCreateInfoEXT* a,
11936 const VkVideoEncodeH265SessionParametersCreateInfoEXT* b, OnFailCompareFunc onFail) {
11937 if (!((a->sType) == (b->sType))) {
11938 onFail("a->sType (Error: Value not equal)");
11939 };
11940 if (a->pNext) {
11941 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11942 }
11943 if (!((a->maxStdVPSCount) == (b->maxStdVPSCount))) {
11944 onFail("a->maxStdVPSCount (Error: Value not equal)");
11945 };
11946 if (!((a->maxStdSPSCount) == (b->maxStdSPSCount))) {
11947 onFail("a->maxStdSPSCount (Error: Value not equal)");
11948 };
11949 if (!((a->maxStdPPSCount) == (b->maxStdPPSCount))) {
11950 onFail("a->maxStdPPSCount (Error: Value not equal)");
11951 };
11952 if (!((!(a->pParametersAddInfo) && !(b->pParametersAddInfo)) ||
11953 ((a->pParametersAddInfo) && (b->pParametersAddInfo)))) {
11954 onFail("a->pParametersAddInfo (Error: Mismatch in optional field)");
11955 };
11956 if (a->pParametersAddInfo && b->pParametersAddInfo) {
11957 if ((a->pParametersAddInfo) && (b->pParametersAddInfo)) {
11958 checkEqual_VkVideoEncodeH265SessionParametersAddInfoEXT(a->pParametersAddInfo,
11959 b->pParametersAddInfo, onFail);
11960 }
11961 }
11962 }
11963
checkEqual_VkVideoEncodeH265NaluSliceSegmentInfoEXT(const VkVideoEncodeH265NaluSliceSegmentInfoEXT * a,const VkVideoEncodeH265NaluSliceSegmentInfoEXT * b,OnFailCompareFunc onFail)11964 void checkEqual_VkVideoEncodeH265NaluSliceSegmentInfoEXT(
11965 const VkVideoEncodeH265NaluSliceSegmentInfoEXT* a,
11966 const VkVideoEncodeH265NaluSliceSegmentInfoEXT* b, OnFailCompareFunc onFail) {
11967 if (!((a->sType) == (b->sType))) {
11968 onFail("a->sType (Error: Value not equal)");
11969 };
11970 if (a->pNext) {
11971 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
11972 }
11973 if (!((a->ctbCount) == (b->ctbCount))) {
11974 onFail("a->ctbCount (Error: Value not equal)");
11975 };
11976 if (!((!(a->pStdReferenceFinalLists) && !(b->pStdReferenceFinalLists)) ||
11977 ((a->pStdReferenceFinalLists) && (b->pStdReferenceFinalLists)))) {
11978 onFail("a->pStdReferenceFinalLists (Error: Mismatch in optional field)");
11979 };
11980 if (a->pStdReferenceFinalLists && b->pStdReferenceFinalLists) {
11981 if (!((memcmp(a->pStdReferenceFinalLists, b->pStdReferenceFinalLists,
11982 sizeof(const StdVideoEncodeH265ReferenceListsInfo)) == 0))) {
11983 onFail("a->pStdReferenceFinalLists (Error: Unequal dyn array)");
11984 };
11985 }
11986 if (!((memcmp(a->pStdSliceSegmentHeader, b->pStdSliceSegmentHeader,
11987 sizeof(const StdVideoEncodeH265SliceSegmentHeader)) == 0))) {
11988 onFail("a->pStdSliceSegmentHeader (Error: Unequal dyn array)");
11989 };
11990 }
11991
checkEqual_VkVideoEncodeH265VclFrameInfoEXT(const VkVideoEncodeH265VclFrameInfoEXT * a,const VkVideoEncodeH265VclFrameInfoEXT * b,OnFailCompareFunc onFail)11992 void checkEqual_VkVideoEncodeH265VclFrameInfoEXT(const VkVideoEncodeH265VclFrameInfoEXT* a,
11993 const VkVideoEncodeH265VclFrameInfoEXT* b,
11994 OnFailCompareFunc onFail) {
11995 if (!((a->sType) == (b->sType))) {
11996 onFail("a->sType (Error: Value not equal)");
11997 };
11998 if (a->pNext) {
11999 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12000 }
12001 if (!((!(a->pStdReferenceFinalLists) && !(b->pStdReferenceFinalLists)) ||
12002 ((a->pStdReferenceFinalLists) && (b->pStdReferenceFinalLists)))) {
12003 onFail("a->pStdReferenceFinalLists (Error: Mismatch in optional field)");
12004 };
12005 if (a->pStdReferenceFinalLists && b->pStdReferenceFinalLists) {
12006 if (!((memcmp(a->pStdReferenceFinalLists, b->pStdReferenceFinalLists,
12007 sizeof(const StdVideoEncodeH265ReferenceListsInfo)) == 0))) {
12008 onFail("a->pStdReferenceFinalLists (Error: Unequal dyn array)");
12009 };
12010 }
12011 if (!((a->naluSliceSegmentEntryCount) == (b->naluSliceSegmentEntryCount))) {
12012 onFail("a->naluSliceSegmentEntryCount (Error: Value not equal)");
12013 };
12014 if ((a->pNaluSliceSegmentEntries) && (b->pNaluSliceSegmentEntries)) {
12015 if (!((a->naluSliceSegmentEntryCount) == (b->naluSliceSegmentEntryCount))) {
12016 onFail("a->pNaluSliceSegmentEntries (Error: Lengths not equal)");
12017 };
12018 if ((a->naluSliceSegmentEntryCount) == (b->naluSliceSegmentEntryCount)) {
12019 if (a) {
12020 for (uint32_t i = 0; i < (uint32_t)a->naluSliceSegmentEntryCount; ++i) {
12021 checkEqual_VkVideoEncodeH265NaluSliceSegmentInfoEXT(
12022 a->pNaluSliceSegmentEntries + i, b->pNaluSliceSegmentEntries + i, onFail);
12023 }
12024 }
12025 }
12026 }
12027 if (!((memcmp(a->pStdPictureInfo, b->pStdPictureInfo,
12028 sizeof(const StdVideoEncodeH265PictureInfo)) == 0))) {
12029 onFail("a->pStdPictureInfo (Error: Unequal dyn array)");
12030 };
12031 }
12032
checkEqual_VkVideoEncodeH265DpbSlotInfoEXT(const VkVideoEncodeH265DpbSlotInfoEXT * a,const VkVideoEncodeH265DpbSlotInfoEXT * b,OnFailCompareFunc onFail)12033 void checkEqual_VkVideoEncodeH265DpbSlotInfoEXT(const VkVideoEncodeH265DpbSlotInfoEXT* a,
12034 const VkVideoEncodeH265DpbSlotInfoEXT* b,
12035 OnFailCompareFunc onFail) {
12036 if (!((a->sType) == (b->sType))) {
12037 onFail("a->sType (Error: Value not equal)");
12038 };
12039 if (a->pNext) {
12040 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12041 }
12042 if (!((memcmp(a->pStdReferenceInfo, b->pStdReferenceInfo,
12043 sizeof(const StdVideoEncodeH265ReferenceInfo)) == 0))) {
12044 onFail("a->pStdReferenceInfo (Error: Unequal dyn array)");
12045 };
12046 }
12047
checkEqual_VkVideoEncodeH265ProfileInfoEXT(const VkVideoEncodeH265ProfileInfoEXT * a,const VkVideoEncodeH265ProfileInfoEXT * b,OnFailCompareFunc onFail)12048 void checkEqual_VkVideoEncodeH265ProfileInfoEXT(const VkVideoEncodeH265ProfileInfoEXT* a,
12049 const VkVideoEncodeH265ProfileInfoEXT* b,
12050 OnFailCompareFunc onFail) {
12051 if (!((a->sType) == (b->sType))) {
12052 onFail("a->sType (Error: Value not equal)");
12053 };
12054 if (a->pNext) {
12055 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12056 }
12057 if (!((a->stdProfileIdc) == (b->stdProfileIdc))) {
12058 onFail("a->stdProfileIdc (Error: Value not equal)");
12059 };
12060 }
12061
checkEqual_VkVideoEncodeH265RateControlInfoEXT(const VkVideoEncodeH265RateControlInfoEXT * a,const VkVideoEncodeH265RateControlInfoEXT * b,OnFailCompareFunc onFail)12062 void checkEqual_VkVideoEncodeH265RateControlInfoEXT(const VkVideoEncodeH265RateControlInfoEXT* a,
12063 const VkVideoEncodeH265RateControlInfoEXT* b,
12064 OnFailCompareFunc onFail) {
12065 if (!((a->sType) == (b->sType))) {
12066 onFail("a->sType (Error: Value not equal)");
12067 };
12068 if (a->pNext) {
12069 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12070 }
12071 if (!((a->gopFrameCount) == (b->gopFrameCount))) {
12072 onFail("a->gopFrameCount (Error: Value not equal)");
12073 };
12074 if (!((a->idrPeriod) == (b->idrPeriod))) {
12075 onFail("a->idrPeriod (Error: Value not equal)");
12076 };
12077 if (!((a->consecutiveBFrameCount) == (b->consecutiveBFrameCount))) {
12078 onFail("a->consecutiveBFrameCount (Error: Value not equal)");
12079 };
12080 if (!((a->rateControlStructure) == (b->rateControlStructure))) {
12081 onFail("a->rateControlStructure (Error: Value not equal)");
12082 };
12083 if (!((a->subLayerCount) == (b->subLayerCount))) {
12084 onFail("a->subLayerCount (Error: Value not equal)");
12085 };
12086 }
12087
checkEqual_VkVideoEncodeH265QpEXT(const VkVideoEncodeH265QpEXT * a,const VkVideoEncodeH265QpEXT * b,OnFailCompareFunc onFail)12088 void checkEqual_VkVideoEncodeH265QpEXT(const VkVideoEncodeH265QpEXT* a,
12089 const VkVideoEncodeH265QpEXT* b, OnFailCompareFunc onFail) {
12090 if (!((a->qpI) == (b->qpI))) {
12091 onFail("a->qpI (Error: Value not equal)");
12092 };
12093 if (!((a->qpP) == (b->qpP))) {
12094 onFail("a->qpP (Error: Value not equal)");
12095 };
12096 if (!((a->qpB) == (b->qpB))) {
12097 onFail("a->qpB (Error: Value not equal)");
12098 };
12099 }
12100
checkEqual_VkVideoEncodeH265FrameSizeEXT(const VkVideoEncodeH265FrameSizeEXT * a,const VkVideoEncodeH265FrameSizeEXT * b,OnFailCompareFunc onFail)12101 void checkEqual_VkVideoEncodeH265FrameSizeEXT(const VkVideoEncodeH265FrameSizeEXT* a,
12102 const VkVideoEncodeH265FrameSizeEXT* b,
12103 OnFailCompareFunc onFail) {
12104 if (!((a->frameISize) == (b->frameISize))) {
12105 onFail("a->frameISize (Error: Value not equal)");
12106 };
12107 if (!((a->framePSize) == (b->framePSize))) {
12108 onFail("a->framePSize (Error: Value not equal)");
12109 };
12110 if (!((a->frameBSize) == (b->frameBSize))) {
12111 onFail("a->frameBSize (Error: Value not equal)");
12112 };
12113 }
12114
checkEqual_VkVideoEncodeH265RateControlLayerInfoEXT(const VkVideoEncodeH265RateControlLayerInfoEXT * a,const VkVideoEncodeH265RateControlLayerInfoEXT * b,OnFailCompareFunc onFail)12115 void checkEqual_VkVideoEncodeH265RateControlLayerInfoEXT(
12116 const VkVideoEncodeH265RateControlLayerInfoEXT* a,
12117 const VkVideoEncodeH265RateControlLayerInfoEXT* b, OnFailCompareFunc onFail) {
12118 if (!((a->sType) == (b->sType))) {
12119 onFail("a->sType (Error: Value not equal)");
12120 };
12121 if (a->pNext) {
12122 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12123 }
12124 if (!((a->temporalId) == (b->temporalId))) {
12125 onFail("a->temporalId (Error: Value not equal)");
12126 };
12127 if (!((a->useInitialRcQp) == (b->useInitialRcQp))) {
12128 onFail("a->useInitialRcQp (Error: Value not equal)");
12129 };
12130 checkEqual_VkVideoEncodeH265QpEXT(&a->initialRcQp, &b->initialRcQp, onFail);
12131 if (!((a->useMinQp) == (b->useMinQp))) {
12132 onFail("a->useMinQp (Error: Value not equal)");
12133 };
12134 checkEqual_VkVideoEncodeH265QpEXT(&a->minQp, &b->minQp, onFail);
12135 if (!((a->useMaxQp) == (b->useMaxQp))) {
12136 onFail("a->useMaxQp (Error: Value not equal)");
12137 };
12138 checkEqual_VkVideoEncodeH265QpEXT(&a->maxQp, &b->maxQp, onFail);
12139 if (!((a->useMaxFrameSize) == (b->useMaxFrameSize))) {
12140 onFail("a->useMaxFrameSize (Error: Value not equal)");
12141 };
12142 checkEqual_VkVideoEncodeH265FrameSizeEXT(&a->maxFrameSize, &b->maxFrameSize, onFail);
12143 }
12144
12145 #endif
12146 #ifdef VK_AMD_texture_gather_bias_lod
checkEqual_VkTextureLODGatherFormatPropertiesAMD(const VkTextureLODGatherFormatPropertiesAMD * a,const VkTextureLODGatherFormatPropertiesAMD * b,OnFailCompareFunc onFail)12147 void checkEqual_VkTextureLODGatherFormatPropertiesAMD(
12148 const VkTextureLODGatherFormatPropertiesAMD* a, const VkTextureLODGatherFormatPropertiesAMD* b,
12149 OnFailCompareFunc onFail) {
12150 if (!((a->sType) == (b->sType))) {
12151 onFail("a->sType (Error: Value not equal)");
12152 };
12153 if (a->pNext) {
12154 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12155 }
12156 if (!((a->supportsTextureGatherLODBiasAMD) == (b->supportsTextureGatherLODBiasAMD))) {
12157 onFail("a->supportsTextureGatherLODBiasAMD (Error: Value not equal)");
12158 };
12159 }
12160
12161 #endif
12162 #ifdef VK_AMD_shader_info
checkEqual_VkShaderResourceUsageAMD(const VkShaderResourceUsageAMD * a,const VkShaderResourceUsageAMD * b,OnFailCompareFunc onFail)12163 void checkEqual_VkShaderResourceUsageAMD(const VkShaderResourceUsageAMD* a,
12164 const VkShaderResourceUsageAMD* b,
12165 OnFailCompareFunc onFail) {
12166 if (!((a->numUsedVgprs) == (b->numUsedVgprs))) {
12167 onFail("a->numUsedVgprs (Error: Value not equal)");
12168 };
12169 if (!((a->numUsedSgprs) == (b->numUsedSgprs))) {
12170 onFail("a->numUsedSgprs (Error: Value not equal)");
12171 };
12172 if (!((a->ldsSizePerLocalWorkGroup) == (b->ldsSizePerLocalWorkGroup))) {
12173 onFail("a->ldsSizePerLocalWorkGroup (Error: Value not equal)");
12174 };
12175 if (!((a->ldsUsageSizeInBytes) == (b->ldsUsageSizeInBytes))) {
12176 onFail("a->ldsUsageSizeInBytes (Error: Value not equal)");
12177 };
12178 if (!((a->scratchMemUsageInBytes) == (b->scratchMemUsageInBytes))) {
12179 onFail("a->scratchMemUsageInBytes (Error: Value not equal)");
12180 };
12181 }
12182
checkEqual_VkShaderStatisticsInfoAMD(const VkShaderStatisticsInfoAMD * a,const VkShaderStatisticsInfoAMD * b,OnFailCompareFunc onFail)12183 void checkEqual_VkShaderStatisticsInfoAMD(const VkShaderStatisticsInfoAMD* a,
12184 const VkShaderStatisticsInfoAMD* b,
12185 OnFailCompareFunc onFail) {
12186 if (!((a->shaderStageMask) == (b->shaderStageMask))) {
12187 onFail("a->shaderStageMask (Error: Value not equal)");
12188 };
12189 checkEqual_VkShaderResourceUsageAMD(&a->resourceUsage, &b->resourceUsage, onFail);
12190 if (!((a->numPhysicalVgprs) == (b->numPhysicalVgprs))) {
12191 onFail("a->numPhysicalVgprs (Error: Value not equal)");
12192 };
12193 if (!((a->numPhysicalSgprs) == (b->numPhysicalSgprs))) {
12194 onFail("a->numPhysicalSgprs (Error: Value not equal)");
12195 };
12196 if (!((a->numAvailableVgprs) == (b->numAvailableVgprs))) {
12197 onFail("a->numAvailableVgprs (Error: Value not equal)");
12198 };
12199 if (!((a->numAvailableSgprs) == (b->numAvailableSgprs))) {
12200 onFail("a->numAvailableSgprs (Error: Value not equal)");
12201 };
12202 if (!((memcmp(a->computeWorkGroupSize, b->computeWorkGroupSize, 3 * sizeof(uint32_t)) == 0))) {
12203 onFail("a->computeWorkGroupSize (Error: Unequal static array)");
12204 };
12205 }
12206
12207 #endif
12208 #ifdef VK_AMD_shader_image_load_store_lod
12209 #endif
12210 #ifdef VK_GGP_stream_descriptor_surface
checkEqual_VkStreamDescriptorSurfaceCreateInfoGGP(const VkStreamDescriptorSurfaceCreateInfoGGP * a,const VkStreamDescriptorSurfaceCreateInfoGGP * b,OnFailCompareFunc onFail)12211 void checkEqual_VkStreamDescriptorSurfaceCreateInfoGGP(
12212 const VkStreamDescriptorSurfaceCreateInfoGGP* a,
12213 const VkStreamDescriptorSurfaceCreateInfoGGP* b, OnFailCompareFunc onFail) {
12214 if (!((a->sType) == (b->sType))) {
12215 onFail("a->sType (Error: Value not equal)");
12216 };
12217 if (a->pNext) {
12218 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12219 }
12220 if (!((a->flags) == (b->flags))) {
12221 onFail("a->flags (Error: Value not equal)");
12222 };
12223 if (!((a->streamDescriptor) == (b->streamDescriptor))) {
12224 onFail("a->streamDescriptor (Error: Value not equal)");
12225 };
12226 }
12227
12228 #endif
12229 #ifdef VK_NV_corner_sampled_image
checkEqual_VkPhysicalDeviceCornerSampledImageFeaturesNV(const VkPhysicalDeviceCornerSampledImageFeaturesNV * a,const VkPhysicalDeviceCornerSampledImageFeaturesNV * b,OnFailCompareFunc onFail)12230 void checkEqual_VkPhysicalDeviceCornerSampledImageFeaturesNV(
12231 const VkPhysicalDeviceCornerSampledImageFeaturesNV* a,
12232 const VkPhysicalDeviceCornerSampledImageFeaturesNV* b, OnFailCompareFunc onFail) {
12233 if (!((a->sType) == (b->sType))) {
12234 onFail("a->sType (Error: Value not equal)");
12235 };
12236 if (a->pNext) {
12237 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12238 }
12239 if (!((a->cornerSampledImage) == (b->cornerSampledImage))) {
12240 onFail("a->cornerSampledImage (Error: Value not equal)");
12241 };
12242 }
12243
12244 #endif
12245 #ifdef VK_IMG_format_pvrtc
12246 #endif
12247 #ifdef VK_NV_external_memory_capabilities
checkEqual_VkExternalImageFormatPropertiesNV(const VkExternalImageFormatPropertiesNV * a,const VkExternalImageFormatPropertiesNV * b,OnFailCompareFunc onFail)12248 void checkEqual_VkExternalImageFormatPropertiesNV(const VkExternalImageFormatPropertiesNV* a,
12249 const VkExternalImageFormatPropertiesNV* b,
12250 OnFailCompareFunc onFail) {
12251 checkEqual_VkImageFormatProperties(&a->imageFormatProperties, &b->imageFormatProperties,
12252 onFail);
12253 if (!((a->externalMemoryFeatures) == (b->externalMemoryFeatures))) {
12254 onFail("a->externalMemoryFeatures (Error: Value not equal)");
12255 };
12256 if (!((a->exportFromImportedHandleTypes) == (b->exportFromImportedHandleTypes))) {
12257 onFail("a->exportFromImportedHandleTypes (Error: Value not equal)");
12258 };
12259 if (!((a->compatibleHandleTypes) == (b->compatibleHandleTypes))) {
12260 onFail("a->compatibleHandleTypes (Error: Value not equal)");
12261 };
12262 }
12263
12264 #endif
12265 #ifdef VK_NV_external_memory
checkEqual_VkExternalMemoryImageCreateInfoNV(const VkExternalMemoryImageCreateInfoNV * a,const VkExternalMemoryImageCreateInfoNV * b,OnFailCompareFunc onFail)12266 void checkEqual_VkExternalMemoryImageCreateInfoNV(const VkExternalMemoryImageCreateInfoNV* a,
12267 const VkExternalMemoryImageCreateInfoNV* b,
12268 OnFailCompareFunc onFail) {
12269 if (!((a->sType) == (b->sType))) {
12270 onFail("a->sType (Error: Value not equal)");
12271 };
12272 if (a->pNext) {
12273 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12274 }
12275 if (!((a->handleTypes) == (b->handleTypes))) {
12276 onFail("a->handleTypes (Error: Value not equal)");
12277 };
12278 }
12279
checkEqual_VkExportMemoryAllocateInfoNV(const VkExportMemoryAllocateInfoNV * a,const VkExportMemoryAllocateInfoNV * b,OnFailCompareFunc onFail)12280 void checkEqual_VkExportMemoryAllocateInfoNV(const VkExportMemoryAllocateInfoNV* a,
12281 const VkExportMemoryAllocateInfoNV* b,
12282 OnFailCompareFunc onFail) {
12283 if (!((a->sType) == (b->sType))) {
12284 onFail("a->sType (Error: Value not equal)");
12285 };
12286 if (a->pNext) {
12287 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12288 }
12289 if (!((a->handleTypes) == (b->handleTypes))) {
12290 onFail("a->handleTypes (Error: Value not equal)");
12291 };
12292 }
12293
12294 #endif
12295 #ifdef VK_NV_external_memory_win32
checkEqual_VkImportMemoryWin32HandleInfoNV(const VkImportMemoryWin32HandleInfoNV * a,const VkImportMemoryWin32HandleInfoNV * b,OnFailCompareFunc onFail)12296 void checkEqual_VkImportMemoryWin32HandleInfoNV(const VkImportMemoryWin32HandleInfoNV* a,
12297 const VkImportMemoryWin32HandleInfoNV* b,
12298 OnFailCompareFunc onFail) {
12299 if (!((a->sType) == (b->sType))) {
12300 onFail("a->sType (Error: Value not equal)");
12301 };
12302 if (a->pNext) {
12303 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12304 }
12305 if (!((a->handleType) == (b->handleType))) {
12306 onFail("a->handleType (Error: Value not equal)");
12307 };
12308 if (!((a->handle) == (b->handle))) {
12309 onFail("a->handle (Error: Value not equal)");
12310 };
12311 }
12312
checkEqual_VkExportMemoryWin32HandleInfoNV(const VkExportMemoryWin32HandleInfoNV * a,const VkExportMemoryWin32HandleInfoNV * b,OnFailCompareFunc onFail)12313 void checkEqual_VkExportMemoryWin32HandleInfoNV(const VkExportMemoryWin32HandleInfoNV* a,
12314 const VkExportMemoryWin32HandleInfoNV* b,
12315 OnFailCompareFunc onFail) {
12316 if (!((a->sType) == (b->sType))) {
12317 onFail("a->sType (Error: Value not equal)");
12318 };
12319 if (a->pNext) {
12320 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12321 }
12322 if (!((!(a->pAttributes) && !(b->pAttributes)) || ((a->pAttributes) && (b->pAttributes)))) {
12323 onFail("a->pAttributes (Error: Mismatch in optional field)");
12324 };
12325 if (a->pAttributes && b->pAttributes) {
12326 if (!((memcmp(a->pAttributes, b->pAttributes, sizeof(const SECURITY_ATTRIBUTES)) == 0))) {
12327 onFail("a->pAttributes (Error: Unequal dyn array)");
12328 };
12329 }
12330 if (!((a->dwAccess) == (b->dwAccess))) {
12331 onFail("a->dwAccess (Error: Value not equal)");
12332 };
12333 }
12334
12335 #endif
12336 #ifdef VK_NV_win32_keyed_mutex
checkEqual_VkWin32KeyedMutexAcquireReleaseInfoNV(const VkWin32KeyedMutexAcquireReleaseInfoNV * a,const VkWin32KeyedMutexAcquireReleaseInfoNV * b,OnFailCompareFunc onFail)12337 void checkEqual_VkWin32KeyedMutexAcquireReleaseInfoNV(
12338 const VkWin32KeyedMutexAcquireReleaseInfoNV* a, const VkWin32KeyedMutexAcquireReleaseInfoNV* b,
12339 OnFailCompareFunc onFail) {
12340 if (!((a->sType) == (b->sType))) {
12341 onFail("a->sType (Error: Value not equal)");
12342 };
12343 if (a->pNext) {
12344 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12345 }
12346 if (!((a->acquireCount) == (b->acquireCount))) {
12347 onFail("a->acquireCount (Error: Value not equal)");
12348 };
12349 if (!((a->acquireCount) == (b->acquireCount))) {
12350 onFail("a->pAcquireSyncs (Error: Lengths not equal)");
12351 };
12352 if (!((memcmp(a->pAcquireSyncs, b->pAcquireSyncs,
12353 a->acquireCount * sizeof(const VkDeviceMemory)) == 0))) {
12354 onFail("a->pAcquireSyncs (Error: Unequal dyn array)");
12355 };
12356 if (!((a->acquireCount) == (b->acquireCount))) {
12357 onFail("a->pAcquireKeys (Error: Lengths not equal)");
12358 };
12359 if (!((memcmp(a->pAcquireKeys, b->pAcquireKeys, a->acquireCount * sizeof(const uint64_t)) ==
12360 0))) {
12361 onFail("a->pAcquireKeys (Error: Unequal dyn array)");
12362 };
12363 if (!((a->acquireCount) == (b->acquireCount))) {
12364 onFail("a->pAcquireTimeoutMilliseconds (Error: Lengths not equal)");
12365 };
12366 if (!((memcmp(a->pAcquireTimeoutMilliseconds, b->pAcquireTimeoutMilliseconds,
12367 a->acquireCount * sizeof(const uint32_t)) == 0))) {
12368 onFail("a->pAcquireTimeoutMilliseconds (Error: Unequal dyn array)");
12369 };
12370 if (!((a->releaseCount) == (b->releaseCount))) {
12371 onFail("a->releaseCount (Error: Value not equal)");
12372 };
12373 if (!((a->releaseCount) == (b->releaseCount))) {
12374 onFail("a->pReleaseSyncs (Error: Lengths not equal)");
12375 };
12376 if (!((memcmp(a->pReleaseSyncs, b->pReleaseSyncs,
12377 a->releaseCount * sizeof(const VkDeviceMemory)) == 0))) {
12378 onFail("a->pReleaseSyncs (Error: Unequal dyn array)");
12379 };
12380 if (!((a->releaseCount) == (b->releaseCount))) {
12381 onFail("a->pReleaseKeys (Error: Lengths not equal)");
12382 };
12383 if (!((memcmp(a->pReleaseKeys, b->pReleaseKeys, a->releaseCount * sizeof(const uint64_t)) ==
12384 0))) {
12385 onFail("a->pReleaseKeys (Error: Unequal dyn array)");
12386 };
12387 }
12388
12389 #endif
12390 #ifdef VK_EXT_validation_flags
checkEqual_VkValidationFlagsEXT(const VkValidationFlagsEXT * a,const VkValidationFlagsEXT * b,OnFailCompareFunc onFail)12391 void checkEqual_VkValidationFlagsEXT(const VkValidationFlagsEXT* a, const VkValidationFlagsEXT* b,
12392 OnFailCompareFunc onFail) {
12393 if (!((a->sType) == (b->sType))) {
12394 onFail("a->sType (Error: Value not equal)");
12395 };
12396 if (a->pNext) {
12397 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12398 }
12399 if (!((a->disabledValidationCheckCount) == (b->disabledValidationCheckCount))) {
12400 onFail("a->disabledValidationCheckCount (Error: Value not equal)");
12401 };
12402 if (!((a->disabledValidationCheckCount) == (b->disabledValidationCheckCount))) {
12403 onFail("a->pDisabledValidationChecks (Error: Lengths not equal)");
12404 };
12405 if (!((memcmp(a->pDisabledValidationChecks, b->pDisabledValidationChecks,
12406 a->disabledValidationCheckCount * sizeof(const VkValidationCheckEXT)) == 0))) {
12407 onFail("a->pDisabledValidationChecks (Error: Unequal dyn array)");
12408 };
12409 }
12410
12411 #endif
12412 #ifdef VK_NN_vi_surface
checkEqual_VkViSurfaceCreateInfoNN(const VkViSurfaceCreateInfoNN * a,const VkViSurfaceCreateInfoNN * b,OnFailCompareFunc onFail)12413 void checkEqual_VkViSurfaceCreateInfoNN(const VkViSurfaceCreateInfoNN* a,
12414 const VkViSurfaceCreateInfoNN* b,
12415 OnFailCompareFunc onFail) {
12416 if (!((a->sType) == (b->sType))) {
12417 onFail("a->sType (Error: Value not equal)");
12418 };
12419 if (a->pNext) {
12420 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12421 }
12422 if (!((a->flags) == (b->flags))) {
12423 onFail("a->flags (Error: Value not equal)");
12424 };
12425 if (!((!(a->window) && !(b->window)) || ((a->window) && (b->window)))) {
12426 onFail("a->window (Error: Mismatch in optional field)");
12427 };
12428 }
12429
12430 #endif
12431 #ifdef VK_EXT_shader_subgroup_ballot
12432 #endif
12433 #ifdef VK_EXT_shader_subgroup_vote
12434 #endif
12435 #ifdef VK_EXT_texture_compression_astc_hdr
12436 #endif
12437 #ifdef VK_EXT_astc_decode_mode
checkEqual_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT * a,const VkImageViewASTCDecodeModeEXT * b,OnFailCompareFunc onFail)12438 void checkEqual_VkImageViewASTCDecodeModeEXT(const VkImageViewASTCDecodeModeEXT* a,
12439 const VkImageViewASTCDecodeModeEXT* b,
12440 OnFailCompareFunc onFail) {
12441 if (!((a->sType) == (b->sType))) {
12442 onFail("a->sType (Error: Value not equal)");
12443 };
12444 if (a->pNext) {
12445 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12446 }
12447 if (!((a->decodeMode) == (b->decodeMode))) {
12448 onFail("a->decodeMode (Error: Value not equal)");
12449 };
12450 }
12451
checkEqual_VkPhysicalDeviceASTCDecodeFeaturesEXT(const VkPhysicalDeviceASTCDecodeFeaturesEXT * a,const VkPhysicalDeviceASTCDecodeFeaturesEXT * b,OnFailCompareFunc onFail)12452 void checkEqual_VkPhysicalDeviceASTCDecodeFeaturesEXT(
12453 const VkPhysicalDeviceASTCDecodeFeaturesEXT* a, const VkPhysicalDeviceASTCDecodeFeaturesEXT* b,
12454 OnFailCompareFunc onFail) {
12455 if (!((a->sType) == (b->sType))) {
12456 onFail("a->sType (Error: Value not equal)");
12457 };
12458 if (a->pNext) {
12459 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12460 }
12461 if (!((a->decodeModeSharedExponent) == (b->decodeModeSharedExponent))) {
12462 onFail("a->decodeModeSharedExponent (Error: Value not equal)");
12463 };
12464 }
12465
12466 #endif
12467 #ifdef VK_EXT_pipeline_robustness
checkEqual_VkPhysicalDevicePipelineRobustnessFeaturesEXT(const VkPhysicalDevicePipelineRobustnessFeaturesEXT * a,const VkPhysicalDevicePipelineRobustnessFeaturesEXT * b,OnFailCompareFunc onFail)12468 void checkEqual_VkPhysicalDevicePipelineRobustnessFeaturesEXT(
12469 const VkPhysicalDevicePipelineRobustnessFeaturesEXT* a,
12470 const VkPhysicalDevicePipelineRobustnessFeaturesEXT* b, OnFailCompareFunc onFail) {
12471 if (!((a->sType) == (b->sType))) {
12472 onFail("a->sType (Error: Value not equal)");
12473 };
12474 if (a->pNext) {
12475 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12476 }
12477 if (!((a->pipelineRobustness) == (b->pipelineRobustness))) {
12478 onFail("a->pipelineRobustness (Error: Value not equal)");
12479 };
12480 }
12481
checkEqual_VkPhysicalDevicePipelineRobustnessPropertiesEXT(const VkPhysicalDevicePipelineRobustnessPropertiesEXT * a,const VkPhysicalDevicePipelineRobustnessPropertiesEXT * b,OnFailCompareFunc onFail)12482 void checkEqual_VkPhysicalDevicePipelineRobustnessPropertiesEXT(
12483 const VkPhysicalDevicePipelineRobustnessPropertiesEXT* a,
12484 const VkPhysicalDevicePipelineRobustnessPropertiesEXT* b, OnFailCompareFunc onFail) {
12485 if (!((a->sType) == (b->sType))) {
12486 onFail("a->sType (Error: Value not equal)");
12487 };
12488 if (a->pNext) {
12489 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12490 }
12491 if (!((a->defaultRobustnessStorageBuffers) == (b->defaultRobustnessStorageBuffers))) {
12492 onFail("a->defaultRobustnessStorageBuffers (Error: Value not equal)");
12493 };
12494 if (!((a->defaultRobustnessUniformBuffers) == (b->defaultRobustnessUniformBuffers))) {
12495 onFail("a->defaultRobustnessUniformBuffers (Error: Value not equal)");
12496 };
12497 if (!((a->defaultRobustnessVertexInputs) == (b->defaultRobustnessVertexInputs))) {
12498 onFail("a->defaultRobustnessVertexInputs (Error: Value not equal)");
12499 };
12500 if (!((a->defaultRobustnessImages) == (b->defaultRobustnessImages))) {
12501 onFail("a->defaultRobustnessImages (Error: Value not equal)");
12502 };
12503 }
12504
checkEqual_VkPipelineRobustnessCreateInfoEXT(const VkPipelineRobustnessCreateInfoEXT * a,const VkPipelineRobustnessCreateInfoEXT * b,OnFailCompareFunc onFail)12505 void checkEqual_VkPipelineRobustnessCreateInfoEXT(const VkPipelineRobustnessCreateInfoEXT* a,
12506 const VkPipelineRobustnessCreateInfoEXT* b,
12507 OnFailCompareFunc onFail) {
12508 if (!((a->sType) == (b->sType))) {
12509 onFail("a->sType (Error: Value not equal)");
12510 };
12511 if (a->pNext) {
12512 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12513 }
12514 if (!((a->storageBuffers) == (b->storageBuffers))) {
12515 onFail("a->storageBuffers (Error: Value not equal)");
12516 };
12517 if (!((a->uniformBuffers) == (b->uniformBuffers))) {
12518 onFail("a->uniformBuffers (Error: Value not equal)");
12519 };
12520 if (!((a->vertexInputs) == (b->vertexInputs))) {
12521 onFail("a->vertexInputs (Error: Value not equal)");
12522 };
12523 if (!((a->images) == (b->images))) {
12524 onFail("a->images (Error: Value not equal)");
12525 };
12526 }
12527
12528 #endif
12529 #ifdef VK_EXT_conditional_rendering
checkEqual_VkConditionalRenderingBeginInfoEXT(const VkConditionalRenderingBeginInfoEXT * a,const VkConditionalRenderingBeginInfoEXT * b,OnFailCompareFunc onFail)12530 void checkEqual_VkConditionalRenderingBeginInfoEXT(const VkConditionalRenderingBeginInfoEXT* a,
12531 const VkConditionalRenderingBeginInfoEXT* b,
12532 OnFailCompareFunc onFail) {
12533 if (!((a->sType) == (b->sType))) {
12534 onFail("a->sType (Error: Value not equal)");
12535 };
12536 if (a->pNext) {
12537 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12538 }
12539 if (!((a->buffer) == (b->buffer))) {
12540 onFail("a->buffer (Error: Value not equal)");
12541 };
12542 if (!((a->offset) == (b->offset))) {
12543 onFail("a->offset (Error: Value not equal)");
12544 };
12545 if (!((a->flags) == (b->flags))) {
12546 onFail("a->flags (Error: Value not equal)");
12547 };
12548 }
12549
checkEqual_VkPhysicalDeviceConditionalRenderingFeaturesEXT(const VkPhysicalDeviceConditionalRenderingFeaturesEXT * a,const VkPhysicalDeviceConditionalRenderingFeaturesEXT * b,OnFailCompareFunc onFail)12550 void checkEqual_VkPhysicalDeviceConditionalRenderingFeaturesEXT(
12551 const VkPhysicalDeviceConditionalRenderingFeaturesEXT* a,
12552 const VkPhysicalDeviceConditionalRenderingFeaturesEXT* b, OnFailCompareFunc onFail) {
12553 if (!((a->sType) == (b->sType))) {
12554 onFail("a->sType (Error: Value not equal)");
12555 };
12556 if (a->pNext) {
12557 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12558 }
12559 if (!((a->conditionalRendering) == (b->conditionalRendering))) {
12560 onFail("a->conditionalRendering (Error: Value not equal)");
12561 };
12562 if (!((a->inheritedConditionalRendering) == (b->inheritedConditionalRendering))) {
12563 onFail("a->inheritedConditionalRendering (Error: Value not equal)");
12564 };
12565 }
12566
checkEqual_VkCommandBufferInheritanceConditionalRenderingInfoEXT(const VkCommandBufferInheritanceConditionalRenderingInfoEXT * a,const VkCommandBufferInheritanceConditionalRenderingInfoEXT * b,OnFailCompareFunc onFail)12567 void checkEqual_VkCommandBufferInheritanceConditionalRenderingInfoEXT(
12568 const VkCommandBufferInheritanceConditionalRenderingInfoEXT* a,
12569 const VkCommandBufferInheritanceConditionalRenderingInfoEXT* b, OnFailCompareFunc onFail) {
12570 if (!((a->sType) == (b->sType))) {
12571 onFail("a->sType (Error: Value not equal)");
12572 };
12573 if (a->pNext) {
12574 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12575 }
12576 if (!((a->conditionalRenderingEnable) == (b->conditionalRenderingEnable))) {
12577 onFail("a->conditionalRenderingEnable (Error: Value not equal)");
12578 };
12579 }
12580
12581 #endif
12582 #ifdef VK_NV_clip_space_w_scaling
checkEqual_VkViewportWScalingNV(const VkViewportWScalingNV * a,const VkViewportWScalingNV * b,OnFailCompareFunc onFail)12583 void checkEqual_VkViewportWScalingNV(const VkViewportWScalingNV* a, const VkViewportWScalingNV* b,
12584 OnFailCompareFunc onFail) {
12585 if (!((a->xcoeff) == (b->xcoeff))) {
12586 onFail("a->xcoeff (Error: Value not equal)");
12587 };
12588 if (!((a->ycoeff) == (b->ycoeff))) {
12589 onFail("a->ycoeff (Error: Value not equal)");
12590 };
12591 }
12592
checkEqual_VkPipelineViewportWScalingStateCreateInfoNV(const VkPipelineViewportWScalingStateCreateInfoNV * a,const VkPipelineViewportWScalingStateCreateInfoNV * b,OnFailCompareFunc onFail)12593 void checkEqual_VkPipelineViewportWScalingStateCreateInfoNV(
12594 const VkPipelineViewportWScalingStateCreateInfoNV* a,
12595 const VkPipelineViewportWScalingStateCreateInfoNV* b, OnFailCompareFunc onFail) {
12596 if (!((a->sType) == (b->sType))) {
12597 onFail("a->sType (Error: Value not equal)");
12598 };
12599 if (a->pNext) {
12600 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12601 }
12602 if (!((a->viewportWScalingEnable) == (b->viewportWScalingEnable))) {
12603 onFail("a->viewportWScalingEnable (Error: Value not equal)");
12604 };
12605 if (!((a->viewportCount) == (b->viewportCount))) {
12606 onFail("a->viewportCount (Error: Value not equal)");
12607 };
12608 if (!((!(a->pViewportWScalings) && !(b->pViewportWScalings)) ||
12609 ((a->pViewportWScalings) && (b->pViewportWScalings)))) {
12610 onFail("a->pViewportWScalings (Error: Mismatch in optional field)");
12611 };
12612 if (a->pViewportWScalings && b->pViewportWScalings) {
12613 if ((a->pViewportWScalings) && (b->pViewportWScalings)) {
12614 if (!((a->viewportCount) == (b->viewportCount))) {
12615 onFail("a->pViewportWScalings (Error: Lengths not equal)");
12616 };
12617 if ((a->viewportCount) == (b->viewportCount)) {
12618 if (a) {
12619 for (uint32_t i = 0; i < (uint32_t)a->viewportCount; ++i) {
12620 checkEqual_VkViewportWScalingNV(a->pViewportWScalings + i,
12621 b->pViewportWScalings + i, onFail);
12622 }
12623 }
12624 }
12625 }
12626 }
12627 }
12628
12629 #endif
12630 #ifdef VK_EXT_direct_mode_display
12631 #endif
12632 #ifdef VK_EXT_acquire_xlib_display
12633 #endif
12634 #ifdef VK_EXT_display_surface_counter
checkEqual_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT * a,const VkSurfaceCapabilities2EXT * b,OnFailCompareFunc onFail)12635 void checkEqual_VkSurfaceCapabilities2EXT(const VkSurfaceCapabilities2EXT* a,
12636 const VkSurfaceCapabilities2EXT* b,
12637 OnFailCompareFunc onFail) {
12638 if (!((a->sType) == (b->sType))) {
12639 onFail("a->sType (Error: Value not equal)");
12640 };
12641 if (a->pNext) {
12642 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12643 }
12644 if (!((a->minImageCount) == (b->minImageCount))) {
12645 onFail("a->minImageCount (Error: Value not equal)");
12646 };
12647 if (!((a->maxImageCount) == (b->maxImageCount))) {
12648 onFail("a->maxImageCount (Error: Value not equal)");
12649 };
12650 checkEqual_VkExtent2D(&a->currentExtent, &b->currentExtent, onFail);
12651 checkEqual_VkExtent2D(&a->minImageExtent, &b->minImageExtent, onFail);
12652 checkEqual_VkExtent2D(&a->maxImageExtent, &b->maxImageExtent, onFail);
12653 if (!((a->maxImageArrayLayers) == (b->maxImageArrayLayers))) {
12654 onFail("a->maxImageArrayLayers (Error: Value not equal)");
12655 };
12656 if (!((a->supportedTransforms) == (b->supportedTransforms))) {
12657 onFail("a->supportedTransforms (Error: Value not equal)");
12658 };
12659 if (!((a->currentTransform) == (b->currentTransform))) {
12660 onFail("a->currentTransform (Error: Value not equal)");
12661 };
12662 if (!((a->supportedCompositeAlpha) == (b->supportedCompositeAlpha))) {
12663 onFail("a->supportedCompositeAlpha (Error: Value not equal)");
12664 };
12665 if (!((a->supportedUsageFlags) == (b->supportedUsageFlags))) {
12666 onFail("a->supportedUsageFlags (Error: Value not equal)");
12667 };
12668 if (!((a->supportedSurfaceCounters) == (b->supportedSurfaceCounters))) {
12669 onFail("a->supportedSurfaceCounters (Error: Value not equal)");
12670 };
12671 }
12672
12673 #endif
12674 #ifdef VK_EXT_display_control
checkEqual_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT * a,const VkDisplayPowerInfoEXT * b,OnFailCompareFunc onFail)12675 void checkEqual_VkDisplayPowerInfoEXT(const VkDisplayPowerInfoEXT* a,
12676 const VkDisplayPowerInfoEXT* b, OnFailCompareFunc onFail) {
12677 if (!((a->sType) == (b->sType))) {
12678 onFail("a->sType (Error: Value not equal)");
12679 };
12680 if (a->pNext) {
12681 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12682 }
12683 if (!((a->powerState) == (b->powerState))) {
12684 onFail("a->powerState (Error: Value not equal)");
12685 };
12686 }
12687
checkEqual_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT * a,const VkDeviceEventInfoEXT * b,OnFailCompareFunc onFail)12688 void checkEqual_VkDeviceEventInfoEXT(const VkDeviceEventInfoEXT* a, const VkDeviceEventInfoEXT* b,
12689 OnFailCompareFunc onFail) {
12690 if (!((a->sType) == (b->sType))) {
12691 onFail("a->sType (Error: Value not equal)");
12692 };
12693 if (a->pNext) {
12694 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12695 }
12696 if (!((a->deviceEvent) == (b->deviceEvent))) {
12697 onFail("a->deviceEvent (Error: Value not equal)");
12698 };
12699 }
12700
checkEqual_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT * a,const VkDisplayEventInfoEXT * b,OnFailCompareFunc onFail)12701 void checkEqual_VkDisplayEventInfoEXT(const VkDisplayEventInfoEXT* a,
12702 const VkDisplayEventInfoEXT* b, OnFailCompareFunc onFail) {
12703 if (!((a->sType) == (b->sType))) {
12704 onFail("a->sType (Error: Value not equal)");
12705 };
12706 if (a->pNext) {
12707 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12708 }
12709 if (!((a->displayEvent) == (b->displayEvent))) {
12710 onFail("a->displayEvent (Error: Value not equal)");
12711 };
12712 }
12713
checkEqual_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT * a,const VkSwapchainCounterCreateInfoEXT * b,OnFailCompareFunc onFail)12714 void checkEqual_VkSwapchainCounterCreateInfoEXT(const VkSwapchainCounterCreateInfoEXT* a,
12715 const VkSwapchainCounterCreateInfoEXT* b,
12716 OnFailCompareFunc onFail) {
12717 if (!((a->sType) == (b->sType))) {
12718 onFail("a->sType (Error: Value not equal)");
12719 };
12720 if (a->pNext) {
12721 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12722 }
12723 if (!((a->surfaceCounters) == (b->surfaceCounters))) {
12724 onFail("a->surfaceCounters (Error: Value not equal)");
12725 };
12726 }
12727
12728 #endif
12729 #ifdef VK_GOOGLE_display_timing
checkEqual_VkRefreshCycleDurationGOOGLE(const VkRefreshCycleDurationGOOGLE * a,const VkRefreshCycleDurationGOOGLE * b,OnFailCompareFunc onFail)12730 void checkEqual_VkRefreshCycleDurationGOOGLE(const VkRefreshCycleDurationGOOGLE* a,
12731 const VkRefreshCycleDurationGOOGLE* b,
12732 OnFailCompareFunc onFail) {
12733 if (!((a->refreshDuration) == (b->refreshDuration))) {
12734 onFail("a->refreshDuration (Error: Value not equal)");
12735 };
12736 }
12737
checkEqual_VkPastPresentationTimingGOOGLE(const VkPastPresentationTimingGOOGLE * a,const VkPastPresentationTimingGOOGLE * b,OnFailCompareFunc onFail)12738 void checkEqual_VkPastPresentationTimingGOOGLE(const VkPastPresentationTimingGOOGLE* a,
12739 const VkPastPresentationTimingGOOGLE* b,
12740 OnFailCompareFunc onFail) {
12741 if (!((a->presentID) == (b->presentID))) {
12742 onFail("a->presentID (Error: Value not equal)");
12743 };
12744 if (!((a->desiredPresentTime) == (b->desiredPresentTime))) {
12745 onFail("a->desiredPresentTime (Error: Value not equal)");
12746 };
12747 if (!((a->actualPresentTime) == (b->actualPresentTime))) {
12748 onFail("a->actualPresentTime (Error: Value not equal)");
12749 };
12750 if (!((a->earliestPresentTime) == (b->earliestPresentTime))) {
12751 onFail("a->earliestPresentTime (Error: Value not equal)");
12752 };
12753 if (!((a->presentMargin) == (b->presentMargin))) {
12754 onFail("a->presentMargin (Error: Value not equal)");
12755 };
12756 }
12757
checkEqual_VkPresentTimeGOOGLE(const VkPresentTimeGOOGLE * a,const VkPresentTimeGOOGLE * b,OnFailCompareFunc onFail)12758 void checkEqual_VkPresentTimeGOOGLE(const VkPresentTimeGOOGLE* a, const VkPresentTimeGOOGLE* b,
12759 OnFailCompareFunc onFail) {
12760 if (!((a->presentID) == (b->presentID))) {
12761 onFail("a->presentID (Error: Value not equal)");
12762 };
12763 if (!((a->desiredPresentTime) == (b->desiredPresentTime))) {
12764 onFail("a->desiredPresentTime (Error: Value not equal)");
12765 };
12766 }
12767
checkEqual_VkPresentTimesInfoGOOGLE(const VkPresentTimesInfoGOOGLE * a,const VkPresentTimesInfoGOOGLE * b,OnFailCompareFunc onFail)12768 void checkEqual_VkPresentTimesInfoGOOGLE(const VkPresentTimesInfoGOOGLE* a,
12769 const VkPresentTimesInfoGOOGLE* b,
12770 OnFailCompareFunc onFail) {
12771 if (!((a->sType) == (b->sType))) {
12772 onFail("a->sType (Error: Value not equal)");
12773 };
12774 if (a->pNext) {
12775 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12776 }
12777 if (!((a->swapchainCount) == (b->swapchainCount))) {
12778 onFail("a->swapchainCount (Error: Value not equal)");
12779 };
12780 if (!((!(a->pTimes) && !(b->pTimes)) || ((a->pTimes) && (b->pTimes)))) {
12781 onFail("a->pTimes (Error: Mismatch in optional field)");
12782 };
12783 if (a->pTimes && b->pTimes) {
12784 if ((a->pTimes) && (b->pTimes)) {
12785 if (!((a->swapchainCount) == (b->swapchainCount))) {
12786 onFail("a->pTimes (Error: Lengths not equal)");
12787 };
12788 if ((a->swapchainCount) == (b->swapchainCount)) {
12789 if (a) {
12790 for (uint32_t i = 0; i < (uint32_t)a->swapchainCount; ++i) {
12791 checkEqual_VkPresentTimeGOOGLE(a->pTimes + i, b->pTimes + i, onFail);
12792 }
12793 }
12794 }
12795 }
12796 }
12797 }
12798
12799 #endif
12800 #ifdef VK_NV_sample_mask_override_coverage
12801 #endif
12802 #ifdef VK_NV_geometry_shader_passthrough
12803 #endif
12804 #ifdef VK_NV_viewport_array2
12805 #endif
12806 #ifdef VK_NVX_multiview_per_view_attributes
checkEqual_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX * a,const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX * b,OnFailCompareFunc onFail)12807 void checkEqual_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
12808 const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* a,
12809 const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* b, OnFailCompareFunc onFail) {
12810 if (!((a->sType) == (b->sType))) {
12811 onFail("a->sType (Error: Value not equal)");
12812 };
12813 if (a->pNext) {
12814 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12815 }
12816 if (!((a->perViewPositionAllComponents) == (b->perViewPositionAllComponents))) {
12817 onFail("a->perViewPositionAllComponents (Error: Value not equal)");
12818 };
12819 }
12820
12821 #endif
12822 #ifdef VK_NV_viewport_swizzle
checkEqual_VkViewportSwizzleNV(const VkViewportSwizzleNV * a,const VkViewportSwizzleNV * b,OnFailCompareFunc onFail)12823 void checkEqual_VkViewportSwizzleNV(const VkViewportSwizzleNV* a, const VkViewportSwizzleNV* b,
12824 OnFailCompareFunc onFail) {
12825 if (!((a->x) == (b->x))) {
12826 onFail("a->x (Error: Value not equal)");
12827 };
12828 if (!((a->y) == (b->y))) {
12829 onFail("a->y (Error: Value not equal)");
12830 };
12831 if (!((a->z) == (b->z))) {
12832 onFail("a->z (Error: Value not equal)");
12833 };
12834 if (!((a->w) == (b->w))) {
12835 onFail("a->w (Error: Value not equal)");
12836 };
12837 }
12838
checkEqual_VkPipelineViewportSwizzleStateCreateInfoNV(const VkPipelineViewportSwizzleStateCreateInfoNV * a,const VkPipelineViewportSwizzleStateCreateInfoNV * b,OnFailCompareFunc onFail)12839 void checkEqual_VkPipelineViewportSwizzleStateCreateInfoNV(
12840 const VkPipelineViewportSwizzleStateCreateInfoNV* a,
12841 const VkPipelineViewportSwizzleStateCreateInfoNV* b, OnFailCompareFunc onFail) {
12842 if (!((a->sType) == (b->sType))) {
12843 onFail("a->sType (Error: Value not equal)");
12844 };
12845 if (a->pNext) {
12846 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12847 }
12848 if (!((a->flags) == (b->flags))) {
12849 onFail("a->flags (Error: Value not equal)");
12850 };
12851 if (!((a->viewportCount) == (b->viewportCount))) {
12852 onFail("a->viewportCount (Error: Value not equal)");
12853 };
12854 if ((a->pViewportSwizzles) && (b->pViewportSwizzles)) {
12855 if (!((a->viewportCount) == (b->viewportCount))) {
12856 onFail("a->pViewportSwizzles (Error: Lengths not equal)");
12857 };
12858 if ((a->viewportCount) == (b->viewportCount)) {
12859 if (a) {
12860 for (uint32_t i = 0; i < (uint32_t)a->viewportCount; ++i) {
12861 checkEqual_VkViewportSwizzleNV(a->pViewportSwizzles + i,
12862 b->pViewportSwizzles + i, onFail);
12863 }
12864 }
12865 }
12866 }
12867 }
12868
12869 #endif
12870 #ifdef VK_EXT_discard_rectangles
checkEqual_VkPhysicalDeviceDiscardRectanglePropertiesEXT(const VkPhysicalDeviceDiscardRectanglePropertiesEXT * a,const VkPhysicalDeviceDiscardRectanglePropertiesEXT * b,OnFailCompareFunc onFail)12871 void checkEqual_VkPhysicalDeviceDiscardRectanglePropertiesEXT(
12872 const VkPhysicalDeviceDiscardRectanglePropertiesEXT* a,
12873 const VkPhysicalDeviceDiscardRectanglePropertiesEXT* b, OnFailCompareFunc onFail) {
12874 if (!((a->sType) == (b->sType))) {
12875 onFail("a->sType (Error: Value not equal)");
12876 };
12877 if (a->pNext) {
12878 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12879 }
12880 if (!((a->maxDiscardRectangles) == (b->maxDiscardRectangles))) {
12881 onFail("a->maxDiscardRectangles (Error: Value not equal)");
12882 };
12883 }
12884
checkEqual_VkPipelineDiscardRectangleStateCreateInfoEXT(const VkPipelineDiscardRectangleStateCreateInfoEXT * a,const VkPipelineDiscardRectangleStateCreateInfoEXT * b,OnFailCompareFunc onFail)12885 void checkEqual_VkPipelineDiscardRectangleStateCreateInfoEXT(
12886 const VkPipelineDiscardRectangleStateCreateInfoEXT* a,
12887 const VkPipelineDiscardRectangleStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
12888 if (!((a->sType) == (b->sType))) {
12889 onFail("a->sType (Error: Value not equal)");
12890 };
12891 if (a->pNext) {
12892 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12893 }
12894 if (!((a->flags) == (b->flags))) {
12895 onFail("a->flags (Error: Value not equal)");
12896 };
12897 if (!((a->discardRectangleMode) == (b->discardRectangleMode))) {
12898 onFail("a->discardRectangleMode (Error: Value not equal)");
12899 };
12900 if (!((a->discardRectangleCount) == (b->discardRectangleCount))) {
12901 onFail("a->discardRectangleCount (Error: Value not equal)");
12902 };
12903 if (!((!(a->pDiscardRectangles) && !(b->pDiscardRectangles)) ||
12904 ((a->pDiscardRectangles) && (b->pDiscardRectangles)))) {
12905 onFail("a->pDiscardRectangles (Error: Mismatch in optional field)");
12906 };
12907 if (a->pDiscardRectangles && b->pDiscardRectangles) {
12908 if ((a->pDiscardRectangles) && (b->pDiscardRectangles)) {
12909 if (!((a->discardRectangleCount) == (b->discardRectangleCount))) {
12910 onFail("a->pDiscardRectangles (Error: Lengths not equal)");
12911 };
12912 if ((a->discardRectangleCount) == (b->discardRectangleCount)) {
12913 if (a) {
12914 for (uint32_t i = 0; i < (uint32_t)a->discardRectangleCount; ++i) {
12915 checkEqual_VkRect2D(a->pDiscardRectangles + i, b->pDiscardRectangles + i,
12916 onFail);
12917 }
12918 }
12919 }
12920 }
12921 }
12922 }
12923
12924 #endif
12925 #ifdef VK_EXT_conservative_rasterization
checkEqual_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * a,const VkPhysicalDeviceConservativeRasterizationPropertiesEXT * b,OnFailCompareFunc onFail)12926 void checkEqual_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(
12927 const VkPhysicalDeviceConservativeRasterizationPropertiesEXT* a,
12928 const VkPhysicalDeviceConservativeRasterizationPropertiesEXT* b, OnFailCompareFunc onFail) {
12929 if (!((a->sType) == (b->sType))) {
12930 onFail("a->sType (Error: Value not equal)");
12931 };
12932 if (a->pNext) {
12933 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12934 }
12935 if (!((a->primitiveOverestimationSize) == (b->primitiveOverestimationSize))) {
12936 onFail("a->primitiveOverestimationSize (Error: Value not equal)");
12937 };
12938 if (!((a->maxExtraPrimitiveOverestimationSize) == (b->maxExtraPrimitiveOverestimationSize))) {
12939 onFail("a->maxExtraPrimitiveOverestimationSize (Error: Value not equal)");
12940 };
12941 if (!((a->extraPrimitiveOverestimationSizeGranularity) ==
12942 (b->extraPrimitiveOverestimationSizeGranularity))) {
12943 onFail("a->extraPrimitiveOverestimationSizeGranularity (Error: Value not equal)");
12944 };
12945 if (!((a->primitiveUnderestimation) == (b->primitiveUnderestimation))) {
12946 onFail("a->primitiveUnderestimation (Error: Value not equal)");
12947 };
12948 if (!((a->conservativePointAndLineRasterization) ==
12949 (b->conservativePointAndLineRasterization))) {
12950 onFail("a->conservativePointAndLineRasterization (Error: Value not equal)");
12951 };
12952 if (!((a->degenerateTrianglesRasterized) == (b->degenerateTrianglesRasterized))) {
12953 onFail("a->degenerateTrianglesRasterized (Error: Value not equal)");
12954 };
12955 if (!((a->degenerateLinesRasterized) == (b->degenerateLinesRasterized))) {
12956 onFail("a->degenerateLinesRasterized (Error: Value not equal)");
12957 };
12958 if (!((a->fullyCoveredFragmentShaderInputVariable) ==
12959 (b->fullyCoveredFragmentShaderInputVariable))) {
12960 onFail("a->fullyCoveredFragmentShaderInputVariable (Error: Value not equal)");
12961 };
12962 if (!((a->conservativeRasterizationPostDepthCoverage) ==
12963 (b->conservativeRasterizationPostDepthCoverage))) {
12964 onFail("a->conservativeRasterizationPostDepthCoverage (Error: Value not equal)");
12965 };
12966 }
12967
checkEqual_VkPipelineRasterizationConservativeStateCreateInfoEXT(const VkPipelineRasterizationConservativeStateCreateInfoEXT * a,const VkPipelineRasterizationConservativeStateCreateInfoEXT * b,OnFailCompareFunc onFail)12968 void checkEqual_VkPipelineRasterizationConservativeStateCreateInfoEXT(
12969 const VkPipelineRasterizationConservativeStateCreateInfoEXT* a,
12970 const VkPipelineRasterizationConservativeStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
12971 if (!((a->sType) == (b->sType))) {
12972 onFail("a->sType (Error: Value not equal)");
12973 };
12974 if (a->pNext) {
12975 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12976 }
12977 if (!((a->flags) == (b->flags))) {
12978 onFail("a->flags (Error: Value not equal)");
12979 };
12980 if (!((a->conservativeRasterizationMode) == (b->conservativeRasterizationMode))) {
12981 onFail("a->conservativeRasterizationMode (Error: Value not equal)");
12982 };
12983 if (!((a->extraPrimitiveOverestimationSize) == (b->extraPrimitiveOverestimationSize))) {
12984 onFail("a->extraPrimitiveOverestimationSize (Error: Value not equal)");
12985 };
12986 }
12987
12988 #endif
12989 #ifdef VK_EXT_depth_clip_enable
checkEqual_VkPhysicalDeviceDepthClipEnableFeaturesEXT(const VkPhysicalDeviceDepthClipEnableFeaturesEXT * a,const VkPhysicalDeviceDepthClipEnableFeaturesEXT * b,OnFailCompareFunc onFail)12990 void checkEqual_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
12991 const VkPhysicalDeviceDepthClipEnableFeaturesEXT* a,
12992 const VkPhysicalDeviceDepthClipEnableFeaturesEXT* b, OnFailCompareFunc onFail) {
12993 if (!((a->sType) == (b->sType))) {
12994 onFail("a->sType (Error: Value not equal)");
12995 };
12996 if (a->pNext) {
12997 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
12998 }
12999 if (!((a->depthClipEnable) == (b->depthClipEnable))) {
13000 onFail("a->depthClipEnable (Error: Value not equal)");
13001 };
13002 }
13003
checkEqual_VkPipelineRasterizationDepthClipStateCreateInfoEXT(const VkPipelineRasterizationDepthClipStateCreateInfoEXT * a,const VkPipelineRasterizationDepthClipStateCreateInfoEXT * b,OnFailCompareFunc onFail)13004 void checkEqual_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
13005 const VkPipelineRasterizationDepthClipStateCreateInfoEXT* a,
13006 const VkPipelineRasterizationDepthClipStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
13007 if (!((a->sType) == (b->sType))) {
13008 onFail("a->sType (Error: Value not equal)");
13009 };
13010 if (a->pNext) {
13011 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13012 }
13013 if (!((a->flags) == (b->flags))) {
13014 onFail("a->flags (Error: Value not equal)");
13015 };
13016 if (!((a->depthClipEnable) == (b->depthClipEnable))) {
13017 onFail("a->depthClipEnable (Error: Value not equal)");
13018 };
13019 }
13020
13021 #endif
13022 #ifdef VK_EXT_swapchain_colorspace
13023 #endif
13024 #ifdef VK_EXT_hdr_metadata
checkEqual_VkXYColorEXT(const VkXYColorEXT * a,const VkXYColorEXT * b,OnFailCompareFunc onFail)13025 void checkEqual_VkXYColorEXT(const VkXYColorEXT* a, const VkXYColorEXT* b,
13026 OnFailCompareFunc onFail) {
13027 if (!((a->x) == (b->x))) {
13028 onFail("a->x (Error: Value not equal)");
13029 };
13030 if (!((a->y) == (b->y))) {
13031 onFail("a->y (Error: Value not equal)");
13032 };
13033 }
13034
checkEqual_VkHdrMetadataEXT(const VkHdrMetadataEXT * a,const VkHdrMetadataEXT * b,OnFailCompareFunc onFail)13035 void checkEqual_VkHdrMetadataEXT(const VkHdrMetadataEXT* a, const VkHdrMetadataEXT* b,
13036 OnFailCompareFunc onFail) {
13037 if (!((a->sType) == (b->sType))) {
13038 onFail("a->sType (Error: Value not equal)");
13039 };
13040 if (a->pNext) {
13041 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13042 }
13043 checkEqual_VkXYColorEXT(&a->displayPrimaryRed, &b->displayPrimaryRed, onFail);
13044 checkEqual_VkXYColorEXT(&a->displayPrimaryGreen, &b->displayPrimaryGreen, onFail);
13045 checkEqual_VkXYColorEXT(&a->displayPrimaryBlue, &b->displayPrimaryBlue, onFail);
13046 checkEqual_VkXYColorEXT(&a->whitePoint, &b->whitePoint, onFail);
13047 if (!((a->maxLuminance) == (b->maxLuminance))) {
13048 onFail("a->maxLuminance (Error: Value not equal)");
13049 };
13050 if (!((a->minLuminance) == (b->minLuminance))) {
13051 onFail("a->minLuminance (Error: Value not equal)");
13052 };
13053 if (!((a->maxContentLightLevel) == (b->maxContentLightLevel))) {
13054 onFail("a->maxContentLightLevel (Error: Value not equal)");
13055 };
13056 if (!((a->maxFrameAverageLightLevel) == (b->maxFrameAverageLightLevel))) {
13057 onFail("a->maxFrameAverageLightLevel (Error: Value not equal)");
13058 };
13059 }
13060
13061 #endif
13062 #ifdef VK_MVK_ios_surface
checkEqual_VkIOSSurfaceCreateInfoMVK(const VkIOSSurfaceCreateInfoMVK * a,const VkIOSSurfaceCreateInfoMVK * b,OnFailCompareFunc onFail)13063 void checkEqual_VkIOSSurfaceCreateInfoMVK(const VkIOSSurfaceCreateInfoMVK* a,
13064 const VkIOSSurfaceCreateInfoMVK* b,
13065 OnFailCompareFunc onFail) {
13066 if (!((a->sType) == (b->sType))) {
13067 onFail("a->sType (Error: Value not equal)");
13068 };
13069 if (a->pNext) {
13070 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13071 }
13072 if (!((a->flags) == (b->flags))) {
13073 onFail("a->flags (Error: Value not equal)");
13074 };
13075 if (!((!(a->pView) && !(b->pView)) || ((a->pView) && (b->pView)))) {
13076 onFail("a->pView (Error: Mismatch in optional field)");
13077 };
13078 }
13079
13080 #endif
13081 #ifdef VK_MVK_macos_surface
checkEqual_VkMacOSSurfaceCreateInfoMVK(const VkMacOSSurfaceCreateInfoMVK * a,const VkMacOSSurfaceCreateInfoMVK * b,OnFailCompareFunc onFail)13082 void checkEqual_VkMacOSSurfaceCreateInfoMVK(const VkMacOSSurfaceCreateInfoMVK* a,
13083 const VkMacOSSurfaceCreateInfoMVK* b,
13084 OnFailCompareFunc onFail) {
13085 if (!((a->sType) == (b->sType))) {
13086 onFail("a->sType (Error: Value not equal)");
13087 };
13088 if (a->pNext) {
13089 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13090 }
13091 if (!((a->flags) == (b->flags))) {
13092 onFail("a->flags (Error: Value not equal)");
13093 };
13094 if (!((!(a->pView) && !(b->pView)) || ((a->pView) && (b->pView)))) {
13095 onFail("a->pView (Error: Mismatch in optional field)");
13096 };
13097 }
13098
13099 #endif
13100 #ifdef VK_EXT_external_memory_dma_buf
13101 #endif
13102 #ifdef VK_EXT_queue_family_foreign
13103 #endif
13104 #ifdef VK_EXT_debug_utils
checkEqual_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT * a,const VkDebugUtilsLabelEXT * b,OnFailCompareFunc onFail)13105 void checkEqual_VkDebugUtilsLabelEXT(const VkDebugUtilsLabelEXT* a, const VkDebugUtilsLabelEXT* b,
13106 OnFailCompareFunc onFail) {
13107 if (!((a->sType) == (b->sType))) {
13108 onFail("a->sType (Error: Value not equal)");
13109 };
13110 if (a->pNext) {
13111 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13112 }
13113 if (!((!(a->pLabelName) && !(b->pLabelName)) || ((a->pLabelName) && (b->pLabelName)))) {
13114 onFail("a->pLabelName (Error: Mismatch in string pointer nullness)");
13115 };
13116 if ((a->pLabelName) && (b->pLabelName)) {
13117 if (!((strcmp(a->pLabelName, b->pLabelName) == 0))) {
13118 onFail("a->pLabelName (Error: Unequal strings)");
13119 };
13120 }
13121 if (!((memcmp(a->color, b->color, 4 * sizeof(float)) == 0))) {
13122 onFail("a->color (Error: Unequal static array)");
13123 };
13124 }
13125
checkEqual_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT * a,const VkDebugUtilsObjectNameInfoEXT * b,OnFailCompareFunc onFail)13126 void checkEqual_VkDebugUtilsObjectNameInfoEXT(const VkDebugUtilsObjectNameInfoEXT* a,
13127 const VkDebugUtilsObjectNameInfoEXT* b,
13128 OnFailCompareFunc onFail) {
13129 if (!((a->sType) == (b->sType))) {
13130 onFail("a->sType (Error: Value not equal)");
13131 };
13132 if (a->pNext) {
13133 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13134 }
13135 if (!((a->objectType) == (b->objectType))) {
13136 onFail("a->objectType (Error: Value not equal)");
13137 };
13138 if (!((a->objectHandle) == (b->objectHandle))) {
13139 onFail("a->objectHandle (Error: Value not equal)");
13140 };
13141 if (!((!(a->pObjectName) && !(b->pObjectName)) || ((a->pObjectName) && (b->pObjectName)))) {
13142 onFail("a->pObjectName (Error: Mismatch in optional field)");
13143 };
13144 if (a->pObjectName && b->pObjectName) {
13145 if (!((!(a->pObjectName) && !(b->pObjectName)) || ((a->pObjectName) && (b->pObjectName)))) {
13146 onFail("a->pObjectName (Error: Mismatch in string pointer nullness)");
13147 };
13148 if ((a->pObjectName) && (b->pObjectName)) {
13149 if (!((strcmp(a->pObjectName, b->pObjectName) == 0))) {
13150 onFail("a->pObjectName (Error: Unequal strings)");
13151 };
13152 }
13153 }
13154 }
13155
checkEqual_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT * a,const VkDebugUtilsMessengerCallbackDataEXT * b,OnFailCompareFunc onFail)13156 void checkEqual_VkDebugUtilsMessengerCallbackDataEXT(const VkDebugUtilsMessengerCallbackDataEXT* a,
13157 const VkDebugUtilsMessengerCallbackDataEXT* b,
13158 OnFailCompareFunc onFail) {
13159 if (!((a->sType) == (b->sType))) {
13160 onFail("a->sType (Error: Value not equal)");
13161 };
13162 if (a->pNext) {
13163 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13164 }
13165 if (!((a->flags) == (b->flags))) {
13166 onFail("a->flags (Error: Value not equal)");
13167 };
13168 if (!((!(a->pMessageIdName) && !(b->pMessageIdName)) ||
13169 ((a->pMessageIdName) && (b->pMessageIdName)))) {
13170 onFail("a->pMessageIdName (Error: Mismatch in optional field)");
13171 };
13172 if (a->pMessageIdName && b->pMessageIdName) {
13173 if (!((!(a->pMessageIdName) && !(b->pMessageIdName)) ||
13174 ((a->pMessageIdName) && (b->pMessageIdName)))) {
13175 onFail("a->pMessageIdName (Error: Mismatch in string pointer nullness)");
13176 };
13177 if ((a->pMessageIdName) && (b->pMessageIdName)) {
13178 if (!((strcmp(a->pMessageIdName, b->pMessageIdName) == 0))) {
13179 onFail("a->pMessageIdName (Error: Unequal strings)");
13180 };
13181 }
13182 }
13183 if (!((a->messageIdNumber) == (b->messageIdNumber))) {
13184 onFail("a->messageIdNumber (Error: Value not equal)");
13185 };
13186 if (!((!(a->pMessage) && !(b->pMessage)) || ((a->pMessage) && (b->pMessage)))) {
13187 onFail("a->pMessage (Error: Mismatch in string pointer nullness)");
13188 };
13189 if ((a->pMessage) && (b->pMessage)) {
13190 if (!((strcmp(a->pMessage, b->pMessage) == 0))) {
13191 onFail("a->pMessage (Error: Unequal strings)");
13192 };
13193 }
13194 if (!((a->queueLabelCount) == (b->queueLabelCount))) {
13195 onFail("a->queueLabelCount (Error: Value not equal)");
13196 };
13197 if ((a->pQueueLabels) && (b->pQueueLabels)) {
13198 if (!((a->queueLabelCount) == (b->queueLabelCount))) {
13199 onFail("a->pQueueLabels (Error: Lengths not equal)");
13200 };
13201 if ((a->queueLabelCount) == (b->queueLabelCount)) {
13202 if (a) {
13203 for (uint32_t i = 0; i < (uint32_t)a->queueLabelCount; ++i) {
13204 checkEqual_VkDebugUtilsLabelEXT(a->pQueueLabels + i, b->pQueueLabels + i,
13205 onFail);
13206 }
13207 }
13208 }
13209 }
13210 if (!((a->cmdBufLabelCount) == (b->cmdBufLabelCount))) {
13211 onFail("a->cmdBufLabelCount (Error: Value not equal)");
13212 };
13213 if ((a->pCmdBufLabels) && (b->pCmdBufLabels)) {
13214 if (!((a->cmdBufLabelCount) == (b->cmdBufLabelCount))) {
13215 onFail("a->pCmdBufLabels (Error: Lengths not equal)");
13216 };
13217 if ((a->cmdBufLabelCount) == (b->cmdBufLabelCount)) {
13218 if (a) {
13219 for (uint32_t i = 0; i < (uint32_t)a->cmdBufLabelCount; ++i) {
13220 checkEqual_VkDebugUtilsLabelEXT(a->pCmdBufLabels + i, b->pCmdBufLabels + i,
13221 onFail);
13222 }
13223 }
13224 }
13225 }
13226 if (!((a->objectCount) == (b->objectCount))) {
13227 onFail("a->objectCount (Error: Value not equal)");
13228 };
13229 if ((a->pObjects) && (b->pObjects)) {
13230 if (!((a->objectCount) == (b->objectCount))) {
13231 onFail("a->pObjects (Error: Lengths not equal)");
13232 };
13233 if ((a->objectCount) == (b->objectCount)) {
13234 if (a) {
13235 for (uint32_t i = 0; i < (uint32_t)a->objectCount; ++i) {
13236 checkEqual_VkDebugUtilsObjectNameInfoEXT(a->pObjects + i, b->pObjects + i,
13237 onFail);
13238 }
13239 }
13240 }
13241 }
13242 }
13243
checkEqual_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT * a,const VkDebugUtilsMessengerCreateInfoEXT * b,OnFailCompareFunc onFail)13244 void checkEqual_VkDebugUtilsMessengerCreateInfoEXT(const VkDebugUtilsMessengerCreateInfoEXT* a,
13245 const VkDebugUtilsMessengerCreateInfoEXT* b,
13246 OnFailCompareFunc onFail) {
13247 if (!((a->sType) == (b->sType))) {
13248 onFail("a->sType (Error: Value not equal)");
13249 };
13250 if (a->pNext) {
13251 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13252 }
13253 if (!((a->flags) == (b->flags))) {
13254 onFail("a->flags (Error: Value not equal)");
13255 };
13256 if (!((a->messageSeverity) == (b->messageSeverity))) {
13257 onFail("a->messageSeverity (Error: Value not equal)");
13258 };
13259 if (!((a->messageType) == (b->messageType))) {
13260 onFail("a->messageType (Error: Value not equal)");
13261 };
13262 if (!((a->pfnUserCallback) == (b->pfnUserCallback))) {
13263 onFail("a->pfnUserCallback (Error: Value not equal)");
13264 };
13265 if (!((!(a->pUserData) && !(b->pUserData)) || ((a->pUserData) && (b->pUserData)))) {
13266 onFail("a->pUserData (Error: Mismatch in optional field)");
13267 };
13268 }
13269
checkEqual_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT * a,const VkDebugUtilsObjectTagInfoEXT * b,OnFailCompareFunc onFail)13270 void checkEqual_VkDebugUtilsObjectTagInfoEXT(const VkDebugUtilsObjectTagInfoEXT* a,
13271 const VkDebugUtilsObjectTagInfoEXT* b,
13272 OnFailCompareFunc onFail) {
13273 if (!((a->sType) == (b->sType))) {
13274 onFail("a->sType (Error: Value not equal)");
13275 };
13276 if (a->pNext) {
13277 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13278 }
13279 if (!((a->objectType) == (b->objectType))) {
13280 onFail("a->objectType (Error: Value not equal)");
13281 };
13282 if (!((a->objectHandle) == (b->objectHandle))) {
13283 onFail("a->objectHandle (Error: Value not equal)");
13284 };
13285 if (!((a->tagName) == (b->tagName))) {
13286 onFail("a->tagName (Error: Value not equal)");
13287 };
13288 if (!((a->tagSize) == (b->tagSize))) {
13289 onFail("a->tagSize (Error: Value not equal)");
13290 };
13291 }
13292
13293 #endif
13294 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
checkEqual_VkAndroidHardwareBufferUsageANDROID(const VkAndroidHardwareBufferUsageANDROID * a,const VkAndroidHardwareBufferUsageANDROID * b,OnFailCompareFunc onFail)13295 void checkEqual_VkAndroidHardwareBufferUsageANDROID(const VkAndroidHardwareBufferUsageANDROID* a,
13296 const VkAndroidHardwareBufferUsageANDROID* b,
13297 OnFailCompareFunc onFail) {
13298 if (!((a->sType) == (b->sType))) {
13299 onFail("a->sType (Error: Value not equal)");
13300 };
13301 if (a->pNext) {
13302 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13303 }
13304 if (!((a->androidHardwareBufferUsage) == (b->androidHardwareBufferUsage))) {
13305 onFail("a->androidHardwareBufferUsage (Error: Value not equal)");
13306 };
13307 }
13308
checkEqual_VkAndroidHardwareBufferPropertiesANDROID(const VkAndroidHardwareBufferPropertiesANDROID * a,const VkAndroidHardwareBufferPropertiesANDROID * b,OnFailCompareFunc onFail)13309 void checkEqual_VkAndroidHardwareBufferPropertiesANDROID(
13310 const VkAndroidHardwareBufferPropertiesANDROID* a,
13311 const VkAndroidHardwareBufferPropertiesANDROID* b, OnFailCompareFunc onFail) {
13312 if (!((a->sType) == (b->sType))) {
13313 onFail("a->sType (Error: Value not equal)");
13314 };
13315 if (a->pNext) {
13316 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13317 }
13318 if (!((a->allocationSize) == (b->allocationSize))) {
13319 onFail("a->allocationSize (Error: Value not equal)");
13320 };
13321 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
13322 onFail("a->memoryTypeBits (Error: Value not equal)");
13323 };
13324 }
13325
checkEqual_VkAndroidHardwareBufferFormatPropertiesANDROID(const VkAndroidHardwareBufferFormatPropertiesANDROID * a,const VkAndroidHardwareBufferFormatPropertiesANDROID * b,OnFailCompareFunc onFail)13326 void checkEqual_VkAndroidHardwareBufferFormatPropertiesANDROID(
13327 const VkAndroidHardwareBufferFormatPropertiesANDROID* a,
13328 const VkAndroidHardwareBufferFormatPropertiesANDROID* b, OnFailCompareFunc onFail) {
13329 if (!((a->sType) == (b->sType))) {
13330 onFail("a->sType (Error: Value not equal)");
13331 };
13332 if (a->pNext) {
13333 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13334 }
13335 if (!((a->format) == (b->format))) {
13336 onFail("a->format (Error: Value not equal)");
13337 };
13338 if (!((a->externalFormat) == (b->externalFormat))) {
13339 onFail("a->externalFormat (Error: Value not equal)");
13340 };
13341 if (!((a->formatFeatures) == (b->formatFeatures))) {
13342 onFail("a->formatFeatures (Error: Value not equal)");
13343 };
13344 checkEqual_VkComponentMapping(&a->samplerYcbcrConversionComponents,
13345 &b->samplerYcbcrConversionComponents, onFail);
13346 if (!((a->suggestedYcbcrModel) == (b->suggestedYcbcrModel))) {
13347 onFail("a->suggestedYcbcrModel (Error: Value not equal)");
13348 };
13349 if (!((a->suggestedYcbcrRange) == (b->suggestedYcbcrRange))) {
13350 onFail("a->suggestedYcbcrRange (Error: Value not equal)");
13351 };
13352 if (!((a->suggestedXChromaOffset) == (b->suggestedXChromaOffset))) {
13353 onFail("a->suggestedXChromaOffset (Error: Value not equal)");
13354 };
13355 if (!((a->suggestedYChromaOffset) == (b->suggestedYChromaOffset))) {
13356 onFail("a->suggestedYChromaOffset (Error: Value not equal)");
13357 };
13358 }
13359
checkEqual_VkImportAndroidHardwareBufferInfoANDROID(const VkImportAndroidHardwareBufferInfoANDROID * a,const VkImportAndroidHardwareBufferInfoANDROID * b,OnFailCompareFunc onFail)13360 void checkEqual_VkImportAndroidHardwareBufferInfoANDROID(
13361 const VkImportAndroidHardwareBufferInfoANDROID* a,
13362 const VkImportAndroidHardwareBufferInfoANDROID* b, OnFailCompareFunc onFail) {
13363 if (!((a->sType) == (b->sType))) {
13364 onFail("a->sType (Error: Value not equal)");
13365 };
13366 if (a->pNext) {
13367 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13368 }
13369 if (!((memcmp(a->buffer, b->buffer, sizeof(AHardwareBuffer)) == 0))) {
13370 onFail("a->buffer (Error: Unequal dyn array)");
13371 };
13372 }
13373
checkEqual_VkMemoryGetAndroidHardwareBufferInfoANDROID(const VkMemoryGetAndroidHardwareBufferInfoANDROID * a,const VkMemoryGetAndroidHardwareBufferInfoANDROID * b,OnFailCompareFunc onFail)13374 void checkEqual_VkMemoryGetAndroidHardwareBufferInfoANDROID(
13375 const VkMemoryGetAndroidHardwareBufferInfoANDROID* a,
13376 const VkMemoryGetAndroidHardwareBufferInfoANDROID* b, OnFailCompareFunc onFail) {
13377 if (!((a->sType) == (b->sType))) {
13378 onFail("a->sType (Error: Value not equal)");
13379 };
13380 if (a->pNext) {
13381 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13382 }
13383 if (!((a->memory) == (b->memory))) {
13384 onFail("a->memory (Error: Value not equal)");
13385 };
13386 }
13387
checkEqual_VkExternalFormatANDROID(const VkExternalFormatANDROID * a,const VkExternalFormatANDROID * b,OnFailCompareFunc onFail)13388 void checkEqual_VkExternalFormatANDROID(const VkExternalFormatANDROID* a,
13389 const VkExternalFormatANDROID* b,
13390 OnFailCompareFunc onFail) {
13391 if (!((a->sType) == (b->sType))) {
13392 onFail("a->sType (Error: Value not equal)");
13393 };
13394 if (a->pNext) {
13395 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13396 }
13397 if (!((a->externalFormat) == (b->externalFormat))) {
13398 onFail("a->externalFormat (Error: Value not equal)");
13399 };
13400 }
13401
checkEqual_VkAndroidHardwareBufferFormatProperties2ANDROID(const VkAndroidHardwareBufferFormatProperties2ANDROID * a,const VkAndroidHardwareBufferFormatProperties2ANDROID * b,OnFailCompareFunc onFail)13402 void checkEqual_VkAndroidHardwareBufferFormatProperties2ANDROID(
13403 const VkAndroidHardwareBufferFormatProperties2ANDROID* a,
13404 const VkAndroidHardwareBufferFormatProperties2ANDROID* b, OnFailCompareFunc onFail) {
13405 if (!((a->sType) == (b->sType))) {
13406 onFail("a->sType (Error: Value not equal)");
13407 };
13408 if (a->pNext) {
13409 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13410 }
13411 if (!((a->format) == (b->format))) {
13412 onFail("a->format (Error: Value not equal)");
13413 };
13414 if (!((a->externalFormat) == (b->externalFormat))) {
13415 onFail("a->externalFormat (Error: Value not equal)");
13416 };
13417 if (!((a->formatFeatures) == (b->formatFeatures))) {
13418 onFail("a->formatFeatures (Error: Value not equal)");
13419 };
13420 checkEqual_VkComponentMapping(&a->samplerYcbcrConversionComponents,
13421 &b->samplerYcbcrConversionComponents, onFail);
13422 if (!((a->suggestedYcbcrModel) == (b->suggestedYcbcrModel))) {
13423 onFail("a->suggestedYcbcrModel (Error: Value not equal)");
13424 };
13425 if (!((a->suggestedYcbcrRange) == (b->suggestedYcbcrRange))) {
13426 onFail("a->suggestedYcbcrRange (Error: Value not equal)");
13427 };
13428 if (!((a->suggestedXChromaOffset) == (b->suggestedXChromaOffset))) {
13429 onFail("a->suggestedXChromaOffset (Error: Value not equal)");
13430 };
13431 if (!((a->suggestedYChromaOffset) == (b->suggestedYChromaOffset))) {
13432 onFail("a->suggestedYChromaOffset (Error: Value not equal)");
13433 };
13434 }
13435
13436 #endif
13437 #ifdef VK_EXT_sampler_filter_minmax
13438 #endif
13439 #ifdef VK_AMD_gpu_shader_int16
13440 #endif
13441 #ifdef VK_AMD_mixed_attachment_samples
13442 #endif
13443 #ifdef VK_AMD_shader_fragment_mask
13444 #endif
13445 #ifdef VK_EXT_inline_uniform_block
13446 #endif
13447 #ifdef VK_EXT_shader_stencil_export
13448 #endif
13449 #ifdef VK_EXT_sample_locations
checkEqual_VkSampleLocationEXT(const VkSampleLocationEXT * a,const VkSampleLocationEXT * b,OnFailCompareFunc onFail)13450 void checkEqual_VkSampleLocationEXT(const VkSampleLocationEXT* a, const VkSampleLocationEXT* b,
13451 OnFailCompareFunc onFail) {
13452 if (!((a->x) == (b->x))) {
13453 onFail("a->x (Error: Value not equal)");
13454 };
13455 if (!((a->y) == (b->y))) {
13456 onFail("a->y (Error: Value not equal)");
13457 };
13458 }
13459
checkEqual_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT * a,const VkSampleLocationsInfoEXT * b,OnFailCompareFunc onFail)13460 void checkEqual_VkSampleLocationsInfoEXT(const VkSampleLocationsInfoEXT* a,
13461 const VkSampleLocationsInfoEXT* b,
13462 OnFailCompareFunc onFail) {
13463 if (!((a->sType) == (b->sType))) {
13464 onFail("a->sType (Error: Value not equal)");
13465 };
13466 if (a->pNext) {
13467 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13468 }
13469 if (!((a->sampleLocationsPerPixel) == (b->sampleLocationsPerPixel))) {
13470 onFail("a->sampleLocationsPerPixel (Error: Value not equal)");
13471 };
13472 checkEqual_VkExtent2D(&a->sampleLocationGridSize, &b->sampleLocationGridSize, onFail);
13473 if (!((a->sampleLocationsCount) == (b->sampleLocationsCount))) {
13474 onFail("a->sampleLocationsCount (Error: Value not equal)");
13475 };
13476 if ((a->pSampleLocations) && (b->pSampleLocations)) {
13477 if (!((a->sampleLocationsCount) == (b->sampleLocationsCount))) {
13478 onFail("a->pSampleLocations (Error: Lengths not equal)");
13479 };
13480 if ((a->sampleLocationsCount) == (b->sampleLocationsCount)) {
13481 if (a) {
13482 for (uint32_t i = 0; i < (uint32_t)a->sampleLocationsCount; ++i) {
13483 checkEqual_VkSampleLocationEXT(a->pSampleLocations + i, b->pSampleLocations + i,
13484 onFail);
13485 }
13486 }
13487 }
13488 }
13489 }
13490
checkEqual_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT * a,const VkAttachmentSampleLocationsEXT * b,OnFailCompareFunc onFail)13491 void checkEqual_VkAttachmentSampleLocationsEXT(const VkAttachmentSampleLocationsEXT* a,
13492 const VkAttachmentSampleLocationsEXT* b,
13493 OnFailCompareFunc onFail) {
13494 if (!((a->attachmentIndex) == (b->attachmentIndex))) {
13495 onFail("a->attachmentIndex (Error: Value not equal)");
13496 };
13497 checkEqual_VkSampleLocationsInfoEXT(&a->sampleLocationsInfo, &b->sampleLocationsInfo, onFail);
13498 }
13499
checkEqual_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT * a,const VkSubpassSampleLocationsEXT * b,OnFailCompareFunc onFail)13500 void checkEqual_VkSubpassSampleLocationsEXT(const VkSubpassSampleLocationsEXT* a,
13501 const VkSubpassSampleLocationsEXT* b,
13502 OnFailCompareFunc onFail) {
13503 if (!((a->subpassIndex) == (b->subpassIndex))) {
13504 onFail("a->subpassIndex (Error: Value not equal)");
13505 };
13506 checkEqual_VkSampleLocationsInfoEXT(&a->sampleLocationsInfo, &b->sampleLocationsInfo, onFail);
13507 }
13508
checkEqual_VkRenderPassSampleLocationsBeginInfoEXT(const VkRenderPassSampleLocationsBeginInfoEXT * a,const VkRenderPassSampleLocationsBeginInfoEXT * b,OnFailCompareFunc onFail)13509 void checkEqual_VkRenderPassSampleLocationsBeginInfoEXT(
13510 const VkRenderPassSampleLocationsBeginInfoEXT* a,
13511 const VkRenderPassSampleLocationsBeginInfoEXT* b, OnFailCompareFunc onFail) {
13512 if (!((a->sType) == (b->sType))) {
13513 onFail("a->sType (Error: Value not equal)");
13514 };
13515 if (a->pNext) {
13516 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13517 }
13518 if (!((a->attachmentInitialSampleLocationsCount) ==
13519 (b->attachmentInitialSampleLocationsCount))) {
13520 onFail("a->attachmentInitialSampleLocationsCount (Error: Value not equal)");
13521 };
13522 if ((a->pAttachmentInitialSampleLocations) && (b->pAttachmentInitialSampleLocations)) {
13523 if (!((a->attachmentInitialSampleLocationsCount) ==
13524 (b->attachmentInitialSampleLocationsCount))) {
13525 onFail("a->pAttachmentInitialSampleLocations (Error: Lengths not equal)");
13526 };
13527 if ((a->attachmentInitialSampleLocationsCount) ==
13528 (b->attachmentInitialSampleLocationsCount)) {
13529 if (a) {
13530 for (uint32_t i = 0; i < (uint32_t)a->attachmentInitialSampleLocationsCount; ++i) {
13531 checkEqual_VkAttachmentSampleLocationsEXT(
13532 a->pAttachmentInitialSampleLocations + i,
13533 b->pAttachmentInitialSampleLocations + i, onFail);
13534 }
13535 }
13536 }
13537 }
13538 if (!((a->postSubpassSampleLocationsCount) == (b->postSubpassSampleLocationsCount))) {
13539 onFail("a->postSubpassSampleLocationsCount (Error: Value not equal)");
13540 };
13541 if ((a->pPostSubpassSampleLocations) && (b->pPostSubpassSampleLocations)) {
13542 if (!((a->postSubpassSampleLocationsCount) == (b->postSubpassSampleLocationsCount))) {
13543 onFail("a->pPostSubpassSampleLocations (Error: Lengths not equal)");
13544 };
13545 if ((a->postSubpassSampleLocationsCount) == (b->postSubpassSampleLocationsCount)) {
13546 if (a) {
13547 for (uint32_t i = 0; i < (uint32_t)a->postSubpassSampleLocationsCount; ++i) {
13548 checkEqual_VkSubpassSampleLocationsEXT(a->pPostSubpassSampleLocations + i,
13549 b->pPostSubpassSampleLocations + i,
13550 onFail);
13551 }
13552 }
13553 }
13554 }
13555 }
13556
checkEqual_VkPipelineSampleLocationsStateCreateInfoEXT(const VkPipelineSampleLocationsStateCreateInfoEXT * a,const VkPipelineSampleLocationsStateCreateInfoEXT * b,OnFailCompareFunc onFail)13557 void checkEqual_VkPipelineSampleLocationsStateCreateInfoEXT(
13558 const VkPipelineSampleLocationsStateCreateInfoEXT* a,
13559 const VkPipelineSampleLocationsStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
13560 if (!((a->sType) == (b->sType))) {
13561 onFail("a->sType (Error: Value not equal)");
13562 };
13563 if (a->pNext) {
13564 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13565 }
13566 if (!((a->sampleLocationsEnable) == (b->sampleLocationsEnable))) {
13567 onFail("a->sampleLocationsEnable (Error: Value not equal)");
13568 };
13569 checkEqual_VkSampleLocationsInfoEXT(&a->sampleLocationsInfo, &b->sampleLocationsInfo, onFail);
13570 }
13571
checkEqual_VkPhysicalDeviceSampleLocationsPropertiesEXT(const VkPhysicalDeviceSampleLocationsPropertiesEXT * a,const VkPhysicalDeviceSampleLocationsPropertiesEXT * b,OnFailCompareFunc onFail)13572 void checkEqual_VkPhysicalDeviceSampleLocationsPropertiesEXT(
13573 const VkPhysicalDeviceSampleLocationsPropertiesEXT* a,
13574 const VkPhysicalDeviceSampleLocationsPropertiesEXT* b, OnFailCompareFunc onFail) {
13575 if (!((a->sType) == (b->sType))) {
13576 onFail("a->sType (Error: Value not equal)");
13577 };
13578 if (a->pNext) {
13579 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13580 }
13581 if (!((a->sampleLocationSampleCounts) == (b->sampleLocationSampleCounts))) {
13582 onFail("a->sampleLocationSampleCounts (Error: Value not equal)");
13583 };
13584 checkEqual_VkExtent2D(&a->maxSampleLocationGridSize, &b->maxSampleLocationGridSize, onFail);
13585 if (!((memcmp(a->sampleLocationCoordinateRange, b->sampleLocationCoordinateRange,
13586 2 * sizeof(float)) == 0))) {
13587 onFail("a->sampleLocationCoordinateRange (Error: Unequal static array)");
13588 };
13589 if (!((a->sampleLocationSubPixelBits) == (b->sampleLocationSubPixelBits))) {
13590 onFail("a->sampleLocationSubPixelBits (Error: Value not equal)");
13591 };
13592 if (!((a->variableSampleLocations) == (b->variableSampleLocations))) {
13593 onFail("a->variableSampleLocations (Error: Value not equal)");
13594 };
13595 }
13596
checkEqual_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT * a,const VkMultisamplePropertiesEXT * b,OnFailCompareFunc onFail)13597 void checkEqual_VkMultisamplePropertiesEXT(const VkMultisamplePropertiesEXT* a,
13598 const VkMultisamplePropertiesEXT* b,
13599 OnFailCompareFunc onFail) {
13600 if (!((a->sType) == (b->sType))) {
13601 onFail("a->sType (Error: Value not equal)");
13602 };
13603 if (a->pNext) {
13604 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13605 }
13606 checkEqual_VkExtent2D(&a->maxSampleLocationGridSize, &b->maxSampleLocationGridSize, onFail);
13607 }
13608
13609 #endif
13610 #ifdef VK_EXT_blend_operation_advanced
checkEqual_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * a,const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT * b,OnFailCompareFunc onFail)13611 void checkEqual_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(
13612 const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* a,
13613 const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* b, OnFailCompareFunc onFail) {
13614 if (!((a->sType) == (b->sType))) {
13615 onFail("a->sType (Error: Value not equal)");
13616 };
13617 if (a->pNext) {
13618 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13619 }
13620 if (!((a->advancedBlendCoherentOperations) == (b->advancedBlendCoherentOperations))) {
13621 onFail("a->advancedBlendCoherentOperations (Error: Value not equal)");
13622 };
13623 }
13624
checkEqual_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * a,const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT * b,OnFailCompareFunc onFail)13625 void checkEqual_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(
13626 const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* a,
13627 const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* b, OnFailCompareFunc onFail) {
13628 if (!((a->sType) == (b->sType))) {
13629 onFail("a->sType (Error: Value not equal)");
13630 };
13631 if (a->pNext) {
13632 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13633 }
13634 if (!((a->advancedBlendMaxColorAttachments) == (b->advancedBlendMaxColorAttachments))) {
13635 onFail("a->advancedBlendMaxColorAttachments (Error: Value not equal)");
13636 };
13637 if (!((a->advancedBlendIndependentBlend) == (b->advancedBlendIndependentBlend))) {
13638 onFail("a->advancedBlendIndependentBlend (Error: Value not equal)");
13639 };
13640 if (!((a->advancedBlendNonPremultipliedSrcColor) ==
13641 (b->advancedBlendNonPremultipliedSrcColor))) {
13642 onFail("a->advancedBlendNonPremultipliedSrcColor (Error: Value not equal)");
13643 };
13644 if (!((a->advancedBlendNonPremultipliedDstColor) ==
13645 (b->advancedBlendNonPremultipliedDstColor))) {
13646 onFail("a->advancedBlendNonPremultipliedDstColor (Error: Value not equal)");
13647 };
13648 if (!((a->advancedBlendCorrelatedOverlap) == (b->advancedBlendCorrelatedOverlap))) {
13649 onFail("a->advancedBlendCorrelatedOverlap (Error: Value not equal)");
13650 };
13651 if (!((a->advancedBlendAllOperations) == (b->advancedBlendAllOperations))) {
13652 onFail("a->advancedBlendAllOperations (Error: Value not equal)");
13653 };
13654 }
13655
checkEqual_VkPipelineColorBlendAdvancedStateCreateInfoEXT(const VkPipelineColorBlendAdvancedStateCreateInfoEXT * a,const VkPipelineColorBlendAdvancedStateCreateInfoEXT * b,OnFailCompareFunc onFail)13656 void checkEqual_VkPipelineColorBlendAdvancedStateCreateInfoEXT(
13657 const VkPipelineColorBlendAdvancedStateCreateInfoEXT* a,
13658 const VkPipelineColorBlendAdvancedStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
13659 if (!((a->sType) == (b->sType))) {
13660 onFail("a->sType (Error: Value not equal)");
13661 };
13662 if (a->pNext) {
13663 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13664 }
13665 if (!((a->srcPremultiplied) == (b->srcPremultiplied))) {
13666 onFail("a->srcPremultiplied (Error: Value not equal)");
13667 };
13668 if (!((a->dstPremultiplied) == (b->dstPremultiplied))) {
13669 onFail("a->dstPremultiplied (Error: Value not equal)");
13670 };
13671 if (!((a->blendOverlap) == (b->blendOverlap))) {
13672 onFail("a->blendOverlap (Error: Value not equal)");
13673 };
13674 }
13675
13676 #endif
13677 #ifdef VK_NV_fragment_coverage_to_color
checkEqual_VkPipelineCoverageToColorStateCreateInfoNV(const VkPipelineCoverageToColorStateCreateInfoNV * a,const VkPipelineCoverageToColorStateCreateInfoNV * b,OnFailCompareFunc onFail)13678 void checkEqual_VkPipelineCoverageToColorStateCreateInfoNV(
13679 const VkPipelineCoverageToColorStateCreateInfoNV* a,
13680 const VkPipelineCoverageToColorStateCreateInfoNV* b, OnFailCompareFunc onFail) {
13681 if (!((a->sType) == (b->sType))) {
13682 onFail("a->sType (Error: Value not equal)");
13683 };
13684 if (a->pNext) {
13685 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13686 }
13687 if (!((a->flags) == (b->flags))) {
13688 onFail("a->flags (Error: Value not equal)");
13689 };
13690 if (!((a->coverageToColorEnable) == (b->coverageToColorEnable))) {
13691 onFail("a->coverageToColorEnable (Error: Value not equal)");
13692 };
13693 if (!((a->coverageToColorLocation) == (b->coverageToColorLocation))) {
13694 onFail("a->coverageToColorLocation (Error: Value not equal)");
13695 };
13696 }
13697
13698 #endif
13699 #ifdef VK_NV_framebuffer_mixed_samples
checkEqual_VkPipelineCoverageModulationStateCreateInfoNV(const VkPipelineCoverageModulationStateCreateInfoNV * a,const VkPipelineCoverageModulationStateCreateInfoNV * b,OnFailCompareFunc onFail)13700 void checkEqual_VkPipelineCoverageModulationStateCreateInfoNV(
13701 const VkPipelineCoverageModulationStateCreateInfoNV* a,
13702 const VkPipelineCoverageModulationStateCreateInfoNV* b, OnFailCompareFunc onFail) {
13703 if (!((a->sType) == (b->sType))) {
13704 onFail("a->sType (Error: Value not equal)");
13705 };
13706 if (a->pNext) {
13707 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13708 }
13709 if (!((a->flags) == (b->flags))) {
13710 onFail("a->flags (Error: Value not equal)");
13711 };
13712 if (!((a->coverageModulationMode) == (b->coverageModulationMode))) {
13713 onFail("a->coverageModulationMode (Error: Value not equal)");
13714 };
13715 if (!((a->coverageModulationTableEnable) == (b->coverageModulationTableEnable))) {
13716 onFail("a->coverageModulationTableEnable (Error: Value not equal)");
13717 };
13718 if (!((a->coverageModulationTableCount) == (b->coverageModulationTableCount))) {
13719 onFail("a->coverageModulationTableCount (Error: Value not equal)");
13720 };
13721 if (!((!(a->pCoverageModulationTable) && !(b->pCoverageModulationTable)) ||
13722 ((a->pCoverageModulationTable) && (b->pCoverageModulationTable)))) {
13723 onFail("a->pCoverageModulationTable (Error: Mismatch in optional field)");
13724 };
13725 if (a->pCoverageModulationTable && b->pCoverageModulationTable) {
13726 if (!((a->coverageModulationTableCount) == (b->coverageModulationTableCount))) {
13727 onFail("a->pCoverageModulationTable (Error: Lengths not equal)");
13728 };
13729 if (!((memcmp(a->pCoverageModulationTable, b->pCoverageModulationTable,
13730 a->coverageModulationTableCount * sizeof(const float)) == 0))) {
13731 onFail("a->pCoverageModulationTable (Error: Unequal dyn array)");
13732 };
13733 }
13734 }
13735
13736 #endif
13737 #ifdef VK_NV_fill_rectangle
13738 #endif
13739 #ifdef VK_NV_shader_sm_builtins
checkEqual_VkPhysicalDeviceShaderSMBuiltinsPropertiesNV(const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV * a,const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV * b,OnFailCompareFunc onFail)13740 void checkEqual_VkPhysicalDeviceShaderSMBuiltinsPropertiesNV(
13741 const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* a,
13742 const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV* b, OnFailCompareFunc onFail) {
13743 if (!((a->sType) == (b->sType))) {
13744 onFail("a->sType (Error: Value not equal)");
13745 };
13746 if (a->pNext) {
13747 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13748 }
13749 if (!((a->shaderSMCount) == (b->shaderSMCount))) {
13750 onFail("a->shaderSMCount (Error: Value not equal)");
13751 };
13752 if (!((a->shaderWarpsPerSM) == (b->shaderWarpsPerSM))) {
13753 onFail("a->shaderWarpsPerSM (Error: Value not equal)");
13754 };
13755 }
13756
checkEqual_VkPhysicalDeviceShaderSMBuiltinsFeaturesNV(const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV * a,const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV * b,OnFailCompareFunc onFail)13757 void checkEqual_VkPhysicalDeviceShaderSMBuiltinsFeaturesNV(
13758 const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* a,
13759 const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV* b, OnFailCompareFunc onFail) {
13760 if (!((a->sType) == (b->sType))) {
13761 onFail("a->sType (Error: Value not equal)");
13762 };
13763 if (a->pNext) {
13764 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13765 }
13766 if (!((a->shaderSMBuiltins) == (b->shaderSMBuiltins))) {
13767 onFail("a->shaderSMBuiltins (Error: Value not equal)");
13768 };
13769 }
13770
13771 #endif
13772 #ifdef VK_EXT_post_depth_coverage
13773 #endif
13774 #ifdef VK_EXT_image_drm_format_modifier
checkEqual_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT * a,const VkDrmFormatModifierPropertiesEXT * b,OnFailCompareFunc onFail)13775 void checkEqual_VkDrmFormatModifierPropertiesEXT(const VkDrmFormatModifierPropertiesEXT* a,
13776 const VkDrmFormatModifierPropertiesEXT* b,
13777 OnFailCompareFunc onFail) {
13778 if (!((a->drmFormatModifier) == (b->drmFormatModifier))) {
13779 onFail("a->drmFormatModifier (Error: Value not equal)");
13780 };
13781 if (!((a->drmFormatModifierPlaneCount) == (b->drmFormatModifierPlaneCount))) {
13782 onFail("a->drmFormatModifierPlaneCount (Error: Value not equal)");
13783 };
13784 if (!((a->drmFormatModifierTilingFeatures) == (b->drmFormatModifierTilingFeatures))) {
13785 onFail("a->drmFormatModifierTilingFeatures (Error: Value not equal)");
13786 };
13787 }
13788
checkEqual_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT * a,const VkDrmFormatModifierPropertiesListEXT * b,OnFailCompareFunc onFail)13789 void checkEqual_VkDrmFormatModifierPropertiesListEXT(const VkDrmFormatModifierPropertiesListEXT* a,
13790 const VkDrmFormatModifierPropertiesListEXT* b,
13791 OnFailCompareFunc onFail) {
13792 if (!((a->sType) == (b->sType))) {
13793 onFail("a->sType (Error: Value not equal)");
13794 };
13795 if (a->pNext) {
13796 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13797 }
13798 if (!((a->drmFormatModifierCount) == (b->drmFormatModifierCount))) {
13799 onFail("a->drmFormatModifierCount (Error: Value not equal)");
13800 };
13801 if (!((!(a->pDrmFormatModifierProperties) && !(b->pDrmFormatModifierProperties)) ||
13802 ((a->pDrmFormatModifierProperties) && (b->pDrmFormatModifierProperties)))) {
13803 onFail("a->pDrmFormatModifierProperties (Error: Mismatch in optional field)");
13804 };
13805 if (a->pDrmFormatModifierProperties && b->pDrmFormatModifierProperties) {
13806 if ((a->pDrmFormatModifierProperties) && (b->pDrmFormatModifierProperties)) {
13807 if (!((a->drmFormatModifierCount) == (b->drmFormatModifierCount))) {
13808 onFail("a->pDrmFormatModifierProperties (Error: Lengths not equal)");
13809 };
13810 if ((a->drmFormatModifierCount) == (b->drmFormatModifierCount)) {
13811 if (a) {
13812 for (uint32_t i = 0; i < (uint32_t)a->drmFormatModifierCount; ++i) {
13813 checkEqual_VkDrmFormatModifierPropertiesEXT(
13814 a->pDrmFormatModifierProperties + i,
13815 b->pDrmFormatModifierProperties + i, onFail);
13816 }
13817 }
13818 }
13819 }
13820 }
13821 }
13822
checkEqual_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * a,const VkPhysicalDeviceImageDrmFormatModifierInfoEXT * b,OnFailCompareFunc onFail)13823 void checkEqual_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
13824 const VkPhysicalDeviceImageDrmFormatModifierInfoEXT* a,
13825 const VkPhysicalDeviceImageDrmFormatModifierInfoEXT* b, OnFailCompareFunc onFail) {
13826 if (!((a->sType) == (b->sType))) {
13827 onFail("a->sType (Error: Value not equal)");
13828 };
13829 if (a->pNext) {
13830 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13831 }
13832 if (!((a->drmFormatModifier) == (b->drmFormatModifier))) {
13833 onFail("a->drmFormatModifier (Error: Value not equal)");
13834 };
13835 if (!((a->sharingMode) == (b->sharingMode))) {
13836 onFail("a->sharingMode (Error: Value not equal)");
13837 };
13838 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
13839 onFail("a->queueFamilyIndexCount (Error: Value not equal)");
13840 };
13841 if (!((!(a->pQueueFamilyIndices) && !(b->pQueueFamilyIndices)) ||
13842 ((a->pQueueFamilyIndices) && (b->pQueueFamilyIndices)))) {
13843 onFail("a->pQueueFamilyIndices (Error: Mismatch in optional field)");
13844 };
13845 if (a->pQueueFamilyIndices && b->pQueueFamilyIndices) {
13846 if (!((a->queueFamilyIndexCount) == (b->queueFamilyIndexCount))) {
13847 onFail("a->pQueueFamilyIndices (Error: Lengths not equal)");
13848 };
13849 if (!((memcmp(a->pQueueFamilyIndices, b->pQueueFamilyIndices,
13850 a->queueFamilyIndexCount * sizeof(const uint32_t)) == 0))) {
13851 onFail("a->pQueueFamilyIndices (Error: Unequal dyn array)");
13852 };
13853 }
13854 }
13855
checkEqual_VkImageDrmFormatModifierListCreateInfoEXT(const VkImageDrmFormatModifierListCreateInfoEXT * a,const VkImageDrmFormatModifierListCreateInfoEXT * b,OnFailCompareFunc onFail)13856 void checkEqual_VkImageDrmFormatModifierListCreateInfoEXT(
13857 const VkImageDrmFormatModifierListCreateInfoEXT* a,
13858 const VkImageDrmFormatModifierListCreateInfoEXT* b, OnFailCompareFunc onFail) {
13859 if (!((a->sType) == (b->sType))) {
13860 onFail("a->sType (Error: Value not equal)");
13861 };
13862 if (a->pNext) {
13863 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13864 }
13865 if (!((a->drmFormatModifierCount) == (b->drmFormatModifierCount))) {
13866 onFail("a->drmFormatModifierCount (Error: Value not equal)");
13867 };
13868 if (!((a->drmFormatModifierCount) == (b->drmFormatModifierCount))) {
13869 onFail("a->pDrmFormatModifiers (Error: Lengths not equal)");
13870 };
13871 if (!((memcmp(a->pDrmFormatModifiers, b->pDrmFormatModifiers,
13872 a->drmFormatModifierCount * sizeof(const uint64_t)) == 0))) {
13873 onFail("a->pDrmFormatModifiers (Error: Unequal dyn array)");
13874 };
13875 }
13876
checkEqual_VkImageDrmFormatModifierExplicitCreateInfoEXT(const VkImageDrmFormatModifierExplicitCreateInfoEXT * a,const VkImageDrmFormatModifierExplicitCreateInfoEXT * b,OnFailCompareFunc onFail)13877 void checkEqual_VkImageDrmFormatModifierExplicitCreateInfoEXT(
13878 const VkImageDrmFormatModifierExplicitCreateInfoEXT* a,
13879 const VkImageDrmFormatModifierExplicitCreateInfoEXT* b, OnFailCompareFunc onFail) {
13880 if (!((a->sType) == (b->sType))) {
13881 onFail("a->sType (Error: Value not equal)");
13882 };
13883 if (a->pNext) {
13884 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13885 }
13886 if (!((a->drmFormatModifier) == (b->drmFormatModifier))) {
13887 onFail("a->drmFormatModifier (Error: Value not equal)");
13888 };
13889 if (!((a->drmFormatModifierPlaneCount) == (b->drmFormatModifierPlaneCount))) {
13890 onFail("a->drmFormatModifierPlaneCount (Error: Value not equal)");
13891 };
13892 if ((a->pPlaneLayouts) && (b->pPlaneLayouts)) {
13893 if (!((a->drmFormatModifierPlaneCount) == (b->drmFormatModifierPlaneCount))) {
13894 onFail("a->pPlaneLayouts (Error: Lengths not equal)");
13895 };
13896 if ((a->drmFormatModifierPlaneCount) == (b->drmFormatModifierPlaneCount)) {
13897 if (a) {
13898 for (uint32_t i = 0; i < (uint32_t)a->drmFormatModifierPlaneCount; ++i) {
13899 checkEqual_VkSubresourceLayout(a->pPlaneLayouts + i, b->pPlaneLayouts + i,
13900 onFail);
13901 }
13902 }
13903 }
13904 }
13905 }
13906
checkEqual_VkImageDrmFormatModifierPropertiesEXT(const VkImageDrmFormatModifierPropertiesEXT * a,const VkImageDrmFormatModifierPropertiesEXT * b,OnFailCompareFunc onFail)13907 void checkEqual_VkImageDrmFormatModifierPropertiesEXT(
13908 const VkImageDrmFormatModifierPropertiesEXT* a, const VkImageDrmFormatModifierPropertiesEXT* b,
13909 OnFailCompareFunc onFail) {
13910 if (!((a->sType) == (b->sType))) {
13911 onFail("a->sType (Error: Value not equal)");
13912 };
13913 if (a->pNext) {
13914 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13915 }
13916 if (!((a->drmFormatModifier) == (b->drmFormatModifier))) {
13917 onFail("a->drmFormatModifier (Error: Value not equal)");
13918 };
13919 }
13920
checkEqual_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT * a,const VkDrmFormatModifierProperties2EXT * b,OnFailCompareFunc onFail)13921 void checkEqual_VkDrmFormatModifierProperties2EXT(const VkDrmFormatModifierProperties2EXT* a,
13922 const VkDrmFormatModifierProperties2EXT* b,
13923 OnFailCompareFunc onFail) {
13924 if (!((a->drmFormatModifier) == (b->drmFormatModifier))) {
13925 onFail("a->drmFormatModifier (Error: Value not equal)");
13926 };
13927 if (!((a->drmFormatModifierPlaneCount) == (b->drmFormatModifierPlaneCount))) {
13928 onFail("a->drmFormatModifierPlaneCount (Error: Value not equal)");
13929 };
13930 if (!((a->drmFormatModifierTilingFeatures) == (b->drmFormatModifierTilingFeatures))) {
13931 onFail("a->drmFormatModifierTilingFeatures (Error: Value not equal)");
13932 };
13933 }
13934
checkEqual_VkDrmFormatModifierPropertiesList2EXT(const VkDrmFormatModifierPropertiesList2EXT * a,const VkDrmFormatModifierPropertiesList2EXT * b,OnFailCompareFunc onFail)13935 void checkEqual_VkDrmFormatModifierPropertiesList2EXT(
13936 const VkDrmFormatModifierPropertiesList2EXT* a, const VkDrmFormatModifierPropertiesList2EXT* b,
13937 OnFailCompareFunc onFail) {
13938 if (!((a->sType) == (b->sType))) {
13939 onFail("a->sType (Error: Value not equal)");
13940 };
13941 if (a->pNext) {
13942 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13943 }
13944 if (!((a->drmFormatModifierCount) == (b->drmFormatModifierCount))) {
13945 onFail("a->drmFormatModifierCount (Error: Value not equal)");
13946 };
13947 if (!((!(a->pDrmFormatModifierProperties) && !(b->pDrmFormatModifierProperties)) ||
13948 ((a->pDrmFormatModifierProperties) && (b->pDrmFormatModifierProperties)))) {
13949 onFail("a->pDrmFormatModifierProperties (Error: Mismatch in optional field)");
13950 };
13951 if (a->pDrmFormatModifierProperties && b->pDrmFormatModifierProperties) {
13952 if ((a->pDrmFormatModifierProperties) && (b->pDrmFormatModifierProperties)) {
13953 if (!((a->drmFormatModifierCount) == (b->drmFormatModifierCount))) {
13954 onFail("a->pDrmFormatModifierProperties (Error: Lengths not equal)");
13955 };
13956 if ((a->drmFormatModifierCount) == (b->drmFormatModifierCount)) {
13957 if (a) {
13958 for (uint32_t i = 0; i < (uint32_t)a->drmFormatModifierCount; ++i) {
13959 checkEqual_VkDrmFormatModifierProperties2EXT(
13960 a->pDrmFormatModifierProperties + i,
13961 b->pDrmFormatModifierProperties + i, onFail);
13962 }
13963 }
13964 }
13965 }
13966 }
13967 }
13968
13969 #endif
13970 #ifdef VK_EXT_validation_cache
checkEqual_VkValidationCacheCreateInfoEXT(const VkValidationCacheCreateInfoEXT * a,const VkValidationCacheCreateInfoEXT * b,OnFailCompareFunc onFail)13971 void checkEqual_VkValidationCacheCreateInfoEXT(const VkValidationCacheCreateInfoEXT* a,
13972 const VkValidationCacheCreateInfoEXT* b,
13973 OnFailCompareFunc onFail) {
13974 if (!((a->sType) == (b->sType))) {
13975 onFail("a->sType (Error: Value not equal)");
13976 };
13977 if (a->pNext) {
13978 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13979 }
13980 if (!((a->flags) == (b->flags))) {
13981 onFail("a->flags (Error: Value not equal)");
13982 };
13983 if (!((a->initialDataSize) == (b->initialDataSize))) {
13984 onFail("a->initialDataSize (Error: Value not equal)");
13985 };
13986 }
13987
checkEqual_VkShaderModuleValidationCacheCreateInfoEXT(const VkShaderModuleValidationCacheCreateInfoEXT * a,const VkShaderModuleValidationCacheCreateInfoEXT * b,OnFailCompareFunc onFail)13988 void checkEqual_VkShaderModuleValidationCacheCreateInfoEXT(
13989 const VkShaderModuleValidationCacheCreateInfoEXT* a,
13990 const VkShaderModuleValidationCacheCreateInfoEXT* b, OnFailCompareFunc onFail) {
13991 if (!((a->sType) == (b->sType))) {
13992 onFail("a->sType (Error: Value not equal)");
13993 };
13994 if (a->pNext) {
13995 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
13996 }
13997 if (!((a->validationCache) == (b->validationCache))) {
13998 onFail("a->validationCache (Error: Value not equal)");
13999 };
14000 }
14001
14002 #endif
14003 #ifdef VK_EXT_descriptor_indexing
14004 #endif
14005 #ifdef VK_EXT_shader_viewport_index_layer
14006 #endif
14007 #ifdef VK_NV_shading_rate_image
checkEqual_VkShadingRatePaletteNV(const VkShadingRatePaletteNV * a,const VkShadingRatePaletteNV * b,OnFailCompareFunc onFail)14008 void checkEqual_VkShadingRatePaletteNV(const VkShadingRatePaletteNV* a,
14009 const VkShadingRatePaletteNV* b, OnFailCompareFunc onFail) {
14010 if (!((a->shadingRatePaletteEntryCount) == (b->shadingRatePaletteEntryCount))) {
14011 onFail("a->shadingRatePaletteEntryCount (Error: Value not equal)");
14012 };
14013 if (!((a->shadingRatePaletteEntryCount) == (b->shadingRatePaletteEntryCount))) {
14014 onFail("a->pShadingRatePaletteEntries (Error: Lengths not equal)");
14015 };
14016 if (!((memcmp(a->pShadingRatePaletteEntries, b->pShadingRatePaletteEntries,
14017 a->shadingRatePaletteEntryCount * sizeof(const VkShadingRatePaletteEntryNV)) ==
14018 0))) {
14019 onFail("a->pShadingRatePaletteEntries (Error: Unequal dyn array)");
14020 };
14021 }
14022
checkEqual_VkPipelineViewportShadingRateImageStateCreateInfoNV(const VkPipelineViewportShadingRateImageStateCreateInfoNV * a,const VkPipelineViewportShadingRateImageStateCreateInfoNV * b,OnFailCompareFunc onFail)14023 void checkEqual_VkPipelineViewportShadingRateImageStateCreateInfoNV(
14024 const VkPipelineViewportShadingRateImageStateCreateInfoNV* a,
14025 const VkPipelineViewportShadingRateImageStateCreateInfoNV* b, OnFailCompareFunc onFail) {
14026 if (!((a->sType) == (b->sType))) {
14027 onFail("a->sType (Error: Value not equal)");
14028 };
14029 if (a->pNext) {
14030 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14031 }
14032 if (!((a->shadingRateImageEnable) == (b->shadingRateImageEnable))) {
14033 onFail("a->shadingRateImageEnable (Error: Value not equal)");
14034 };
14035 if (!((a->viewportCount) == (b->viewportCount))) {
14036 onFail("a->viewportCount (Error: Value not equal)");
14037 };
14038 if (!((!(a->pShadingRatePalettes) && !(b->pShadingRatePalettes)) ||
14039 ((a->pShadingRatePalettes) && (b->pShadingRatePalettes)))) {
14040 onFail("a->pShadingRatePalettes (Error: Mismatch in optional field)");
14041 };
14042 if (a->pShadingRatePalettes && b->pShadingRatePalettes) {
14043 if ((a->pShadingRatePalettes) && (b->pShadingRatePalettes)) {
14044 if (!((a->viewportCount) == (b->viewportCount))) {
14045 onFail("a->pShadingRatePalettes (Error: Lengths not equal)");
14046 };
14047 if ((a->viewportCount) == (b->viewportCount)) {
14048 if (a) {
14049 for (uint32_t i = 0; i < (uint32_t)a->viewportCount; ++i) {
14050 checkEqual_VkShadingRatePaletteNV(a->pShadingRatePalettes + i,
14051 b->pShadingRatePalettes + i, onFail);
14052 }
14053 }
14054 }
14055 }
14056 }
14057 }
14058
checkEqual_VkPhysicalDeviceShadingRateImageFeaturesNV(const VkPhysicalDeviceShadingRateImageFeaturesNV * a,const VkPhysicalDeviceShadingRateImageFeaturesNV * b,OnFailCompareFunc onFail)14059 void checkEqual_VkPhysicalDeviceShadingRateImageFeaturesNV(
14060 const VkPhysicalDeviceShadingRateImageFeaturesNV* a,
14061 const VkPhysicalDeviceShadingRateImageFeaturesNV* b, OnFailCompareFunc onFail) {
14062 if (!((a->sType) == (b->sType))) {
14063 onFail("a->sType (Error: Value not equal)");
14064 };
14065 if (a->pNext) {
14066 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14067 }
14068 if (!((a->shadingRateImage) == (b->shadingRateImage))) {
14069 onFail("a->shadingRateImage (Error: Value not equal)");
14070 };
14071 if (!((a->shadingRateCoarseSampleOrder) == (b->shadingRateCoarseSampleOrder))) {
14072 onFail("a->shadingRateCoarseSampleOrder (Error: Value not equal)");
14073 };
14074 }
14075
checkEqual_VkPhysicalDeviceShadingRateImagePropertiesNV(const VkPhysicalDeviceShadingRateImagePropertiesNV * a,const VkPhysicalDeviceShadingRateImagePropertiesNV * b,OnFailCompareFunc onFail)14076 void checkEqual_VkPhysicalDeviceShadingRateImagePropertiesNV(
14077 const VkPhysicalDeviceShadingRateImagePropertiesNV* a,
14078 const VkPhysicalDeviceShadingRateImagePropertiesNV* b, OnFailCompareFunc onFail) {
14079 if (!((a->sType) == (b->sType))) {
14080 onFail("a->sType (Error: Value not equal)");
14081 };
14082 if (a->pNext) {
14083 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14084 }
14085 checkEqual_VkExtent2D(&a->shadingRateTexelSize, &b->shadingRateTexelSize, onFail);
14086 if (!((a->shadingRatePaletteSize) == (b->shadingRatePaletteSize))) {
14087 onFail("a->shadingRatePaletteSize (Error: Value not equal)");
14088 };
14089 if (!((a->shadingRateMaxCoarseSamples) == (b->shadingRateMaxCoarseSamples))) {
14090 onFail("a->shadingRateMaxCoarseSamples (Error: Value not equal)");
14091 };
14092 }
14093
checkEqual_VkCoarseSampleLocationNV(const VkCoarseSampleLocationNV * a,const VkCoarseSampleLocationNV * b,OnFailCompareFunc onFail)14094 void checkEqual_VkCoarseSampleLocationNV(const VkCoarseSampleLocationNV* a,
14095 const VkCoarseSampleLocationNV* b,
14096 OnFailCompareFunc onFail) {
14097 if (!((a->pixelX) == (b->pixelX))) {
14098 onFail("a->pixelX (Error: Value not equal)");
14099 };
14100 if (!((a->pixelY) == (b->pixelY))) {
14101 onFail("a->pixelY (Error: Value not equal)");
14102 };
14103 if (!((a->sample) == (b->sample))) {
14104 onFail("a->sample (Error: Value not equal)");
14105 };
14106 }
14107
checkEqual_VkCoarseSampleOrderCustomNV(const VkCoarseSampleOrderCustomNV * a,const VkCoarseSampleOrderCustomNV * b,OnFailCompareFunc onFail)14108 void checkEqual_VkCoarseSampleOrderCustomNV(const VkCoarseSampleOrderCustomNV* a,
14109 const VkCoarseSampleOrderCustomNV* b,
14110 OnFailCompareFunc onFail) {
14111 if (!((a->shadingRate) == (b->shadingRate))) {
14112 onFail("a->shadingRate (Error: Value not equal)");
14113 };
14114 if (!((a->sampleCount) == (b->sampleCount))) {
14115 onFail("a->sampleCount (Error: Value not equal)");
14116 };
14117 if (!((a->sampleLocationCount) == (b->sampleLocationCount))) {
14118 onFail("a->sampleLocationCount (Error: Value not equal)");
14119 };
14120 if ((a->pSampleLocations) && (b->pSampleLocations)) {
14121 if (!((a->sampleLocationCount) == (b->sampleLocationCount))) {
14122 onFail("a->pSampleLocations (Error: Lengths not equal)");
14123 };
14124 if ((a->sampleLocationCount) == (b->sampleLocationCount)) {
14125 if (a) {
14126 for (uint32_t i = 0; i < (uint32_t)a->sampleLocationCount; ++i) {
14127 checkEqual_VkCoarseSampleLocationNV(a->pSampleLocations + i,
14128 b->pSampleLocations + i, onFail);
14129 }
14130 }
14131 }
14132 }
14133 }
14134
checkEqual_VkPipelineViewportCoarseSampleOrderStateCreateInfoNV(const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV * a,const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV * b,OnFailCompareFunc onFail)14135 void checkEqual_VkPipelineViewportCoarseSampleOrderStateCreateInfoNV(
14136 const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* a,
14137 const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV* b, OnFailCompareFunc onFail) {
14138 if (!((a->sType) == (b->sType))) {
14139 onFail("a->sType (Error: Value not equal)");
14140 };
14141 if (a->pNext) {
14142 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14143 }
14144 if (!((a->sampleOrderType) == (b->sampleOrderType))) {
14145 onFail("a->sampleOrderType (Error: Value not equal)");
14146 };
14147 if (!((a->customSampleOrderCount) == (b->customSampleOrderCount))) {
14148 onFail("a->customSampleOrderCount (Error: Value not equal)");
14149 };
14150 if ((a->pCustomSampleOrders) && (b->pCustomSampleOrders)) {
14151 if (!((a->customSampleOrderCount) == (b->customSampleOrderCount))) {
14152 onFail("a->pCustomSampleOrders (Error: Lengths not equal)");
14153 };
14154 if ((a->customSampleOrderCount) == (b->customSampleOrderCount)) {
14155 if (a) {
14156 for (uint32_t i = 0; i < (uint32_t)a->customSampleOrderCount; ++i) {
14157 checkEqual_VkCoarseSampleOrderCustomNV(a->pCustomSampleOrders + i,
14158 b->pCustomSampleOrders + i, onFail);
14159 }
14160 }
14161 }
14162 }
14163 }
14164
14165 #endif
14166 #ifdef VK_NV_ray_tracing
checkEqual_VkRayTracingShaderGroupCreateInfoNV(const VkRayTracingShaderGroupCreateInfoNV * a,const VkRayTracingShaderGroupCreateInfoNV * b,OnFailCompareFunc onFail)14167 void checkEqual_VkRayTracingShaderGroupCreateInfoNV(const VkRayTracingShaderGroupCreateInfoNV* a,
14168 const VkRayTracingShaderGroupCreateInfoNV* b,
14169 OnFailCompareFunc onFail) {
14170 if (!((a->sType) == (b->sType))) {
14171 onFail("a->sType (Error: Value not equal)");
14172 };
14173 if (a->pNext) {
14174 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14175 }
14176 if (!((a->type) == (b->type))) {
14177 onFail("a->type (Error: Value not equal)");
14178 };
14179 if (!((a->generalShader) == (b->generalShader))) {
14180 onFail("a->generalShader (Error: Value not equal)");
14181 };
14182 if (!((a->closestHitShader) == (b->closestHitShader))) {
14183 onFail("a->closestHitShader (Error: Value not equal)");
14184 };
14185 if (!((a->anyHitShader) == (b->anyHitShader))) {
14186 onFail("a->anyHitShader (Error: Value not equal)");
14187 };
14188 if (!((a->intersectionShader) == (b->intersectionShader))) {
14189 onFail("a->intersectionShader (Error: Value not equal)");
14190 };
14191 }
14192
checkEqual_VkRayTracingPipelineCreateInfoNV(const VkRayTracingPipelineCreateInfoNV * a,const VkRayTracingPipelineCreateInfoNV * b,OnFailCompareFunc onFail)14193 void checkEqual_VkRayTracingPipelineCreateInfoNV(const VkRayTracingPipelineCreateInfoNV* a,
14194 const VkRayTracingPipelineCreateInfoNV* b,
14195 OnFailCompareFunc onFail) {
14196 if (!((a->sType) == (b->sType))) {
14197 onFail("a->sType (Error: Value not equal)");
14198 };
14199 if (a->pNext) {
14200 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14201 }
14202 if (!((a->flags) == (b->flags))) {
14203 onFail("a->flags (Error: Value not equal)");
14204 };
14205 if (!((a->stageCount) == (b->stageCount))) {
14206 onFail("a->stageCount (Error: Value not equal)");
14207 };
14208 if ((a->pStages) && (b->pStages)) {
14209 if (!((a->stageCount) == (b->stageCount))) {
14210 onFail("a->pStages (Error: Lengths not equal)");
14211 };
14212 if ((a->stageCount) == (b->stageCount)) {
14213 if (a) {
14214 for (uint32_t i = 0; i < (uint32_t)a->stageCount; ++i) {
14215 checkEqual_VkPipelineShaderStageCreateInfo(a->pStages + i, b->pStages + i,
14216 onFail);
14217 }
14218 }
14219 }
14220 }
14221 if (!((a->groupCount) == (b->groupCount))) {
14222 onFail("a->groupCount (Error: Value not equal)");
14223 };
14224 if ((a->pGroups) && (b->pGroups)) {
14225 if (!((a->groupCount) == (b->groupCount))) {
14226 onFail("a->pGroups (Error: Lengths not equal)");
14227 };
14228 if ((a->groupCount) == (b->groupCount)) {
14229 if (a) {
14230 for (uint32_t i = 0; i < (uint32_t)a->groupCount; ++i) {
14231 checkEqual_VkRayTracingShaderGroupCreateInfoNV(a->pGroups + i, b->pGroups + i,
14232 onFail);
14233 }
14234 }
14235 }
14236 }
14237 if (!((a->maxRecursionDepth) == (b->maxRecursionDepth))) {
14238 onFail("a->maxRecursionDepth (Error: Value not equal)");
14239 };
14240 if (!((a->layout) == (b->layout))) {
14241 onFail("a->layout (Error: Value not equal)");
14242 };
14243 if (!((a->basePipelineHandle) == (b->basePipelineHandle))) {
14244 onFail("a->basePipelineHandle (Error: Value not equal)");
14245 };
14246 if (!((a->basePipelineIndex) == (b->basePipelineIndex))) {
14247 onFail("a->basePipelineIndex (Error: Value not equal)");
14248 };
14249 }
14250
checkEqual_VkGeometryTrianglesNV(const VkGeometryTrianglesNV * a,const VkGeometryTrianglesNV * b,OnFailCompareFunc onFail)14251 void checkEqual_VkGeometryTrianglesNV(const VkGeometryTrianglesNV* a,
14252 const VkGeometryTrianglesNV* b, OnFailCompareFunc onFail) {
14253 if (!((a->sType) == (b->sType))) {
14254 onFail("a->sType (Error: Value not equal)");
14255 };
14256 if (a->pNext) {
14257 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14258 }
14259 if (!((a->vertexData) == (b->vertexData))) {
14260 onFail("a->vertexData (Error: Value not equal)");
14261 };
14262 if (!((a->vertexOffset) == (b->vertexOffset))) {
14263 onFail("a->vertexOffset (Error: Value not equal)");
14264 };
14265 if (!((a->vertexCount) == (b->vertexCount))) {
14266 onFail("a->vertexCount (Error: Value not equal)");
14267 };
14268 if (!((a->vertexStride) == (b->vertexStride))) {
14269 onFail("a->vertexStride (Error: Value not equal)");
14270 };
14271 if (!((a->vertexFormat) == (b->vertexFormat))) {
14272 onFail("a->vertexFormat (Error: Value not equal)");
14273 };
14274 if (!((a->indexData) == (b->indexData))) {
14275 onFail("a->indexData (Error: Value not equal)");
14276 };
14277 if (!((a->indexOffset) == (b->indexOffset))) {
14278 onFail("a->indexOffset (Error: Value not equal)");
14279 };
14280 if (!((a->indexCount) == (b->indexCount))) {
14281 onFail("a->indexCount (Error: Value not equal)");
14282 };
14283 if (!((a->indexType) == (b->indexType))) {
14284 onFail("a->indexType (Error: Value not equal)");
14285 };
14286 if (!((a->transformData) == (b->transformData))) {
14287 onFail("a->transformData (Error: Value not equal)");
14288 };
14289 if (!((a->transformOffset) == (b->transformOffset))) {
14290 onFail("a->transformOffset (Error: Value not equal)");
14291 };
14292 }
14293
checkEqual_VkGeometryAABBNV(const VkGeometryAABBNV * a,const VkGeometryAABBNV * b,OnFailCompareFunc onFail)14294 void checkEqual_VkGeometryAABBNV(const VkGeometryAABBNV* a, const VkGeometryAABBNV* b,
14295 OnFailCompareFunc onFail) {
14296 if (!((a->sType) == (b->sType))) {
14297 onFail("a->sType (Error: Value not equal)");
14298 };
14299 if (a->pNext) {
14300 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14301 }
14302 if (!((a->aabbData) == (b->aabbData))) {
14303 onFail("a->aabbData (Error: Value not equal)");
14304 };
14305 if (!((a->numAABBs) == (b->numAABBs))) {
14306 onFail("a->numAABBs (Error: Value not equal)");
14307 };
14308 if (!((a->stride) == (b->stride))) {
14309 onFail("a->stride (Error: Value not equal)");
14310 };
14311 if (!((a->offset) == (b->offset))) {
14312 onFail("a->offset (Error: Value not equal)");
14313 };
14314 }
14315
checkEqual_VkGeometryDataNV(const VkGeometryDataNV * a,const VkGeometryDataNV * b,OnFailCompareFunc onFail)14316 void checkEqual_VkGeometryDataNV(const VkGeometryDataNV* a, const VkGeometryDataNV* b,
14317 OnFailCompareFunc onFail) {
14318 checkEqual_VkGeometryTrianglesNV(&a->triangles, &b->triangles, onFail);
14319 checkEqual_VkGeometryAABBNV(&a->aabbs, &b->aabbs, onFail);
14320 }
14321
checkEqual_VkGeometryNV(const VkGeometryNV * a,const VkGeometryNV * b,OnFailCompareFunc onFail)14322 void checkEqual_VkGeometryNV(const VkGeometryNV* a, const VkGeometryNV* b,
14323 OnFailCompareFunc onFail) {
14324 if (!((a->sType) == (b->sType))) {
14325 onFail("a->sType (Error: Value not equal)");
14326 };
14327 if (a->pNext) {
14328 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14329 }
14330 if (!((a->geometryType) == (b->geometryType))) {
14331 onFail("a->geometryType (Error: Value not equal)");
14332 };
14333 checkEqual_VkGeometryDataNV(&a->geometry, &b->geometry, onFail);
14334 if (!((a->flags) == (b->flags))) {
14335 onFail("a->flags (Error: Value not equal)");
14336 };
14337 }
14338
checkEqual_VkAccelerationStructureInfoNV(const VkAccelerationStructureInfoNV * a,const VkAccelerationStructureInfoNV * b,OnFailCompareFunc onFail)14339 void checkEqual_VkAccelerationStructureInfoNV(const VkAccelerationStructureInfoNV* a,
14340 const VkAccelerationStructureInfoNV* b,
14341 OnFailCompareFunc onFail) {
14342 if (!((a->sType) == (b->sType))) {
14343 onFail("a->sType (Error: Value not equal)");
14344 };
14345 if (a->pNext) {
14346 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14347 }
14348 if (!((a->type) == (b->type))) {
14349 onFail("a->type (Error: Value not equal)");
14350 };
14351 if (!((a->flags) == (b->flags))) {
14352 onFail("a->flags (Error: Value not equal)");
14353 };
14354 if (!((a->instanceCount) == (b->instanceCount))) {
14355 onFail("a->instanceCount (Error: Value not equal)");
14356 };
14357 if (!((a->geometryCount) == (b->geometryCount))) {
14358 onFail("a->geometryCount (Error: Value not equal)");
14359 };
14360 if ((a->pGeometries) && (b->pGeometries)) {
14361 if (!((a->geometryCount) == (b->geometryCount))) {
14362 onFail("a->pGeometries (Error: Lengths not equal)");
14363 };
14364 if ((a->geometryCount) == (b->geometryCount)) {
14365 if (a) {
14366 for (uint32_t i = 0; i < (uint32_t)a->geometryCount; ++i) {
14367 checkEqual_VkGeometryNV(a->pGeometries + i, b->pGeometries + i, onFail);
14368 }
14369 }
14370 }
14371 }
14372 }
14373
checkEqual_VkAccelerationStructureCreateInfoNV(const VkAccelerationStructureCreateInfoNV * a,const VkAccelerationStructureCreateInfoNV * b,OnFailCompareFunc onFail)14374 void checkEqual_VkAccelerationStructureCreateInfoNV(const VkAccelerationStructureCreateInfoNV* a,
14375 const VkAccelerationStructureCreateInfoNV* b,
14376 OnFailCompareFunc onFail) {
14377 if (!((a->sType) == (b->sType))) {
14378 onFail("a->sType (Error: Value not equal)");
14379 };
14380 if (a->pNext) {
14381 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14382 }
14383 if (!((a->compactedSize) == (b->compactedSize))) {
14384 onFail("a->compactedSize (Error: Value not equal)");
14385 };
14386 checkEqual_VkAccelerationStructureInfoNV(&a->info, &b->info, onFail);
14387 }
14388
checkEqual_VkBindAccelerationStructureMemoryInfoNV(const VkBindAccelerationStructureMemoryInfoNV * a,const VkBindAccelerationStructureMemoryInfoNV * b,OnFailCompareFunc onFail)14389 void checkEqual_VkBindAccelerationStructureMemoryInfoNV(
14390 const VkBindAccelerationStructureMemoryInfoNV* a,
14391 const VkBindAccelerationStructureMemoryInfoNV* b, OnFailCompareFunc onFail) {
14392 if (!((a->sType) == (b->sType))) {
14393 onFail("a->sType (Error: Value not equal)");
14394 };
14395 if (a->pNext) {
14396 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14397 }
14398 if (!((a->accelerationStructure) == (b->accelerationStructure))) {
14399 onFail("a->accelerationStructure (Error: Value not equal)");
14400 };
14401 if (!((a->memory) == (b->memory))) {
14402 onFail("a->memory (Error: Value not equal)");
14403 };
14404 if (!((a->memoryOffset) == (b->memoryOffset))) {
14405 onFail("a->memoryOffset (Error: Value not equal)");
14406 };
14407 if (!((a->deviceIndexCount) == (b->deviceIndexCount))) {
14408 onFail("a->deviceIndexCount (Error: Value not equal)");
14409 };
14410 if (!((a->deviceIndexCount) == (b->deviceIndexCount))) {
14411 onFail("a->pDeviceIndices (Error: Lengths not equal)");
14412 };
14413 if (!((memcmp(a->pDeviceIndices, b->pDeviceIndices,
14414 a->deviceIndexCount * sizeof(const uint32_t)) == 0))) {
14415 onFail("a->pDeviceIndices (Error: Unequal dyn array)");
14416 };
14417 }
14418
checkEqual_VkWriteDescriptorSetAccelerationStructureNV(const VkWriteDescriptorSetAccelerationStructureNV * a,const VkWriteDescriptorSetAccelerationStructureNV * b,OnFailCompareFunc onFail)14419 void checkEqual_VkWriteDescriptorSetAccelerationStructureNV(
14420 const VkWriteDescriptorSetAccelerationStructureNV* a,
14421 const VkWriteDescriptorSetAccelerationStructureNV* b, OnFailCompareFunc onFail) {
14422 if (!((a->sType) == (b->sType))) {
14423 onFail("a->sType (Error: Value not equal)");
14424 };
14425 if (a->pNext) {
14426 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14427 }
14428 if (!((a->accelerationStructureCount) == (b->accelerationStructureCount))) {
14429 onFail("a->accelerationStructureCount (Error: Value not equal)");
14430 };
14431 if (!((!(a->pAccelerationStructures) && !(b->pAccelerationStructures)) ||
14432 ((a->pAccelerationStructures) && (b->pAccelerationStructures)))) {
14433 onFail("a->pAccelerationStructures (Error: Mismatch in optional field)");
14434 };
14435 if (a->pAccelerationStructures && b->pAccelerationStructures) {
14436 if (!((a->accelerationStructureCount) == (b->accelerationStructureCount))) {
14437 onFail("a->pAccelerationStructures (Error: Lengths not equal)");
14438 };
14439 if (!((memcmp(a->pAccelerationStructures, b->pAccelerationStructures,
14440 a->accelerationStructureCount * sizeof(const VkAccelerationStructureNV)) ==
14441 0))) {
14442 onFail("a->pAccelerationStructures (Error: Unequal dyn array)");
14443 };
14444 }
14445 }
14446
checkEqual_VkAccelerationStructureMemoryRequirementsInfoNV(const VkAccelerationStructureMemoryRequirementsInfoNV * a,const VkAccelerationStructureMemoryRequirementsInfoNV * b,OnFailCompareFunc onFail)14447 void checkEqual_VkAccelerationStructureMemoryRequirementsInfoNV(
14448 const VkAccelerationStructureMemoryRequirementsInfoNV* a,
14449 const VkAccelerationStructureMemoryRequirementsInfoNV* b, OnFailCompareFunc onFail) {
14450 if (!((a->sType) == (b->sType))) {
14451 onFail("a->sType (Error: Value not equal)");
14452 };
14453 if (a->pNext) {
14454 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14455 }
14456 if (!((a->type) == (b->type))) {
14457 onFail("a->type (Error: Value not equal)");
14458 };
14459 if (!((a->accelerationStructure) == (b->accelerationStructure))) {
14460 onFail("a->accelerationStructure (Error: Value not equal)");
14461 };
14462 }
14463
checkEqual_VkPhysicalDeviceRayTracingPropertiesNV(const VkPhysicalDeviceRayTracingPropertiesNV * a,const VkPhysicalDeviceRayTracingPropertiesNV * b,OnFailCompareFunc onFail)14464 void checkEqual_VkPhysicalDeviceRayTracingPropertiesNV(
14465 const VkPhysicalDeviceRayTracingPropertiesNV* a,
14466 const VkPhysicalDeviceRayTracingPropertiesNV* b, OnFailCompareFunc onFail) {
14467 if (!((a->sType) == (b->sType))) {
14468 onFail("a->sType (Error: Value not equal)");
14469 };
14470 if (a->pNext) {
14471 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14472 }
14473 if (!((a->shaderGroupHandleSize) == (b->shaderGroupHandleSize))) {
14474 onFail("a->shaderGroupHandleSize (Error: Value not equal)");
14475 };
14476 if (!((a->maxRecursionDepth) == (b->maxRecursionDepth))) {
14477 onFail("a->maxRecursionDepth (Error: Value not equal)");
14478 };
14479 if (!((a->maxShaderGroupStride) == (b->maxShaderGroupStride))) {
14480 onFail("a->maxShaderGroupStride (Error: Value not equal)");
14481 };
14482 if (!((a->shaderGroupBaseAlignment) == (b->shaderGroupBaseAlignment))) {
14483 onFail("a->shaderGroupBaseAlignment (Error: Value not equal)");
14484 };
14485 if (!((a->maxGeometryCount) == (b->maxGeometryCount))) {
14486 onFail("a->maxGeometryCount (Error: Value not equal)");
14487 };
14488 if (!((a->maxInstanceCount) == (b->maxInstanceCount))) {
14489 onFail("a->maxInstanceCount (Error: Value not equal)");
14490 };
14491 if (!((a->maxTriangleCount) == (b->maxTriangleCount))) {
14492 onFail("a->maxTriangleCount (Error: Value not equal)");
14493 };
14494 if (!((a->maxDescriptorSetAccelerationStructures) ==
14495 (b->maxDescriptorSetAccelerationStructures))) {
14496 onFail("a->maxDescriptorSetAccelerationStructures (Error: Value not equal)");
14497 };
14498 }
14499
checkEqual_VkTransformMatrixKHR(const VkTransformMatrixKHR * a,const VkTransformMatrixKHR * b,OnFailCompareFunc onFail)14500 void checkEqual_VkTransformMatrixKHR(const VkTransformMatrixKHR* a, const VkTransformMatrixKHR* b,
14501 OnFailCompareFunc onFail) {
14502 if (!((memcmp(a->matrix, b->matrix, ((3) * (4)) * sizeof(float)) == 0))) {
14503 onFail("a->matrix (Error: Unequal static array)");
14504 };
14505 }
14506
checkEqual_VkAabbPositionsKHR(const VkAabbPositionsKHR * a,const VkAabbPositionsKHR * b,OnFailCompareFunc onFail)14507 void checkEqual_VkAabbPositionsKHR(const VkAabbPositionsKHR* a, const VkAabbPositionsKHR* b,
14508 OnFailCompareFunc onFail) {
14509 if (!((a->minX) == (b->minX))) {
14510 onFail("a->minX (Error: Value not equal)");
14511 };
14512 if (!((a->minY) == (b->minY))) {
14513 onFail("a->minY (Error: Value not equal)");
14514 };
14515 if (!((a->minZ) == (b->minZ))) {
14516 onFail("a->minZ (Error: Value not equal)");
14517 };
14518 if (!((a->maxX) == (b->maxX))) {
14519 onFail("a->maxX (Error: Value not equal)");
14520 };
14521 if (!((a->maxY) == (b->maxY))) {
14522 onFail("a->maxY (Error: Value not equal)");
14523 };
14524 if (!((a->maxZ) == (b->maxZ))) {
14525 onFail("a->maxZ (Error: Value not equal)");
14526 };
14527 }
14528
checkEqual_VkAccelerationStructureInstanceKHR(const VkAccelerationStructureInstanceKHR * a,const VkAccelerationStructureInstanceKHR * b,OnFailCompareFunc onFail)14529 void checkEqual_VkAccelerationStructureInstanceKHR(const VkAccelerationStructureInstanceKHR* a,
14530 const VkAccelerationStructureInstanceKHR* b,
14531 OnFailCompareFunc onFail) {
14532 checkEqual_VkTransformMatrixKHR(&a->transform, &b->transform, onFail);
14533 if (!((a->instanceCustomIndex) == (b->instanceCustomIndex))) {
14534 onFail("a->instanceCustomIndex (Error: Value not equal)");
14535 };
14536 if (!((a->mask) == (b->mask))) {
14537 onFail("a->mask (Error: Value not equal)");
14538 };
14539 if (!((a->instanceShaderBindingTableRecordOffset) ==
14540 (b->instanceShaderBindingTableRecordOffset))) {
14541 onFail("a->instanceShaderBindingTableRecordOffset (Error: Value not equal)");
14542 };
14543 if (!((a->flags) == (b->flags))) {
14544 onFail("a->flags (Error: Value not equal)");
14545 };
14546 if (!((a->accelerationStructureReference) == (b->accelerationStructureReference))) {
14547 onFail("a->accelerationStructureReference (Error: Value not equal)");
14548 };
14549 }
14550
14551 #endif
14552 #ifdef VK_NV_representative_fragment_test
checkEqual_VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV(const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV * a,const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV * b,OnFailCompareFunc onFail)14553 void checkEqual_VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV(
14554 const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* a,
14555 const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV* b, OnFailCompareFunc onFail) {
14556 if (!((a->sType) == (b->sType))) {
14557 onFail("a->sType (Error: Value not equal)");
14558 };
14559 if (a->pNext) {
14560 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14561 }
14562 if (!((a->representativeFragmentTest) == (b->representativeFragmentTest))) {
14563 onFail("a->representativeFragmentTest (Error: Value not equal)");
14564 };
14565 }
14566
checkEqual_VkPipelineRepresentativeFragmentTestStateCreateInfoNV(const VkPipelineRepresentativeFragmentTestStateCreateInfoNV * a,const VkPipelineRepresentativeFragmentTestStateCreateInfoNV * b,OnFailCompareFunc onFail)14567 void checkEqual_VkPipelineRepresentativeFragmentTestStateCreateInfoNV(
14568 const VkPipelineRepresentativeFragmentTestStateCreateInfoNV* a,
14569 const VkPipelineRepresentativeFragmentTestStateCreateInfoNV* b, OnFailCompareFunc onFail) {
14570 if (!((a->sType) == (b->sType))) {
14571 onFail("a->sType (Error: Value not equal)");
14572 };
14573 if (a->pNext) {
14574 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14575 }
14576 if (!((a->representativeFragmentTestEnable) == (b->representativeFragmentTestEnable))) {
14577 onFail("a->representativeFragmentTestEnable (Error: Value not equal)");
14578 };
14579 }
14580
14581 #endif
14582 #ifdef VK_EXT_filter_cubic
checkEqual_VkPhysicalDeviceImageViewImageFormatInfoEXT(const VkPhysicalDeviceImageViewImageFormatInfoEXT * a,const VkPhysicalDeviceImageViewImageFormatInfoEXT * b,OnFailCompareFunc onFail)14583 void checkEqual_VkPhysicalDeviceImageViewImageFormatInfoEXT(
14584 const VkPhysicalDeviceImageViewImageFormatInfoEXT* a,
14585 const VkPhysicalDeviceImageViewImageFormatInfoEXT* b, OnFailCompareFunc onFail) {
14586 if (!((a->sType) == (b->sType))) {
14587 onFail("a->sType (Error: Value not equal)");
14588 };
14589 if (a->pNext) {
14590 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14591 }
14592 if (!((a->imageViewType) == (b->imageViewType))) {
14593 onFail("a->imageViewType (Error: Value not equal)");
14594 };
14595 }
14596
checkEqual_VkFilterCubicImageViewImageFormatPropertiesEXT(const VkFilterCubicImageViewImageFormatPropertiesEXT * a,const VkFilterCubicImageViewImageFormatPropertiesEXT * b,OnFailCompareFunc onFail)14597 void checkEqual_VkFilterCubicImageViewImageFormatPropertiesEXT(
14598 const VkFilterCubicImageViewImageFormatPropertiesEXT* a,
14599 const VkFilterCubicImageViewImageFormatPropertiesEXT* b, OnFailCompareFunc onFail) {
14600 if (!((a->sType) == (b->sType))) {
14601 onFail("a->sType (Error: Value not equal)");
14602 };
14603 if (a->pNext) {
14604 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14605 }
14606 if (!((a->filterCubic) == (b->filterCubic))) {
14607 onFail("a->filterCubic (Error: Value not equal)");
14608 };
14609 if (!((a->filterCubicMinmax) == (b->filterCubicMinmax))) {
14610 onFail("a->filterCubicMinmax (Error: Value not equal)");
14611 };
14612 }
14613
14614 #endif
14615 #ifdef VK_QCOM_render_pass_shader_resolve
14616 #endif
14617 #ifdef VK_EXT_global_priority
14618 #endif
14619 #ifdef VK_EXT_external_memory_host
checkEqual_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT * a,const VkImportMemoryHostPointerInfoEXT * b,OnFailCompareFunc onFail)14620 void checkEqual_VkImportMemoryHostPointerInfoEXT(const VkImportMemoryHostPointerInfoEXT* a,
14621 const VkImportMemoryHostPointerInfoEXT* b,
14622 OnFailCompareFunc onFail) {
14623 if (!((a->sType) == (b->sType))) {
14624 onFail("a->sType (Error: Value not equal)");
14625 };
14626 if (a->pNext) {
14627 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14628 }
14629 if (!((a->handleType) == (b->handleType))) {
14630 onFail("a->handleType (Error: Value not equal)");
14631 };
14632 if (!((!(a->pHostPointer) && !(b->pHostPointer)) || ((a->pHostPointer) && (b->pHostPointer)))) {
14633 onFail("a->pHostPointer (Error: Mismatch in optional field)");
14634 };
14635 }
14636
checkEqual_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT * a,const VkMemoryHostPointerPropertiesEXT * b,OnFailCompareFunc onFail)14637 void checkEqual_VkMemoryHostPointerPropertiesEXT(const VkMemoryHostPointerPropertiesEXT* a,
14638 const VkMemoryHostPointerPropertiesEXT* b,
14639 OnFailCompareFunc onFail) {
14640 if (!((a->sType) == (b->sType))) {
14641 onFail("a->sType (Error: Value not equal)");
14642 };
14643 if (a->pNext) {
14644 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14645 }
14646 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
14647 onFail("a->memoryTypeBits (Error: Value not equal)");
14648 };
14649 }
14650
checkEqual_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * a,const VkPhysicalDeviceExternalMemoryHostPropertiesEXT * b,OnFailCompareFunc onFail)14651 void checkEqual_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(
14652 const VkPhysicalDeviceExternalMemoryHostPropertiesEXT* a,
14653 const VkPhysicalDeviceExternalMemoryHostPropertiesEXT* b, OnFailCompareFunc onFail) {
14654 if (!((a->sType) == (b->sType))) {
14655 onFail("a->sType (Error: Value not equal)");
14656 };
14657 if (a->pNext) {
14658 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14659 }
14660 if (!((a->minImportedHostPointerAlignment) == (b->minImportedHostPointerAlignment))) {
14661 onFail("a->minImportedHostPointerAlignment (Error: Value not equal)");
14662 };
14663 }
14664
14665 #endif
14666 #ifdef VK_AMD_buffer_marker
14667 #endif
14668 #ifdef VK_AMD_pipeline_compiler_control
checkEqual_VkPipelineCompilerControlCreateInfoAMD(const VkPipelineCompilerControlCreateInfoAMD * a,const VkPipelineCompilerControlCreateInfoAMD * b,OnFailCompareFunc onFail)14669 void checkEqual_VkPipelineCompilerControlCreateInfoAMD(
14670 const VkPipelineCompilerControlCreateInfoAMD* a,
14671 const VkPipelineCompilerControlCreateInfoAMD* b, OnFailCompareFunc onFail) {
14672 if (!((a->sType) == (b->sType))) {
14673 onFail("a->sType (Error: Value not equal)");
14674 };
14675 if (a->pNext) {
14676 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14677 }
14678 if (!((a->compilerControlFlags) == (b->compilerControlFlags))) {
14679 onFail("a->compilerControlFlags (Error: Value not equal)");
14680 };
14681 }
14682
14683 #endif
14684 #ifdef VK_EXT_calibrated_timestamps
checkEqual_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT * a,const VkCalibratedTimestampInfoEXT * b,OnFailCompareFunc onFail)14685 void checkEqual_VkCalibratedTimestampInfoEXT(const VkCalibratedTimestampInfoEXT* a,
14686 const VkCalibratedTimestampInfoEXT* b,
14687 OnFailCompareFunc onFail) {
14688 if (!((a->sType) == (b->sType))) {
14689 onFail("a->sType (Error: Value not equal)");
14690 };
14691 if (a->pNext) {
14692 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14693 }
14694 if (!((a->timeDomain) == (b->timeDomain))) {
14695 onFail("a->timeDomain (Error: Value not equal)");
14696 };
14697 }
14698
14699 #endif
14700 #ifdef VK_AMD_shader_core_properties
checkEqual_VkPhysicalDeviceShaderCorePropertiesAMD(const VkPhysicalDeviceShaderCorePropertiesAMD * a,const VkPhysicalDeviceShaderCorePropertiesAMD * b,OnFailCompareFunc onFail)14701 void checkEqual_VkPhysicalDeviceShaderCorePropertiesAMD(
14702 const VkPhysicalDeviceShaderCorePropertiesAMD* a,
14703 const VkPhysicalDeviceShaderCorePropertiesAMD* b, OnFailCompareFunc onFail) {
14704 if (!((a->sType) == (b->sType))) {
14705 onFail("a->sType (Error: Value not equal)");
14706 };
14707 if (a->pNext) {
14708 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14709 }
14710 if (!((a->shaderEngineCount) == (b->shaderEngineCount))) {
14711 onFail("a->shaderEngineCount (Error: Value not equal)");
14712 };
14713 if (!((a->shaderArraysPerEngineCount) == (b->shaderArraysPerEngineCount))) {
14714 onFail("a->shaderArraysPerEngineCount (Error: Value not equal)");
14715 };
14716 if (!((a->computeUnitsPerShaderArray) == (b->computeUnitsPerShaderArray))) {
14717 onFail("a->computeUnitsPerShaderArray (Error: Value not equal)");
14718 };
14719 if (!((a->simdPerComputeUnit) == (b->simdPerComputeUnit))) {
14720 onFail("a->simdPerComputeUnit (Error: Value not equal)");
14721 };
14722 if (!((a->wavefrontsPerSimd) == (b->wavefrontsPerSimd))) {
14723 onFail("a->wavefrontsPerSimd (Error: Value not equal)");
14724 };
14725 if (!((a->wavefrontSize) == (b->wavefrontSize))) {
14726 onFail("a->wavefrontSize (Error: Value not equal)");
14727 };
14728 if (!((a->sgprsPerSimd) == (b->sgprsPerSimd))) {
14729 onFail("a->sgprsPerSimd (Error: Value not equal)");
14730 };
14731 if (!((a->minSgprAllocation) == (b->minSgprAllocation))) {
14732 onFail("a->minSgprAllocation (Error: Value not equal)");
14733 };
14734 if (!((a->maxSgprAllocation) == (b->maxSgprAllocation))) {
14735 onFail("a->maxSgprAllocation (Error: Value not equal)");
14736 };
14737 if (!((a->sgprAllocationGranularity) == (b->sgprAllocationGranularity))) {
14738 onFail("a->sgprAllocationGranularity (Error: Value not equal)");
14739 };
14740 if (!((a->vgprsPerSimd) == (b->vgprsPerSimd))) {
14741 onFail("a->vgprsPerSimd (Error: Value not equal)");
14742 };
14743 if (!((a->minVgprAllocation) == (b->minVgprAllocation))) {
14744 onFail("a->minVgprAllocation (Error: Value not equal)");
14745 };
14746 if (!((a->maxVgprAllocation) == (b->maxVgprAllocation))) {
14747 onFail("a->maxVgprAllocation (Error: Value not equal)");
14748 };
14749 if (!((a->vgprAllocationGranularity) == (b->vgprAllocationGranularity))) {
14750 onFail("a->vgprAllocationGranularity (Error: Value not equal)");
14751 };
14752 }
14753
14754 #endif
14755 #ifdef VK_AMD_memory_overallocation_behavior
checkEqual_VkDeviceMemoryOverallocationCreateInfoAMD(const VkDeviceMemoryOverallocationCreateInfoAMD * a,const VkDeviceMemoryOverallocationCreateInfoAMD * b,OnFailCompareFunc onFail)14756 void checkEqual_VkDeviceMemoryOverallocationCreateInfoAMD(
14757 const VkDeviceMemoryOverallocationCreateInfoAMD* a,
14758 const VkDeviceMemoryOverallocationCreateInfoAMD* b, OnFailCompareFunc onFail) {
14759 if (!((a->sType) == (b->sType))) {
14760 onFail("a->sType (Error: Value not equal)");
14761 };
14762 if (a->pNext) {
14763 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14764 }
14765 if (!((a->overallocationBehavior) == (b->overallocationBehavior))) {
14766 onFail("a->overallocationBehavior (Error: Value not equal)");
14767 };
14768 }
14769
14770 #endif
14771 #ifdef VK_EXT_vertex_attribute_divisor
checkEqual_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * a,const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT * b,OnFailCompareFunc onFail)14772 void checkEqual_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
14773 const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* a,
14774 const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* b, OnFailCompareFunc onFail) {
14775 if (!((a->sType) == (b->sType))) {
14776 onFail("a->sType (Error: Value not equal)");
14777 };
14778 if (a->pNext) {
14779 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14780 }
14781 if (!((a->maxVertexAttribDivisor) == (b->maxVertexAttribDivisor))) {
14782 onFail("a->maxVertexAttribDivisor (Error: Value not equal)");
14783 };
14784 }
14785
checkEqual_VkVertexInputBindingDivisorDescriptionEXT(const VkVertexInputBindingDivisorDescriptionEXT * a,const VkVertexInputBindingDivisorDescriptionEXT * b,OnFailCompareFunc onFail)14786 void checkEqual_VkVertexInputBindingDivisorDescriptionEXT(
14787 const VkVertexInputBindingDivisorDescriptionEXT* a,
14788 const VkVertexInputBindingDivisorDescriptionEXT* b, OnFailCompareFunc onFail) {
14789 if (!((a->binding) == (b->binding))) {
14790 onFail("a->binding (Error: Value not equal)");
14791 };
14792 if (!((a->divisor) == (b->divisor))) {
14793 onFail("a->divisor (Error: Value not equal)");
14794 };
14795 }
14796
checkEqual_VkPipelineVertexInputDivisorStateCreateInfoEXT(const VkPipelineVertexInputDivisorStateCreateInfoEXT * a,const VkPipelineVertexInputDivisorStateCreateInfoEXT * b,OnFailCompareFunc onFail)14797 void checkEqual_VkPipelineVertexInputDivisorStateCreateInfoEXT(
14798 const VkPipelineVertexInputDivisorStateCreateInfoEXT* a,
14799 const VkPipelineVertexInputDivisorStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
14800 if (!((a->sType) == (b->sType))) {
14801 onFail("a->sType (Error: Value not equal)");
14802 };
14803 if (a->pNext) {
14804 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14805 }
14806 if (!((a->vertexBindingDivisorCount) == (b->vertexBindingDivisorCount))) {
14807 onFail("a->vertexBindingDivisorCount (Error: Value not equal)");
14808 };
14809 if ((a->pVertexBindingDivisors) && (b->pVertexBindingDivisors)) {
14810 if (!((a->vertexBindingDivisorCount) == (b->vertexBindingDivisorCount))) {
14811 onFail("a->pVertexBindingDivisors (Error: Lengths not equal)");
14812 };
14813 if ((a->vertexBindingDivisorCount) == (b->vertexBindingDivisorCount)) {
14814 if (a) {
14815 for (uint32_t i = 0; i < (uint32_t)a->vertexBindingDivisorCount; ++i) {
14816 checkEqual_VkVertexInputBindingDivisorDescriptionEXT(
14817 a->pVertexBindingDivisors + i, b->pVertexBindingDivisors + i, onFail);
14818 }
14819 }
14820 }
14821 }
14822 }
14823
checkEqual_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * a,const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT * b,OnFailCompareFunc onFail)14824 void checkEqual_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(
14825 const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* a,
14826 const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT* b, OnFailCompareFunc onFail) {
14827 if (!((a->sType) == (b->sType))) {
14828 onFail("a->sType (Error: Value not equal)");
14829 };
14830 if (a->pNext) {
14831 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14832 }
14833 if (!((a->vertexAttributeInstanceRateDivisor) == (b->vertexAttributeInstanceRateDivisor))) {
14834 onFail("a->vertexAttributeInstanceRateDivisor (Error: Value not equal)");
14835 };
14836 if (!((a->vertexAttributeInstanceRateZeroDivisor) ==
14837 (b->vertexAttributeInstanceRateZeroDivisor))) {
14838 onFail("a->vertexAttributeInstanceRateZeroDivisor (Error: Value not equal)");
14839 };
14840 }
14841
14842 #endif
14843 #ifdef VK_GGP_frame_token
checkEqual_VkPresentFrameTokenGGP(const VkPresentFrameTokenGGP * a,const VkPresentFrameTokenGGP * b,OnFailCompareFunc onFail)14844 void checkEqual_VkPresentFrameTokenGGP(const VkPresentFrameTokenGGP* a,
14845 const VkPresentFrameTokenGGP* b, OnFailCompareFunc onFail) {
14846 if (!((a->sType) == (b->sType))) {
14847 onFail("a->sType (Error: Value not equal)");
14848 };
14849 if (a->pNext) {
14850 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14851 }
14852 if (!((a->frameToken) == (b->frameToken))) {
14853 onFail("a->frameToken (Error: Value not equal)");
14854 };
14855 }
14856
14857 #endif
14858 #ifdef VK_EXT_pipeline_creation_feedback
14859 #endif
14860 #ifdef VK_NV_shader_subgroup_partitioned
14861 #endif
14862 #ifdef VK_NV_compute_shader_derivatives
checkEqual_VkPhysicalDeviceComputeShaderDerivativesFeaturesNV(const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV * a,const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV * b,OnFailCompareFunc onFail)14863 void checkEqual_VkPhysicalDeviceComputeShaderDerivativesFeaturesNV(
14864 const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* a,
14865 const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV* b, OnFailCompareFunc onFail) {
14866 if (!((a->sType) == (b->sType))) {
14867 onFail("a->sType (Error: Value not equal)");
14868 };
14869 if (a->pNext) {
14870 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14871 }
14872 if (!((a->computeDerivativeGroupQuads) == (b->computeDerivativeGroupQuads))) {
14873 onFail("a->computeDerivativeGroupQuads (Error: Value not equal)");
14874 };
14875 if (!((a->computeDerivativeGroupLinear) == (b->computeDerivativeGroupLinear))) {
14876 onFail("a->computeDerivativeGroupLinear (Error: Value not equal)");
14877 };
14878 }
14879
14880 #endif
14881 #ifdef VK_NV_mesh_shader
checkEqual_VkPhysicalDeviceMeshShaderFeaturesNV(const VkPhysicalDeviceMeshShaderFeaturesNV * a,const VkPhysicalDeviceMeshShaderFeaturesNV * b,OnFailCompareFunc onFail)14882 void checkEqual_VkPhysicalDeviceMeshShaderFeaturesNV(const VkPhysicalDeviceMeshShaderFeaturesNV* a,
14883 const VkPhysicalDeviceMeshShaderFeaturesNV* b,
14884 OnFailCompareFunc onFail) {
14885 if (!((a->sType) == (b->sType))) {
14886 onFail("a->sType (Error: Value not equal)");
14887 };
14888 if (a->pNext) {
14889 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14890 }
14891 if (!((a->taskShader) == (b->taskShader))) {
14892 onFail("a->taskShader (Error: Value not equal)");
14893 };
14894 if (!((a->meshShader) == (b->meshShader))) {
14895 onFail("a->meshShader (Error: Value not equal)");
14896 };
14897 }
14898
checkEqual_VkPhysicalDeviceMeshShaderPropertiesNV(const VkPhysicalDeviceMeshShaderPropertiesNV * a,const VkPhysicalDeviceMeshShaderPropertiesNV * b,OnFailCompareFunc onFail)14899 void checkEqual_VkPhysicalDeviceMeshShaderPropertiesNV(
14900 const VkPhysicalDeviceMeshShaderPropertiesNV* a,
14901 const VkPhysicalDeviceMeshShaderPropertiesNV* b, OnFailCompareFunc onFail) {
14902 if (!((a->sType) == (b->sType))) {
14903 onFail("a->sType (Error: Value not equal)");
14904 };
14905 if (a->pNext) {
14906 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14907 }
14908 if (!((a->maxDrawMeshTasksCount) == (b->maxDrawMeshTasksCount))) {
14909 onFail("a->maxDrawMeshTasksCount (Error: Value not equal)");
14910 };
14911 if (!((a->maxTaskWorkGroupInvocations) == (b->maxTaskWorkGroupInvocations))) {
14912 onFail("a->maxTaskWorkGroupInvocations (Error: Value not equal)");
14913 };
14914 if (!((memcmp(a->maxTaskWorkGroupSize, b->maxTaskWorkGroupSize, 3 * sizeof(uint32_t)) == 0))) {
14915 onFail("a->maxTaskWorkGroupSize (Error: Unequal static array)");
14916 };
14917 if (!((a->maxTaskTotalMemorySize) == (b->maxTaskTotalMemorySize))) {
14918 onFail("a->maxTaskTotalMemorySize (Error: Value not equal)");
14919 };
14920 if (!((a->maxTaskOutputCount) == (b->maxTaskOutputCount))) {
14921 onFail("a->maxTaskOutputCount (Error: Value not equal)");
14922 };
14923 if (!((a->maxMeshWorkGroupInvocations) == (b->maxMeshWorkGroupInvocations))) {
14924 onFail("a->maxMeshWorkGroupInvocations (Error: Value not equal)");
14925 };
14926 if (!((memcmp(a->maxMeshWorkGroupSize, b->maxMeshWorkGroupSize, 3 * sizeof(uint32_t)) == 0))) {
14927 onFail("a->maxMeshWorkGroupSize (Error: Unequal static array)");
14928 };
14929 if (!((a->maxMeshTotalMemorySize) == (b->maxMeshTotalMemorySize))) {
14930 onFail("a->maxMeshTotalMemorySize (Error: Value not equal)");
14931 };
14932 if (!((a->maxMeshOutputVertices) == (b->maxMeshOutputVertices))) {
14933 onFail("a->maxMeshOutputVertices (Error: Value not equal)");
14934 };
14935 if (!((a->maxMeshOutputPrimitives) == (b->maxMeshOutputPrimitives))) {
14936 onFail("a->maxMeshOutputPrimitives (Error: Value not equal)");
14937 };
14938 if (!((a->maxMeshMultiviewViewCount) == (b->maxMeshMultiviewViewCount))) {
14939 onFail("a->maxMeshMultiviewViewCount (Error: Value not equal)");
14940 };
14941 if (!((a->meshOutputPerVertexGranularity) == (b->meshOutputPerVertexGranularity))) {
14942 onFail("a->meshOutputPerVertexGranularity (Error: Value not equal)");
14943 };
14944 if (!((a->meshOutputPerPrimitiveGranularity) == (b->meshOutputPerPrimitiveGranularity))) {
14945 onFail("a->meshOutputPerPrimitiveGranularity (Error: Value not equal)");
14946 };
14947 }
14948
checkEqual_VkDrawMeshTasksIndirectCommandNV(const VkDrawMeshTasksIndirectCommandNV * a,const VkDrawMeshTasksIndirectCommandNV * b,OnFailCompareFunc onFail)14949 void checkEqual_VkDrawMeshTasksIndirectCommandNV(const VkDrawMeshTasksIndirectCommandNV* a,
14950 const VkDrawMeshTasksIndirectCommandNV* b,
14951 OnFailCompareFunc onFail) {
14952 if (!((a->taskCount) == (b->taskCount))) {
14953 onFail("a->taskCount (Error: Value not equal)");
14954 };
14955 if (!((a->firstTask) == (b->firstTask))) {
14956 onFail("a->firstTask (Error: Value not equal)");
14957 };
14958 }
14959
14960 #endif
14961 #ifdef VK_NV_fragment_shader_barycentric
14962 #endif
14963 #ifdef VK_NV_shader_image_footprint
checkEqual_VkPhysicalDeviceShaderImageFootprintFeaturesNV(const VkPhysicalDeviceShaderImageFootprintFeaturesNV * a,const VkPhysicalDeviceShaderImageFootprintFeaturesNV * b,OnFailCompareFunc onFail)14964 void checkEqual_VkPhysicalDeviceShaderImageFootprintFeaturesNV(
14965 const VkPhysicalDeviceShaderImageFootprintFeaturesNV* a,
14966 const VkPhysicalDeviceShaderImageFootprintFeaturesNV* b, OnFailCompareFunc onFail) {
14967 if (!((a->sType) == (b->sType))) {
14968 onFail("a->sType (Error: Value not equal)");
14969 };
14970 if (a->pNext) {
14971 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14972 }
14973 if (!((a->imageFootprint) == (b->imageFootprint))) {
14974 onFail("a->imageFootprint (Error: Value not equal)");
14975 };
14976 }
14977
14978 #endif
14979 #ifdef VK_NV_scissor_exclusive
checkEqual_VkPipelineViewportExclusiveScissorStateCreateInfoNV(const VkPipelineViewportExclusiveScissorStateCreateInfoNV * a,const VkPipelineViewportExclusiveScissorStateCreateInfoNV * b,OnFailCompareFunc onFail)14980 void checkEqual_VkPipelineViewportExclusiveScissorStateCreateInfoNV(
14981 const VkPipelineViewportExclusiveScissorStateCreateInfoNV* a,
14982 const VkPipelineViewportExclusiveScissorStateCreateInfoNV* b, OnFailCompareFunc onFail) {
14983 if (!((a->sType) == (b->sType))) {
14984 onFail("a->sType (Error: Value not equal)");
14985 };
14986 if (a->pNext) {
14987 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
14988 }
14989 if (!((a->exclusiveScissorCount) == (b->exclusiveScissorCount))) {
14990 onFail("a->exclusiveScissorCount (Error: Value not equal)");
14991 };
14992 if (!((!(a->pExclusiveScissors) && !(b->pExclusiveScissors)) ||
14993 ((a->pExclusiveScissors) && (b->pExclusiveScissors)))) {
14994 onFail("a->pExclusiveScissors (Error: Mismatch in optional field)");
14995 };
14996 if (a->pExclusiveScissors && b->pExclusiveScissors) {
14997 if ((a->pExclusiveScissors) && (b->pExclusiveScissors)) {
14998 if (!((a->exclusiveScissorCount) == (b->exclusiveScissorCount))) {
14999 onFail("a->pExclusiveScissors (Error: Lengths not equal)");
15000 };
15001 if ((a->exclusiveScissorCount) == (b->exclusiveScissorCount)) {
15002 if (a) {
15003 for (uint32_t i = 0; i < (uint32_t)a->exclusiveScissorCount; ++i) {
15004 checkEqual_VkRect2D(a->pExclusiveScissors + i, b->pExclusiveScissors + i,
15005 onFail);
15006 }
15007 }
15008 }
15009 }
15010 }
15011 }
15012
checkEqual_VkPhysicalDeviceExclusiveScissorFeaturesNV(const VkPhysicalDeviceExclusiveScissorFeaturesNV * a,const VkPhysicalDeviceExclusiveScissorFeaturesNV * b,OnFailCompareFunc onFail)15013 void checkEqual_VkPhysicalDeviceExclusiveScissorFeaturesNV(
15014 const VkPhysicalDeviceExclusiveScissorFeaturesNV* a,
15015 const VkPhysicalDeviceExclusiveScissorFeaturesNV* b, OnFailCompareFunc onFail) {
15016 if (!((a->sType) == (b->sType))) {
15017 onFail("a->sType (Error: Value not equal)");
15018 };
15019 if (a->pNext) {
15020 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15021 }
15022 if (!((a->exclusiveScissor) == (b->exclusiveScissor))) {
15023 onFail("a->exclusiveScissor (Error: Value not equal)");
15024 };
15025 }
15026
15027 #endif
15028 #ifdef VK_NV_device_diagnostic_checkpoints
checkEqual_VkQueueFamilyCheckpointPropertiesNV(const VkQueueFamilyCheckpointPropertiesNV * a,const VkQueueFamilyCheckpointPropertiesNV * b,OnFailCompareFunc onFail)15029 void checkEqual_VkQueueFamilyCheckpointPropertiesNV(const VkQueueFamilyCheckpointPropertiesNV* a,
15030 const VkQueueFamilyCheckpointPropertiesNV* b,
15031 OnFailCompareFunc onFail) {
15032 if (!((a->sType) == (b->sType))) {
15033 onFail("a->sType (Error: Value not equal)");
15034 };
15035 if (a->pNext) {
15036 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15037 }
15038 if (!((a->checkpointExecutionStageMask) == (b->checkpointExecutionStageMask))) {
15039 onFail("a->checkpointExecutionStageMask (Error: Value not equal)");
15040 };
15041 }
15042
checkEqual_VkCheckpointDataNV(const VkCheckpointDataNV * a,const VkCheckpointDataNV * b,OnFailCompareFunc onFail)15043 void checkEqual_VkCheckpointDataNV(const VkCheckpointDataNV* a, const VkCheckpointDataNV* b,
15044 OnFailCompareFunc onFail) {
15045 if (!((a->sType) == (b->sType))) {
15046 onFail("a->sType (Error: Value not equal)");
15047 };
15048 if (a->pNext) {
15049 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15050 }
15051 if (!((a->stage) == (b->stage))) {
15052 onFail("a->stage (Error: Value not equal)");
15053 };
15054 if (!((!(a->pCheckpointMarker) && !(b->pCheckpointMarker)) ||
15055 ((a->pCheckpointMarker) && (b->pCheckpointMarker)))) {
15056 onFail("a->pCheckpointMarker (Error: Mismatch in optional field)");
15057 };
15058 }
15059
15060 #endif
15061 #ifdef VK_INTEL_shader_integer_functions2
checkEqual_VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL * a,const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL * b,OnFailCompareFunc onFail)15062 void checkEqual_VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
15063 const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* a,
15064 const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL* b, OnFailCompareFunc onFail) {
15065 if (!((a->sType) == (b->sType))) {
15066 onFail("a->sType (Error: Value not equal)");
15067 };
15068 if (a->pNext) {
15069 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15070 }
15071 if (!((a->shaderIntegerFunctions2) == (b->shaderIntegerFunctions2))) {
15072 onFail("a->shaderIntegerFunctions2 (Error: Value not equal)");
15073 };
15074 }
15075
15076 #endif
15077 #ifdef VK_INTEL_performance_query
checkEqual_VkPerformanceValueDataINTEL(const VkPerformanceValueDataINTEL * a,const VkPerformanceValueDataINTEL * b,OnFailCompareFunc onFail)15078 void checkEqual_VkPerformanceValueDataINTEL(const VkPerformanceValueDataINTEL* a,
15079 const VkPerformanceValueDataINTEL* b,
15080 OnFailCompareFunc onFail) {
15081 if (!((a->value32) == (b->value32))) {
15082 onFail("a->value32 (Error: Value not equal)");
15083 };
15084 if (!((a->value64) == (b->value64))) {
15085 onFail("a->value64 (Error: Value not equal)");
15086 };
15087 if (!((a->valueFloat) == (b->valueFloat))) {
15088 onFail("a->valueFloat (Error: Value not equal)");
15089 };
15090 if (!((a->valueBool) == (b->valueBool))) {
15091 onFail("a->valueBool (Error: Value not equal)");
15092 };
15093 if (!((!(a->valueString) && !(b->valueString)) || ((a->valueString) && (b->valueString)))) {
15094 onFail("a->valueString (Error: Mismatch in string pointer nullness)");
15095 };
15096 if ((a->valueString) && (b->valueString)) {
15097 if (!((strcmp(a->valueString, b->valueString) == 0))) {
15098 onFail("a->valueString (Error: Unequal strings)");
15099 };
15100 }
15101 }
15102
checkEqual_VkPerformanceValueINTEL(const VkPerformanceValueINTEL * a,const VkPerformanceValueINTEL * b,OnFailCompareFunc onFail)15103 void checkEqual_VkPerformanceValueINTEL(const VkPerformanceValueINTEL* a,
15104 const VkPerformanceValueINTEL* b,
15105 OnFailCompareFunc onFail) {
15106 if (!((a->type) == (b->type))) {
15107 onFail("a->type (Error: Value not equal)");
15108 };
15109 checkEqual_VkPerformanceValueDataINTEL(&a->data, &b->data, onFail);
15110 }
15111
checkEqual_VkInitializePerformanceApiInfoINTEL(const VkInitializePerformanceApiInfoINTEL * a,const VkInitializePerformanceApiInfoINTEL * b,OnFailCompareFunc onFail)15112 void checkEqual_VkInitializePerformanceApiInfoINTEL(const VkInitializePerformanceApiInfoINTEL* a,
15113 const VkInitializePerformanceApiInfoINTEL* b,
15114 OnFailCompareFunc onFail) {
15115 if (!((a->sType) == (b->sType))) {
15116 onFail("a->sType (Error: Value not equal)");
15117 };
15118 if (a->pNext) {
15119 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15120 }
15121 if (!((!(a->pUserData) && !(b->pUserData)) || ((a->pUserData) && (b->pUserData)))) {
15122 onFail("a->pUserData (Error: Mismatch in optional field)");
15123 };
15124 }
15125
checkEqual_VkQueryPoolPerformanceQueryCreateInfoINTEL(const VkQueryPoolPerformanceQueryCreateInfoINTEL * a,const VkQueryPoolPerformanceQueryCreateInfoINTEL * b,OnFailCompareFunc onFail)15126 void checkEqual_VkQueryPoolPerformanceQueryCreateInfoINTEL(
15127 const VkQueryPoolPerformanceQueryCreateInfoINTEL* a,
15128 const VkQueryPoolPerformanceQueryCreateInfoINTEL* b, OnFailCompareFunc onFail) {
15129 if (!((a->sType) == (b->sType))) {
15130 onFail("a->sType (Error: Value not equal)");
15131 };
15132 if (a->pNext) {
15133 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15134 }
15135 if (!((a->performanceCountersSampling) == (b->performanceCountersSampling))) {
15136 onFail("a->performanceCountersSampling (Error: Value not equal)");
15137 };
15138 }
15139
checkEqual_VkPerformanceMarkerInfoINTEL(const VkPerformanceMarkerInfoINTEL * a,const VkPerformanceMarkerInfoINTEL * b,OnFailCompareFunc onFail)15140 void checkEqual_VkPerformanceMarkerInfoINTEL(const VkPerformanceMarkerInfoINTEL* a,
15141 const VkPerformanceMarkerInfoINTEL* b,
15142 OnFailCompareFunc onFail) {
15143 if (!((a->sType) == (b->sType))) {
15144 onFail("a->sType (Error: Value not equal)");
15145 };
15146 if (a->pNext) {
15147 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15148 }
15149 if (!((a->marker) == (b->marker))) {
15150 onFail("a->marker (Error: Value not equal)");
15151 };
15152 }
15153
checkEqual_VkPerformanceStreamMarkerInfoINTEL(const VkPerformanceStreamMarkerInfoINTEL * a,const VkPerformanceStreamMarkerInfoINTEL * b,OnFailCompareFunc onFail)15154 void checkEqual_VkPerformanceStreamMarkerInfoINTEL(const VkPerformanceStreamMarkerInfoINTEL* a,
15155 const VkPerformanceStreamMarkerInfoINTEL* b,
15156 OnFailCompareFunc onFail) {
15157 if (!((a->sType) == (b->sType))) {
15158 onFail("a->sType (Error: Value not equal)");
15159 };
15160 if (a->pNext) {
15161 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15162 }
15163 if (!((a->marker) == (b->marker))) {
15164 onFail("a->marker (Error: Value not equal)");
15165 };
15166 }
15167
checkEqual_VkPerformanceOverrideInfoINTEL(const VkPerformanceOverrideInfoINTEL * a,const VkPerformanceOverrideInfoINTEL * b,OnFailCompareFunc onFail)15168 void checkEqual_VkPerformanceOverrideInfoINTEL(const VkPerformanceOverrideInfoINTEL* a,
15169 const VkPerformanceOverrideInfoINTEL* b,
15170 OnFailCompareFunc onFail) {
15171 if (!((a->sType) == (b->sType))) {
15172 onFail("a->sType (Error: Value not equal)");
15173 };
15174 if (a->pNext) {
15175 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15176 }
15177 if (!((a->type) == (b->type))) {
15178 onFail("a->type (Error: Value not equal)");
15179 };
15180 if (!((a->enable) == (b->enable))) {
15181 onFail("a->enable (Error: Value not equal)");
15182 };
15183 if (!((a->parameter) == (b->parameter))) {
15184 onFail("a->parameter (Error: Value not equal)");
15185 };
15186 }
15187
checkEqual_VkPerformanceConfigurationAcquireInfoINTEL(const VkPerformanceConfigurationAcquireInfoINTEL * a,const VkPerformanceConfigurationAcquireInfoINTEL * b,OnFailCompareFunc onFail)15188 void checkEqual_VkPerformanceConfigurationAcquireInfoINTEL(
15189 const VkPerformanceConfigurationAcquireInfoINTEL* a,
15190 const VkPerformanceConfigurationAcquireInfoINTEL* b, OnFailCompareFunc onFail) {
15191 if (!((a->sType) == (b->sType))) {
15192 onFail("a->sType (Error: Value not equal)");
15193 };
15194 if (a->pNext) {
15195 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15196 }
15197 if (!((a->type) == (b->type))) {
15198 onFail("a->type (Error: Value not equal)");
15199 };
15200 }
15201
15202 #endif
15203 #ifdef VK_EXT_pci_bus_info
checkEqual_VkPhysicalDevicePCIBusInfoPropertiesEXT(const VkPhysicalDevicePCIBusInfoPropertiesEXT * a,const VkPhysicalDevicePCIBusInfoPropertiesEXT * b,OnFailCompareFunc onFail)15204 void checkEqual_VkPhysicalDevicePCIBusInfoPropertiesEXT(
15205 const VkPhysicalDevicePCIBusInfoPropertiesEXT* a,
15206 const VkPhysicalDevicePCIBusInfoPropertiesEXT* b, OnFailCompareFunc onFail) {
15207 if (!((a->sType) == (b->sType))) {
15208 onFail("a->sType (Error: Value not equal)");
15209 };
15210 if (a->pNext) {
15211 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15212 }
15213 if (!((a->pciDomain) == (b->pciDomain))) {
15214 onFail("a->pciDomain (Error: Value not equal)");
15215 };
15216 if (!((a->pciBus) == (b->pciBus))) {
15217 onFail("a->pciBus (Error: Value not equal)");
15218 };
15219 if (!((a->pciDevice) == (b->pciDevice))) {
15220 onFail("a->pciDevice (Error: Value not equal)");
15221 };
15222 if (!((a->pciFunction) == (b->pciFunction))) {
15223 onFail("a->pciFunction (Error: Value not equal)");
15224 };
15225 }
15226
15227 #endif
15228 #ifdef VK_AMD_display_native_hdr
checkEqual_VkDisplayNativeHdrSurfaceCapabilitiesAMD(const VkDisplayNativeHdrSurfaceCapabilitiesAMD * a,const VkDisplayNativeHdrSurfaceCapabilitiesAMD * b,OnFailCompareFunc onFail)15229 void checkEqual_VkDisplayNativeHdrSurfaceCapabilitiesAMD(
15230 const VkDisplayNativeHdrSurfaceCapabilitiesAMD* a,
15231 const VkDisplayNativeHdrSurfaceCapabilitiesAMD* b, OnFailCompareFunc onFail) {
15232 if (!((a->sType) == (b->sType))) {
15233 onFail("a->sType (Error: Value not equal)");
15234 };
15235 if (a->pNext) {
15236 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15237 }
15238 if (!((a->localDimmingSupport) == (b->localDimmingSupport))) {
15239 onFail("a->localDimmingSupport (Error: Value not equal)");
15240 };
15241 }
15242
checkEqual_VkSwapchainDisplayNativeHdrCreateInfoAMD(const VkSwapchainDisplayNativeHdrCreateInfoAMD * a,const VkSwapchainDisplayNativeHdrCreateInfoAMD * b,OnFailCompareFunc onFail)15243 void checkEqual_VkSwapchainDisplayNativeHdrCreateInfoAMD(
15244 const VkSwapchainDisplayNativeHdrCreateInfoAMD* a,
15245 const VkSwapchainDisplayNativeHdrCreateInfoAMD* b, OnFailCompareFunc onFail) {
15246 if (!((a->sType) == (b->sType))) {
15247 onFail("a->sType (Error: Value not equal)");
15248 };
15249 if (a->pNext) {
15250 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15251 }
15252 if (!((a->localDimmingEnable) == (b->localDimmingEnable))) {
15253 onFail("a->localDimmingEnable (Error: Value not equal)");
15254 };
15255 }
15256
15257 #endif
15258 #ifdef VK_FUCHSIA_imagepipe_surface
checkEqual_VkImagePipeSurfaceCreateInfoFUCHSIA(const VkImagePipeSurfaceCreateInfoFUCHSIA * a,const VkImagePipeSurfaceCreateInfoFUCHSIA * b,OnFailCompareFunc onFail)15259 void checkEqual_VkImagePipeSurfaceCreateInfoFUCHSIA(const VkImagePipeSurfaceCreateInfoFUCHSIA* a,
15260 const VkImagePipeSurfaceCreateInfoFUCHSIA* b,
15261 OnFailCompareFunc onFail) {
15262 if (!((a->sType) == (b->sType))) {
15263 onFail("a->sType (Error: Value not equal)");
15264 };
15265 if (a->pNext) {
15266 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15267 }
15268 if (!((a->flags) == (b->flags))) {
15269 onFail("a->flags (Error: Value not equal)");
15270 };
15271 if (!((a->imagePipeHandle) == (b->imagePipeHandle))) {
15272 onFail("a->imagePipeHandle (Error: Value not equal)");
15273 };
15274 }
15275
15276 #endif
15277 #ifdef VK_EXT_metal_surface
checkEqual_VkMetalSurfaceCreateInfoEXT(const VkMetalSurfaceCreateInfoEXT * a,const VkMetalSurfaceCreateInfoEXT * b,OnFailCompareFunc onFail)15278 void checkEqual_VkMetalSurfaceCreateInfoEXT(const VkMetalSurfaceCreateInfoEXT* a,
15279 const VkMetalSurfaceCreateInfoEXT* b,
15280 OnFailCompareFunc onFail) {
15281 if (!((a->sType) == (b->sType))) {
15282 onFail("a->sType (Error: Value not equal)");
15283 };
15284 if (a->pNext) {
15285 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15286 }
15287 if (!((a->flags) == (b->flags))) {
15288 onFail("a->flags (Error: Value not equal)");
15289 };
15290 if (!((!(a->pLayer) && !(b->pLayer)) || ((a->pLayer) && (b->pLayer)))) {
15291 onFail("a->pLayer (Error: Mismatch in optional field)");
15292 };
15293 if (a->pLayer && b->pLayer) {
15294 if (!((memcmp(a->pLayer, b->pLayer, sizeof(const CAMetalLayer)) == 0))) {
15295 onFail("a->pLayer (Error: Unequal dyn array)");
15296 };
15297 }
15298 }
15299
15300 #endif
15301 #ifdef VK_EXT_fragment_density_map
checkEqual_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(const VkPhysicalDeviceFragmentDensityMapFeaturesEXT * a,const VkPhysicalDeviceFragmentDensityMapFeaturesEXT * b,OnFailCompareFunc onFail)15302 void checkEqual_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
15303 const VkPhysicalDeviceFragmentDensityMapFeaturesEXT* a,
15304 const VkPhysicalDeviceFragmentDensityMapFeaturesEXT* b, OnFailCompareFunc onFail) {
15305 if (!((a->sType) == (b->sType))) {
15306 onFail("a->sType (Error: Value not equal)");
15307 };
15308 if (a->pNext) {
15309 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15310 }
15311 if (!((a->fragmentDensityMap) == (b->fragmentDensityMap))) {
15312 onFail("a->fragmentDensityMap (Error: Value not equal)");
15313 };
15314 if (!((a->fragmentDensityMapDynamic) == (b->fragmentDensityMapDynamic))) {
15315 onFail("a->fragmentDensityMapDynamic (Error: Value not equal)");
15316 };
15317 if (!((a->fragmentDensityMapNonSubsampledImages) ==
15318 (b->fragmentDensityMapNonSubsampledImages))) {
15319 onFail("a->fragmentDensityMapNonSubsampledImages (Error: Value not equal)");
15320 };
15321 }
15322
checkEqual_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(const VkPhysicalDeviceFragmentDensityMapPropertiesEXT * a,const VkPhysicalDeviceFragmentDensityMapPropertiesEXT * b,OnFailCompareFunc onFail)15323 void checkEqual_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
15324 const VkPhysicalDeviceFragmentDensityMapPropertiesEXT* a,
15325 const VkPhysicalDeviceFragmentDensityMapPropertiesEXT* b, OnFailCompareFunc onFail) {
15326 if (!((a->sType) == (b->sType))) {
15327 onFail("a->sType (Error: Value not equal)");
15328 };
15329 if (a->pNext) {
15330 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15331 }
15332 checkEqual_VkExtent2D(&a->minFragmentDensityTexelSize, &b->minFragmentDensityTexelSize, onFail);
15333 checkEqual_VkExtent2D(&a->maxFragmentDensityTexelSize, &b->maxFragmentDensityTexelSize, onFail);
15334 if (!((a->fragmentDensityInvocations) == (b->fragmentDensityInvocations))) {
15335 onFail("a->fragmentDensityInvocations (Error: Value not equal)");
15336 };
15337 }
15338
checkEqual_VkRenderPassFragmentDensityMapCreateInfoEXT(const VkRenderPassFragmentDensityMapCreateInfoEXT * a,const VkRenderPassFragmentDensityMapCreateInfoEXT * b,OnFailCompareFunc onFail)15339 void checkEqual_VkRenderPassFragmentDensityMapCreateInfoEXT(
15340 const VkRenderPassFragmentDensityMapCreateInfoEXT* a,
15341 const VkRenderPassFragmentDensityMapCreateInfoEXT* b, OnFailCompareFunc onFail) {
15342 if (!((a->sType) == (b->sType))) {
15343 onFail("a->sType (Error: Value not equal)");
15344 };
15345 if (a->pNext) {
15346 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15347 }
15348 checkEqual_VkAttachmentReference(&a->fragmentDensityMapAttachment,
15349 &b->fragmentDensityMapAttachment, onFail);
15350 }
15351
15352 #endif
15353 #ifdef VK_EXT_scalar_block_layout
15354 #endif
15355 #ifdef VK_GOOGLE_hlsl_functionality1
15356 #endif
15357 #ifdef VK_GOOGLE_decorate_string
15358 #endif
15359 #ifdef VK_EXT_subgroup_size_control
15360 #endif
15361 #ifdef VK_AMD_shader_core_properties2
checkEqual_VkPhysicalDeviceShaderCoreProperties2AMD(const VkPhysicalDeviceShaderCoreProperties2AMD * a,const VkPhysicalDeviceShaderCoreProperties2AMD * b,OnFailCompareFunc onFail)15362 void checkEqual_VkPhysicalDeviceShaderCoreProperties2AMD(
15363 const VkPhysicalDeviceShaderCoreProperties2AMD* a,
15364 const VkPhysicalDeviceShaderCoreProperties2AMD* b, OnFailCompareFunc onFail) {
15365 if (!((a->sType) == (b->sType))) {
15366 onFail("a->sType (Error: Value not equal)");
15367 };
15368 if (a->pNext) {
15369 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15370 }
15371 if (!((a->shaderCoreFeatures) == (b->shaderCoreFeatures))) {
15372 onFail("a->shaderCoreFeatures (Error: Value not equal)");
15373 };
15374 if (!((a->activeComputeUnitCount) == (b->activeComputeUnitCount))) {
15375 onFail("a->activeComputeUnitCount (Error: Value not equal)");
15376 };
15377 }
15378
15379 #endif
15380 #ifdef VK_AMD_device_coherent_memory
checkEqual_VkPhysicalDeviceCoherentMemoryFeaturesAMD(const VkPhysicalDeviceCoherentMemoryFeaturesAMD * a,const VkPhysicalDeviceCoherentMemoryFeaturesAMD * b,OnFailCompareFunc onFail)15381 void checkEqual_VkPhysicalDeviceCoherentMemoryFeaturesAMD(
15382 const VkPhysicalDeviceCoherentMemoryFeaturesAMD* a,
15383 const VkPhysicalDeviceCoherentMemoryFeaturesAMD* b, OnFailCompareFunc onFail) {
15384 if (!((a->sType) == (b->sType))) {
15385 onFail("a->sType (Error: Value not equal)");
15386 };
15387 if (a->pNext) {
15388 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15389 }
15390 if (!((a->deviceCoherentMemory) == (b->deviceCoherentMemory))) {
15391 onFail("a->deviceCoherentMemory (Error: Value not equal)");
15392 };
15393 }
15394
15395 #endif
15396 #ifdef VK_EXT_shader_image_atomic_int64
checkEqual_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * a,const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT * b,OnFailCompareFunc onFail)15397 void checkEqual_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
15398 const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* a,
15399 const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT* b, OnFailCompareFunc onFail) {
15400 if (!((a->sType) == (b->sType))) {
15401 onFail("a->sType (Error: Value not equal)");
15402 };
15403 if (a->pNext) {
15404 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15405 }
15406 if (!((a->shaderImageInt64Atomics) == (b->shaderImageInt64Atomics))) {
15407 onFail("a->shaderImageInt64Atomics (Error: Value not equal)");
15408 };
15409 if (!((a->sparseImageInt64Atomics) == (b->sparseImageInt64Atomics))) {
15410 onFail("a->sparseImageInt64Atomics (Error: Value not equal)");
15411 };
15412 }
15413
15414 #endif
15415 #ifdef VK_EXT_memory_budget
checkEqual_VkPhysicalDeviceMemoryBudgetPropertiesEXT(const VkPhysicalDeviceMemoryBudgetPropertiesEXT * a,const VkPhysicalDeviceMemoryBudgetPropertiesEXT * b,OnFailCompareFunc onFail)15416 void checkEqual_VkPhysicalDeviceMemoryBudgetPropertiesEXT(
15417 const VkPhysicalDeviceMemoryBudgetPropertiesEXT* a,
15418 const VkPhysicalDeviceMemoryBudgetPropertiesEXT* b, OnFailCompareFunc onFail) {
15419 if (!((a->sType) == (b->sType))) {
15420 onFail("a->sType (Error: Value not equal)");
15421 };
15422 if (a->pNext) {
15423 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15424 }
15425 if (!((memcmp(a->heapBudget, b->heapBudget, VK_MAX_MEMORY_HEAPS * sizeof(VkDeviceSize)) ==
15426 0))) {
15427 onFail("a->heapBudget (Error: Unequal static array)");
15428 };
15429 if (!((memcmp(a->heapUsage, b->heapUsage, VK_MAX_MEMORY_HEAPS * sizeof(VkDeviceSize)) == 0))) {
15430 onFail("a->heapUsage (Error: Unequal static array)");
15431 };
15432 }
15433
15434 #endif
15435 #ifdef VK_EXT_memory_priority
checkEqual_VkPhysicalDeviceMemoryPriorityFeaturesEXT(const VkPhysicalDeviceMemoryPriorityFeaturesEXT * a,const VkPhysicalDeviceMemoryPriorityFeaturesEXT * b,OnFailCompareFunc onFail)15436 void checkEqual_VkPhysicalDeviceMemoryPriorityFeaturesEXT(
15437 const VkPhysicalDeviceMemoryPriorityFeaturesEXT* a,
15438 const VkPhysicalDeviceMemoryPriorityFeaturesEXT* b, OnFailCompareFunc onFail) {
15439 if (!((a->sType) == (b->sType))) {
15440 onFail("a->sType (Error: Value not equal)");
15441 };
15442 if (a->pNext) {
15443 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15444 }
15445 if (!((a->memoryPriority) == (b->memoryPriority))) {
15446 onFail("a->memoryPriority (Error: Value not equal)");
15447 };
15448 }
15449
checkEqual_VkMemoryPriorityAllocateInfoEXT(const VkMemoryPriorityAllocateInfoEXT * a,const VkMemoryPriorityAllocateInfoEXT * b,OnFailCompareFunc onFail)15450 void checkEqual_VkMemoryPriorityAllocateInfoEXT(const VkMemoryPriorityAllocateInfoEXT* a,
15451 const VkMemoryPriorityAllocateInfoEXT* b,
15452 OnFailCompareFunc onFail) {
15453 if (!((a->sType) == (b->sType))) {
15454 onFail("a->sType (Error: Value not equal)");
15455 };
15456 if (a->pNext) {
15457 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15458 }
15459 if (!((a->priority) == (b->priority))) {
15460 onFail("a->priority (Error: Value not equal)");
15461 };
15462 }
15463
15464 #endif
15465 #ifdef VK_NV_dedicated_allocation_image_aliasing
checkEqual_VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV * a,const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV * b,OnFailCompareFunc onFail)15466 void checkEqual_VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
15467 const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* a,
15468 const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV* b, OnFailCompareFunc onFail) {
15469 if (!((a->sType) == (b->sType))) {
15470 onFail("a->sType (Error: Value not equal)");
15471 };
15472 if (a->pNext) {
15473 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15474 }
15475 if (!((a->dedicatedAllocationImageAliasing) == (b->dedicatedAllocationImageAliasing))) {
15476 onFail("a->dedicatedAllocationImageAliasing (Error: Value not equal)");
15477 };
15478 }
15479
15480 #endif
15481 #ifdef VK_EXT_buffer_device_address
checkEqual_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT(const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT * a,const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT * b,OnFailCompareFunc onFail)15482 void checkEqual_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT(
15483 const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* a,
15484 const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT* b, OnFailCompareFunc onFail) {
15485 if (!((a->sType) == (b->sType))) {
15486 onFail("a->sType (Error: Value not equal)");
15487 };
15488 if (a->pNext) {
15489 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15490 }
15491 if (!((a->bufferDeviceAddress) == (b->bufferDeviceAddress))) {
15492 onFail("a->bufferDeviceAddress (Error: Value not equal)");
15493 };
15494 if (!((a->bufferDeviceAddressCaptureReplay) == (b->bufferDeviceAddressCaptureReplay))) {
15495 onFail("a->bufferDeviceAddressCaptureReplay (Error: Value not equal)");
15496 };
15497 if (!((a->bufferDeviceAddressMultiDevice) == (b->bufferDeviceAddressMultiDevice))) {
15498 onFail("a->bufferDeviceAddressMultiDevice (Error: Value not equal)");
15499 };
15500 }
15501
checkEqual_VkBufferDeviceAddressCreateInfoEXT(const VkBufferDeviceAddressCreateInfoEXT * a,const VkBufferDeviceAddressCreateInfoEXT * b,OnFailCompareFunc onFail)15502 void checkEqual_VkBufferDeviceAddressCreateInfoEXT(const VkBufferDeviceAddressCreateInfoEXT* a,
15503 const VkBufferDeviceAddressCreateInfoEXT* b,
15504 OnFailCompareFunc onFail) {
15505 if (!((a->sType) == (b->sType))) {
15506 onFail("a->sType (Error: Value not equal)");
15507 };
15508 if (a->pNext) {
15509 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15510 }
15511 if (!((a->deviceAddress) == (b->deviceAddress))) {
15512 onFail("a->deviceAddress (Error: Value not equal)");
15513 };
15514 }
15515
15516 #endif
15517 #ifdef VK_EXT_tooling_info
15518 #endif
15519 #ifdef VK_EXT_separate_stencil_usage
15520 #endif
15521 #ifdef VK_EXT_validation_features
checkEqual_VkValidationFeaturesEXT(const VkValidationFeaturesEXT * a,const VkValidationFeaturesEXT * b,OnFailCompareFunc onFail)15522 void checkEqual_VkValidationFeaturesEXT(const VkValidationFeaturesEXT* a,
15523 const VkValidationFeaturesEXT* b,
15524 OnFailCompareFunc onFail) {
15525 if (!((a->sType) == (b->sType))) {
15526 onFail("a->sType (Error: Value not equal)");
15527 };
15528 if (a->pNext) {
15529 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15530 }
15531 if (!((a->enabledValidationFeatureCount) == (b->enabledValidationFeatureCount))) {
15532 onFail("a->enabledValidationFeatureCount (Error: Value not equal)");
15533 };
15534 if (!((a->enabledValidationFeatureCount) == (b->enabledValidationFeatureCount))) {
15535 onFail("a->pEnabledValidationFeatures (Error: Lengths not equal)");
15536 };
15537 if (!((memcmp(a->pEnabledValidationFeatures, b->pEnabledValidationFeatures,
15538 a->enabledValidationFeatureCount * sizeof(const VkValidationFeatureEnableEXT)) ==
15539 0))) {
15540 onFail("a->pEnabledValidationFeatures (Error: Unequal dyn array)");
15541 };
15542 if (!((a->disabledValidationFeatureCount) == (b->disabledValidationFeatureCount))) {
15543 onFail("a->disabledValidationFeatureCount (Error: Value not equal)");
15544 };
15545 if (!((a->disabledValidationFeatureCount) == (b->disabledValidationFeatureCount))) {
15546 onFail("a->pDisabledValidationFeatures (Error: Lengths not equal)");
15547 };
15548 if (!((memcmp(a->pDisabledValidationFeatures, b->pDisabledValidationFeatures,
15549 a->disabledValidationFeatureCount *
15550 sizeof(const VkValidationFeatureDisableEXT)) == 0))) {
15551 onFail("a->pDisabledValidationFeatures (Error: Unequal dyn array)");
15552 };
15553 }
15554
15555 #endif
15556 #ifdef VK_NV_cooperative_matrix
checkEqual_VkCooperativeMatrixPropertiesNV(const VkCooperativeMatrixPropertiesNV * a,const VkCooperativeMatrixPropertiesNV * b,OnFailCompareFunc onFail)15557 void checkEqual_VkCooperativeMatrixPropertiesNV(const VkCooperativeMatrixPropertiesNV* a,
15558 const VkCooperativeMatrixPropertiesNV* b,
15559 OnFailCompareFunc onFail) {
15560 if (!((a->sType) == (b->sType))) {
15561 onFail("a->sType (Error: Value not equal)");
15562 };
15563 if (a->pNext) {
15564 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15565 }
15566 if (!((a->MSize) == (b->MSize))) {
15567 onFail("a->MSize (Error: Value not equal)");
15568 };
15569 if (!((a->NSize) == (b->NSize))) {
15570 onFail("a->NSize (Error: Value not equal)");
15571 };
15572 if (!((a->KSize) == (b->KSize))) {
15573 onFail("a->KSize (Error: Value not equal)");
15574 };
15575 if (!((a->AType) == (b->AType))) {
15576 onFail("a->AType (Error: Value not equal)");
15577 };
15578 if (!((a->BType) == (b->BType))) {
15579 onFail("a->BType (Error: Value not equal)");
15580 };
15581 if (!((a->CType) == (b->CType))) {
15582 onFail("a->CType (Error: Value not equal)");
15583 };
15584 if (!((a->DType) == (b->DType))) {
15585 onFail("a->DType (Error: Value not equal)");
15586 };
15587 if (!((a->scope) == (b->scope))) {
15588 onFail("a->scope (Error: Value not equal)");
15589 };
15590 }
15591
checkEqual_VkPhysicalDeviceCooperativeMatrixFeaturesNV(const VkPhysicalDeviceCooperativeMatrixFeaturesNV * a,const VkPhysicalDeviceCooperativeMatrixFeaturesNV * b,OnFailCompareFunc onFail)15592 void checkEqual_VkPhysicalDeviceCooperativeMatrixFeaturesNV(
15593 const VkPhysicalDeviceCooperativeMatrixFeaturesNV* a,
15594 const VkPhysicalDeviceCooperativeMatrixFeaturesNV* b, OnFailCompareFunc onFail) {
15595 if (!((a->sType) == (b->sType))) {
15596 onFail("a->sType (Error: Value not equal)");
15597 };
15598 if (a->pNext) {
15599 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15600 }
15601 if (!((a->cooperativeMatrix) == (b->cooperativeMatrix))) {
15602 onFail("a->cooperativeMatrix (Error: Value not equal)");
15603 };
15604 if (!((a->cooperativeMatrixRobustBufferAccess) == (b->cooperativeMatrixRobustBufferAccess))) {
15605 onFail("a->cooperativeMatrixRobustBufferAccess (Error: Value not equal)");
15606 };
15607 }
15608
checkEqual_VkPhysicalDeviceCooperativeMatrixPropertiesNV(const VkPhysicalDeviceCooperativeMatrixPropertiesNV * a,const VkPhysicalDeviceCooperativeMatrixPropertiesNV * b,OnFailCompareFunc onFail)15609 void checkEqual_VkPhysicalDeviceCooperativeMatrixPropertiesNV(
15610 const VkPhysicalDeviceCooperativeMatrixPropertiesNV* a,
15611 const VkPhysicalDeviceCooperativeMatrixPropertiesNV* b, OnFailCompareFunc onFail) {
15612 if (!((a->sType) == (b->sType))) {
15613 onFail("a->sType (Error: Value not equal)");
15614 };
15615 if (a->pNext) {
15616 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15617 }
15618 if (!((a->cooperativeMatrixSupportedStages) == (b->cooperativeMatrixSupportedStages))) {
15619 onFail("a->cooperativeMatrixSupportedStages (Error: Value not equal)");
15620 };
15621 }
15622
15623 #endif
15624 #ifdef VK_NV_coverage_reduction_mode
checkEqual_VkPhysicalDeviceCoverageReductionModeFeaturesNV(const VkPhysicalDeviceCoverageReductionModeFeaturesNV * a,const VkPhysicalDeviceCoverageReductionModeFeaturesNV * b,OnFailCompareFunc onFail)15625 void checkEqual_VkPhysicalDeviceCoverageReductionModeFeaturesNV(
15626 const VkPhysicalDeviceCoverageReductionModeFeaturesNV* a,
15627 const VkPhysicalDeviceCoverageReductionModeFeaturesNV* b, OnFailCompareFunc onFail) {
15628 if (!((a->sType) == (b->sType))) {
15629 onFail("a->sType (Error: Value not equal)");
15630 };
15631 if (a->pNext) {
15632 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15633 }
15634 if (!((a->coverageReductionMode) == (b->coverageReductionMode))) {
15635 onFail("a->coverageReductionMode (Error: Value not equal)");
15636 };
15637 }
15638
checkEqual_VkPipelineCoverageReductionStateCreateInfoNV(const VkPipelineCoverageReductionStateCreateInfoNV * a,const VkPipelineCoverageReductionStateCreateInfoNV * b,OnFailCompareFunc onFail)15639 void checkEqual_VkPipelineCoverageReductionStateCreateInfoNV(
15640 const VkPipelineCoverageReductionStateCreateInfoNV* a,
15641 const VkPipelineCoverageReductionStateCreateInfoNV* b, OnFailCompareFunc onFail) {
15642 if (!((a->sType) == (b->sType))) {
15643 onFail("a->sType (Error: Value not equal)");
15644 };
15645 if (a->pNext) {
15646 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15647 }
15648 if (!((a->flags) == (b->flags))) {
15649 onFail("a->flags (Error: Value not equal)");
15650 };
15651 if (!((a->coverageReductionMode) == (b->coverageReductionMode))) {
15652 onFail("a->coverageReductionMode (Error: Value not equal)");
15653 };
15654 }
15655
checkEqual_VkFramebufferMixedSamplesCombinationNV(const VkFramebufferMixedSamplesCombinationNV * a,const VkFramebufferMixedSamplesCombinationNV * b,OnFailCompareFunc onFail)15656 void checkEqual_VkFramebufferMixedSamplesCombinationNV(
15657 const VkFramebufferMixedSamplesCombinationNV* a,
15658 const VkFramebufferMixedSamplesCombinationNV* b, OnFailCompareFunc onFail) {
15659 if (!((a->sType) == (b->sType))) {
15660 onFail("a->sType (Error: Value not equal)");
15661 };
15662 if (a->pNext) {
15663 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15664 }
15665 if (!((a->coverageReductionMode) == (b->coverageReductionMode))) {
15666 onFail("a->coverageReductionMode (Error: Value not equal)");
15667 };
15668 if (!((a->rasterizationSamples) == (b->rasterizationSamples))) {
15669 onFail("a->rasterizationSamples (Error: Value not equal)");
15670 };
15671 if (!((a->depthStencilSamples) == (b->depthStencilSamples))) {
15672 onFail("a->depthStencilSamples (Error: Value not equal)");
15673 };
15674 if (!((a->colorSamples) == (b->colorSamples))) {
15675 onFail("a->colorSamples (Error: Value not equal)");
15676 };
15677 }
15678
15679 #endif
15680 #ifdef VK_EXT_fragment_shader_interlock
checkEqual_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * a,const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT * b,OnFailCompareFunc onFail)15681 void checkEqual_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(
15682 const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* a,
15683 const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT* b, OnFailCompareFunc onFail) {
15684 if (!((a->sType) == (b->sType))) {
15685 onFail("a->sType (Error: Value not equal)");
15686 };
15687 if (a->pNext) {
15688 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15689 }
15690 if (!((a->fragmentShaderSampleInterlock) == (b->fragmentShaderSampleInterlock))) {
15691 onFail("a->fragmentShaderSampleInterlock (Error: Value not equal)");
15692 };
15693 if (!((a->fragmentShaderPixelInterlock) == (b->fragmentShaderPixelInterlock))) {
15694 onFail("a->fragmentShaderPixelInterlock (Error: Value not equal)");
15695 };
15696 if (!((a->fragmentShaderShadingRateInterlock) == (b->fragmentShaderShadingRateInterlock))) {
15697 onFail("a->fragmentShaderShadingRateInterlock (Error: Value not equal)");
15698 };
15699 }
15700
15701 #endif
15702 #ifdef VK_EXT_ycbcr_image_arrays
checkEqual_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * a,const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT * b,OnFailCompareFunc onFail)15703 void checkEqual_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(
15704 const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* a,
15705 const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* b, OnFailCompareFunc onFail) {
15706 if (!((a->sType) == (b->sType))) {
15707 onFail("a->sType (Error: Value not equal)");
15708 };
15709 if (a->pNext) {
15710 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15711 }
15712 if (!((a->ycbcrImageArrays) == (b->ycbcrImageArrays))) {
15713 onFail("a->ycbcrImageArrays (Error: Value not equal)");
15714 };
15715 }
15716
15717 #endif
15718 #ifdef VK_EXT_provoking_vertex
checkEqual_VkPhysicalDeviceProvokingVertexFeaturesEXT(const VkPhysicalDeviceProvokingVertexFeaturesEXT * a,const VkPhysicalDeviceProvokingVertexFeaturesEXT * b,OnFailCompareFunc onFail)15719 void checkEqual_VkPhysicalDeviceProvokingVertexFeaturesEXT(
15720 const VkPhysicalDeviceProvokingVertexFeaturesEXT* a,
15721 const VkPhysicalDeviceProvokingVertexFeaturesEXT* b, OnFailCompareFunc onFail) {
15722 if (!((a->sType) == (b->sType))) {
15723 onFail("a->sType (Error: Value not equal)");
15724 };
15725 if (a->pNext) {
15726 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15727 }
15728 if (!((a->provokingVertexLast) == (b->provokingVertexLast))) {
15729 onFail("a->provokingVertexLast (Error: Value not equal)");
15730 };
15731 if (!((a->transformFeedbackPreservesProvokingVertex) ==
15732 (b->transformFeedbackPreservesProvokingVertex))) {
15733 onFail("a->transformFeedbackPreservesProvokingVertex (Error: Value not equal)");
15734 };
15735 }
15736
checkEqual_VkPhysicalDeviceProvokingVertexPropertiesEXT(const VkPhysicalDeviceProvokingVertexPropertiesEXT * a,const VkPhysicalDeviceProvokingVertexPropertiesEXT * b,OnFailCompareFunc onFail)15737 void checkEqual_VkPhysicalDeviceProvokingVertexPropertiesEXT(
15738 const VkPhysicalDeviceProvokingVertexPropertiesEXT* a,
15739 const VkPhysicalDeviceProvokingVertexPropertiesEXT* b, OnFailCompareFunc onFail) {
15740 if (!((a->sType) == (b->sType))) {
15741 onFail("a->sType (Error: Value not equal)");
15742 };
15743 if (a->pNext) {
15744 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15745 }
15746 if (!((a->provokingVertexModePerPipeline) == (b->provokingVertexModePerPipeline))) {
15747 onFail("a->provokingVertexModePerPipeline (Error: Value not equal)");
15748 };
15749 if (!((a->transformFeedbackPreservesTriangleFanProvokingVertex) ==
15750 (b->transformFeedbackPreservesTriangleFanProvokingVertex))) {
15751 onFail("a->transformFeedbackPreservesTriangleFanProvokingVertex (Error: Value not equal)");
15752 };
15753 }
15754
checkEqual_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT * a,const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT * b,OnFailCompareFunc onFail)15755 void checkEqual_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
15756 const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* a,
15757 const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
15758 if (!((a->sType) == (b->sType))) {
15759 onFail("a->sType (Error: Value not equal)");
15760 };
15761 if (a->pNext) {
15762 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15763 }
15764 if (!((a->provokingVertexMode) == (b->provokingVertexMode))) {
15765 onFail("a->provokingVertexMode (Error: Value not equal)");
15766 };
15767 }
15768
15769 #endif
15770 #ifdef VK_EXT_full_screen_exclusive
checkEqual_VkSurfaceFullScreenExclusiveInfoEXT(const VkSurfaceFullScreenExclusiveInfoEXT * a,const VkSurfaceFullScreenExclusiveInfoEXT * b,OnFailCompareFunc onFail)15771 void checkEqual_VkSurfaceFullScreenExclusiveInfoEXT(const VkSurfaceFullScreenExclusiveInfoEXT* a,
15772 const VkSurfaceFullScreenExclusiveInfoEXT* b,
15773 OnFailCompareFunc onFail) {
15774 if (!((a->sType) == (b->sType))) {
15775 onFail("a->sType (Error: Value not equal)");
15776 };
15777 if (a->pNext) {
15778 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15779 }
15780 if (!((a->fullScreenExclusive) == (b->fullScreenExclusive))) {
15781 onFail("a->fullScreenExclusive (Error: Value not equal)");
15782 };
15783 }
15784
checkEqual_VkSurfaceCapabilitiesFullScreenExclusiveEXT(const VkSurfaceCapabilitiesFullScreenExclusiveEXT * a,const VkSurfaceCapabilitiesFullScreenExclusiveEXT * b,OnFailCompareFunc onFail)15785 void checkEqual_VkSurfaceCapabilitiesFullScreenExclusiveEXT(
15786 const VkSurfaceCapabilitiesFullScreenExclusiveEXT* a,
15787 const VkSurfaceCapabilitiesFullScreenExclusiveEXT* b, OnFailCompareFunc onFail) {
15788 if (!((a->sType) == (b->sType))) {
15789 onFail("a->sType (Error: Value not equal)");
15790 };
15791 if (a->pNext) {
15792 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15793 }
15794 if (!((a->fullScreenExclusiveSupported) == (b->fullScreenExclusiveSupported))) {
15795 onFail("a->fullScreenExclusiveSupported (Error: Value not equal)");
15796 };
15797 }
15798
checkEqual_VkSurfaceFullScreenExclusiveWin32InfoEXT(const VkSurfaceFullScreenExclusiveWin32InfoEXT * a,const VkSurfaceFullScreenExclusiveWin32InfoEXT * b,OnFailCompareFunc onFail)15799 void checkEqual_VkSurfaceFullScreenExclusiveWin32InfoEXT(
15800 const VkSurfaceFullScreenExclusiveWin32InfoEXT* a,
15801 const VkSurfaceFullScreenExclusiveWin32InfoEXT* b, OnFailCompareFunc onFail) {
15802 if (!((a->sType) == (b->sType))) {
15803 onFail("a->sType (Error: Value not equal)");
15804 };
15805 if (a->pNext) {
15806 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15807 }
15808 if (!((a->hmonitor) == (b->hmonitor))) {
15809 onFail("a->hmonitor (Error: Value not equal)");
15810 };
15811 }
15812
15813 #endif
15814 #ifdef VK_EXT_headless_surface
checkEqual_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT * a,const VkHeadlessSurfaceCreateInfoEXT * b,OnFailCompareFunc onFail)15815 void checkEqual_VkHeadlessSurfaceCreateInfoEXT(const VkHeadlessSurfaceCreateInfoEXT* a,
15816 const VkHeadlessSurfaceCreateInfoEXT* b,
15817 OnFailCompareFunc onFail) {
15818 if (!((a->sType) == (b->sType))) {
15819 onFail("a->sType (Error: Value not equal)");
15820 };
15821 if (a->pNext) {
15822 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15823 }
15824 if (!((a->flags) == (b->flags))) {
15825 onFail("a->flags (Error: Value not equal)");
15826 };
15827 }
15828
15829 #endif
15830 #ifdef VK_EXT_line_rasterization
checkEqual_VkPhysicalDeviceLineRasterizationFeaturesEXT(const VkPhysicalDeviceLineRasterizationFeaturesEXT * a,const VkPhysicalDeviceLineRasterizationFeaturesEXT * b,OnFailCompareFunc onFail)15831 void checkEqual_VkPhysicalDeviceLineRasterizationFeaturesEXT(
15832 const VkPhysicalDeviceLineRasterizationFeaturesEXT* a,
15833 const VkPhysicalDeviceLineRasterizationFeaturesEXT* b, OnFailCompareFunc onFail) {
15834 if (!((a->sType) == (b->sType))) {
15835 onFail("a->sType (Error: Value not equal)");
15836 };
15837 if (a->pNext) {
15838 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15839 }
15840 if (!((a->rectangularLines) == (b->rectangularLines))) {
15841 onFail("a->rectangularLines (Error: Value not equal)");
15842 };
15843 if (!((a->bresenhamLines) == (b->bresenhamLines))) {
15844 onFail("a->bresenhamLines (Error: Value not equal)");
15845 };
15846 if (!((a->smoothLines) == (b->smoothLines))) {
15847 onFail("a->smoothLines (Error: Value not equal)");
15848 };
15849 if (!((a->stippledRectangularLines) == (b->stippledRectangularLines))) {
15850 onFail("a->stippledRectangularLines (Error: Value not equal)");
15851 };
15852 if (!((a->stippledBresenhamLines) == (b->stippledBresenhamLines))) {
15853 onFail("a->stippledBresenhamLines (Error: Value not equal)");
15854 };
15855 if (!((a->stippledSmoothLines) == (b->stippledSmoothLines))) {
15856 onFail("a->stippledSmoothLines (Error: Value not equal)");
15857 };
15858 }
15859
checkEqual_VkPhysicalDeviceLineRasterizationPropertiesEXT(const VkPhysicalDeviceLineRasterizationPropertiesEXT * a,const VkPhysicalDeviceLineRasterizationPropertiesEXT * b,OnFailCompareFunc onFail)15860 void checkEqual_VkPhysicalDeviceLineRasterizationPropertiesEXT(
15861 const VkPhysicalDeviceLineRasterizationPropertiesEXT* a,
15862 const VkPhysicalDeviceLineRasterizationPropertiesEXT* b, OnFailCompareFunc onFail) {
15863 if (!((a->sType) == (b->sType))) {
15864 onFail("a->sType (Error: Value not equal)");
15865 };
15866 if (a->pNext) {
15867 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15868 }
15869 if (!((a->lineSubPixelPrecisionBits) == (b->lineSubPixelPrecisionBits))) {
15870 onFail("a->lineSubPixelPrecisionBits (Error: Value not equal)");
15871 };
15872 }
15873
checkEqual_VkPipelineRasterizationLineStateCreateInfoEXT(const VkPipelineRasterizationLineStateCreateInfoEXT * a,const VkPipelineRasterizationLineStateCreateInfoEXT * b,OnFailCompareFunc onFail)15874 void checkEqual_VkPipelineRasterizationLineStateCreateInfoEXT(
15875 const VkPipelineRasterizationLineStateCreateInfoEXT* a,
15876 const VkPipelineRasterizationLineStateCreateInfoEXT* b, OnFailCompareFunc onFail) {
15877 if (!((a->sType) == (b->sType))) {
15878 onFail("a->sType (Error: Value not equal)");
15879 };
15880 if (a->pNext) {
15881 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15882 }
15883 if (!((a->lineRasterizationMode) == (b->lineRasterizationMode))) {
15884 onFail("a->lineRasterizationMode (Error: Value not equal)");
15885 };
15886 if (!((a->stippledLineEnable) == (b->stippledLineEnable))) {
15887 onFail("a->stippledLineEnable (Error: Value not equal)");
15888 };
15889 if (!((a->lineStippleFactor) == (b->lineStippleFactor))) {
15890 onFail("a->lineStippleFactor (Error: Value not equal)");
15891 };
15892 if (!((a->lineStipplePattern) == (b->lineStipplePattern))) {
15893 onFail("a->lineStipplePattern (Error: Value not equal)");
15894 };
15895 }
15896
15897 #endif
15898 #ifdef VK_EXT_shader_atomic_float
checkEqual_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * a,const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT * b,OnFailCompareFunc onFail)15899 void checkEqual_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(
15900 const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* a,
15901 const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT* b, OnFailCompareFunc onFail) {
15902 if (!((a->sType) == (b->sType))) {
15903 onFail("a->sType (Error: Value not equal)");
15904 };
15905 if (a->pNext) {
15906 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15907 }
15908 if (!((a->shaderBufferFloat32Atomics) == (b->shaderBufferFloat32Atomics))) {
15909 onFail("a->shaderBufferFloat32Atomics (Error: Value not equal)");
15910 };
15911 if (!((a->shaderBufferFloat32AtomicAdd) == (b->shaderBufferFloat32AtomicAdd))) {
15912 onFail("a->shaderBufferFloat32AtomicAdd (Error: Value not equal)");
15913 };
15914 if (!((a->shaderBufferFloat64Atomics) == (b->shaderBufferFloat64Atomics))) {
15915 onFail("a->shaderBufferFloat64Atomics (Error: Value not equal)");
15916 };
15917 if (!((a->shaderBufferFloat64AtomicAdd) == (b->shaderBufferFloat64AtomicAdd))) {
15918 onFail("a->shaderBufferFloat64AtomicAdd (Error: Value not equal)");
15919 };
15920 if (!((a->shaderSharedFloat32Atomics) == (b->shaderSharedFloat32Atomics))) {
15921 onFail("a->shaderSharedFloat32Atomics (Error: Value not equal)");
15922 };
15923 if (!((a->shaderSharedFloat32AtomicAdd) == (b->shaderSharedFloat32AtomicAdd))) {
15924 onFail("a->shaderSharedFloat32AtomicAdd (Error: Value not equal)");
15925 };
15926 if (!((a->shaderSharedFloat64Atomics) == (b->shaderSharedFloat64Atomics))) {
15927 onFail("a->shaderSharedFloat64Atomics (Error: Value not equal)");
15928 };
15929 if (!((a->shaderSharedFloat64AtomicAdd) == (b->shaderSharedFloat64AtomicAdd))) {
15930 onFail("a->shaderSharedFloat64AtomicAdd (Error: Value not equal)");
15931 };
15932 if (!((a->shaderImageFloat32Atomics) == (b->shaderImageFloat32Atomics))) {
15933 onFail("a->shaderImageFloat32Atomics (Error: Value not equal)");
15934 };
15935 if (!((a->shaderImageFloat32AtomicAdd) == (b->shaderImageFloat32AtomicAdd))) {
15936 onFail("a->shaderImageFloat32AtomicAdd (Error: Value not equal)");
15937 };
15938 if (!((a->sparseImageFloat32Atomics) == (b->sparseImageFloat32Atomics))) {
15939 onFail("a->sparseImageFloat32Atomics (Error: Value not equal)");
15940 };
15941 if (!((a->sparseImageFloat32AtomicAdd) == (b->sparseImageFloat32AtomicAdd))) {
15942 onFail("a->sparseImageFloat32AtomicAdd (Error: Value not equal)");
15943 };
15944 }
15945
15946 #endif
15947 #ifdef VK_EXT_host_query_reset
15948 #endif
15949 #ifdef VK_EXT_index_type_uint8
checkEqual_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * a,const VkPhysicalDeviceIndexTypeUint8FeaturesEXT * b,OnFailCompareFunc onFail)15950 void checkEqual_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(
15951 const VkPhysicalDeviceIndexTypeUint8FeaturesEXT* a,
15952 const VkPhysicalDeviceIndexTypeUint8FeaturesEXT* b, OnFailCompareFunc onFail) {
15953 if (!((a->sType) == (b->sType))) {
15954 onFail("a->sType (Error: Value not equal)");
15955 };
15956 if (a->pNext) {
15957 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15958 }
15959 if (!((a->indexTypeUint8) == (b->indexTypeUint8))) {
15960 onFail("a->indexTypeUint8 (Error: Value not equal)");
15961 };
15962 }
15963
15964 #endif
15965 #ifdef VK_EXT_extended_dynamic_state
checkEqual_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * a,const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT * b,OnFailCompareFunc onFail)15966 void checkEqual_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
15967 const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* a,
15968 const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* b, OnFailCompareFunc onFail) {
15969 if (!((a->sType) == (b->sType))) {
15970 onFail("a->sType (Error: Value not equal)");
15971 };
15972 if (a->pNext) {
15973 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15974 }
15975 if (!((a->extendedDynamicState) == (b->extendedDynamicState))) {
15976 onFail("a->extendedDynamicState (Error: Value not equal)");
15977 };
15978 }
15979
15980 #endif
15981 #ifdef VK_EXT_shader_atomic_float2
checkEqual_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT * a,const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT * b,OnFailCompareFunc onFail)15982 void checkEqual_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
15983 const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* a,
15984 const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* b, OnFailCompareFunc onFail) {
15985 if (!((a->sType) == (b->sType))) {
15986 onFail("a->sType (Error: Value not equal)");
15987 };
15988 if (a->pNext) {
15989 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
15990 }
15991 if (!((a->shaderBufferFloat16Atomics) == (b->shaderBufferFloat16Atomics))) {
15992 onFail("a->shaderBufferFloat16Atomics (Error: Value not equal)");
15993 };
15994 if (!((a->shaderBufferFloat16AtomicAdd) == (b->shaderBufferFloat16AtomicAdd))) {
15995 onFail("a->shaderBufferFloat16AtomicAdd (Error: Value not equal)");
15996 };
15997 if (!((a->shaderBufferFloat16AtomicMinMax) == (b->shaderBufferFloat16AtomicMinMax))) {
15998 onFail("a->shaderBufferFloat16AtomicMinMax (Error: Value not equal)");
15999 };
16000 if (!((a->shaderBufferFloat32AtomicMinMax) == (b->shaderBufferFloat32AtomicMinMax))) {
16001 onFail("a->shaderBufferFloat32AtomicMinMax (Error: Value not equal)");
16002 };
16003 if (!((a->shaderBufferFloat64AtomicMinMax) == (b->shaderBufferFloat64AtomicMinMax))) {
16004 onFail("a->shaderBufferFloat64AtomicMinMax (Error: Value not equal)");
16005 };
16006 if (!((a->shaderSharedFloat16Atomics) == (b->shaderSharedFloat16Atomics))) {
16007 onFail("a->shaderSharedFloat16Atomics (Error: Value not equal)");
16008 };
16009 if (!((a->shaderSharedFloat16AtomicAdd) == (b->shaderSharedFloat16AtomicAdd))) {
16010 onFail("a->shaderSharedFloat16AtomicAdd (Error: Value not equal)");
16011 };
16012 if (!((a->shaderSharedFloat16AtomicMinMax) == (b->shaderSharedFloat16AtomicMinMax))) {
16013 onFail("a->shaderSharedFloat16AtomicMinMax (Error: Value not equal)");
16014 };
16015 if (!((a->shaderSharedFloat32AtomicMinMax) == (b->shaderSharedFloat32AtomicMinMax))) {
16016 onFail("a->shaderSharedFloat32AtomicMinMax (Error: Value not equal)");
16017 };
16018 if (!((a->shaderSharedFloat64AtomicMinMax) == (b->shaderSharedFloat64AtomicMinMax))) {
16019 onFail("a->shaderSharedFloat64AtomicMinMax (Error: Value not equal)");
16020 };
16021 if (!((a->shaderImageFloat32AtomicMinMax) == (b->shaderImageFloat32AtomicMinMax))) {
16022 onFail("a->shaderImageFloat32AtomicMinMax (Error: Value not equal)");
16023 };
16024 if (!((a->sparseImageFloat32AtomicMinMax) == (b->sparseImageFloat32AtomicMinMax))) {
16025 onFail("a->sparseImageFloat32AtomicMinMax (Error: Value not equal)");
16026 };
16027 }
16028
16029 #endif
16030 #ifdef VK_EXT_surface_maintenance1
checkEqual_VkSurfacePresentModeEXT(const VkSurfacePresentModeEXT * a,const VkSurfacePresentModeEXT * b,OnFailCompareFunc onFail)16031 void checkEqual_VkSurfacePresentModeEXT(const VkSurfacePresentModeEXT* a,
16032 const VkSurfacePresentModeEXT* b,
16033 OnFailCompareFunc onFail) {
16034 if (!((a->sType) == (b->sType))) {
16035 onFail("a->sType (Error: Value not equal)");
16036 };
16037 if (a->pNext) {
16038 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16039 }
16040 if (!((a->presentMode) == (b->presentMode))) {
16041 onFail("a->presentMode (Error: Value not equal)");
16042 };
16043 }
16044
checkEqual_VkSurfacePresentScalingCapabilitiesEXT(const VkSurfacePresentScalingCapabilitiesEXT * a,const VkSurfacePresentScalingCapabilitiesEXT * b,OnFailCompareFunc onFail)16045 void checkEqual_VkSurfacePresentScalingCapabilitiesEXT(
16046 const VkSurfacePresentScalingCapabilitiesEXT* a,
16047 const VkSurfacePresentScalingCapabilitiesEXT* b, OnFailCompareFunc onFail) {
16048 if (!((a->sType) == (b->sType))) {
16049 onFail("a->sType (Error: Value not equal)");
16050 };
16051 if (a->pNext) {
16052 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16053 }
16054 if (!((a->supportedPresentScaling) == (b->supportedPresentScaling))) {
16055 onFail("a->supportedPresentScaling (Error: Value not equal)");
16056 };
16057 if (!((a->supportedPresentGravityX) == (b->supportedPresentGravityX))) {
16058 onFail("a->supportedPresentGravityX (Error: Value not equal)");
16059 };
16060 if (!((a->supportedPresentGravityY) == (b->supportedPresentGravityY))) {
16061 onFail("a->supportedPresentGravityY (Error: Value not equal)");
16062 };
16063 checkEqual_VkExtent2D(&a->minScaledImageExtent, &b->minScaledImageExtent, onFail);
16064 checkEqual_VkExtent2D(&a->maxScaledImageExtent, &b->maxScaledImageExtent, onFail);
16065 }
16066
checkEqual_VkSurfacePresentModeCompatibilityEXT(const VkSurfacePresentModeCompatibilityEXT * a,const VkSurfacePresentModeCompatibilityEXT * b,OnFailCompareFunc onFail)16067 void checkEqual_VkSurfacePresentModeCompatibilityEXT(const VkSurfacePresentModeCompatibilityEXT* a,
16068 const VkSurfacePresentModeCompatibilityEXT* b,
16069 OnFailCompareFunc onFail) {
16070 if (!((a->sType) == (b->sType))) {
16071 onFail("a->sType (Error: Value not equal)");
16072 };
16073 if (a->pNext) {
16074 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16075 }
16076 if (!((a->presentModeCount) == (b->presentModeCount))) {
16077 onFail("a->presentModeCount (Error: Value not equal)");
16078 };
16079 if (!((!(a->pPresentModes) && !(b->pPresentModes)) ||
16080 ((a->pPresentModes) && (b->pPresentModes)))) {
16081 onFail("a->pPresentModes (Error: Mismatch in optional field)");
16082 };
16083 if (a->pPresentModes && b->pPresentModes) {
16084 if (!((a->presentModeCount) == (b->presentModeCount))) {
16085 onFail("a->pPresentModes (Error: Lengths not equal)");
16086 };
16087 if (!((memcmp(a->pPresentModes, b->pPresentModes,
16088 a->presentModeCount * sizeof(VkPresentModeKHR)) == 0))) {
16089 onFail("a->pPresentModes (Error: Unequal dyn array)");
16090 };
16091 }
16092 }
16093
16094 #endif
16095 #ifdef VK_EXT_swapchain_maintenance1
checkEqual_VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT(const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT * a,const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT * b,OnFailCompareFunc onFail)16096 void checkEqual_VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT(
16097 const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* a,
16098 const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT* b, OnFailCompareFunc onFail) {
16099 if (!((a->sType) == (b->sType))) {
16100 onFail("a->sType (Error: Value not equal)");
16101 };
16102 if (a->pNext) {
16103 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16104 }
16105 if (!((a->swapchainMaintenance1) == (b->swapchainMaintenance1))) {
16106 onFail("a->swapchainMaintenance1 (Error: Value not equal)");
16107 };
16108 }
16109
checkEqual_VkSwapchainPresentFenceInfoEXT(const VkSwapchainPresentFenceInfoEXT * a,const VkSwapchainPresentFenceInfoEXT * b,OnFailCompareFunc onFail)16110 void checkEqual_VkSwapchainPresentFenceInfoEXT(const VkSwapchainPresentFenceInfoEXT* a,
16111 const VkSwapchainPresentFenceInfoEXT* b,
16112 OnFailCompareFunc onFail) {
16113 if (!((a->sType) == (b->sType))) {
16114 onFail("a->sType (Error: Value not equal)");
16115 };
16116 if (a->pNext) {
16117 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16118 }
16119 if (!((a->swapchainCount) == (b->swapchainCount))) {
16120 onFail("a->swapchainCount (Error: Value not equal)");
16121 };
16122 if (!((a->swapchainCount) == (b->swapchainCount))) {
16123 onFail("a->pFences (Error: Lengths not equal)");
16124 };
16125 if (!((memcmp(a->pFences, b->pFences, a->swapchainCount * sizeof(const VkFence)) == 0))) {
16126 onFail("a->pFences (Error: Unequal dyn array)");
16127 };
16128 }
16129
checkEqual_VkSwapchainPresentModesCreateInfoEXT(const VkSwapchainPresentModesCreateInfoEXT * a,const VkSwapchainPresentModesCreateInfoEXT * b,OnFailCompareFunc onFail)16130 void checkEqual_VkSwapchainPresentModesCreateInfoEXT(const VkSwapchainPresentModesCreateInfoEXT* a,
16131 const VkSwapchainPresentModesCreateInfoEXT* b,
16132 OnFailCompareFunc onFail) {
16133 if (!((a->sType) == (b->sType))) {
16134 onFail("a->sType (Error: Value not equal)");
16135 };
16136 if (a->pNext) {
16137 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16138 }
16139 if (!((a->presentModeCount) == (b->presentModeCount))) {
16140 onFail("a->presentModeCount (Error: Value not equal)");
16141 };
16142 if (!((a->presentModeCount) == (b->presentModeCount))) {
16143 onFail("a->pPresentModes (Error: Lengths not equal)");
16144 };
16145 if (!((memcmp(a->pPresentModes, b->pPresentModes,
16146 a->presentModeCount * sizeof(const VkPresentModeKHR)) == 0))) {
16147 onFail("a->pPresentModes (Error: Unequal dyn array)");
16148 };
16149 }
16150
checkEqual_VkSwapchainPresentModeInfoEXT(const VkSwapchainPresentModeInfoEXT * a,const VkSwapchainPresentModeInfoEXT * b,OnFailCompareFunc onFail)16151 void checkEqual_VkSwapchainPresentModeInfoEXT(const VkSwapchainPresentModeInfoEXT* a,
16152 const VkSwapchainPresentModeInfoEXT* b,
16153 OnFailCompareFunc onFail) {
16154 if (!((a->sType) == (b->sType))) {
16155 onFail("a->sType (Error: Value not equal)");
16156 };
16157 if (a->pNext) {
16158 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16159 }
16160 if (!((a->swapchainCount) == (b->swapchainCount))) {
16161 onFail("a->swapchainCount (Error: Value not equal)");
16162 };
16163 if (!((a->swapchainCount) == (b->swapchainCount))) {
16164 onFail("a->pPresentModes (Error: Lengths not equal)");
16165 };
16166 if (!((memcmp(a->pPresentModes, b->pPresentModes,
16167 a->swapchainCount * sizeof(const VkPresentModeKHR)) == 0))) {
16168 onFail("a->pPresentModes (Error: Unequal dyn array)");
16169 };
16170 }
16171
checkEqual_VkSwapchainPresentScalingCreateInfoEXT(const VkSwapchainPresentScalingCreateInfoEXT * a,const VkSwapchainPresentScalingCreateInfoEXT * b,OnFailCompareFunc onFail)16172 void checkEqual_VkSwapchainPresentScalingCreateInfoEXT(
16173 const VkSwapchainPresentScalingCreateInfoEXT* a,
16174 const VkSwapchainPresentScalingCreateInfoEXT* b, OnFailCompareFunc onFail) {
16175 if (!((a->sType) == (b->sType))) {
16176 onFail("a->sType (Error: Value not equal)");
16177 };
16178 if (a->pNext) {
16179 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16180 }
16181 if (!((a->scalingBehavior) == (b->scalingBehavior))) {
16182 onFail("a->scalingBehavior (Error: Value not equal)");
16183 };
16184 if (!((a->presentGravityX) == (b->presentGravityX))) {
16185 onFail("a->presentGravityX (Error: Value not equal)");
16186 };
16187 if (!((a->presentGravityY) == (b->presentGravityY))) {
16188 onFail("a->presentGravityY (Error: Value not equal)");
16189 };
16190 }
16191
checkEqual_VkReleaseSwapchainImagesInfoEXT(const VkReleaseSwapchainImagesInfoEXT * a,const VkReleaseSwapchainImagesInfoEXT * b,OnFailCompareFunc onFail)16192 void checkEqual_VkReleaseSwapchainImagesInfoEXT(const VkReleaseSwapchainImagesInfoEXT* a,
16193 const VkReleaseSwapchainImagesInfoEXT* b,
16194 OnFailCompareFunc onFail) {
16195 if (!((a->sType) == (b->sType))) {
16196 onFail("a->sType (Error: Value not equal)");
16197 };
16198 if (a->pNext) {
16199 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16200 }
16201 if (!((a->swapchain) == (b->swapchain))) {
16202 onFail("a->swapchain (Error: Value not equal)");
16203 };
16204 if (!((a->imageIndexCount) == (b->imageIndexCount))) {
16205 onFail("a->imageIndexCount (Error: Value not equal)");
16206 };
16207 if (!((a->imageIndexCount) == (b->imageIndexCount))) {
16208 onFail("a->pImageIndices (Error: Lengths not equal)");
16209 };
16210 if (!((memcmp(a->pImageIndices, b->pImageIndices,
16211 a->imageIndexCount * sizeof(const uint32_t)) == 0))) {
16212 onFail("a->pImageIndices (Error: Unequal dyn array)");
16213 };
16214 }
16215
16216 #endif
16217 #ifdef VK_EXT_shader_demote_to_helper_invocation
16218 #endif
16219 #ifdef VK_NV_device_generated_commands
checkEqual_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV(const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV * a,const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV * b,OnFailCompareFunc onFail)16220 void checkEqual_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
16221 const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* a,
16222 const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV* b, OnFailCompareFunc onFail) {
16223 if (!((a->sType) == (b->sType))) {
16224 onFail("a->sType (Error: Value not equal)");
16225 };
16226 if (a->pNext) {
16227 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16228 }
16229 if (!((a->maxGraphicsShaderGroupCount) == (b->maxGraphicsShaderGroupCount))) {
16230 onFail("a->maxGraphicsShaderGroupCount (Error: Value not equal)");
16231 };
16232 if (!((a->maxIndirectSequenceCount) == (b->maxIndirectSequenceCount))) {
16233 onFail("a->maxIndirectSequenceCount (Error: Value not equal)");
16234 };
16235 if (!((a->maxIndirectCommandsTokenCount) == (b->maxIndirectCommandsTokenCount))) {
16236 onFail("a->maxIndirectCommandsTokenCount (Error: Value not equal)");
16237 };
16238 if (!((a->maxIndirectCommandsStreamCount) == (b->maxIndirectCommandsStreamCount))) {
16239 onFail("a->maxIndirectCommandsStreamCount (Error: Value not equal)");
16240 };
16241 if (!((a->maxIndirectCommandsTokenOffset) == (b->maxIndirectCommandsTokenOffset))) {
16242 onFail("a->maxIndirectCommandsTokenOffset (Error: Value not equal)");
16243 };
16244 if (!((a->maxIndirectCommandsStreamStride) == (b->maxIndirectCommandsStreamStride))) {
16245 onFail("a->maxIndirectCommandsStreamStride (Error: Value not equal)");
16246 };
16247 if (!((a->minSequencesCountBufferOffsetAlignment) ==
16248 (b->minSequencesCountBufferOffsetAlignment))) {
16249 onFail("a->minSequencesCountBufferOffsetAlignment (Error: Value not equal)");
16250 };
16251 if (!((a->minSequencesIndexBufferOffsetAlignment) ==
16252 (b->minSequencesIndexBufferOffsetAlignment))) {
16253 onFail("a->minSequencesIndexBufferOffsetAlignment (Error: Value not equal)");
16254 };
16255 if (!((a->minIndirectCommandsBufferOffsetAlignment) ==
16256 (b->minIndirectCommandsBufferOffsetAlignment))) {
16257 onFail("a->minIndirectCommandsBufferOffsetAlignment (Error: Value not equal)");
16258 };
16259 }
16260
checkEqual_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV(const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV * a,const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV * b,OnFailCompareFunc onFail)16261 void checkEqual_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
16262 const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* a,
16263 const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV* b, OnFailCompareFunc onFail) {
16264 if (!((a->sType) == (b->sType))) {
16265 onFail("a->sType (Error: Value not equal)");
16266 };
16267 if (a->pNext) {
16268 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16269 }
16270 if (!((a->deviceGeneratedCommands) == (b->deviceGeneratedCommands))) {
16271 onFail("a->deviceGeneratedCommands (Error: Value not equal)");
16272 };
16273 }
16274
checkEqual_VkGraphicsShaderGroupCreateInfoNV(const VkGraphicsShaderGroupCreateInfoNV * a,const VkGraphicsShaderGroupCreateInfoNV * b,OnFailCompareFunc onFail)16275 void checkEqual_VkGraphicsShaderGroupCreateInfoNV(const VkGraphicsShaderGroupCreateInfoNV* a,
16276 const VkGraphicsShaderGroupCreateInfoNV* b,
16277 OnFailCompareFunc onFail) {
16278 if (!((a->sType) == (b->sType))) {
16279 onFail("a->sType (Error: Value not equal)");
16280 };
16281 if (a->pNext) {
16282 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16283 }
16284 if (!((a->stageCount) == (b->stageCount))) {
16285 onFail("a->stageCount (Error: Value not equal)");
16286 };
16287 if ((a->pStages) && (b->pStages)) {
16288 if (!((a->stageCount) == (b->stageCount))) {
16289 onFail("a->pStages (Error: Lengths not equal)");
16290 };
16291 if ((a->stageCount) == (b->stageCount)) {
16292 if (a) {
16293 for (uint32_t i = 0; i < (uint32_t)a->stageCount; ++i) {
16294 checkEqual_VkPipelineShaderStageCreateInfo(a->pStages + i, b->pStages + i,
16295 onFail);
16296 }
16297 }
16298 }
16299 }
16300 if (!((!(a->pVertexInputState) && !(b->pVertexInputState)) ||
16301 ((a->pVertexInputState) && (b->pVertexInputState)))) {
16302 onFail("a->pVertexInputState (Error: Mismatch in optional field)");
16303 };
16304 if (a->pVertexInputState && b->pVertexInputState) {
16305 if ((a->pVertexInputState) && (b->pVertexInputState)) {
16306 checkEqual_VkPipelineVertexInputStateCreateInfo(a->pVertexInputState,
16307 b->pVertexInputState, onFail);
16308 }
16309 }
16310 if (!((!(a->pTessellationState) && !(b->pTessellationState)) ||
16311 ((a->pTessellationState) && (b->pTessellationState)))) {
16312 onFail("a->pTessellationState (Error: Mismatch in optional field)");
16313 };
16314 if (a->pTessellationState && b->pTessellationState) {
16315 if ((a->pTessellationState) && (b->pTessellationState)) {
16316 checkEqual_VkPipelineTessellationStateCreateInfo(a->pTessellationState,
16317 b->pTessellationState, onFail);
16318 }
16319 }
16320 }
16321
checkEqual_VkGraphicsPipelineShaderGroupsCreateInfoNV(const VkGraphicsPipelineShaderGroupsCreateInfoNV * a,const VkGraphicsPipelineShaderGroupsCreateInfoNV * b,OnFailCompareFunc onFail)16322 void checkEqual_VkGraphicsPipelineShaderGroupsCreateInfoNV(
16323 const VkGraphicsPipelineShaderGroupsCreateInfoNV* a,
16324 const VkGraphicsPipelineShaderGroupsCreateInfoNV* b, OnFailCompareFunc onFail) {
16325 if (!((a->sType) == (b->sType))) {
16326 onFail("a->sType (Error: Value not equal)");
16327 };
16328 if (a->pNext) {
16329 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16330 }
16331 if (!((a->groupCount) == (b->groupCount))) {
16332 onFail("a->groupCount (Error: Value not equal)");
16333 };
16334 if ((a->pGroups) && (b->pGroups)) {
16335 if (!((a->groupCount) == (b->groupCount))) {
16336 onFail("a->pGroups (Error: Lengths not equal)");
16337 };
16338 if ((a->groupCount) == (b->groupCount)) {
16339 if (a) {
16340 for (uint32_t i = 0; i < (uint32_t)a->groupCount; ++i) {
16341 checkEqual_VkGraphicsShaderGroupCreateInfoNV(a->pGroups + i, b->pGroups + i,
16342 onFail);
16343 }
16344 }
16345 }
16346 }
16347 if (!((a->pipelineCount) == (b->pipelineCount))) {
16348 onFail("a->pipelineCount (Error: Value not equal)");
16349 };
16350 if (!((a->pipelineCount) == (b->pipelineCount))) {
16351 onFail("a->pPipelines (Error: Lengths not equal)");
16352 };
16353 if (!((memcmp(a->pPipelines, b->pPipelines, a->pipelineCount * sizeof(const VkPipeline)) ==
16354 0))) {
16355 onFail("a->pPipelines (Error: Unequal dyn array)");
16356 };
16357 }
16358
checkEqual_VkBindShaderGroupIndirectCommandNV(const VkBindShaderGroupIndirectCommandNV * a,const VkBindShaderGroupIndirectCommandNV * b,OnFailCompareFunc onFail)16359 void checkEqual_VkBindShaderGroupIndirectCommandNV(const VkBindShaderGroupIndirectCommandNV* a,
16360 const VkBindShaderGroupIndirectCommandNV* b,
16361 OnFailCompareFunc onFail) {
16362 if (!((a->groupIndex) == (b->groupIndex))) {
16363 onFail("a->groupIndex (Error: Value not equal)");
16364 };
16365 }
16366
checkEqual_VkBindIndexBufferIndirectCommandNV(const VkBindIndexBufferIndirectCommandNV * a,const VkBindIndexBufferIndirectCommandNV * b,OnFailCompareFunc onFail)16367 void checkEqual_VkBindIndexBufferIndirectCommandNV(const VkBindIndexBufferIndirectCommandNV* a,
16368 const VkBindIndexBufferIndirectCommandNV* b,
16369 OnFailCompareFunc onFail) {
16370 if (!((a->bufferAddress) == (b->bufferAddress))) {
16371 onFail("a->bufferAddress (Error: Value not equal)");
16372 };
16373 if (!((a->size) == (b->size))) {
16374 onFail("a->size (Error: Value not equal)");
16375 };
16376 if (!((a->indexType) == (b->indexType))) {
16377 onFail("a->indexType (Error: Value not equal)");
16378 };
16379 }
16380
checkEqual_VkBindVertexBufferIndirectCommandNV(const VkBindVertexBufferIndirectCommandNV * a,const VkBindVertexBufferIndirectCommandNV * b,OnFailCompareFunc onFail)16381 void checkEqual_VkBindVertexBufferIndirectCommandNV(const VkBindVertexBufferIndirectCommandNV* a,
16382 const VkBindVertexBufferIndirectCommandNV* b,
16383 OnFailCompareFunc onFail) {
16384 if (!((a->bufferAddress) == (b->bufferAddress))) {
16385 onFail("a->bufferAddress (Error: Value not equal)");
16386 };
16387 if (!((a->size) == (b->size))) {
16388 onFail("a->size (Error: Value not equal)");
16389 };
16390 if (!((a->stride) == (b->stride))) {
16391 onFail("a->stride (Error: Value not equal)");
16392 };
16393 }
16394
checkEqual_VkSetStateFlagsIndirectCommandNV(const VkSetStateFlagsIndirectCommandNV * a,const VkSetStateFlagsIndirectCommandNV * b,OnFailCompareFunc onFail)16395 void checkEqual_VkSetStateFlagsIndirectCommandNV(const VkSetStateFlagsIndirectCommandNV* a,
16396 const VkSetStateFlagsIndirectCommandNV* b,
16397 OnFailCompareFunc onFail) {
16398 if (!((a->data) == (b->data))) {
16399 onFail("a->data (Error: Value not equal)");
16400 };
16401 }
16402
checkEqual_VkIndirectCommandsStreamNV(const VkIndirectCommandsStreamNV * a,const VkIndirectCommandsStreamNV * b,OnFailCompareFunc onFail)16403 void checkEqual_VkIndirectCommandsStreamNV(const VkIndirectCommandsStreamNV* a,
16404 const VkIndirectCommandsStreamNV* b,
16405 OnFailCompareFunc onFail) {
16406 if (!((a->buffer) == (b->buffer))) {
16407 onFail("a->buffer (Error: Value not equal)");
16408 };
16409 if (!((a->offset) == (b->offset))) {
16410 onFail("a->offset (Error: Value not equal)");
16411 };
16412 }
16413
checkEqual_VkIndirectCommandsLayoutTokenNV(const VkIndirectCommandsLayoutTokenNV * a,const VkIndirectCommandsLayoutTokenNV * b,OnFailCompareFunc onFail)16414 void checkEqual_VkIndirectCommandsLayoutTokenNV(const VkIndirectCommandsLayoutTokenNV* a,
16415 const VkIndirectCommandsLayoutTokenNV* b,
16416 OnFailCompareFunc onFail) {
16417 if (!((a->sType) == (b->sType))) {
16418 onFail("a->sType (Error: Value not equal)");
16419 };
16420 if (a->pNext) {
16421 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16422 }
16423 if (!((a->tokenType) == (b->tokenType))) {
16424 onFail("a->tokenType (Error: Value not equal)");
16425 };
16426 if (!((a->stream) == (b->stream))) {
16427 onFail("a->stream (Error: Value not equal)");
16428 };
16429 if (!((a->offset) == (b->offset))) {
16430 onFail("a->offset (Error: Value not equal)");
16431 };
16432 if (!((a->vertexBindingUnit) == (b->vertexBindingUnit))) {
16433 onFail("a->vertexBindingUnit (Error: Value not equal)");
16434 };
16435 if (!((a->vertexDynamicStride) == (b->vertexDynamicStride))) {
16436 onFail("a->vertexDynamicStride (Error: Value not equal)");
16437 };
16438 if (!((a->pushconstantPipelineLayout) == (b->pushconstantPipelineLayout))) {
16439 onFail("a->pushconstantPipelineLayout (Error: Value not equal)");
16440 };
16441 if (!((a->pushconstantShaderStageFlags) == (b->pushconstantShaderStageFlags))) {
16442 onFail("a->pushconstantShaderStageFlags (Error: Value not equal)");
16443 };
16444 if (!((a->pushconstantOffset) == (b->pushconstantOffset))) {
16445 onFail("a->pushconstantOffset (Error: Value not equal)");
16446 };
16447 if (!((a->pushconstantSize) == (b->pushconstantSize))) {
16448 onFail("a->pushconstantSize (Error: Value not equal)");
16449 };
16450 if (!((a->indirectStateFlags) == (b->indirectStateFlags))) {
16451 onFail("a->indirectStateFlags (Error: Value not equal)");
16452 };
16453 if (!((a->indexTypeCount) == (b->indexTypeCount))) {
16454 onFail("a->indexTypeCount (Error: Value not equal)");
16455 };
16456 if (!((a->indexTypeCount) == (b->indexTypeCount))) {
16457 onFail("a->pIndexTypes (Error: Lengths not equal)");
16458 };
16459 if (!((memcmp(a->pIndexTypes, b->pIndexTypes, a->indexTypeCount * sizeof(const VkIndexType)) ==
16460 0))) {
16461 onFail("a->pIndexTypes (Error: Unequal dyn array)");
16462 };
16463 if (!((a->indexTypeCount) == (b->indexTypeCount))) {
16464 onFail("a->pIndexTypeValues (Error: Lengths not equal)");
16465 };
16466 if (!((memcmp(a->pIndexTypeValues, b->pIndexTypeValues,
16467 a->indexTypeCount * sizeof(const uint32_t)) == 0))) {
16468 onFail("a->pIndexTypeValues (Error: Unequal dyn array)");
16469 };
16470 }
16471
checkEqual_VkIndirectCommandsLayoutCreateInfoNV(const VkIndirectCommandsLayoutCreateInfoNV * a,const VkIndirectCommandsLayoutCreateInfoNV * b,OnFailCompareFunc onFail)16472 void checkEqual_VkIndirectCommandsLayoutCreateInfoNV(const VkIndirectCommandsLayoutCreateInfoNV* a,
16473 const VkIndirectCommandsLayoutCreateInfoNV* b,
16474 OnFailCompareFunc onFail) {
16475 if (!((a->sType) == (b->sType))) {
16476 onFail("a->sType (Error: Value not equal)");
16477 };
16478 if (a->pNext) {
16479 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16480 }
16481 if (!((a->flags) == (b->flags))) {
16482 onFail("a->flags (Error: Value not equal)");
16483 };
16484 if (!((a->pipelineBindPoint) == (b->pipelineBindPoint))) {
16485 onFail("a->pipelineBindPoint (Error: Value not equal)");
16486 };
16487 if (!((a->tokenCount) == (b->tokenCount))) {
16488 onFail("a->tokenCount (Error: Value not equal)");
16489 };
16490 if ((a->pTokens) && (b->pTokens)) {
16491 if (!((a->tokenCount) == (b->tokenCount))) {
16492 onFail("a->pTokens (Error: Lengths not equal)");
16493 };
16494 if ((a->tokenCount) == (b->tokenCount)) {
16495 if (a) {
16496 for (uint32_t i = 0; i < (uint32_t)a->tokenCount; ++i) {
16497 checkEqual_VkIndirectCommandsLayoutTokenNV(a->pTokens + i, b->pTokens + i,
16498 onFail);
16499 }
16500 }
16501 }
16502 }
16503 if (!((a->streamCount) == (b->streamCount))) {
16504 onFail("a->streamCount (Error: Value not equal)");
16505 };
16506 if (!((a->streamCount) == (b->streamCount))) {
16507 onFail("a->pStreamStrides (Error: Lengths not equal)");
16508 };
16509 if (!((memcmp(a->pStreamStrides, b->pStreamStrides, a->streamCount * sizeof(const uint32_t)) ==
16510 0))) {
16511 onFail("a->pStreamStrides (Error: Unequal dyn array)");
16512 };
16513 }
16514
checkEqual_VkGeneratedCommandsInfoNV(const VkGeneratedCommandsInfoNV * a,const VkGeneratedCommandsInfoNV * b,OnFailCompareFunc onFail)16515 void checkEqual_VkGeneratedCommandsInfoNV(const VkGeneratedCommandsInfoNV* a,
16516 const VkGeneratedCommandsInfoNV* b,
16517 OnFailCompareFunc onFail) {
16518 if (!((a->sType) == (b->sType))) {
16519 onFail("a->sType (Error: Value not equal)");
16520 };
16521 if (a->pNext) {
16522 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16523 }
16524 if (!((a->pipelineBindPoint) == (b->pipelineBindPoint))) {
16525 onFail("a->pipelineBindPoint (Error: Value not equal)");
16526 };
16527 if (!((a->pipeline) == (b->pipeline))) {
16528 onFail("a->pipeline (Error: Value not equal)");
16529 };
16530 if (!((a->indirectCommandsLayout) == (b->indirectCommandsLayout))) {
16531 onFail("a->indirectCommandsLayout (Error: Value not equal)");
16532 };
16533 if (!((a->streamCount) == (b->streamCount))) {
16534 onFail("a->streamCount (Error: Value not equal)");
16535 };
16536 if ((a->pStreams) && (b->pStreams)) {
16537 if (!((a->streamCount) == (b->streamCount))) {
16538 onFail("a->pStreams (Error: Lengths not equal)");
16539 };
16540 if ((a->streamCount) == (b->streamCount)) {
16541 if (a) {
16542 for (uint32_t i = 0; i < (uint32_t)a->streamCount; ++i) {
16543 checkEqual_VkIndirectCommandsStreamNV(a->pStreams + i, b->pStreams + i, onFail);
16544 }
16545 }
16546 }
16547 }
16548 if (!((a->sequencesCount) == (b->sequencesCount))) {
16549 onFail("a->sequencesCount (Error: Value not equal)");
16550 };
16551 if (!((a->preprocessBuffer) == (b->preprocessBuffer))) {
16552 onFail("a->preprocessBuffer (Error: Value not equal)");
16553 };
16554 if (!((a->preprocessOffset) == (b->preprocessOffset))) {
16555 onFail("a->preprocessOffset (Error: Value not equal)");
16556 };
16557 if (!((a->preprocessSize) == (b->preprocessSize))) {
16558 onFail("a->preprocessSize (Error: Value not equal)");
16559 };
16560 if (!((a->sequencesCountBuffer) == (b->sequencesCountBuffer))) {
16561 onFail("a->sequencesCountBuffer (Error: Value not equal)");
16562 };
16563 if (!((a->sequencesCountOffset) == (b->sequencesCountOffset))) {
16564 onFail("a->sequencesCountOffset (Error: Value not equal)");
16565 };
16566 if (!((a->sequencesIndexBuffer) == (b->sequencesIndexBuffer))) {
16567 onFail("a->sequencesIndexBuffer (Error: Value not equal)");
16568 };
16569 if (!((a->sequencesIndexOffset) == (b->sequencesIndexOffset))) {
16570 onFail("a->sequencesIndexOffset (Error: Value not equal)");
16571 };
16572 }
16573
checkEqual_VkGeneratedCommandsMemoryRequirementsInfoNV(const VkGeneratedCommandsMemoryRequirementsInfoNV * a,const VkGeneratedCommandsMemoryRequirementsInfoNV * b,OnFailCompareFunc onFail)16574 void checkEqual_VkGeneratedCommandsMemoryRequirementsInfoNV(
16575 const VkGeneratedCommandsMemoryRequirementsInfoNV* a,
16576 const VkGeneratedCommandsMemoryRequirementsInfoNV* b, OnFailCompareFunc onFail) {
16577 if (!((a->sType) == (b->sType))) {
16578 onFail("a->sType (Error: Value not equal)");
16579 };
16580 if (a->pNext) {
16581 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16582 }
16583 if (!((a->pipelineBindPoint) == (b->pipelineBindPoint))) {
16584 onFail("a->pipelineBindPoint (Error: Value not equal)");
16585 };
16586 if (!((a->pipeline) == (b->pipeline))) {
16587 onFail("a->pipeline (Error: Value not equal)");
16588 };
16589 if (!((a->indirectCommandsLayout) == (b->indirectCommandsLayout))) {
16590 onFail("a->indirectCommandsLayout (Error: Value not equal)");
16591 };
16592 if (!((a->maxSequencesCount) == (b->maxSequencesCount))) {
16593 onFail("a->maxSequencesCount (Error: Value not equal)");
16594 };
16595 }
16596
16597 #endif
16598 #ifdef VK_NV_inherited_viewport_scissor
checkEqual_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(const VkPhysicalDeviceInheritedViewportScissorFeaturesNV * a,const VkPhysicalDeviceInheritedViewportScissorFeaturesNV * b,OnFailCompareFunc onFail)16599 void checkEqual_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
16600 const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* a,
16601 const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* b, OnFailCompareFunc onFail) {
16602 if (!((a->sType) == (b->sType))) {
16603 onFail("a->sType (Error: Value not equal)");
16604 };
16605 if (a->pNext) {
16606 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16607 }
16608 if (!((a->inheritedViewportScissor2D) == (b->inheritedViewportScissor2D))) {
16609 onFail("a->inheritedViewportScissor2D (Error: Value not equal)");
16610 };
16611 }
16612
checkEqual_VkCommandBufferInheritanceViewportScissorInfoNV(const VkCommandBufferInheritanceViewportScissorInfoNV * a,const VkCommandBufferInheritanceViewportScissorInfoNV * b,OnFailCompareFunc onFail)16613 void checkEqual_VkCommandBufferInheritanceViewportScissorInfoNV(
16614 const VkCommandBufferInheritanceViewportScissorInfoNV* a,
16615 const VkCommandBufferInheritanceViewportScissorInfoNV* b, OnFailCompareFunc onFail) {
16616 if (!((a->sType) == (b->sType))) {
16617 onFail("a->sType (Error: Value not equal)");
16618 };
16619 if (a->pNext) {
16620 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16621 }
16622 if (!((a->viewportScissor2D) == (b->viewportScissor2D))) {
16623 onFail("a->viewportScissor2D (Error: Value not equal)");
16624 };
16625 if (!((a->viewportDepthCount) == (b->viewportDepthCount))) {
16626 onFail("a->viewportDepthCount (Error: Value not equal)");
16627 };
16628 if (!((!(a->pViewportDepths) && !(b->pViewportDepths)) ||
16629 ((a->pViewportDepths) && (b->pViewportDepths)))) {
16630 onFail("a->pViewportDepths (Error: Mismatch in optional field)");
16631 };
16632 if (a->pViewportDepths && b->pViewportDepths) {
16633 if ((a->pViewportDepths) && (b->pViewportDepths)) {
16634 checkEqual_VkViewport(a->pViewportDepths, b->pViewportDepths, onFail);
16635 }
16636 }
16637 }
16638
16639 #endif
16640 #ifdef VK_EXT_texel_buffer_alignment
checkEqual_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * a,const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT * b,OnFailCompareFunc onFail)16641 void checkEqual_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
16642 const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* a,
16643 const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT* b, OnFailCompareFunc onFail) {
16644 if (!((a->sType) == (b->sType))) {
16645 onFail("a->sType (Error: Value not equal)");
16646 };
16647 if (a->pNext) {
16648 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16649 }
16650 if (!((a->texelBufferAlignment) == (b->texelBufferAlignment))) {
16651 onFail("a->texelBufferAlignment (Error: Value not equal)");
16652 };
16653 }
16654
16655 #endif
16656 #ifdef VK_QCOM_render_pass_transform
checkEqual_VkRenderPassTransformBeginInfoQCOM(const VkRenderPassTransformBeginInfoQCOM * a,const VkRenderPassTransformBeginInfoQCOM * b,OnFailCompareFunc onFail)16657 void checkEqual_VkRenderPassTransformBeginInfoQCOM(const VkRenderPassTransformBeginInfoQCOM* a,
16658 const VkRenderPassTransformBeginInfoQCOM* b,
16659 OnFailCompareFunc onFail) {
16660 if (!((a->sType) == (b->sType))) {
16661 onFail("a->sType (Error: Value not equal)");
16662 };
16663 if (a->pNext) {
16664 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16665 }
16666 if (!((a->transform) == (b->transform))) {
16667 onFail("a->transform (Error: Value not equal)");
16668 };
16669 }
16670
checkEqual_VkCommandBufferInheritanceRenderPassTransformInfoQCOM(const VkCommandBufferInheritanceRenderPassTransformInfoQCOM * a,const VkCommandBufferInheritanceRenderPassTransformInfoQCOM * b,OnFailCompareFunc onFail)16671 void checkEqual_VkCommandBufferInheritanceRenderPassTransformInfoQCOM(
16672 const VkCommandBufferInheritanceRenderPassTransformInfoQCOM* a,
16673 const VkCommandBufferInheritanceRenderPassTransformInfoQCOM* b, OnFailCompareFunc onFail) {
16674 if (!((a->sType) == (b->sType))) {
16675 onFail("a->sType (Error: Value not equal)");
16676 };
16677 if (a->pNext) {
16678 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16679 }
16680 if (!((a->transform) == (b->transform))) {
16681 onFail("a->transform (Error: Value not equal)");
16682 };
16683 checkEqual_VkRect2D(&a->renderArea, &b->renderArea, onFail);
16684 }
16685
16686 #endif
16687 #ifdef VK_EXT_device_memory_report
checkEqual_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT * a,const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT * b,OnFailCompareFunc onFail)16688 void checkEqual_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
16689 const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* a,
16690 const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT* b, OnFailCompareFunc onFail) {
16691 if (!((a->sType) == (b->sType))) {
16692 onFail("a->sType (Error: Value not equal)");
16693 };
16694 if (a->pNext) {
16695 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16696 }
16697 if (!((a->deviceMemoryReport) == (b->deviceMemoryReport))) {
16698 onFail("a->deviceMemoryReport (Error: Value not equal)");
16699 };
16700 }
16701
checkEqual_VkDeviceMemoryReportCallbackDataEXT(const VkDeviceMemoryReportCallbackDataEXT * a,const VkDeviceMemoryReportCallbackDataEXT * b,OnFailCompareFunc onFail)16702 void checkEqual_VkDeviceMemoryReportCallbackDataEXT(const VkDeviceMemoryReportCallbackDataEXT* a,
16703 const VkDeviceMemoryReportCallbackDataEXT* b,
16704 OnFailCompareFunc onFail) {
16705 if (!((a->sType) == (b->sType))) {
16706 onFail("a->sType (Error: Value not equal)");
16707 };
16708 if (a->pNext) {
16709 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16710 }
16711 if (!((a->flags) == (b->flags))) {
16712 onFail("a->flags (Error: Value not equal)");
16713 };
16714 if (!((a->type) == (b->type))) {
16715 onFail("a->type (Error: Value not equal)");
16716 };
16717 if (!((a->memoryObjectId) == (b->memoryObjectId))) {
16718 onFail("a->memoryObjectId (Error: Value not equal)");
16719 };
16720 if (!((a->size) == (b->size))) {
16721 onFail("a->size (Error: Value not equal)");
16722 };
16723 if (!((a->objectType) == (b->objectType))) {
16724 onFail("a->objectType (Error: Value not equal)");
16725 };
16726 if (!((a->objectHandle) == (b->objectHandle))) {
16727 onFail("a->objectHandle (Error: Value not equal)");
16728 };
16729 if (!((a->heapIndex) == (b->heapIndex))) {
16730 onFail("a->heapIndex (Error: Value not equal)");
16731 };
16732 }
16733
checkEqual_VkDeviceDeviceMemoryReportCreateInfoEXT(const VkDeviceDeviceMemoryReportCreateInfoEXT * a,const VkDeviceDeviceMemoryReportCreateInfoEXT * b,OnFailCompareFunc onFail)16734 void checkEqual_VkDeviceDeviceMemoryReportCreateInfoEXT(
16735 const VkDeviceDeviceMemoryReportCreateInfoEXT* a,
16736 const VkDeviceDeviceMemoryReportCreateInfoEXT* b, OnFailCompareFunc onFail) {
16737 if (!((a->sType) == (b->sType))) {
16738 onFail("a->sType (Error: Value not equal)");
16739 };
16740 if (a->pNext) {
16741 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16742 }
16743 if (!((a->flags) == (b->flags))) {
16744 onFail("a->flags (Error: Value not equal)");
16745 };
16746 if (!((a->pfnUserCallback) == (b->pfnUserCallback))) {
16747 onFail("a->pfnUserCallback (Error: Value not equal)");
16748 };
16749 }
16750
16751 #endif
16752 #ifdef VK_EXT_acquire_drm_display
16753 #endif
16754 #ifdef VK_EXT_robustness2
checkEqual_VkPhysicalDeviceRobustness2FeaturesEXT(const VkPhysicalDeviceRobustness2FeaturesEXT * a,const VkPhysicalDeviceRobustness2FeaturesEXT * b,OnFailCompareFunc onFail)16755 void checkEqual_VkPhysicalDeviceRobustness2FeaturesEXT(
16756 const VkPhysicalDeviceRobustness2FeaturesEXT* a,
16757 const VkPhysicalDeviceRobustness2FeaturesEXT* b, OnFailCompareFunc onFail) {
16758 if (!((a->sType) == (b->sType))) {
16759 onFail("a->sType (Error: Value not equal)");
16760 };
16761 if (a->pNext) {
16762 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16763 }
16764 if (!((a->robustBufferAccess2) == (b->robustBufferAccess2))) {
16765 onFail("a->robustBufferAccess2 (Error: Value not equal)");
16766 };
16767 if (!((a->robustImageAccess2) == (b->robustImageAccess2))) {
16768 onFail("a->robustImageAccess2 (Error: Value not equal)");
16769 };
16770 if (!((a->nullDescriptor) == (b->nullDescriptor))) {
16771 onFail("a->nullDescriptor (Error: Value not equal)");
16772 };
16773 }
16774
checkEqual_VkPhysicalDeviceRobustness2PropertiesEXT(const VkPhysicalDeviceRobustness2PropertiesEXT * a,const VkPhysicalDeviceRobustness2PropertiesEXT * b,OnFailCompareFunc onFail)16775 void checkEqual_VkPhysicalDeviceRobustness2PropertiesEXT(
16776 const VkPhysicalDeviceRobustness2PropertiesEXT* a,
16777 const VkPhysicalDeviceRobustness2PropertiesEXT* b, OnFailCompareFunc onFail) {
16778 if (!((a->sType) == (b->sType))) {
16779 onFail("a->sType (Error: Value not equal)");
16780 };
16781 if (a->pNext) {
16782 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16783 }
16784 if (!((a->robustStorageBufferAccessSizeAlignment) ==
16785 (b->robustStorageBufferAccessSizeAlignment))) {
16786 onFail("a->robustStorageBufferAccessSizeAlignment (Error: Value not equal)");
16787 };
16788 if (!((a->robustUniformBufferAccessSizeAlignment) ==
16789 (b->robustUniformBufferAccessSizeAlignment))) {
16790 onFail("a->robustUniformBufferAccessSizeAlignment (Error: Value not equal)");
16791 };
16792 }
16793
16794 #endif
16795 #ifdef VK_EXT_custom_border_color
checkEqual_VkSamplerCustomBorderColorCreateInfoEXT(const VkSamplerCustomBorderColorCreateInfoEXT * a,const VkSamplerCustomBorderColorCreateInfoEXT * b,OnFailCompareFunc onFail)16796 void checkEqual_VkSamplerCustomBorderColorCreateInfoEXT(
16797 const VkSamplerCustomBorderColorCreateInfoEXT* a,
16798 const VkSamplerCustomBorderColorCreateInfoEXT* b, OnFailCompareFunc onFail) {
16799 if (!((a->sType) == (b->sType))) {
16800 onFail("a->sType (Error: Value not equal)");
16801 };
16802 if (a->pNext) {
16803 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16804 }
16805 checkEqual_VkClearColorValue(&a->customBorderColor, &b->customBorderColor, onFail);
16806 if (!((a->format) == (b->format))) {
16807 onFail("a->format (Error: Value not equal)");
16808 };
16809 }
16810
checkEqual_VkPhysicalDeviceCustomBorderColorPropertiesEXT(const VkPhysicalDeviceCustomBorderColorPropertiesEXT * a,const VkPhysicalDeviceCustomBorderColorPropertiesEXT * b,OnFailCompareFunc onFail)16811 void checkEqual_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
16812 const VkPhysicalDeviceCustomBorderColorPropertiesEXT* a,
16813 const VkPhysicalDeviceCustomBorderColorPropertiesEXT* b, OnFailCompareFunc onFail) {
16814 if (!((a->sType) == (b->sType))) {
16815 onFail("a->sType (Error: Value not equal)");
16816 };
16817 if (a->pNext) {
16818 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16819 }
16820 if (!((a->maxCustomBorderColorSamplers) == (b->maxCustomBorderColorSamplers))) {
16821 onFail("a->maxCustomBorderColorSamplers (Error: Value not equal)");
16822 };
16823 }
16824
checkEqual_VkPhysicalDeviceCustomBorderColorFeaturesEXT(const VkPhysicalDeviceCustomBorderColorFeaturesEXT * a,const VkPhysicalDeviceCustomBorderColorFeaturesEXT * b,OnFailCompareFunc onFail)16825 void checkEqual_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
16826 const VkPhysicalDeviceCustomBorderColorFeaturesEXT* a,
16827 const VkPhysicalDeviceCustomBorderColorFeaturesEXT* b, OnFailCompareFunc onFail) {
16828 if (!((a->sType) == (b->sType))) {
16829 onFail("a->sType (Error: Value not equal)");
16830 };
16831 if (a->pNext) {
16832 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16833 }
16834 if (!((a->customBorderColors) == (b->customBorderColors))) {
16835 onFail("a->customBorderColors (Error: Value not equal)");
16836 };
16837 if (!((a->customBorderColorWithoutFormat) == (b->customBorderColorWithoutFormat))) {
16838 onFail("a->customBorderColorWithoutFormat (Error: Value not equal)");
16839 };
16840 }
16841
16842 #endif
16843 #ifdef VK_GOOGLE_user_type
16844 #endif
16845 #ifdef VK_NV_present_barrier
checkEqual_VkPhysicalDevicePresentBarrierFeaturesNV(const VkPhysicalDevicePresentBarrierFeaturesNV * a,const VkPhysicalDevicePresentBarrierFeaturesNV * b,OnFailCompareFunc onFail)16846 void checkEqual_VkPhysicalDevicePresentBarrierFeaturesNV(
16847 const VkPhysicalDevicePresentBarrierFeaturesNV* a,
16848 const VkPhysicalDevicePresentBarrierFeaturesNV* b, OnFailCompareFunc onFail) {
16849 if (!((a->sType) == (b->sType))) {
16850 onFail("a->sType (Error: Value not equal)");
16851 };
16852 if (a->pNext) {
16853 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16854 }
16855 if (!((a->presentBarrier) == (b->presentBarrier))) {
16856 onFail("a->presentBarrier (Error: Value not equal)");
16857 };
16858 }
16859
checkEqual_VkSurfaceCapabilitiesPresentBarrierNV(const VkSurfaceCapabilitiesPresentBarrierNV * a,const VkSurfaceCapabilitiesPresentBarrierNV * b,OnFailCompareFunc onFail)16860 void checkEqual_VkSurfaceCapabilitiesPresentBarrierNV(
16861 const VkSurfaceCapabilitiesPresentBarrierNV* a, const VkSurfaceCapabilitiesPresentBarrierNV* b,
16862 OnFailCompareFunc onFail) {
16863 if (!((a->sType) == (b->sType))) {
16864 onFail("a->sType (Error: Value not equal)");
16865 };
16866 if (a->pNext) {
16867 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16868 }
16869 if (!((a->presentBarrierSupported) == (b->presentBarrierSupported))) {
16870 onFail("a->presentBarrierSupported (Error: Value not equal)");
16871 };
16872 }
16873
checkEqual_VkSwapchainPresentBarrierCreateInfoNV(const VkSwapchainPresentBarrierCreateInfoNV * a,const VkSwapchainPresentBarrierCreateInfoNV * b,OnFailCompareFunc onFail)16874 void checkEqual_VkSwapchainPresentBarrierCreateInfoNV(
16875 const VkSwapchainPresentBarrierCreateInfoNV* a, const VkSwapchainPresentBarrierCreateInfoNV* b,
16876 OnFailCompareFunc onFail) {
16877 if (!((a->sType) == (b->sType))) {
16878 onFail("a->sType (Error: Value not equal)");
16879 };
16880 if (a->pNext) {
16881 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16882 }
16883 if (!((a->presentBarrierEnable) == (b->presentBarrierEnable))) {
16884 onFail("a->presentBarrierEnable (Error: Value not equal)");
16885 };
16886 }
16887
16888 #endif
16889 #ifdef VK_EXT_private_data
16890 #endif
16891 #ifdef VK_EXT_pipeline_creation_cache_control
16892 #endif
16893 #ifdef VK_NV_device_diagnostics_config
checkEqual_VkPhysicalDeviceDiagnosticsConfigFeaturesNV(const VkPhysicalDeviceDiagnosticsConfigFeaturesNV * a,const VkPhysicalDeviceDiagnosticsConfigFeaturesNV * b,OnFailCompareFunc onFail)16894 void checkEqual_VkPhysicalDeviceDiagnosticsConfigFeaturesNV(
16895 const VkPhysicalDeviceDiagnosticsConfigFeaturesNV* a,
16896 const VkPhysicalDeviceDiagnosticsConfigFeaturesNV* b, OnFailCompareFunc onFail) {
16897 if (!((a->sType) == (b->sType))) {
16898 onFail("a->sType (Error: Value not equal)");
16899 };
16900 if (a->pNext) {
16901 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16902 }
16903 if (!((a->diagnosticsConfig) == (b->diagnosticsConfig))) {
16904 onFail("a->diagnosticsConfig (Error: Value not equal)");
16905 };
16906 }
16907
checkEqual_VkDeviceDiagnosticsConfigCreateInfoNV(const VkDeviceDiagnosticsConfigCreateInfoNV * a,const VkDeviceDiagnosticsConfigCreateInfoNV * b,OnFailCompareFunc onFail)16908 void checkEqual_VkDeviceDiagnosticsConfigCreateInfoNV(
16909 const VkDeviceDiagnosticsConfigCreateInfoNV* a, const VkDeviceDiagnosticsConfigCreateInfoNV* b,
16910 OnFailCompareFunc onFail) {
16911 if (!((a->sType) == (b->sType))) {
16912 onFail("a->sType (Error: Value not equal)");
16913 };
16914 if (a->pNext) {
16915 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16916 }
16917 if (!((a->flags) == (b->flags))) {
16918 onFail("a->flags (Error: Value not equal)");
16919 };
16920 }
16921
16922 #endif
16923 #ifdef VK_QCOM_render_pass_store_ops
16924 #endif
16925 #ifdef VK_NV_low_latency
checkEqual_VkQueryLowLatencySupportNV(const VkQueryLowLatencySupportNV * a,const VkQueryLowLatencySupportNV * b,OnFailCompareFunc onFail)16926 void checkEqual_VkQueryLowLatencySupportNV(const VkQueryLowLatencySupportNV* a,
16927 const VkQueryLowLatencySupportNV* b,
16928 OnFailCompareFunc onFail) {
16929 if (!((a->sType) == (b->sType))) {
16930 onFail("a->sType (Error: Value not equal)");
16931 };
16932 if (a->pNext) {
16933 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16934 }
16935 }
16936
16937 #endif
16938 #ifdef VK_EXT_metal_objects
checkEqual_VkExportMetalObjectCreateInfoEXT(const VkExportMetalObjectCreateInfoEXT * a,const VkExportMetalObjectCreateInfoEXT * b,OnFailCompareFunc onFail)16939 void checkEqual_VkExportMetalObjectCreateInfoEXT(const VkExportMetalObjectCreateInfoEXT* a,
16940 const VkExportMetalObjectCreateInfoEXT* b,
16941 OnFailCompareFunc onFail) {
16942 if (!((a->sType) == (b->sType))) {
16943 onFail("a->sType (Error: Value not equal)");
16944 };
16945 if (a->pNext) {
16946 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16947 }
16948 if (!((a->exportObjectType) == (b->exportObjectType))) {
16949 onFail("a->exportObjectType (Error: Value not equal)");
16950 };
16951 }
16952
checkEqual_VkExportMetalObjectsInfoEXT(const VkExportMetalObjectsInfoEXT * a,const VkExportMetalObjectsInfoEXT * b,OnFailCompareFunc onFail)16953 void checkEqual_VkExportMetalObjectsInfoEXT(const VkExportMetalObjectsInfoEXT* a,
16954 const VkExportMetalObjectsInfoEXT* b,
16955 OnFailCompareFunc onFail) {
16956 if (!((a->sType) == (b->sType))) {
16957 onFail("a->sType (Error: Value not equal)");
16958 };
16959 if (a->pNext) {
16960 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16961 }
16962 }
16963
checkEqual_VkExportMetalDeviceInfoEXT(const VkExportMetalDeviceInfoEXT * a,const VkExportMetalDeviceInfoEXT * b,OnFailCompareFunc onFail)16964 void checkEqual_VkExportMetalDeviceInfoEXT(const VkExportMetalDeviceInfoEXT* a,
16965 const VkExportMetalDeviceInfoEXT* b,
16966 OnFailCompareFunc onFail) {
16967 if (!((a->sType) == (b->sType))) {
16968 onFail("a->sType (Error: Value not equal)");
16969 };
16970 if (a->pNext) {
16971 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16972 }
16973 if (!((a->mtlDevice) == (b->mtlDevice))) {
16974 onFail("a->mtlDevice (Error: Value not equal)");
16975 };
16976 }
16977
checkEqual_VkExportMetalCommandQueueInfoEXT(const VkExportMetalCommandQueueInfoEXT * a,const VkExportMetalCommandQueueInfoEXT * b,OnFailCompareFunc onFail)16978 void checkEqual_VkExportMetalCommandQueueInfoEXT(const VkExportMetalCommandQueueInfoEXT* a,
16979 const VkExportMetalCommandQueueInfoEXT* b,
16980 OnFailCompareFunc onFail) {
16981 if (!((a->sType) == (b->sType))) {
16982 onFail("a->sType (Error: Value not equal)");
16983 };
16984 if (a->pNext) {
16985 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
16986 }
16987 if (!((a->queue) == (b->queue))) {
16988 onFail("a->queue (Error: Value not equal)");
16989 };
16990 if (!((a->mtlCommandQueue) == (b->mtlCommandQueue))) {
16991 onFail("a->mtlCommandQueue (Error: Value not equal)");
16992 };
16993 }
16994
checkEqual_VkExportMetalBufferInfoEXT(const VkExportMetalBufferInfoEXT * a,const VkExportMetalBufferInfoEXT * b,OnFailCompareFunc onFail)16995 void checkEqual_VkExportMetalBufferInfoEXT(const VkExportMetalBufferInfoEXT* a,
16996 const VkExportMetalBufferInfoEXT* b,
16997 OnFailCompareFunc onFail) {
16998 if (!((a->sType) == (b->sType))) {
16999 onFail("a->sType (Error: Value not equal)");
17000 };
17001 if (a->pNext) {
17002 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17003 }
17004 if (!((a->memory) == (b->memory))) {
17005 onFail("a->memory (Error: Value not equal)");
17006 };
17007 if (!((a->mtlBuffer) == (b->mtlBuffer))) {
17008 onFail("a->mtlBuffer (Error: Value not equal)");
17009 };
17010 }
17011
checkEqual_VkImportMetalBufferInfoEXT(const VkImportMetalBufferInfoEXT * a,const VkImportMetalBufferInfoEXT * b,OnFailCompareFunc onFail)17012 void checkEqual_VkImportMetalBufferInfoEXT(const VkImportMetalBufferInfoEXT* a,
17013 const VkImportMetalBufferInfoEXT* b,
17014 OnFailCompareFunc onFail) {
17015 if (!((a->sType) == (b->sType))) {
17016 onFail("a->sType (Error: Value not equal)");
17017 };
17018 if (a->pNext) {
17019 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17020 }
17021 if (!((a->mtlBuffer) == (b->mtlBuffer))) {
17022 onFail("a->mtlBuffer (Error: Value not equal)");
17023 };
17024 }
17025
checkEqual_VkExportMetalTextureInfoEXT(const VkExportMetalTextureInfoEXT * a,const VkExportMetalTextureInfoEXT * b,OnFailCompareFunc onFail)17026 void checkEqual_VkExportMetalTextureInfoEXT(const VkExportMetalTextureInfoEXT* a,
17027 const VkExportMetalTextureInfoEXT* b,
17028 OnFailCompareFunc onFail) {
17029 if (!((a->sType) == (b->sType))) {
17030 onFail("a->sType (Error: Value not equal)");
17031 };
17032 if (a->pNext) {
17033 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17034 }
17035 if (!((a->image) == (b->image))) {
17036 onFail("a->image (Error: Value not equal)");
17037 };
17038 if (!((a->imageView) == (b->imageView))) {
17039 onFail("a->imageView (Error: Value not equal)");
17040 };
17041 if (!((a->bufferView) == (b->bufferView))) {
17042 onFail("a->bufferView (Error: Value not equal)");
17043 };
17044 if (!((a->plane) == (b->plane))) {
17045 onFail("a->plane (Error: Value not equal)");
17046 };
17047 if (!((a->mtlTexture) == (b->mtlTexture))) {
17048 onFail("a->mtlTexture (Error: Value not equal)");
17049 };
17050 }
17051
checkEqual_VkImportMetalTextureInfoEXT(const VkImportMetalTextureInfoEXT * a,const VkImportMetalTextureInfoEXT * b,OnFailCompareFunc onFail)17052 void checkEqual_VkImportMetalTextureInfoEXT(const VkImportMetalTextureInfoEXT* a,
17053 const VkImportMetalTextureInfoEXT* b,
17054 OnFailCompareFunc onFail) {
17055 if (!((a->sType) == (b->sType))) {
17056 onFail("a->sType (Error: Value not equal)");
17057 };
17058 if (a->pNext) {
17059 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17060 }
17061 if (!((a->plane) == (b->plane))) {
17062 onFail("a->plane (Error: Value not equal)");
17063 };
17064 if (!((a->mtlTexture) == (b->mtlTexture))) {
17065 onFail("a->mtlTexture (Error: Value not equal)");
17066 };
17067 }
17068
checkEqual_VkExportMetalIOSurfaceInfoEXT(const VkExportMetalIOSurfaceInfoEXT * a,const VkExportMetalIOSurfaceInfoEXT * b,OnFailCompareFunc onFail)17069 void checkEqual_VkExportMetalIOSurfaceInfoEXT(const VkExportMetalIOSurfaceInfoEXT* a,
17070 const VkExportMetalIOSurfaceInfoEXT* b,
17071 OnFailCompareFunc onFail) {
17072 if (!((a->sType) == (b->sType))) {
17073 onFail("a->sType (Error: Value not equal)");
17074 };
17075 if (a->pNext) {
17076 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17077 }
17078 if (!((a->image) == (b->image))) {
17079 onFail("a->image (Error: Value not equal)");
17080 };
17081 if (!((a->ioSurface) == (b->ioSurface))) {
17082 onFail("a->ioSurface (Error: Value not equal)");
17083 };
17084 }
17085
checkEqual_VkImportMetalIOSurfaceInfoEXT(const VkImportMetalIOSurfaceInfoEXT * a,const VkImportMetalIOSurfaceInfoEXT * b,OnFailCompareFunc onFail)17086 void checkEqual_VkImportMetalIOSurfaceInfoEXT(const VkImportMetalIOSurfaceInfoEXT* a,
17087 const VkImportMetalIOSurfaceInfoEXT* b,
17088 OnFailCompareFunc onFail) {
17089 if (!((a->sType) == (b->sType))) {
17090 onFail("a->sType (Error: Value not equal)");
17091 };
17092 if (a->pNext) {
17093 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17094 }
17095 if (!((a->ioSurface) == (b->ioSurface))) {
17096 onFail("a->ioSurface (Error: Value not equal)");
17097 };
17098 }
17099
checkEqual_VkExportMetalSharedEventInfoEXT(const VkExportMetalSharedEventInfoEXT * a,const VkExportMetalSharedEventInfoEXT * b,OnFailCompareFunc onFail)17100 void checkEqual_VkExportMetalSharedEventInfoEXT(const VkExportMetalSharedEventInfoEXT* a,
17101 const VkExportMetalSharedEventInfoEXT* b,
17102 OnFailCompareFunc onFail) {
17103 if (!((a->sType) == (b->sType))) {
17104 onFail("a->sType (Error: Value not equal)");
17105 };
17106 if (a->pNext) {
17107 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17108 }
17109 if (!((a->semaphore) == (b->semaphore))) {
17110 onFail("a->semaphore (Error: Value not equal)");
17111 };
17112 if (!((a->event) == (b->event))) {
17113 onFail("a->event (Error: Value not equal)");
17114 };
17115 if (!((a->mtlSharedEvent) == (b->mtlSharedEvent))) {
17116 onFail("a->mtlSharedEvent (Error: Value not equal)");
17117 };
17118 }
17119
checkEqual_VkImportMetalSharedEventInfoEXT(const VkImportMetalSharedEventInfoEXT * a,const VkImportMetalSharedEventInfoEXT * b,OnFailCompareFunc onFail)17120 void checkEqual_VkImportMetalSharedEventInfoEXT(const VkImportMetalSharedEventInfoEXT* a,
17121 const VkImportMetalSharedEventInfoEXT* b,
17122 OnFailCompareFunc onFail) {
17123 if (!((a->sType) == (b->sType))) {
17124 onFail("a->sType (Error: Value not equal)");
17125 };
17126 if (a->pNext) {
17127 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17128 }
17129 if (!((a->mtlSharedEvent) == (b->mtlSharedEvent))) {
17130 onFail("a->mtlSharedEvent (Error: Value not equal)");
17131 };
17132 }
17133
17134 #endif
17135 #ifdef VK_EXT_descriptor_buffer
checkEqual_VkPhysicalDeviceDescriptorBufferPropertiesEXT(const VkPhysicalDeviceDescriptorBufferPropertiesEXT * a,const VkPhysicalDeviceDescriptorBufferPropertiesEXT * b,OnFailCompareFunc onFail)17136 void checkEqual_VkPhysicalDeviceDescriptorBufferPropertiesEXT(
17137 const VkPhysicalDeviceDescriptorBufferPropertiesEXT* a,
17138 const VkPhysicalDeviceDescriptorBufferPropertiesEXT* b, OnFailCompareFunc onFail) {
17139 if (!((a->sType) == (b->sType))) {
17140 onFail("a->sType (Error: Value not equal)");
17141 };
17142 if (a->pNext) {
17143 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17144 }
17145 if (!((a->combinedImageSamplerDescriptorSingleArray) ==
17146 (b->combinedImageSamplerDescriptorSingleArray))) {
17147 onFail("a->combinedImageSamplerDescriptorSingleArray (Error: Value not equal)");
17148 };
17149 if (!((a->bufferlessPushDescriptors) == (b->bufferlessPushDescriptors))) {
17150 onFail("a->bufferlessPushDescriptors (Error: Value not equal)");
17151 };
17152 if (!((a->allowSamplerImageViewPostSubmitCreation) ==
17153 (b->allowSamplerImageViewPostSubmitCreation))) {
17154 onFail("a->allowSamplerImageViewPostSubmitCreation (Error: Value not equal)");
17155 };
17156 if (!((a->descriptorBufferOffsetAlignment) == (b->descriptorBufferOffsetAlignment))) {
17157 onFail("a->descriptorBufferOffsetAlignment (Error: Value not equal)");
17158 };
17159 if (!((a->maxDescriptorBufferBindings) == (b->maxDescriptorBufferBindings))) {
17160 onFail("a->maxDescriptorBufferBindings (Error: Value not equal)");
17161 };
17162 if (!((a->maxResourceDescriptorBufferBindings) == (b->maxResourceDescriptorBufferBindings))) {
17163 onFail("a->maxResourceDescriptorBufferBindings (Error: Value not equal)");
17164 };
17165 if (!((a->maxSamplerDescriptorBufferBindings) == (b->maxSamplerDescriptorBufferBindings))) {
17166 onFail("a->maxSamplerDescriptorBufferBindings (Error: Value not equal)");
17167 };
17168 if (!((a->maxEmbeddedImmutableSamplerBindings) == (b->maxEmbeddedImmutableSamplerBindings))) {
17169 onFail("a->maxEmbeddedImmutableSamplerBindings (Error: Value not equal)");
17170 };
17171 if (!((a->maxEmbeddedImmutableSamplers) == (b->maxEmbeddedImmutableSamplers))) {
17172 onFail("a->maxEmbeddedImmutableSamplers (Error: Value not equal)");
17173 };
17174 if (!((a->bufferCaptureReplayDescriptorDataSize) ==
17175 (b->bufferCaptureReplayDescriptorDataSize))) {
17176 onFail("a->bufferCaptureReplayDescriptorDataSize (Error: Value not equal)");
17177 };
17178 if (!((a->imageCaptureReplayDescriptorDataSize) == (b->imageCaptureReplayDescriptorDataSize))) {
17179 onFail("a->imageCaptureReplayDescriptorDataSize (Error: Value not equal)");
17180 };
17181 if (!((a->imageViewCaptureReplayDescriptorDataSize) ==
17182 (b->imageViewCaptureReplayDescriptorDataSize))) {
17183 onFail("a->imageViewCaptureReplayDescriptorDataSize (Error: Value not equal)");
17184 };
17185 if (!((a->samplerCaptureReplayDescriptorDataSize) ==
17186 (b->samplerCaptureReplayDescriptorDataSize))) {
17187 onFail("a->samplerCaptureReplayDescriptorDataSize (Error: Value not equal)");
17188 };
17189 if (!((a->accelerationStructureCaptureReplayDescriptorDataSize) ==
17190 (b->accelerationStructureCaptureReplayDescriptorDataSize))) {
17191 onFail("a->accelerationStructureCaptureReplayDescriptorDataSize (Error: Value not equal)");
17192 };
17193 if (!((a->samplerDescriptorSize) == (b->samplerDescriptorSize))) {
17194 onFail("a->samplerDescriptorSize (Error: Value not equal)");
17195 };
17196 if (!((a->combinedImageSamplerDescriptorSize) == (b->combinedImageSamplerDescriptorSize))) {
17197 onFail("a->combinedImageSamplerDescriptorSize (Error: Value not equal)");
17198 };
17199 if (!((a->sampledImageDescriptorSize) == (b->sampledImageDescriptorSize))) {
17200 onFail("a->sampledImageDescriptorSize (Error: Value not equal)");
17201 };
17202 if (!((a->storageImageDescriptorSize) == (b->storageImageDescriptorSize))) {
17203 onFail("a->storageImageDescriptorSize (Error: Value not equal)");
17204 };
17205 if (!((a->uniformTexelBufferDescriptorSize) == (b->uniformTexelBufferDescriptorSize))) {
17206 onFail("a->uniformTexelBufferDescriptorSize (Error: Value not equal)");
17207 };
17208 if (!((a->robustUniformTexelBufferDescriptorSize) ==
17209 (b->robustUniformTexelBufferDescriptorSize))) {
17210 onFail("a->robustUniformTexelBufferDescriptorSize (Error: Value not equal)");
17211 };
17212 if (!((a->storageTexelBufferDescriptorSize) == (b->storageTexelBufferDescriptorSize))) {
17213 onFail("a->storageTexelBufferDescriptorSize (Error: Value not equal)");
17214 };
17215 if (!((a->robustStorageTexelBufferDescriptorSize) ==
17216 (b->robustStorageTexelBufferDescriptorSize))) {
17217 onFail("a->robustStorageTexelBufferDescriptorSize (Error: Value not equal)");
17218 };
17219 if (!((a->uniformBufferDescriptorSize) == (b->uniformBufferDescriptorSize))) {
17220 onFail("a->uniformBufferDescriptorSize (Error: Value not equal)");
17221 };
17222 if (!((a->robustUniformBufferDescriptorSize) == (b->robustUniformBufferDescriptorSize))) {
17223 onFail("a->robustUniformBufferDescriptorSize (Error: Value not equal)");
17224 };
17225 if (!((a->storageBufferDescriptorSize) == (b->storageBufferDescriptorSize))) {
17226 onFail("a->storageBufferDescriptorSize (Error: Value not equal)");
17227 };
17228 if (!((a->robustStorageBufferDescriptorSize) == (b->robustStorageBufferDescriptorSize))) {
17229 onFail("a->robustStorageBufferDescriptorSize (Error: Value not equal)");
17230 };
17231 if (!((a->inputAttachmentDescriptorSize) == (b->inputAttachmentDescriptorSize))) {
17232 onFail("a->inputAttachmentDescriptorSize (Error: Value not equal)");
17233 };
17234 if (!((a->accelerationStructureDescriptorSize) == (b->accelerationStructureDescriptorSize))) {
17235 onFail("a->accelerationStructureDescriptorSize (Error: Value not equal)");
17236 };
17237 if (!((a->maxSamplerDescriptorBufferRange) == (b->maxSamplerDescriptorBufferRange))) {
17238 onFail("a->maxSamplerDescriptorBufferRange (Error: Value not equal)");
17239 };
17240 if (!((a->maxResourceDescriptorBufferRange) == (b->maxResourceDescriptorBufferRange))) {
17241 onFail("a->maxResourceDescriptorBufferRange (Error: Value not equal)");
17242 };
17243 if (!((a->samplerDescriptorBufferAddressSpaceSize) ==
17244 (b->samplerDescriptorBufferAddressSpaceSize))) {
17245 onFail("a->samplerDescriptorBufferAddressSpaceSize (Error: Value not equal)");
17246 };
17247 if (!((a->resourceDescriptorBufferAddressSpaceSize) ==
17248 (b->resourceDescriptorBufferAddressSpaceSize))) {
17249 onFail("a->resourceDescriptorBufferAddressSpaceSize (Error: Value not equal)");
17250 };
17251 if (!((a->descriptorBufferAddressSpaceSize) == (b->descriptorBufferAddressSpaceSize))) {
17252 onFail("a->descriptorBufferAddressSpaceSize (Error: Value not equal)");
17253 };
17254 }
17255
checkEqual_VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT(const VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT * a,const VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT * b,OnFailCompareFunc onFail)17256 void checkEqual_VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT(
17257 const VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* a,
17258 const VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT* b, OnFailCompareFunc onFail) {
17259 if (!((a->sType) == (b->sType))) {
17260 onFail("a->sType (Error: Value not equal)");
17261 };
17262 if (a->pNext) {
17263 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17264 }
17265 if (!((a->combinedImageSamplerDensityMapDescriptorSize) ==
17266 (b->combinedImageSamplerDensityMapDescriptorSize))) {
17267 onFail("a->combinedImageSamplerDensityMapDescriptorSize (Error: Value not equal)");
17268 };
17269 }
17270
checkEqual_VkPhysicalDeviceDescriptorBufferFeaturesEXT(const VkPhysicalDeviceDescriptorBufferFeaturesEXT * a,const VkPhysicalDeviceDescriptorBufferFeaturesEXT * b,OnFailCompareFunc onFail)17271 void checkEqual_VkPhysicalDeviceDescriptorBufferFeaturesEXT(
17272 const VkPhysicalDeviceDescriptorBufferFeaturesEXT* a,
17273 const VkPhysicalDeviceDescriptorBufferFeaturesEXT* b, OnFailCompareFunc onFail) {
17274 if (!((a->sType) == (b->sType))) {
17275 onFail("a->sType (Error: Value not equal)");
17276 };
17277 if (a->pNext) {
17278 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17279 }
17280 if (!((a->descriptorBuffer) == (b->descriptorBuffer))) {
17281 onFail("a->descriptorBuffer (Error: Value not equal)");
17282 };
17283 if (!((a->descriptorBufferCaptureReplay) == (b->descriptorBufferCaptureReplay))) {
17284 onFail("a->descriptorBufferCaptureReplay (Error: Value not equal)");
17285 };
17286 if (!((a->descriptorBufferImageLayoutIgnored) == (b->descriptorBufferImageLayoutIgnored))) {
17287 onFail("a->descriptorBufferImageLayoutIgnored (Error: Value not equal)");
17288 };
17289 if (!((a->descriptorBufferPushDescriptors) == (b->descriptorBufferPushDescriptors))) {
17290 onFail("a->descriptorBufferPushDescriptors (Error: Value not equal)");
17291 };
17292 }
17293
checkEqual_VkDescriptorAddressInfoEXT(const VkDescriptorAddressInfoEXT * a,const VkDescriptorAddressInfoEXT * b,OnFailCompareFunc onFail)17294 void checkEqual_VkDescriptorAddressInfoEXT(const VkDescriptorAddressInfoEXT* a,
17295 const VkDescriptorAddressInfoEXT* b,
17296 OnFailCompareFunc onFail) {
17297 if (!((a->sType) == (b->sType))) {
17298 onFail("a->sType (Error: Value not equal)");
17299 };
17300 if (a->pNext) {
17301 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17302 }
17303 if (!((a->address) == (b->address))) {
17304 onFail("a->address (Error: Value not equal)");
17305 };
17306 if (!((a->range) == (b->range))) {
17307 onFail("a->range (Error: Value not equal)");
17308 };
17309 if (!((a->format) == (b->format))) {
17310 onFail("a->format (Error: Value not equal)");
17311 };
17312 }
17313
checkEqual_VkDescriptorBufferBindingInfoEXT(const VkDescriptorBufferBindingInfoEXT * a,const VkDescriptorBufferBindingInfoEXT * b,OnFailCompareFunc onFail)17314 void checkEqual_VkDescriptorBufferBindingInfoEXT(const VkDescriptorBufferBindingInfoEXT* a,
17315 const VkDescriptorBufferBindingInfoEXT* b,
17316 OnFailCompareFunc onFail) {
17317 if (!((a->sType) == (b->sType))) {
17318 onFail("a->sType (Error: Value not equal)");
17319 };
17320 if (a->pNext) {
17321 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17322 }
17323 if (!((a->address) == (b->address))) {
17324 onFail("a->address (Error: Value not equal)");
17325 };
17326 if (!((a->usage) == (b->usage))) {
17327 onFail("a->usage (Error: Value not equal)");
17328 };
17329 }
17330
checkEqual_VkDescriptorBufferBindingPushDescriptorBufferHandleEXT(const VkDescriptorBufferBindingPushDescriptorBufferHandleEXT * a,const VkDescriptorBufferBindingPushDescriptorBufferHandleEXT * b,OnFailCompareFunc onFail)17331 void checkEqual_VkDescriptorBufferBindingPushDescriptorBufferHandleEXT(
17332 const VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* a,
17333 const VkDescriptorBufferBindingPushDescriptorBufferHandleEXT* b, OnFailCompareFunc onFail) {
17334 if (!((a->sType) == (b->sType))) {
17335 onFail("a->sType (Error: Value not equal)");
17336 };
17337 if (a->pNext) {
17338 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17339 }
17340 if (!((a->buffer) == (b->buffer))) {
17341 onFail("a->buffer (Error: Value not equal)");
17342 };
17343 }
17344
checkEqual_VkDescriptorDataEXT(const VkDescriptorDataEXT * a,const VkDescriptorDataEXT * b,OnFailCompareFunc onFail)17345 void checkEqual_VkDescriptorDataEXT(const VkDescriptorDataEXT* a, const VkDescriptorDataEXT* b,
17346 OnFailCompareFunc onFail) {
17347 if (!((memcmp(a->pSampler, b->pSampler, sizeof(const VkSampler)) == 0))) {
17348 onFail("a->pSampler (Error: Unequal dyn array)");
17349 };
17350 if ((a->pCombinedImageSampler) && (b->pCombinedImageSampler)) {
17351 checkEqual_VkDescriptorImageInfo(a->pCombinedImageSampler, b->pCombinedImageSampler,
17352 onFail);
17353 }
17354 if ((a->pInputAttachmentImage) && (b->pInputAttachmentImage)) {
17355 checkEqual_VkDescriptorImageInfo(a->pInputAttachmentImage, b->pInputAttachmentImage,
17356 onFail);
17357 }
17358 if (!((!(a->pSampledImage) && !(b->pSampledImage)) ||
17359 ((a->pSampledImage) && (b->pSampledImage)))) {
17360 onFail("a->pSampledImage (Error: Mismatch in optional field)");
17361 };
17362 if (a->pSampledImage && b->pSampledImage) {
17363 if ((a->pSampledImage) && (b->pSampledImage)) {
17364 checkEqual_VkDescriptorImageInfo(a->pSampledImage, b->pSampledImage, onFail);
17365 }
17366 }
17367 if (!((!(a->pStorageImage) && !(b->pStorageImage)) ||
17368 ((a->pStorageImage) && (b->pStorageImage)))) {
17369 onFail("a->pStorageImage (Error: Mismatch in optional field)");
17370 };
17371 if (a->pStorageImage && b->pStorageImage) {
17372 if ((a->pStorageImage) && (b->pStorageImage)) {
17373 checkEqual_VkDescriptorImageInfo(a->pStorageImage, b->pStorageImage, onFail);
17374 }
17375 }
17376 if (!((!(a->pUniformTexelBuffer) && !(b->pUniformTexelBuffer)) ||
17377 ((a->pUniformTexelBuffer) && (b->pUniformTexelBuffer)))) {
17378 onFail("a->pUniformTexelBuffer (Error: Mismatch in optional field)");
17379 };
17380 if (a->pUniformTexelBuffer && b->pUniformTexelBuffer) {
17381 if ((a->pUniformTexelBuffer) && (b->pUniformTexelBuffer)) {
17382 checkEqual_VkDescriptorAddressInfoEXT(a->pUniformTexelBuffer, b->pUniformTexelBuffer,
17383 onFail);
17384 }
17385 }
17386 if (!((!(a->pStorageTexelBuffer) && !(b->pStorageTexelBuffer)) ||
17387 ((a->pStorageTexelBuffer) && (b->pStorageTexelBuffer)))) {
17388 onFail("a->pStorageTexelBuffer (Error: Mismatch in optional field)");
17389 };
17390 if (a->pStorageTexelBuffer && b->pStorageTexelBuffer) {
17391 if ((a->pStorageTexelBuffer) && (b->pStorageTexelBuffer)) {
17392 checkEqual_VkDescriptorAddressInfoEXT(a->pStorageTexelBuffer, b->pStorageTexelBuffer,
17393 onFail);
17394 }
17395 }
17396 if (!((!(a->pUniformBuffer) && !(b->pUniformBuffer)) ||
17397 ((a->pUniformBuffer) && (b->pUniformBuffer)))) {
17398 onFail("a->pUniformBuffer (Error: Mismatch in optional field)");
17399 };
17400 if (a->pUniformBuffer && b->pUniformBuffer) {
17401 if ((a->pUniformBuffer) && (b->pUniformBuffer)) {
17402 checkEqual_VkDescriptorAddressInfoEXT(a->pUniformBuffer, b->pUniformBuffer, onFail);
17403 }
17404 }
17405 if (!((!(a->pStorageBuffer) && !(b->pStorageBuffer)) ||
17406 ((a->pStorageBuffer) && (b->pStorageBuffer)))) {
17407 onFail("a->pStorageBuffer (Error: Mismatch in optional field)");
17408 };
17409 if (a->pStorageBuffer && b->pStorageBuffer) {
17410 if ((a->pStorageBuffer) && (b->pStorageBuffer)) {
17411 checkEqual_VkDescriptorAddressInfoEXT(a->pStorageBuffer, b->pStorageBuffer, onFail);
17412 }
17413 }
17414 if (!((a->accelerationStructure) == (b->accelerationStructure))) {
17415 onFail("a->accelerationStructure (Error: Value not equal)");
17416 };
17417 }
17418
checkEqual_VkDescriptorGetInfoEXT(const VkDescriptorGetInfoEXT * a,const VkDescriptorGetInfoEXT * b,OnFailCompareFunc onFail)17419 void checkEqual_VkDescriptorGetInfoEXT(const VkDescriptorGetInfoEXT* a,
17420 const VkDescriptorGetInfoEXT* b, OnFailCompareFunc onFail) {
17421 if (!((a->sType) == (b->sType))) {
17422 onFail("a->sType (Error: Value not equal)");
17423 };
17424 if (a->pNext) {
17425 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17426 }
17427 if (!((a->type) == (b->type))) {
17428 onFail("a->type (Error: Value not equal)");
17429 };
17430 checkEqual_VkDescriptorDataEXT(&a->data, &b->data, onFail);
17431 }
17432
checkEqual_VkBufferCaptureDescriptorDataInfoEXT(const VkBufferCaptureDescriptorDataInfoEXT * a,const VkBufferCaptureDescriptorDataInfoEXT * b,OnFailCompareFunc onFail)17433 void checkEqual_VkBufferCaptureDescriptorDataInfoEXT(const VkBufferCaptureDescriptorDataInfoEXT* a,
17434 const VkBufferCaptureDescriptorDataInfoEXT* b,
17435 OnFailCompareFunc onFail) {
17436 if (!((a->sType) == (b->sType))) {
17437 onFail("a->sType (Error: Value not equal)");
17438 };
17439 if (a->pNext) {
17440 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17441 }
17442 if (!((a->buffer) == (b->buffer))) {
17443 onFail("a->buffer (Error: Value not equal)");
17444 };
17445 }
17446
checkEqual_VkImageCaptureDescriptorDataInfoEXT(const VkImageCaptureDescriptorDataInfoEXT * a,const VkImageCaptureDescriptorDataInfoEXT * b,OnFailCompareFunc onFail)17447 void checkEqual_VkImageCaptureDescriptorDataInfoEXT(const VkImageCaptureDescriptorDataInfoEXT* a,
17448 const VkImageCaptureDescriptorDataInfoEXT* b,
17449 OnFailCompareFunc onFail) {
17450 if (!((a->sType) == (b->sType))) {
17451 onFail("a->sType (Error: Value not equal)");
17452 };
17453 if (a->pNext) {
17454 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17455 }
17456 if (!((a->image) == (b->image))) {
17457 onFail("a->image (Error: Value not equal)");
17458 };
17459 }
17460
checkEqual_VkImageViewCaptureDescriptorDataInfoEXT(const VkImageViewCaptureDescriptorDataInfoEXT * a,const VkImageViewCaptureDescriptorDataInfoEXT * b,OnFailCompareFunc onFail)17461 void checkEqual_VkImageViewCaptureDescriptorDataInfoEXT(
17462 const VkImageViewCaptureDescriptorDataInfoEXT* a,
17463 const VkImageViewCaptureDescriptorDataInfoEXT* b, OnFailCompareFunc onFail) {
17464 if (!((a->sType) == (b->sType))) {
17465 onFail("a->sType (Error: Value not equal)");
17466 };
17467 if (a->pNext) {
17468 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17469 }
17470 if (!((a->imageView) == (b->imageView))) {
17471 onFail("a->imageView (Error: Value not equal)");
17472 };
17473 }
17474
checkEqual_VkSamplerCaptureDescriptorDataInfoEXT(const VkSamplerCaptureDescriptorDataInfoEXT * a,const VkSamplerCaptureDescriptorDataInfoEXT * b,OnFailCompareFunc onFail)17475 void checkEqual_VkSamplerCaptureDescriptorDataInfoEXT(
17476 const VkSamplerCaptureDescriptorDataInfoEXT* a, const VkSamplerCaptureDescriptorDataInfoEXT* b,
17477 OnFailCompareFunc onFail) {
17478 if (!((a->sType) == (b->sType))) {
17479 onFail("a->sType (Error: Value not equal)");
17480 };
17481 if (a->pNext) {
17482 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17483 }
17484 if (!((a->sampler) == (b->sampler))) {
17485 onFail("a->sampler (Error: Value not equal)");
17486 };
17487 }
17488
checkEqual_VkOpaqueCaptureDescriptorDataCreateInfoEXT(const VkOpaqueCaptureDescriptorDataCreateInfoEXT * a,const VkOpaqueCaptureDescriptorDataCreateInfoEXT * b,OnFailCompareFunc onFail)17489 void checkEqual_VkOpaqueCaptureDescriptorDataCreateInfoEXT(
17490 const VkOpaqueCaptureDescriptorDataCreateInfoEXT* a,
17491 const VkOpaqueCaptureDescriptorDataCreateInfoEXT* b, OnFailCompareFunc onFail) {
17492 if (!((a->sType) == (b->sType))) {
17493 onFail("a->sType (Error: Value not equal)");
17494 };
17495 if (a->pNext) {
17496 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17497 }
17498 }
17499
checkEqual_VkAccelerationStructureCaptureDescriptorDataInfoEXT(const VkAccelerationStructureCaptureDescriptorDataInfoEXT * a,const VkAccelerationStructureCaptureDescriptorDataInfoEXT * b,OnFailCompareFunc onFail)17500 void checkEqual_VkAccelerationStructureCaptureDescriptorDataInfoEXT(
17501 const VkAccelerationStructureCaptureDescriptorDataInfoEXT* a,
17502 const VkAccelerationStructureCaptureDescriptorDataInfoEXT* b, OnFailCompareFunc onFail) {
17503 if (!((a->sType) == (b->sType))) {
17504 onFail("a->sType (Error: Value not equal)");
17505 };
17506 if (a->pNext) {
17507 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17508 }
17509 if (!((a->accelerationStructure) == (b->accelerationStructure))) {
17510 onFail("a->accelerationStructure (Error: Value not equal)");
17511 };
17512 if (!((a->accelerationStructureNV) == (b->accelerationStructureNV))) {
17513 onFail("a->accelerationStructureNV (Error: Value not equal)");
17514 };
17515 }
17516
17517 #endif
17518 #ifdef VK_EXT_graphics_pipeline_library
checkEqual_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT * a,const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT * b,OnFailCompareFunc onFail)17519 void checkEqual_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(
17520 const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* a,
17521 const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT* b, OnFailCompareFunc onFail) {
17522 if (!((a->sType) == (b->sType))) {
17523 onFail("a->sType (Error: Value not equal)");
17524 };
17525 if (a->pNext) {
17526 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17527 }
17528 if (!((a->graphicsPipelineLibrary) == (b->graphicsPipelineLibrary))) {
17529 onFail("a->graphicsPipelineLibrary (Error: Value not equal)");
17530 };
17531 }
17532
checkEqual_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT * a,const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT * b,OnFailCompareFunc onFail)17533 void checkEqual_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(
17534 const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* a,
17535 const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT* b, OnFailCompareFunc onFail) {
17536 if (!((a->sType) == (b->sType))) {
17537 onFail("a->sType (Error: Value not equal)");
17538 };
17539 if (a->pNext) {
17540 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17541 }
17542 if (!((a->graphicsPipelineLibraryFastLinking) == (b->graphicsPipelineLibraryFastLinking))) {
17543 onFail("a->graphicsPipelineLibraryFastLinking (Error: Value not equal)");
17544 };
17545 if (!((a->graphicsPipelineLibraryIndependentInterpolationDecoration) ==
17546 (b->graphicsPipelineLibraryIndependentInterpolationDecoration))) {
17547 onFail(
17548 "a->graphicsPipelineLibraryIndependentInterpolationDecoration (Error: Value not "
17549 "equal)");
17550 };
17551 }
17552
checkEqual_VkGraphicsPipelineLibraryCreateInfoEXT(const VkGraphicsPipelineLibraryCreateInfoEXT * a,const VkGraphicsPipelineLibraryCreateInfoEXT * b,OnFailCompareFunc onFail)17553 void checkEqual_VkGraphicsPipelineLibraryCreateInfoEXT(
17554 const VkGraphicsPipelineLibraryCreateInfoEXT* a,
17555 const VkGraphicsPipelineLibraryCreateInfoEXT* b, OnFailCompareFunc onFail) {
17556 if (!((a->sType) == (b->sType))) {
17557 onFail("a->sType (Error: Value not equal)");
17558 };
17559 if (a->pNext) {
17560 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17561 }
17562 if (!((a->flags) == (b->flags))) {
17563 onFail("a->flags (Error: Value not equal)");
17564 };
17565 }
17566
17567 #endif
17568 #ifdef VK_AMD_shader_early_and_late_fragment_tests
checkEqual_VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD(const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD * a,const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD * b,OnFailCompareFunc onFail)17569 void checkEqual_VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD(
17570 const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* a,
17571 const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD* b, OnFailCompareFunc onFail) {
17572 if (!((a->sType) == (b->sType))) {
17573 onFail("a->sType (Error: Value not equal)");
17574 };
17575 if (a->pNext) {
17576 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17577 }
17578 if (!((a->shaderEarlyAndLateFragmentTests) == (b->shaderEarlyAndLateFragmentTests))) {
17579 onFail("a->shaderEarlyAndLateFragmentTests (Error: Value not equal)");
17580 };
17581 }
17582
17583 #endif
17584 #ifdef VK_NV_fragment_shading_rate_enums
checkEqual_VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV(const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV * a,const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV * b,OnFailCompareFunc onFail)17585 void checkEqual_VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
17586 const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* a,
17587 const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV* b, OnFailCompareFunc onFail) {
17588 if (!((a->sType) == (b->sType))) {
17589 onFail("a->sType (Error: Value not equal)");
17590 };
17591 if (a->pNext) {
17592 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17593 }
17594 if (!((a->fragmentShadingRateEnums) == (b->fragmentShadingRateEnums))) {
17595 onFail("a->fragmentShadingRateEnums (Error: Value not equal)");
17596 };
17597 if (!((a->supersampleFragmentShadingRates) == (b->supersampleFragmentShadingRates))) {
17598 onFail("a->supersampleFragmentShadingRates (Error: Value not equal)");
17599 };
17600 if (!((a->noInvocationFragmentShadingRates) == (b->noInvocationFragmentShadingRates))) {
17601 onFail("a->noInvocationFragmentShadingRates (Error: Value not equal)");
17602 };
17603 }
17604
checkEqual_VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV(const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV * a,const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV * b,OnFailCompareFunc onFail)17605 void checkEqual_VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
17606 const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* a,
17607 const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV* b, OnFailCompareFunc onFail) {
17608 if (!((a->sType) == (b->sType))) {
17609 onFail("a->sType (Error: Value not equal)");
17610 };
17611 if (a->pNext) {
17612 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17613 }
17614 if (!((a->maxFragmentShadingRateInvocationCount) ==
17615 (b->maxFragmentShadingRateInvocationCount))) {
17616 onFail("a->maxFragmentShadingRateInvocationCount (Error: Value not equal)");
17617 };
17618 }
17619
checkEqual_VkPipelineFragmentShadingRateEnumStateCreateInfoNV(const VkPipelineFragmentShadingRateEnumStateCreateInfoNV * a,const VkPipelineFragmentShadingRateEnumStateCreateInfoNV * b,OnFailCompareFunc onFail)17620 void checkEqual_VkPipelineFragmentShadingRateEnumStateCreateInfoNV(
17621 const VkPipelineFragmentShadingRateEnumStateCreateInfoNV* a,
17622 const VkPipelineFragmentShadingRateEnumStateCreateInfoNV* b, OnFailCompareFunc onFail) {
17623 if (!((a->sType) == (b->sType))) {
17624 onFail("a->sType (Error: Value not equal)");
17625 };
17626 if (a->pNext) {
17627 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17628 }
17629 if (!((a->shadingRateType) == (b->shadingRateType))) {
17630 onFail("a->shadingRateType (Error: Value not equal)");
17631 };
17632 if (!((a->shadingRate) == (b->shadingRate))) {
17633 onFail("a->shadingRate (Error: Value not equal)");
17634 };
17635 if (!((memcmp(a->combinerOps, b->combinerOps, 2 * sizeof(VkFragmentShadingRateCombinerOpKHR)) ==
17636 0))) {
17637 onFail("a->combinerOps (Error: Unequal static array)");
17638 };
17639 }
17640
17641 #endif
17642 #ifdef VK_NV_ray_tracing_motion_blur
checkEqual_VkDeviceOrHostAddressConstKHR(const VkDeviceOrHostAddressConstKHR * a,const VkDeviceOrHostAddressConstKHR * b,OnFailCompareFunc onFail)17643 void checkEqual_VkDeviceOrHostAddressConstKHR(const VkDeviceOrHostAddressConstKHR* a,
17644 const VkDeviceOrHostAddressConstKHR* b,
17645 OnFailCompareFunc onFail) {
17646 if (!((a->deviceAddress) == (b->deviceAddress))) {
17647 onFail("a->deviceAddress (Error: Value not equal)");
17648 };
17649 if (!((!(a->hostAddress) && !(b->hostAddress)) || ((a->hostAddress) && (b->hostAddress)))) {
17650 onFail("a->hostAddress (Error: Mismatch in optional field)");
17651 };
17652 }
17653
checkEqual_VkAccelerationStructureGeometryMotionTrianglesDataNV(const VkAccelerationStructureGeometryMotionTrianglesDataNV * a,const VkAccelerationStructureGeometryMotionTrianglesDataNV * b,OnFailCompareFunc onFail)17654 void checkEqual_VkAccelerationStructureGeometryMotionTrianglesDataNV(
17655 const VkAccelerationStructureGeometryMotionTrianglesDataNV* a,
17656 const VkAccelerationStructureGeometryMotionTrianglesDataNV* b, OnFailCompareFunc onFail) {
17657 if (!((a->sType) == (b->sType))) {
17658 onFail("a->sType (Error: Value not equal)");
17659 };
17660 if (a->pNext) {
17661 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17662 }
17663 checkEqual_VkDeviceOrHostAddressConstKHR(&a->vertexData, &b->vertexData, onFail);
17664 }
17665
checkEqual_VkAccelerationStructureMotionInfoNV(const VkAccelerationStructureMotionInfoNV * a,const VkAccelerationStructureMotionInfoNV * b,OnFailCompareFunc onFail)17666 void checkEqual_VkAccelerationStructureMotionInfoNV(const VkAccelerationStructureMotionInfoNV* a,
17667 const VkAccelerationStructureMotionInfoNV* b,
17668 OnFailCompareFunc onFail) {
17669 if (!((a->sType) == (b->sType))) {
17670 onFail("a->sType (Error: Value not equal)");
17671 };
17672 if (a->pNext) {
17673 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17674 }
17675 if (!((a->maxInstances) == (b->maxInstances))) {
17676 onFail("a->maxInstances (Error: Value not equal)");
17677 };
17678 if (!((a->flags) == (b->flags))) {
17679 onFail("a->flags (Error: Value not equal)");
17680 };
17681 }
17682
checkEqual_VkAccelerationStructureMatrixMotionInstanceNV(const VkAccelerationStructureMatrixMotionInstanceNV * a,const VkAccelerationStructureMatrixMotionInstanceNV * b,OnFailCompareFunc onFail)17683 void checkEqual_VkAccelerationStructureMatrixMotionInstanceNV(
17684 const VkAccelerationStructureMatrixMotionInstanceNV* a,
17685 const VkAccelerationStructureMatrixMotionInstanceNV* b, OnFailCompareFunc onFail) {
17686 checkEqual_VkTransformMatrixKHR(&a->transformT0, &b->transformT0, onFail);
17687 checkEqual_VkTransformMatrixKHR(&a->transformT1, &b->transformT1, onFail);
17688 if (!((a->instanceCustomIndex) == (b->instanceCustomIndex))) {
17689 onFail("a->instanceCustomIndex (Error: Value not equal)");
17690 };
17691 if (!((a->mask) == (b->mask))) {
17692 onFail("a->mask (Error: Value not equal)");
17693 };
17694 if (!((a->instanceShaderBindingTableRecordOffset) ==
17695 (b->instanceShaderBindingTableRecordOffset))) {
17696 onFail("a->instanceShaderBindingTableRecordOffset (Error: Value not equal)");
17697 };
17698 if (!((a->flags) == (b->flags))) {
17699 onFail("a->flags (Error: Value not equal)");
17700 };
17701 if (!((a->accelerationStructureReference) == (b->accelerationStructureReference))) {
17702 onFail("a->accelerationStructureReference (Error: Value not equal)");
17703 };
17704 }
17705
checkEqual_VkSRTDataNV(const VkSRTDataNV * a,const VkSRTDataNV * b,OnFailCompareFunc onFail)17706 void checkEqual_VkSRTDataNV(const VkSRTDataNV* a, const VkSRTDataNV* b, OnFailCompareFunc onFail) {
17707 if (!((a->sx) == (b->sx))) {
17708 onFail("a->sx (Error: Value not equal)");
17709 };
17710 if (!((a->a) == (b->a))) {
17711 onFail("a->a (Error: Value not equal)");
17712 };
17713 if (!((a->b) == (b->b))) {
17714 onFail("a->b (Error: Value not equal)");
17715 };
17716 if (!((a->pvx) == (b->pvx))) {
17717 onFail("a->pvx (Error: Value not equal)");
17718 };
17719 if (!((a->sy) == (b->sy))) {
17720 onFail("a->sy (Error: Value not equal)");
17721 };
17722 if (!((a->c) == (b->c))) {
17723 onFail("a->c (Error: Value not equal)");
17724 };
17725 if (!((a->pvy) == (b->pvy))) {
17726 onFail("a->pvy (Error: Value not equal)");
17727 };
17728 if (!((a->sz) == (b->sz))) {
17729 onFail("a->sz (Error: Value not equal)");
17730 };
17731 if (!((a->pvz) == (b->pvz))) {
17732 onFail("a->pvz (Error: Value not equal)");
17733 };
17734 if (!((a->qx) == (b->qx))) {
17735 onFail("a->qx (Error: Value not equal)");
17736 };
17737 if (!((a->qy) == (b->qy))) {
17738 onFail("a->qy (Error: Value not equal)");
17739 };
17740 if (!((a->qz) == (b->qz))) {
17741 onFail("a->qz (Error: Value not equal)");
17742 };
17743 if (!((a->qw) == (b->qw))) {
17744 onFail("a->qw (Error: Value not equal)");
17745 };
17746 if (!((a->tx) == (b->tx))) {
17747 onFail("a->tx (Error: Value not equal)");
17748 };
17749 if (!((a->ty) == (b->ty))) {
17750 onFail("a->ty (Error: Value not equal)");
17751 };
17752 if (!((a->tz) == (b->tz))) {
17753 onFail("a->tz (Error: Value not equal)");
17754 };
17755 }
17756
checkEqual_VkAccelerationStructureSRTMotionInstanceNV(const VkAccelerationStructureSRTMotionInstanceNV * a,const VkAccelerationStructureSRTMotionInstanceNV * b,OnFailCompareFunc onFail)17757 void checkEqual_VkAccelerationStructureSRTMotionInstanceNV(
17758 const VkAccelerationStructureSRTMotionInstanceNV* a,
17759 const VkAccelerationStructureSRTMotionInstanceNV* b, OnFailCompareFunc onFail) {
17760 checkEqual_VkSRTDataNV(&a->transformT0, &b->transformT0, onFail);
17761 checkEqual_VkSRTDataNV(&a->transformT1, &b->transformT1, onFail);
17762 if (!((a->instanceCustomIndex) == (b->instanceCustomIndex))) {
17763 onFail("a->instanceCustomIndex (Error: Value not equal)");
17764 };
17765 if (!((a->mask) == (b->mask))) {
17766 onFail("a->mask (Error: Value not equal)");
17767 };
17768 if (!((a->instanceShaderBindingTableRecordOffset) ==
17769 (b->instanceShaderBindingTableRecordOffset))) {
17770 onFail("a->instanceShaderBindingTableRecordOffset (Error: Value not equal)");
17771 };
17772 if (!((a->flags) == (b->flags))) {
17773 onFail("a->flags (Error: Value not equal)");
17774 };
17775 if (!((a->accelerationStructureReference) == (b->accelerationStructureReference))) {
17776 onFail("a->accelerationStructureReference (Error: Value not equal)");
17777 };
17778 }
17779
checkEqual_VkAccelerationStructureMotionInstanceDataNV(const VkAccelerationStructureMotionInstanceDataNV * a,const VkAccelerationStructureMotionInstanceDataNV * b,OnFailCompareFunc onFail)17780 void checkEqual_VkAccelerationStructureMotionInstanceDataNV(
17781 const VkAccelerationStructureMotionInstanceDataNV* a,
17782 const VkAccelerationStructureMotionInstanceDataNV* b, OnFailCompareFunc onFail) {
17783 checkEqual_VkAccelerationStructureInstanceKHR(&a->staticInstance, &b->staticInstance, onFail);
17784 checkEqual_VkAccelerationStructureMatrixMotionInstanceNV(&a->matrixMotionInstance,
17785 &b->matrixMotionInstance, onFail);
17786 checkEqual_VkAccelerationStructureSRTMotionInstanceNV(&a->srtMotionInstance,
17787 &b->srtMotionInstance, onFail);
17788 }
17789
checkEqual_VkAccelerationStructureMotionInstanceNV(const VkAccelerationStructureMotionInstanceNV * a,const VkAccelerationStructureMotionInstanceNV * b,OnFailCompareFunc onFail)17790 void checkEqual_VkAccelerationStructureMotionInstanceNV(
17791 const VkAccelerationStructureMotionInstanceNV* a,
17792 const VkAccelerationStructureMotionInstanceNV* b, OnFailCompareFunc onFail) {
17793 if (!((a->type) == (b->type))) {
17794 onFail("a->type (Error: Value not equal)");
17795 };
17796 if (!((a->flags) == (b->flags))) {
17797 onFail("a->flags (Error: Value not equal)");
17798 };
17799 checkEqual_VkAccelerationStructureMotionInstanceDataNV(&a->data, &b->data, onFail);
17800 }
17801
checkEqual_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV * a,const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV * b,OnFailCompareFunc onFail)17802 void checkEqual_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
17803 const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* a,
17804 const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* b, OnFailCompareFunc onFail) {
17805 if (!((a->sType) == (b->sType))) {
17806 onFail("a->sType (Error: Value not equal)");
17807 };
17808 if (a->pNext) {
17809 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17810 }
17811 if (!((a->rayTracingMotionBlur) == (b->rayTracingMotionBlur))) {
17812 onFail("a->rayTracingMotionBlur (Error: Value not equal)");
17813 };
17814 if (!((a->rayTracingMotionBlurPipelineTraceRaysIndirect) ==
17815 (b->rayTracingMotionBlurPipelineTraceRaysIndirect))) {
17816 onFail("a->rayTracingMotionBlurPipelineTraceRaysIndirect (Error: Value not equal)");
17817 };
17818 }
17819
17820 #endif
17821 #ifdef VK_EXT_ycbcr_2plane_444_formats
checkEqual_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * a,const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT * b,OnFailCompareFunc onFail)17822 void checkEqual_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
17823 const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* a,
17824 const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* b, OnFailCompareFunc onFail) {
17825 if (!((a->sType) == (b->sType))) {
17826 onFail("a->sType (Error: Value not equal)");
17827 };
17828 if (a->pNext) {
17829 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17830 }
17831 if (!((a->ycbcr2plane444Formats) == (b->ycbcr2plane444Formats))) {
17832 onFail("a->ycbcr2plane444Formats (Error: Value not equal)");
17833 };
17834 }
17835
17836 #endif
17837 #ifdef VK_EXT_fragment_density_map2
checkEqual_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT * a,const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT * b,OnFailCompareFunc onFail)17838 void checkEqual_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
17839 const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* a,
17840 const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT* b, OnFailCompareFunc onFail) {
17841 if (!((a->sType) == (b->sType))) {
17842 onFail("a->sType (Error: Value not equal)");
17843 };
17844 if (a->pNext) {
17845 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17846 }
17847 if (!((a->fragmentDensityMapDeferred) == (b->fragmentDensityMapDeferred))) {
17848 onFail("a->fragmentDensityMapDeferred (Error: Value not equal)");
17849 };
17850 }
17851
checkEqual_VkPhysicalDeviceFragmentDensityMap2PropertiesEXT(const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT * a,const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT * b,OnFailCompareFunc onFail)17852 void checkEqual_VkPhysicalDeviceFragmentDensityMap2PropertiesEXT(
17853 const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* a,
17854 const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT* b, OnFailCompareFunc onFail) {
17855 if (!((a->sType) == (b->sType))) {
17856 onFail("a->sType (Error: Value not equal)");
17857 };
17858 if (a->pNext) {
17859 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17860 }
17861 if (!((a->subsampledLoads) == (b->subsampledLoads))) {
17862 onFail("a->subsampledLoads (Error: Value not equal)");
17863 };
17864 if (!((a->subsampledCoarseReconstructionEarlyAccess) ==
17865 (b->subsampledCoarseReconstructionEarlyAccess))) {
17866 onFail("a->subsampledCoarseReconstructionEarlyAccess (Error: Value not equal)");
17867 };
17868 if (!((a->maxSubsampledArrayLayers) == (b->maxSubsampledArrayLayers))) {
17869 onFail("a->maxSubsampledArrayLayers (Error: Value not equal)");
17870 };
17871 if (!((a->maxDescriptorSetSubsampledSamplers) == (b->maxDescriptorSetSubsampledSamplers))) {
17872 onFail("a->maxDescriptorSetSubsampledSamplers (Error: Value not equal)");
17873 };
17874 }
17875
17876 #endif
17877 #ifdef VK_QCOM_rotated_copy_commands
checkEqual_VkCopyCommandTransformInfoQCOM(const VkCopyCommandTransformInfoQCOM * a,const VkCopyCommandTransformInfoQCOM * b,OnFailCompareFunc onFail)17878 void checkEqual_VkCopyCommandTransformInfoQCOM(const VkCopyCommandTransformInfoQCOM* a,
17879 const VkCopyCommandTransformInfoQCOM* b,
17880 OnFailCompareFunc onFail) {
17881 if (!((a->sType) == (b->sType))) {
17882 onFail("a->sType (Error: Value not equal)");
17883 };
17884 if (a->pNext) {
17885 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17886 }
17887 if (!((a->transform) == (b->transform))) {
17888 onFail("a->transform (Error: Value not equal)");
17889 };
17890 }
17891
17892 #endif
17893 #ifdef VK_EXT_image_robustness
17894 #endif
17895 #ifdef VK_EXT_image_compression_control
checkEqual_VkPhysicalDeviceImageCompressionControlFeaturesEXT(const VkPhysicalDeviceImageCompressionControlFeaturesEXT * a,const VkPhysicalDeviceImageCompressionControlFeaturesEXT * b,OnFailCompareFunc onFail)17896 void checkEqual_VkPhysicalDeviceImageCompressionControlFeaturesEXT(
17897 const VkPhysicalDeviceImageCompressionControlFeaturesEXT* a,
17898 const VkPhysicalDeviceImageCompressionControlFeaturesEXT* b, OnFailCompareFunc onFail) {
17899 if (!((a->sType) == (b->sType))) {
17900 onFail("a->sType (Error: Value not equal)");
17901 };
17902 if (a->pNext) {
17903 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17904 }
17905 if (!((a->imageCompressionControl) == (b->imageCompressionControl))) {
17906 onFail("a->imageCompressionControl (Error: Value not equal)");
17907 };
17908 }
17909
checkEqual_VkImageCompressionControlEXT(const VkImageCompressionControlEXT * a,const VkImageCompressionControlEXT * b,OnFailCompareFunc onFail)17910 void checkEqual_VkImageCompressionControlEXT(const VkImageCompressionControlEXT* a,
17911 const VkImageCompressionControlEXT* b,
17912 OnFailCompareFunc onFail) {
17913 if (!((a->sType) == (b->sType))) {
17914 onFail("a->sType (Error: Value not equal)");
17915 };
17916 if (a->pNext) {
17917 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17918 }
17919 if (!((a->flags) == (b->flags))) {
17920 onFail("a->flags (Error: Value not equal)");
17921 };
17922 if (!((a->compressionControlPlaneCount) == (b->compressionControlPlaneCount))) {
17923 onFail("a->compressionControlPlaneCount (Error: Value not equal)");
17924 };
17925 if (!((!(a->pFixedRateFlags) && !(b->pFixedRateFlags)) ||
17926 ((a->pFixedRateFlags) && (b->pFixedRateFlags)))) {
17927 onFail("a->pFixedRateFlags (Error: Mismatch in optional field)");
17928 };
17929 if (a->pFixedRateFlags && b->pFixedRateFlags) {
17930 if (!((a->compressionControlPlaneCount) == (b->compressionControlPlaneCount))) {
17931 onFail("a->pFixedRateFlags (Error: Lengths not equal)");
17932 };
17933 if (!((memcmp(a->pFixedRateFlags, b->pFixedRateFlags,
17934 a->compressionControlPlaneCount *
17935 sizeof(VkImageCompressionFixedRateFlagsEXT)) == 0))) {
17936 onFail("a->pFixedRateFlags (Error: Unequal dyn array)");
17937 };
17938 }
17939 }
17940
checkEqual_VkSubresourceLayout2EXT(const VkSubresourceLayout2EXT * a,const VkSubresourceLayout2EXT * b,OnFailCompareFunc onFail)17941 void checkEqual_VkSubresourceLayout2EXT(const VkSubresourceLayout2EXT* a,
17942 const VkSubresourceLayout2EXT* b,
17943 OnFailCompareFunc onFail) {
17944 if (!((a->sType) == (b->sType))) {
17945 onFail("a->sType (Error: Value not equal)");
17946 };
17947 if (a->pNext) {
17948 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17949 }
17950 checkEqual_VkSubresourceLayout(&a->subresourceLayout, &b->subresourceLayout, onFail);
17951 }
17952
checkEqual_VkImageSubresource2EXT(const VkImageSubresource2EXT * a,const VkImageSubresource2EXT * b,OnFailCompareFunc onFail)17953 void checkEqual_VkImageSubresource2EXT(const VkImageSubresource2EXT* a,
17954 const VkImageSubresource2EXT* b, OnFailCompareFunc onFail) {
17955 if (!((a->sType) == (b->sType))) {
17956 onFail("a->sType (Error: Value not equal)");
17957 };
17958 if (a->pNext) {
17959 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17960 }
17961 checkEqual_VkImageSubresource(&a->imageSubresource, &b->imageSubresource, onFail);
17962 }
17963
checkEqual_VkImageCompressionPropertiesEXT(const VkImageCompressionPropertiesEXT * a,const VkImageCompressionPropertiesEXT * b,OnFailCompareFunc onFail)17964 void checkEqual_VkImageCompressionPropertiesEXT(const VkImageCompressionPropertiesEXT* a,
17965 const VkImageCompressionPropertiesEXT* b,
17966 OnFailCompareFunc onFail) {
17967 if (!((a->sType) == (b->sType))) {
17968 onFail("a->sType (Error: Value not equal)");
17969 };
17970 if (a->pNext) {
17971 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17972 }
17973 if (!((a->imageCompressionFlags) == (b->imageCompressionFlags))) {
17974 onFail("a->imageCompressionFlags (Error: Value not equal)");
17975 };
17976 if (!((a->imageCompressionFixedRateFlags) == (b->imageCompressionFixedRateFlags))) {
17977 onFail("a->imageCompressionFixedRateFlags (Error: Value not equal)");
17978 };
17979 }
17980
17981 #endif
17982 #ifdef VK_EXT_attachment_feedback_loop_layout
checkEqual_VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT(const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT * a,const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT * b,OnFailCompareFunc onFail)17983 void checkEqual_VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT(
17984 const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* a,
17985 const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT* b, OnFailCompareFunc onFail) {
17986 if (!((a->sType) == (b->sType))) {
17987 onFail("a->sType (Error: Value not equal)");
17988 };
17989 if (a->pNext) {
17990 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
17991 }
17992 if (!((a->attachmentFeedbackLoopLayout) == (b->attachmentFeedbackLoopLayout))) {
17993 onFail("a->attachmentFeedbackLoopLayout (Error: Value not equal)");
17994 };
17995 }
17996
17997 #endif
17998 #ifdef VK_EXT_4444_formats
checkEqual_VkPhysicalDevice4444FormatsFeaturesEXT(const VkPhysicalDevice4444FormatsFeaturesEXT * a,const VkPhysicalDevice4444FormatsFeaturesEXT * b,OnFailCompareFunc onFail)17999 void checkEqual_VkPhysicalDevice4444FormatsFeaturesEXT(
18000 const VkPhysicalDevice4444FormatsFeaturesEXT* a,
18001 const VkPhysicalDevice4444FormatsFeaturesEXT* b, OnFailCompareFunc onFail) {
18002 if (!((a->sType) == (b->sType))) {
18003 onFail("a->sType (Error: Value not equal)");
18004 };
18005 if (a->pNext) {
18006 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18007 }
18008 if (!((a->formatA4R4G4B4) == (b->formatA4R4G4B4))) {
18009 onFail("a->formatA4R4G4B4 (Error: Value not equal)");
18010 };
18011 if (!((a->formatA4B4G4R4) == (b->formatA4B4G4R4))) {
18012 onFail("a->formatA4B4G4R4 (Error: Value not equal)");
18013 };
18014 }
18015
18016 #endif
18017 #ifdef VK_EXT_device_fault
checkEqual_VkPhysicalDeviceFaultFeaturesEXT(const VkPhysicalDeviceFaultFeaturesEXT * a,const VkPhysicalDeviceFaultFeaturesEXT * b,OnFailCompareFunc onFail)18018 void checkEqual_VkPhysicalDeviceFaultFeaturesEXT(const VkPhysicalDeviceFaultFeaturesEXT* a,
18019 const VkPhysicalDeviceFaultFeaturesEXT* b,
18020 OnFailCompareFunc onFail) {
18021 if (!((a->sType) == (b->sType))) {
18022 onFail("a->sType (Error: Value not equal)");
18023 };
18024 if (a->pNext) {
18025 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18026 }
18027 if (!((a->deviceFault) == (b->deviceFault))) {
18028 onFail("a->deviceFault (Error: Value not equal)");
18029 };
18030 if (!((a->deviceFaultVendorBinary) == (b->deviceFaultVendorBinary))) {
18031 onFail("a->deviceFaultVendorBinary (Error: Value not equal)");
18032 };
18033 }
18034
checkEqual_VkDeviceFaultCountsEXT(const VkDeviceFaultCountsEXT * a,const VkDeviceFaultCountsEXT * b,OnFailCompareFunc onFail)18035 void checkEqual_VkDeviceFaultCountsEXT(const VkDeviceFaultCountsEXT* a,
18036 const VkDeviceFaultCountsEXT* b, OnFailCompareFunc onFail) {
18037 if (!((a->sType) == (b->sType))) {
18038 onFail("a->sType (Error: Value not equal)");
18039 };
18040 if (a->pNext) {
18041 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18042 }
18043 if (!((a->addressInfoCount) == (b->addressInfoCount))) {
18044 onFail("a->addressInfoCount (Error: Value not equal)");
18045 };
18046 if (!((a->vendorInfoCount) == (b->vendorInfoCount))) {
18047 onFail("a->vendorInfoCount (Error: Value not equal)");
18048 };
18049 if (!((a->vendorBinarySize) == (b->vendorBinarySize))) {
18050 onFail("a->vendorBinarySize (Error: Value not equal)");
18051 };
18052 }
18053
checkEqual_VkDeviceFaultAddressInfoEXT(const VkDeviceFaultAddressInfoEXT * a,const VkDeviceFaultAddressInfoEXT * b,OnFailCompareFunc onFail)18054 void checkEqual_VkDeviceFaultAddressInfoEXT(const VkDeviceFaultAddressInfoEXT* a,
18055 const VkDeviceFaultAddressInfoEXT* b,
18056 OnFailCompareFunc onFail) {
18057 if (!((a->addressType) == (b->addressType))) {
18058 onFail("a->addressType (Error: Value not equal)");
18059 };
18060 if (!((a->reportedAddress) == (b->reportedAddress))) {
18061 onFail("a->reportedAddress (Error: Value not equal)");
18062 };
18063 if (!((a->addressPrecision) == (b->addressPrecision))) {
18064 onFail("a->addressPrecision (Error: Value not equal)");
18065 };
18066 }
18067
checkEqual_VkDeviceFaultVendorInfoEXT(const VkDeviceFaultVendorInfoEXT * a,const VkDeviceFaultVendorInfoEXT * b,OnFailCompareFunc onFail)18068 void checkEqual_VkDeviceFaultVendorInfoEXT(const VkDeviceFaultVendorInfoEXT* a,
18069 const VkDeviceFaultVendorInfoEXT* b,
18070 OnFailCompareFunc onFail) {
18071 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
18072 onFail("a->description (Error: Unequal static array)");
18073 };
18074 if (!((a->vendorFaultCode) == (b->vendorFaultCode))) {
18075 onFail("a->vendorFaultCode (Error: Value not equal)");
18076 };
18077 if (!((a->vendorFaultData) == (b->vendorFaultData))) {
18078 onFail("a->vendorFaultData (Error: Value not equal)");
18079 };
18080 }
18081
checkEqual_VkDeviceFaultInfoEXT(const VkDeviceFaultInfoEXT * a,const VkDeviceFaultInfoEXT * b,OnFailCompareFunc onFail)18082 void checkEqual_VkDeviceFaultInfoEXT(const VkDeviceFaultInfoEXT* a, const VkDeviceFaultInfoEXT* b,
18083 OnFailCompareFunc onFail) {
18084 if (!((a->sType) == (b->sType))) {
18085 onFail("a->sType (Error: Value not equal)");
18086 };
18087 if (a->pNext) {
18088 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18089 }
18090 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
18091 onFail("a->description (Error: Unequal static array)");
18092 };
18093 if (!((!(a->pAddressInfos) && !(b->pAddressInfos)) ||
18094 ((a->pAddressInfos) && (b->pAddressInfos)))) {
18095 onFail("a->pAddressInfos (Error: Mismatch in optional field)");
18096 };
18097 if (a->pAddressInfos && b->pAddressInfos) {
18098 if ((a->pAddressInfos) && (b->pAddressInfos)) {
18099 checkEqual_VkDeviceFaultAddressInfoEXT(a->pAddressInfos, b->pAddressInfos, onFail);
18100 }
18101 }
18102 if (!((!(a->pVendorInfos) && !(b->pVendorInfos)) || ((a->pVendorInfos) && (b->pVendorInfos)))) {
18103 onFail("a->pVendorInfos (Error: Mismatch in optional field)");
18104 };
18105 if (a->pVendorInfos && b->pVendorInfos) {
18106 if ((a->pVendorInfos) && (b->pVendorInfos)) {
18107 checkEqual_VkDeviceFaultVendorInfoEXT(a->pVendorInfos, b->pVendorInfos, onFail);
18108 }
18109 }
18110 if (!((!(a->pVendorBinaryData) && !(b->pVendorBinaryData)) ||
18111 ((a->pVendorBinaryData) && (b->pVendorBinaryData)))) {
18112 onFail("a->pVendorBinaryData (Error: Mismatch in optional field)");
18113 };
18114 }
18115
checkEqual_VkDeviceFaultVendorBinaryHeaderVersionOneEXT(const VkDeviceFaultVendorBinaryHeaderVersionOneEXT * a,const VkDeviceFaultVendorBinaryHeaderVersionOneEXT * b,OnFailCompareFunc onFail)18116 void checkEqual_VkDeviceFaultVendorBinaryHeaderVersionOneEXT(
18117 const VkDeviceFaultVendorBinaryHeaderVersionOneEXT* a,
18118 const VkDeviceFaultVendorBinaryHeaderVersionOneEXT* b, OnFailCompareFunc onFail) {
18119 if (!((a->headerSize) == (b->headerSize))) {
18120 onFail("a->headerSize (Error: Value not equal)");
18121 };
18122 if (!((a->headerVersion) == (b->headerVersion))) {
18123 onFail("a->headerVersion (Error: Value not equal)");
18124 };
18125 if (!((a->vendorID) == (b->vendorID))) {
18126 onFail("a->vendorID (Error: Value not equal)");
18127 };
18128 if (!((a->deviceID) == (b->deviceID))) {
18129 onFail("a->deviceID (Error: Value not equal)");
18130 };
18131 if (!((a->driverVersion) == (b->driverVersion))) {
18132 onFail("a->driverVersion (Error: Value not equal)");
18133 };
18134 if (!((memcmp(a->pipelineCacheUUID, b->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t)) ==
18135 0))) {
18136 onFail("a->pipelineCacheUUID (Error: Unequal static array)");
18137 };
18138 if (!((a->applicationNameOffset) == (b->applicationNameOffset))) {
18139 onFail("a->applicationNameOffset (Error: Value not equal)");
18140 };
18141 if (!((a->applicationVersion) == (b->applicationVersion))) {
18142 onFail("a->applicationVersion (Error: Value not equal)");
18143 };
18144 if (!((a->engineNameOffset) == (b->engineNameOffset))) {
18145 onFail("a->engineNameOffset (Error: Value not equal)");
18146 };
18147 if (!((a->engineVersion) == (b->engineVersion))) {
18148 onFail("a->engineVersion (Error: Value not equal)");
18149 };
18150 if (!((a->apiVersion) == (b->apiVersion))) {
18151 onFail("a->apiVersion (Error: Value not equal)");
18152 };
18153 }
18154
18155 #endif
18156 #ifdef VK_ARM_rasterization_order_attachment_access
checkEqual_VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT(const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT * a,const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT * b,OnFailCompareFunc onFail)18157 void checkEqual_VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT(
18158 const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* a,
18159 const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT* b,
18160 OnFailCompareFunc onFail) {
18161 if (!((a->sType) == (b->sType))) {
18162 onFail("a->sType (Error: Value not equal)");
18163 };
18164 if (a->pNext) {
18165 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18166 }
18167 if (!((a->rasterizationOrderColorAttachmentAccess) ==
18168 (b->rasterizationOrderColorAttachmentAccess))) {
18169 onFail("a->rasterizationOrderColorAttachmentAccess (Error: Value not equal)");
18170 };
18171 if (!((a->rasterizationOrderDepthAttachmentAccess) ==
18172 (b->rasterizationOrderDepthAttachmentAccess))) {
18173 onFail("a->rasterizationOrderDepthAttachmentAccess (Error: Value not equal)");
18174 };
18175 if (!((a->rasterizationOrderStencilAttachmentAccess) ==
18176 (b->rasterizationOrderStencilAttachmentAccess))) {
18177 onFail("a->rasterizationOrderStencilAttachmentAccess (Error: Value not equal)");
18178 };
18179 }
18180
18181 #endif
18182 #ifdef VK_EXT_rgba10x6_formats
checkEqual_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT * a,const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT * b,OnFailCompareFunc onFail)18183 void checkEqual_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
18184 const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* a,
18185 const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* b, OnFailCompareFunc onFail) {
18186 if (!((a->sType) == (b->sType))) {
18187 onFail("a->sType (Error: Value not equal)");
18188 };
18189 if (a->pNext) {
18190 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18191 }
18192 if (!((a->formatRgba10x6WithoutYCbCrSampler) == (b->formatRgba10x6WithoutYCbCrSampler))) {
18193 onFail("a->formatRgba10x6WithoutYCbCrSampler (Error: Value not equal)");
18194 };
18195 }
18196
18197 #endif
18198 #ifdef VK_NV_acquire_winrt_display
18199 #endif
18200 #ifdef VK_EXT_directfb_surface
checkEqual_VkDirectFBSurfaceCreateInfoEXT(const VkDirectFBSurfaceCreateInfoEXT * a,const VkDirectFBSurfaceCreateInfoEXT * b,OnFailCompareFunc onFail)18201 void checkEqual_VkDirectFBSurfaceCreateInfoEXT(const VkDirectFBSurfaceCreateInfoEXT* a,
18202 const VkDirectFBSurfaceCreateInfoEXT* b,
18203 OnFailCompareFunc onFail) {
18204 if (!((a->sType) == (b->sType))) {
18205 onFail("a->sType (Error: Value not equal)");
18206 };
18207 if (a->pNext) {
18208 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18209 }
18210 if (!((a->flags) == (b->flags))) {
18211 onFail("a->flags (Error: Value not equal)");
18212 };
18213 if (!((!(a->dfb) && !(b->dfb)) || ((a->dfb) && (b->dfb)))) {
18214 onFail("a->dfb (Error: Mismatch in optional field)");
18215 };
18216 if (a->dfb && b->dfb) {
18217 if (!((memcmp(a->dfb, b->dfb, sizeof(IDirectFB)) == 0))) {
18218 onFail("a->dfb (Error: Unequal dyn array)");
18219 };
18220 }
18221 if (!((!(a->surface) && !(b->surface)) || ((a->surface) && (b->surface)))) {
18222 onFail("a->surface (Error: Mismatch in optional field)");
18223 };
18224 if (a->surface && b->surface) {
18225 if (!((memcmp(a->surface, b->surface, sizeof(IDirectFBSurface)) == 0))) {
18226 onFail("a->surface (Error: Unequal dyn array)");
18227 };
18228 }
18229 }
18230
18231 #endif
18232 #ifdef VK_VALVE_mutable_descriptor_type
checkEqual_VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT(const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT * a,const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT * b,OnFailCompareFunc onFail)18233 void checkEqual_VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT(
18234 const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* a,
18235 const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT* b, OnFailCompareFunc onFail) {
18236 if (!((a->sType) == (b->sType))) {
18237 onFail("a->sType (Error: Value not equal)");
18238 };
18239 if (a->pNext) {
18240 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18241 }
18242 if (!((a->mutableDescriptorType) == (b->mutableDescriptorType))) {
18243 onFail("a->mutableDescriptorType (Error: Value not equal)");
18244 };
18245 }
18246
checkEqual_VkMutableDescriptorTypeListEXT(const VkMutableDescriptorTypeListEXT * a,const VkMutableDescriptorTypeListEXT * b,OnFailCompareFunc onFail)18247 void checkEqual_VkMutableDescriptorTypeListEXT(const VkMutableDescriptorTypeListEXT* a,
18248 const VkMutableDescriptorTypeListEXT* b,
18249 OnFailCompareFunc onFail) {
18250 if (!((a->descriptorTypeCount) == (b->descriptorTypeCount))) {
18251 onFail("a->descriptorTypeCount (Error: Value not equal)");
18252 };
18253 if (!((a->descriptorTypeCount) == (b->descriptorTypeCount))) {
18254 onFail("a->pDescriptorTypes (Error: Lengths not equal)");
18255 };
18256 if (!((memcmp(a->pDescriptorTypes, b->pDescriptorTypes,
18257 a->descriptorTypeCount * sizeof(const VkDescriptorType)) == 0))) {
18258 onFail("a->pDescriptorTypes (Error: Unequal dyn array)");
18259 };
18260 }
18261
checkEqual_VkMutableDescriptorTypeCreateInfoEXT(const VkMutableDescriptorTypeCreateInfoEXT * a,const VkMutableDescriptorTypeCreateInfoEXT * b,OnFailCompareFunc onFail)18262 void checkEqual_VkMutableDescriptorTypeCreateInfoEXT(const VkMutableDescriptorTypeCreateInfoEXT* a,
18263 const VkMutableDescriptorTypeCreateInfoEXT* b,
18264 OnFailCompareFunc onFail) {
18265 if (!((a->sType) == (b->sType))) {
18266 onFail("a->sType (Error: Value not equal)");
18267 };
18268 if (a->pNext) {
18269 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18270 }
18271 if (!((a->mutableDescriptorTypeListCount) == (b->mutableDescriptorTypeListCount))) {
18272 onFail("a->mutableDescriptorTypeListCount (Error: Value not equal)");
18273 };
18274 if ((a->pMutableDescriptorTypeLists) && (b->pMutableDescriptorTypeLists)) {
18275 if (!((a->mutableDescriptorTypeListCount) == (b->mutableDescriptorTypeListCount))) {
18276 onFail("a->pMutableDescriptorTypeLists (Error: Lengths not equal)");
18277 };
18278 if ((a->mutableDescriptorTypeListCount) == (b->mutableDescriptorTypeListCount)) {
18279 if (a) {
18280 for (uint32_t i = 0; i < (uint32_t)a->mutableDescriptorTypeListCount; ++i) {
18281 checkEqual_VkMutableDescriptorTypeListEXT(a->pMutableDescriptorTypeLists + i,
18282 b->pMutableDescriptorTypeLists + i,
18283 onFail);
18284 }
18285 }
18286 }
18287 }
18288 }
18289
18290 #endif
18291 #ifdef VK_EXT_vertex_input_dynamic_state
checkEqual_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * a,const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT * b,OnFailCompareFunc onFail)18292 void checkEqual_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
18293 const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* a,
18294 const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* b, OnFailCompareFunc onFail) {
18295 if (!((a->sType) == (b->sType))) {
18296 onFail("a->sType (Error: Value not equal)");
18297 };
18298 if (a->pNext) {
18299 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18300 }
18301 if (!((a->vertexInputDynamicState) == (b->vertexInputDynamicState))) {
18302 onFail("a->vertexInputDynamicState (Error: Value not equal)");
18303 };
18304 }
18305
checkEqual_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT * a,const VkVertexInputBindingDescription2EXT * b,OnFailCompareFunc onFail)18306 void checkEqual_VkVertexInputBindingDescription2EXT(const VkVertexInputBindingDescription2EXT* a,
18307 const VkVertexInputBindingDescription2EXT* b,
18308 OnFailCompareFunc onFail) {
18309 if (!((a->sType) == (b->sType))) {
18310 onFail("a->sType (Error: Value not equal)");
18311 };
18312 if (a->pNext) {
18313 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18314 }
18315 if (!((a->binding) == (b->binding))) {
18316 onFail("a->binding (Error: Value not equal)");
18317 };
18318 if (!((a->stride) == (b->stride))) {
18319 onFail("a->stride (Error: Value not equal)");
18320 };
18321 if (!((a->inputRate) == (b->inputRate))) {
18322 onFail("a->inputRate (Error: Value not equal)");
18323 };
18324 if (!((a->divisor) == (b->divisor))) {
18325 onFail("a->divisor (Error: Value not equal)");
18326 };
18327 }
18328
checkEqual_VkVertexInputAttributeDescription2EXT(const VkVertexInputAttributeDescription2EXT * a,const VkVertexInputAttributeDescription2EXT * b,OnFailCompareFunc onFail)18329 void checkEqual_VkVertexInputAttributeDescription2EXT(
18330 const VkVertexInputAttributeDescription2EXT* a, const VkVertexInputAttributeDescription2EXT* b,
18331 OnFailCompareFunc onFail) {
18332 if (!((a->sType) == (b->sType))) {
18333 onFail("a->sType (Error: Value not equal)");
18334 };
18335 if (a->pNext) {
18336 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18337 }
18338 if (!((a->location) == (b->location))) {
18339 onFail("a->location (Error: Value not equal)");
18340 };
18341 if (!((a->binding) == (b->binding))) {
18342 onFail("a->binding (Error: Value not equal)");
18343 };
18344 if (!((a->format) == (b->format))) {
18345 onFail("a->format (Error: Value not equal)");
18346 };
18347 if (!((a->offset) == (b->offset))) {
18348 onFail("a->offset (Error: Value not equal)");
18349 };
18350 }
18351
18352 #endif
18353 #ifdef VK_EXT_physical_device_drm
checkEqual_VkPhysicalDeviceDrmPropertiesEXT(const VkPhysicalDeviceDrmPropertiesEXT * a,const VkPhysicalDeviceDrmPropertiesEXT * b,OnFailCompareFunc onFail)18354 void checkEqual_VkPhysicalDeviceDrmPropertiesEXT(const VkPhysicalDeviceDrmPropertiesEXT* a,
18355 const VkPhysicalDeviceDrmPropertiesEXT* b,
18356 OnFailCompareFunc onFail) {
18357 if (!((a->sType) == (b->sType))) {
18358 onFail("a->sType (Error: Value not equal)");
18359 };
18360 if (a->pNext) {
18361 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18362 }
18363 if (!((a->hasPrimary) == (b->hasPrimary))) {
18364 onFail("a->hasPrimary (Error: Value not equal)");
18365 };
18366 if (!((a->hasRender) == (b->hasRender))) {
18367 onFail("a->hasRender (Error: Value not equal)");
18368 };
18369 if (!((a->primaryMajor) == (b->primaryMajor))) {
18370 onFail("a->primaryMajor (Error: Value not equal)");
18371 };
18372 if (!((a->primaryMinor) == (b->primaryMinor))) {
18373 onFail("a->primaryMinor (Error: Value not equal)");
18374 };
18375 if (!((a->renderMajor) == (b->renderMajor))) {
18376 onFail("a->renderMajor (Error: Value not equal)");
18377 };
18378 if (!((a->renderMinor) == (b->renderMinor))) {
18379 onFail("a->renderMinor (Error: Value not equal)");
18380 };
18381 }
18382
18383 #endif
18384 #ifdef VK_EXT_device_address_binding_report
checkEqual_VkPhysicalDeviceAddressBindingReportFeaturesEXT(const VkPhysicalDeviceAddressBindingReportFeaturesEXT * a,const VkPhysicalDeviceAddressBindingReportFeaturesEXT * b,OnFailCompareFunc onFail)18385 void checkEqual_VkPhysicalDeviceAddressBindingReportFeaturesEXT(
18386 const VkPhysicalDeviceAddressBindingReportFeaturesEXT* a,
18387 const VkPhysicalDeviceAddressBindingReportFeaturesEXT* b, OnFailCompareFunc onFail) {
18388 if (!((a->sType) == (b->sType))) {
18389 onFail("a->sType (Error: Value not equal)");
18390 };
18391 if (a->pNext) {
18392 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18393 }
18394 if (!((a->reportAddressBinding) == (b->reportAddressBinding))) {
18395 onFail("a->reportAddressBinding (Error: Value not equal)");
18396 };
18397 }
18398
checkEqual_VkDeviceAddressBindingCallbackDataEXT(const VkDeviceAddressBindingCallbackDataEXT * a,const VkDeviceAddressBindingCallbackDataEXT * b,OnFailCompareFunc onFail)18399 void checkEqual_VkDeviceAddressBindingCallbackDataEXT(
18400 const VkDeviceAddressBindingCallbackDataEXT* a, const VkDeviceAddressBindingCallbackDataEXT* b,
18401 OnFailCompareFunc onFail) {
18402 if (!((a->sType) == (b->sType))) {
18403 onFail("a->sType (Error: Value not equal)");
18404 };
18405 if (a->pNext) {
18406 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18407 }
18408 if (!((a->flags) == (b->flags))) {
18409 onFail("a->flags (Error: Value not equal)");
18410 };
18411 if (!((a->baseAddress) == (b->baseAddress))) {
18412 onFail("a->baseAddress (Error: Value not equal)");
18413 };
18414 if (!((a->size) == (b->size))) {
18415 onFail("a->size (Error: Value not equal)");
18416 };
18417 if (!((a->bindingType) == (b->bindingType))) {
18418 onFail("a->bindingType (Error: Value not equal)");
18419 };
18420 }
18421
18422 #endif
18423 #ifdef VK_EXT_depth_clip_control
checkEqual_VkPhysicalDeviceDepthClipControlFeaturesEXT(const VkPhysicalDeviceDepthClipControlFeaturesEXT * a,const VkPhysicalDeviceDepthClipControlFeaturesEXT * b,OnFailCompareFunc onFail)18424 void checkEqual_VkPhysicalDeviceDepthClipControlFeaturesEXT(
18425 const VkPhysicalDeviceDepthClipControlFeaturesEXT* a,
18426 const VkPhysicalDeviceDepthClipControlFeaturesEXT* b, OnFailCompareFunc onFail) {
18427 if (!((a->sType) == (b->sType))) {
18428 onFail("a->sType (Error: Value not equal)");
18429 };
18430 if (a->pNext) {
18431 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18432 }
18433 if (!((a->depthClipControl) == (b->depthClipControl))) {
18434 onFail("a->depthClipControl (Error: Value not equal)");
18435 };
18436 }
18437
checkEqual_VkPipelineViewportDepthClipControlCreateInfoEXT(const VkPipelineViewportDepthClipControlCreateInfoEXT * a,const VkPipelineViewportDepthClipControlCreateInfoEXT * b,OnFailCompareFunc onFail)18438 void checkEqual_VkPipelineViewportDepthClipControlCreateInfoEXT(
18439 const VkPipelineViewportDepthClipControlCreateInfoEXT* a,
18440 const VkPipelineViewportDepthClipControlCreateInfoEXT* b, OnFailCompareFunc onFail) {
18441 if (!((a->sType) == (b->sType))) {
18442 onFail("a->sType (Error: Value not equal)");
18443 };
18444 if (a->pNext) {
18445 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18446 }
18447 if (!((a->negativeOneToOne) == (b->negativeOneToOne))) {
18448 onFail("a->negativeOneToOne (Error: Value not equal)");
18449 };
18450 }
18451
18452 #endif
18453 #ifdef VK_EXT_primitive_topology_list_restart
checkEqual_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT * a,const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT * b,OnFailCompareFunc onFail)18454 void checkEqual_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
18455 const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* a,
18456 const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* b, OnFailCompareFunc onFail) {
18457 if (!((a->sType) == (b->sType))) {
18458 onFail("a->sType (Error: Value not equal)");
18459 };
18460 if (a->pNext) {
18461 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18462 }
18463 if (!((a->primitiveTopologyListRestart) == (b->primitiveTopologyListRestart))) {
18464 onFail("a->primitiveTopologyListRestart (Error: Value not equal)");
18465 };
18466 if (!((a->primitiveTopologyPatchListRestart) == (b->primitiveTopologyPatchListRestart))) {
18467 onFail("a->primitiveTopologyPatchListRestart (Error: Value not equal)");
18468 };
18469 }
18470
18471 #endif
18472 #ifdef VK_FUCHSIA_external_memory
checkEqual_VkImportMemoryZirconHandleInfoFUCHSIA(const VkImportMemoryZirconHandleInfoFUCHSIA * a,const VkImportMemoryZirconHandleInfoFUCHSIA * b,OnFailCompareFunc onFail)18473 void checkEqual_VkImportMemoryZirconHandleInfoFUCHSIA(
18474 const VkImportMemoryZirconHandleInfoFUCHSIA* a, const VkImportMemoryZirconHandleInfoFUCHSIA* b,
18475 OnFailCompareFunc onFail) {
18476 if (!((a->sType) == (b->sType))) {
18477 onFail("a->sType (Error: Value not equal)");
18478 };
18479 if (a->pNext) {
18480 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18481 }
18482 if (!((a->handleType) == (b->handleType))) {
18483 onFail("a->handleType (Error: Value not equal)");
18484 };
18485 if (!((a->handle) == (b->handle))) {
18486 onFail("a->handle (Error: Value not equal)");
18487 };
18488 }
18489
checkEqual_VkMemoryZirconHandlePropertiesFUCHSIA(const VkMemoryZirconHandlePropertiesFUCHSIA * a,const VkMemoryZirconHandlePropertiesFUCHSIA * b,OnFailCompareFunc onFail)18490 void checkEqual_VkMemoryZirconHandlePropertiesFUCHSIA(
18491 const VkMemoryZirconHandlePropertiesFUCHSIA* a, const VkMemoryZirconHandlePropertiesFUCHSIA* b,
18492 OnFailCompareFunc onFail) {
18493 if (!((a->sType) == (b->sType))) {
18494 onFail("a->sType (Error: Value not equal)");
18495 };
18496 if (a->pNext) {
18497 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18498 }
18499 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
18500 onFail("a->memoryTypeBits (Error: Value not equal)");
18501 };
18502 }
18503
checkEqual_VkMemoryGetZirconHandleInfoFUCHSIA(const VkMemoryGetZirconHandleInfoFUCHSIA * a,const VkMemoryGetZirconHandleInfoFUCHSIA * b,OnFailCompareFunc onFail)18504 void checkEqual_VkMemoryGetZirconHandleInfoFUCHSIA(const VkMemoryGetZirconHandleInfoFUCHSIA* a,
18505 const VkMemoryGetZirconHandleInfoFUCHSIA* b,
18506 OnFailCompareFunc onFail) {
18507 if (!((a->sType) == (b->sType))) {
18508 onFail("a->sType (Error: Value not equal)");
18509 };
18510 if (a->pNext) {
18511 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18512 }
18513 if (!((a->memory) == (b->memory))) {
18514 onFail("a->memory (Error: Value not equal)");
18515 };
18516 if (!((a->handleType) == (b->handleType))) {
18517 onFail("a->handleType (Error: Value not equal)");
18518 };
18519 }
18520
18521 #endif
18522 #ifdef VK_FUCHSIA_external_semaphore
checkEqual_VkImportSemaphoreZirconHandleInfoFUCHSIA(const VkImportSemaphoreZirconHandleInfoFUCHSIA * a,const VkImportSemaphoreZirconHandleInfoFUCHSIA * b,OnFailCompareFunc onFail)18523 void checkEqual_VkImportSemaphoreZirconHandleInfoFUCHSIA(
18524 const VkImportSemaphoreZirconHandleInfoFUCHSIA* a,
18525 const VkImportSemaphoreZirconHandleInfoFUCHSIA* b, OnFailCompareFunc onFail) {
18526 if (!((a->sType) == (b->sType))) {
18527 onFail("a->sType (Error: Value not equal)");
18528 };
18529 if (a->pNext) {
18530 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18531 }
18532 if (!((a->semaphore) == (b->semaphore))) {
18533 onFail("a->semaphore (Error: Value not equal)");
18534 };
18535 if (!((a->flags) == (b->flags))) {
18536 onFail("a->flags (Error: Value not equal)");
18537 };
18538 if (!((a->handleType) == (b->handleType))) {
18539 onFail("a->handleType (Error: Value not equal)");
18540 };
18541 if (!((a->zirconHandle) == (b->zirconHandle))) {
18542 onFail("a->zirconHandle (Error: Value not equal)");
18543 };
18544 }
18545
checkEqual_VkSemaphoreGetZirconHandleInfoFUCHSIA(const VkSemaphoreGetZirconHandleInfoFUCHSIA * a,const VkSemaphoreGetZirconHandleInfoFUCHSIA * b,OnFailCompareFunc onFail)18546 void checkEqual_VkSemaphoreGetZirconHandleInfoFUCHSIA(
18547 const VkSemaphoreGetZirconHandleInfoFUCHSIA* a, const VkSemaphoreGetZirconHandleInfoFUCHSIA* b,
18548 OnFailCompareFunc onFail) {
18549 if (!((a->sType) == (b->sType))) {
18550 onFail("a->sType (Error: Value not equal)");
18551 };
18552 if (a->pNext) {
18553 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18554 }
18555 if (!((a->semaphore) == (b->semaphore))) {
18556 onFail("a->semaphore (Error: Value not equal)");
18557 };
18558 if (!((a->handleType) == (b->handleType))) {
18559 onFail("a->handleType (Error: Value not equal)");
18560 };
18561 }
18562
18563 #endif
18564 #ifdef VK_FUCHSIA_buffer_collection
checkEqual_VkBufferCollectionCreateInfoFUCHSIA(const VkBufferCollectionCreateInfoFUCHSIA * a,const VkBufferCollectionCreateInfoFUCHSIA * b,OnFailCompareFunc onFail)18565 void checkEqual_VkBufferCollectionCreateInfoFUCHSIA(const VkBufferCollectionCreateInfoFUCHSIA* a,
18566 const VkBufferCollectionCreateInfoFUCHSIA* b,
18567 OnFailCompareFunc onFail) {
18568 if (!((a->sType) == (b->sType))) {
18569 onFail("a->sType (Error: Value not equal)");
18570 };
18571 if (a->pNext) {
18572 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18573 }
18574 if (!((a->collectionToken) == (b->collectionToken))) {
18575 onFail("a->collectionToken (Error: Value not equal)");
18576 };
18577 }
18578
checkEqual_VkImportMemoryBufferCollectionFUCHSIA(const VkImportMemoryBufferCollectionFUCHSIA * a,const VkImportMemoryBufferCollectionFUCHSIA * b,OnFailCompareFunc onFail)18579 void checkEqual_VkImportMemoryBufferCollectionFUCHSIA(
18580 const VkImportMemoryBufferCollectionFUCHSIA* a, const VkImportMemoryBufferCollectionFUCHSIA* b,
18581 OnFailCompareFunc onFail) {
18582 if (!((a->sType) == (b->sType))) {
18583 onFail("a->sType (Error: Value not equal)");
18584 };
18585 if (a->pNext) {
18586 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18587 }
18588 if (!((a->collection) == (b->collection))) {
18589 onFail("a->collection (Error: Value not equal)");
18590 };
18591 if (!((a->index) == (b->index))) {
18592 onFail("a->index (Error: Value not equal)");
18593 };
18594 }
18595
checkEqual_VkBufferCollectionImageCreateInfoFUCHSIA(const VkBufferCollectionImageCreateInfoFUCHSIA * a,const VkBufferCollectionImageCreateInfoFUCHSIA * b,OnFailCompareFunc onFail)18596 void checkEqual_VkBufferCollectionImageCreateInfoFUCHSIA(
18597 const VkBufferCollectionImageCreateInfoFUCHSIA* a,
18598 const VkBufferCollectionImageCreateInfoFUCHSIA* b, OnFailCompareFunc onFail) {
18599 if (!((a->sType) == (b->sType))) {
18600 onFail("a->sType (Error: Value not equal)");
18601 };
18602 if (a->pNext) {
18603 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18604 }
18605 if (!((a->collection) == (b->collection))) {
18606 onFail("a->collection (Error: Value not equal)");
18607 };
18608 if (!((a->index) == (b->index))) {
18609 onFail("a->index (Error: Value not equal)");
18610 };
18611 }
18612
checkEqual_VkBufferCollectionConstraintsInfoFUCHSIA(const VkBufferCollectionConstraintsInfoFUCHSIA * a,const VkBufferCollectionConstraintsInfoFUCHSIA * b,OnFailCompareFunc onFail)18613 void checkEqual_VkBufferCollectionConstraintsInfoFUCHSIA(
18614 const VkBufferCollectionConstraintsInfoFUCHSIA* a,
18615 const VkBufferCollectionConstraintsInfoFUCHSIA* b, OnFailCompareFunc onFail) {
18616 if (!((a->sType) == (b->sType))) {
18617 onFail("a->sType (Error: Value not equal)");
18618 };
18619 if (a->pNext) {
18620 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18621 }
18622 if (!((a->minBufferCount) == (b->minBufferCount))) {
18623 onFail("a->minBufferCount (Error: Value not equal)");
18624 };
18625 if (!((a->maxBufferCount) == (b->maxBufferCount))) {
18626 onFail("a->maxBufferCount (Error: Value not equal)");
18627 };
18628 if (!((a->minBufferCountForCamping) == (b->minBufferCountForCamping))) {
18629 onFail("a->minBufferCountForCamping (Error: Value not equal)");
18630 };
18631 if (!((a->minBufferCountForDedicatedSlack) == (b->minBufferCountForDedicatedSlack))) {
18632 onFail("a->minBufferCountForDedicatedSlack (Error: Value not equal)");
18633 };
18634 if (!((a->minBufferCountForSharedSlack) == (b->minBufferCountForSharedSlack))) {
18635 onFail("a->minBufferCountForSharedSlack (Error: Value not equal)");
18636 };
18637 }
18638
checkEqual_VkBufferConstraintsInfoFUCHSIA(const VkBufferConstraintsInfoFUCHSIA * a,const VkBufferConstraintsInfoFUCHSIA * b,OnFailCompareFunc onFail)18639 void checkEqual_VkBufferConstraintsInfoFUCHSIA(const VkBufferConstraintsInfoFUCHSIA* a,
18640 const VkBufferConstraintsInfoFUCHSIA* b,
18641 OnFailCompareFunc onFail) {
18642 if (!((a->sType) == (b->sType))) {
18643 onFail("a->sType (Error: Value not equal)");
18644 };
18645 if (a->pNext) {
18646 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18647 }
18648 checkEqual_VkBufferCreateInfo(&a->createInfo, &b->createInfo, onFail);
18649 if (!((a->requiredFormatFeatures) == (b->requiredFormatFeatures))) {
18650 onFail("a->requiredFormatFeatures (Error: Value not equal)");
18651 };
18652 checkEqual_VkBufferCollectionConstraintsInfoFUCHSIA(&a->bufferCollectionConstraints,
18653 &b->bufferCollectionConstraints, onFail);
18654 }
18655
checkEqual_VkBufferCollectionBufferCreateInfoFUCHSIA(const VkBufferCollectionBufferCreateInfoFUCHSIA * a,const VkBufferCollectionBufferCreateInfoFUCHSIA * b,OnFailCompareFunc onFail)18656 void checkEqual_VkBufferCollectionBufferCreateInfoFUCHSIA(
18657 const VkBufferCollectionBufferCreateInfoFUCHSIA* a,
18658 const VkBufferCollectionBufferCreateInfoFUCHSIA* b, OnFailCompareFunc onFail) {
18659 if (!((a->sType) == (b->sType))) {
18660 onFail("a->sType (Error: Value not equal)");
18661 };
18662 if (a->pNext) {
18663 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18664 }
18665 if (!((a->collection) == (b->collection))) {
18666 onFail("a->collection (Error: Value not equal)");
18667 };
18668 if (!((a->index) == (b->index))) {
18669 onFail("a->index (Error: Value not equal)");
18670 };
18671 }
18672
checkEqual_VkSysmemColorSpaceFUCHSIA(const VkSysmemColorSpaceFUCHSIA * a,const VkSysmemColorSpaceFUCHSIA * b,OnFailCompareFunc onFail)18673 void checkEqual_VkSysmemColorSpaceFUCHSIA(const VkSysmemColorSpaceFUCHSIA* a,
18674 const VkSysmemColorSpaceFUCHSIA* b,
18675 OnFailCompareFunc onFail) {
18676 if (!((a->sType) == (b->sType))) {
18677 onFail("a->sType (Error: Value not equal)");
18678 };
18679 if (a->pNext) {
18680 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18681 }
18682 if (!((a->colorSpace) == (b->colorSpace))) {
18683 onFail("a->colorSpace (Error: Value not equal)");
18684 };
18685 }
18686
checkEqual_VkBufferCollectionPropertiesFUCHSIA(const VkBufferCollectionPropertiesFUCHSIA * a,const VkBufferCollectionPropertiesFUCHSIA * b,OnFailCompareFunc onFail)18687 void checkEqual_VkBufferCollectionPropertiesFUCHSIA(const VkBufferCollectionPropertiesFUCHSIA* a,
18688 const VkBufferCollectionPropertiesFUCHSIA* b,
18689 OnFailCompareFunc onFail) {
18690 if (!((a->sType) == (b->sType))) {
18691 onFail("a->sType (Error: Value not equal)");
18692 };
18693 if (a->pNext) {
18694 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18695 }
18696 if (!((a->memoryTypeBits) == (b->memoryTypeBits))) {
18697 onFail("a->memoryTypeBits (Error: Value not equal)");
18698 };
18699 if (!((a->bufferCount) == (b->bufferCount))) {
18700 onFail("a->bufferCount (Error: Value not equal)");
18701 };
18702 if (!((a->createInfoIndex) == (b->createInfoIndex))) {
18703 onFail("a->createInfoIndex (Error: Value not equal)");
18704 };
18705 if (!((a->sysmemPixelFormat) == (b->sysmemPixelFormat))) {
18706 onFail("a->sysmemPixelFormat (Error: Value not equal)");
18707 };
18708 if (!((a->formatFeatures) == (b->formatFeatures))) {
18709 onFail("a->formatFeatures (Error: Value not equal)");
18710 };
18711 checkEqual_VkSysmemColorSpaceFUCHSIA(&a->sysmemColorSpaceIndex, &b->sysmemColorSpaceIndex,
18712 onFail);
18713 checkEqual_VkComponentMapping(&a->samplerYcbcrConversionComponents,
18714 &b->samplerYcbcrConversionComponents, onFail);
18715 if (!((a->suggestedYcbcrModel) == (b->suggestedYcbcrModel))) {
18716 onFail("a->suggestedYcbcrModel (Error: Value not equal)");
18717 };
18718 if (!((a->suggestedYcbcrRange) == (b->suggestedYcbcrRange))) {
18719 onFail("a->suggestedYcbcrRange (Error: Value not equal)");
18720 };
18721 if (!((a->suggestedXChromaOffset) == (b->suggestedXChromaOffset))) {
18722 onFail("a->suggestedXChromaOffset (Error: Value not equal)");
18723 };
18724 if (!((a->suggestedYChromaOffset) == (b->suggestedYChromaOffset))) {
18725 onFail("a->suggestedYChromaOffset (Error: Value not equal)");
18726 };
18727 }
18728
checkEqual_VkImageFormatConstraintsInfoFUCHSIA(const VkImageFormatConstraintsInfoFUCHSIA * a,const VkImageFormatConstraintsInfoFUCHSIA * b,OnFailCompareFunc onFail)18729 void checkEqual_VkImageFormatConstraintsInfoFUCHSIA(const VkImageFormatConstraintsInfoFUCHSIA* a,
18730 const VkImageFormatConstraintsInfoFUCHSIA* b,
18731 OnFailCompareFunc onFail) {
18732 if (!((a->sType) == (b->sType))) {
18733 onFail("a->sType (Error: Value not equal)");
18734 };
18735 if (a->pNext) {
18736 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18737 }
18738 checkEqual_VkImageCreateInfo(&a->imageCreateInfo, &b->imageCreateInfo, onFail);
18739 if (!((a->requiredFormatFeatures) == (b->requiredFormatFeatures))) {
18740 onFail("a->requiredFormatFeatures (Error: Value not equal)");
18741 };
18742 if (!((a->flags) == (b->flags))) {
18743 onFail("a->flags (Error: Value not equal)");
18744 };
18745 if (!((a->sysmemPixelFormat) == (b->sysmemPixelFormat))) {
18746 onFail("a->sysmemPixelFormat (Error: Value not equal)");
18747 };
18748 if (!((a->colorSpaceCount) == (b->colorSpaceCount))) {
18749 onFail("a->colorSpaceCount (Error: Value not equal)");
18750 };
18751 if ((a->pColorSpaces) && (b->pColorSpaces)) {
18752 if (!((a->colorSpaceCount) == (b->colorSpaceCount))) {
18753 onFail("a->pColorSpaces (Error: Lengths not equal)");
18754 };
18755 if ((a->colorSpaceCount) == (b->colorSpaceCount)) {
18756 if (a) {
18757 for (uint32_t i = 0; i < (uint32_t)a->colorSpaceCount; ++i) {
18758 checkEqual_VkSysmemColorSpaceFUCHSIA(a->pColorSpaces + i, b->pColorSpaces + i,
18759 onFail);
18760 }
18761 }
18762 }
18763 }
18764 }
18765
checkEqual_VkImageConstraintsInfoFUCHSIA(const VkImageConstraintsInfoFUCHSIA * a,const VkImageConstraintsInfoFUCHSIA * b,OnFailCompareFunc onFail)18766 void checkEqual_VkImageConstraintsInfoFUCHSIA(const VkImageConstraintsInfoFUCHSIA* a,
18767 const VkImageConstraintsInfoFUCHSIA* b,
18768 OnFailCompareFunc onFail) {
18769 if (!((a->sType) == (b->sType))) {
18770 onFail("a->sType (Error: Value not equal)");
18771 };
18772 if (a->pNext) {
18773 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18774 }
18775 if (!((a->formatConstraintsCount) == (b->formatConstraintsCount))) {
18776 onFail("a->formatConstraintsCount (Error: Value not equal)");
18777 };
18778 if ((a->pFormatConstraints) && (b->pFormatConstraints)) {
18779 if (!((a->formatConstraintsCount) == (b->formatConstraintsCount))) {
18780 onFail("a->pFormatConstraints (Error: Lengths not equal)");
18781 };
18782 if ((a->formatConstraintsCount) == (b->formatConstraintsCount)) {
18783 if (a) {
18784 for (uint32_t i = 0; i < (uint32_t)a->formatConstraintsCount; ++i) {
18785 checkEqual_VkImageFormatConstraintsInfoFUCHSIA(
18786 a->pFormatConstraints + i, b->pFormatConstraints + i, onFail);
18787 }
18788 }
18789 }
18790 }
18791 checkEqual_VkBufferCollectionConstraintsInfoFUCHSIA(&a->bufferCollectionConstraints,
18792 &b->bufferCollectionConstraints, onFail);
18793 if (!((a->flags) == (b->flags))) {
18794 onFail("a->flags (Error: Value not equal)");
18795 };
18796 }
18797
18798 #endif
18799 #ifdef VK_HUAWEI_subpass_shading
checkEqual_VkSubpassShadingPipelineCreateInfoHUAWEI(const VkSubpassShadingPipelineCreateInfoHUAWEI * a,const VkSubpassShadingPipelineCreateInfoHUAWEI * b,OnFailCompareFunc onFail)18800 void checkEqual_VkSubpassShadingPipelineCreateInfoHUAWEI(
18801 const VkSubpassShadingPipelineCreateInfoHUAWEI* a,
18802 const VkSubpassShadingPipelineCreateInfoHUAWEI* b, OnFailCompareFunc onFail) {
18803 if (!((a->sType) == (b->sType))) {
18804 onFail("a->sType (Error: Value not equal)");
18805 };
18806 if (a->pNext) {
18807 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18808 }
18809 if (!((a->renderPass) == (b->renderPass))) {
18810 onFail("a->renderPass (Error: Value not equal)");
18811 };
18812 if (!((a->subpass) == (b->subpass))) {
18813 onFail("a->subpass (Error: Value not equal)");
18814 };
18815 }
18816
checkEqual_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI * a,const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI * b,OnFailCompareFunc onFail)18817 void checkEqual_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
18818 const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* a,
18819 const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* b, OnFailCompareFunc onFail) {
18820 if (!((a->sType) == (b->sType))) {
18821 onFail("a->sType (Error: Value not equal)");
18822 };
18823 if (a->pNext) {
18824 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18825 }
18826 if (!((a->subpassShading) == (b->subpassShading))) {
18827 onFail("a->subpassShading (Error: Value not equal)");
18828 };
18829 }
18830
checkEqual_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI * a,const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI * b,OnFailCompareFunc onFail)18831 void checkEqual_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
18832 const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* a,
18833 const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* b, OnFailCompareFunc onFail) {
18834 if (!((a->sType) == (b->sType))) {
18835 onFail("a->sType (Error: Value not equal)");
18836 };
18837 if (a->pNext) {
18838 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18839 }
18840 if (!((a->maxSubpassShadingWorkgroupSizeAspectRatio) ==
18841 (b->maxSubpassShadingWorkgroupSizeAspectRatio))) {
18842 onFail("a->maxSubpassShadingWorkgroupSizeAspectRatio (Error: Value not equal)");
18843 };
18844 }
18845
18846 #endif
18847 #ifdef VK_HUAWEI_invocation_mask
checkEqual_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI * a,const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI * b,OnFailCompareFunc onFail)18848 void checkEqual_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
18849 const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* a,
18850 const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* b, OnFailCompareFunc onFail) {
18851 if (!((a->sType) == (b->sType))) {
18852 onFail("a->sType (Error: Value not equal)");
18853 };
18854 if (a->pNext) {
18855 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18856 }
18857 if (!((a->invocationMask) == (b->invocationMask))) {
18858 onFail("a->invocationMask (Error: Value not equal)");
18859 };
18860 }
18861
18862 #endif
18863 #ifdef VK_NV_external_memory_rdma
checkEqual_VkMemoryGetRemoteAddressInfoNV(const VkMemoryGetRemoteAddressInfoNV * a,const VkMemoryGetRemoteAddressInfoNV * b,OnFailCompareFunc onFail)18864 void checkEqual_VkMemoryGetRemoteAddressInfoNV(const VkMemoryGetRemoteAddressInfoNV* a,
18865 const VkMemoryGetRemoteAddressInfoNV* b,
18866 OnFailCompareFunc onFail) {
18867 if (!((a->sType) == (b->sType))) {
18868 onFail("a->sType (Error: Value not equal)");
18869 };
18870 if (a->pNext) {
18871 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18872 }
18873 if (!((a->memory) == (b->memory))) {
18874 onFail("a->memory (Error: Value not equal)");
18875 };
18876 if (!((a->handleType) == (b->handleType))) {
18877 onFail("a->handleType (Error: Value not equal)");
18878 };
18879 }
18880
checkEqual_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV * a,const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV * b,OnFailCompareFunc onFail)18881 void checkEqual_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
18882 const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* a,
18883 const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* b, OnFailCompareFunc onFail) {
18884 if (!((a->sType) == (b->sType))) {
18885 onFail("a->sType (Error: Value not equal)");
18886 };
18887 if (a->pNext) {
18888 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18889 }
18890 if (!((a->externalMemoryRDMA) == (b->externalMemoryRDMA))) {
18891 onFail("a->externalMemoryRDMA (Error: Value not equal)");
18892 };
18893 }
18894
18895 #endif
18896 #ifdef VK_EXT_pipeline_properties
checkEqual_VkPipelinePropertiesIdentifierEXT(const VkPipelinePropertiesIdentifierEXT * a,const VkPipelinePropertiesIdentifierEXT * b,OnFailCompareFunc onFail)18897 void checkEqual_VkPipelinePropertiesIdentifierEXT(const VkPipelinePropertiesIdentifierEXT* a,
18898 const VkPipelinePropertiesIdentifierEXT* b,
18899 OnFailCompareFunc onFail) {
18900 if (!((a->sType) == (b->sType))) {
18901 onFail("a->sType (Error: Value not equal)");
18902 };
18903 if (a->pNext) {
18904 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18905 }
18906 if (!((memcmp(a->pipelineIdentifier, b->pipelineIdentifier, VK_UUID_SIZE * sizeof(uint8_t)) ==
18907 0))) {
18908 onFail("a->pipelineIdentifier (Error: Unequal static array)");
18909 };
18910 }
18911
checkEqual_VkPhysicalDevicePipelinePropertiesFeaturesEXT(const VkPhysicalDevicePipelinePropertiesFeaturesEXT * a,const VkPhysicalDevicePipelinePropertiesFeaturesEXT * b,OnFailCompareFunc onFail)18912 void checkEqual_VkPhysicalDevicePipelinePropertiesFeaturesEXT(
18913 const VkPhysicalDevicePipelinePropertiesFeaturesEXT* a,
18914 const VkPhysicalDevicePipelinePropertiesFeaturesEXT* b, OnFailCompareFunc onFail) {
18915 if (!((a->sType) == (b->sType))) {
18916 onFail("a->sType (Error: Value not equal)");
18917 };
18918 if (a->pNext) {
18919 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18920 }
18921 if (!((a->pipelinePropertiesIdentifier) == (b->pipelinePropertiesIdentifier))) {
18922 onFail("a->pipelinePropertiesIdentifier (Error: Value not equal)");
18923 };
18924 }
18925
18926 #endif
18927 #ifdef VK_EXT_multisampled_render_to_single_sampled
checkEqual_VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT(const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT * a,const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT * b,OnFailCompareFunc onFail)18928 void checkEqual_VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT(
18929 const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* a,
18930 const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT* b,
18931 OnFailCompareFunc onFail) {
18932 if (!((a->sType) == (b->sType))) {
18933 onFail("a->sType (Error: Value not equal)");
18934 };
18935 if (a->pNext) {
18936 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18937 }
18938 if (!((a->multisampledRenderToSingleSampled) == (b->multisampledRenderToSingleSampled))) {
18939 onFail("a->multisampledRenderToSingleSampled (Error: Value not equal)");
18940 };
18941 }
18942
checkEqual_VkSubpassResolvePerformanceQueryEXT(const VkSubpassResolvePerformanceQueryEXT * a,const VkSubpassResolvePerformanceQueryEXT * b,OnFailCompareFunc onFail)18943 void checkEqual_VkSubpassResolvePerformanceQueryEXT(const VkSubpassResolvePerformanceQueryEXT* a,
18944 const VkSubpassResolvePerformanceQueryEXT* b,
18945 OnFailCompareFunc onFail) {
18946 if (!((a->sType) == (b->sType))) {
18947 onFail("a->sType (Error: Value not equal)");
18948 };
18949 if (a->pNext) {
18950 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18951 }
18952 if (!((a->optimal) == (b->optimal))) {
18953 onFail("a->optimal (Error: Value not equal)");
18954 };
18955 }
18956
checkEqual_VkMultisampledRenderToSingleSampledInfoEXT(const VkMultisampledRenderToSingleSampledInfoEXT * a,const VkMultisampledRenderToSingleSampledInfoEXT * b,OnFailCompareFunc onFail)18957 void checkEqual_VkMultisampledRenderToSingleSampledInfoEXT(
18958 const VkMultisampledRenderToSingleSampledInfoEXT* a,
18959 const VkMultisampledRenderToSingleSampledInfoEXT* b, OnFailCompareFunc onFail) {
18960 if (!((a->sType) == (b->sType))) {
18961 onFail("a->sType (Error: Value not equal)");
18962 };
18963 if (a->pNext) {
18964 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18965 }
18966 if (!((a->multisampledRenderToSingleSampledEnable) ==
18967 (b->multisampledRenderToSingleSampledEnable))) {
18968 onFail("a->multisampledRenderToSingleSampledEnable (Error: Value not equal)");
18969 };
18970 if (!((a->rasterizationSamples) == (b->rasterizationSamples))) {
18971 onFail("a->rasterizationSamples (Error: Value not equal)");
18972 };
18973 }
18974
18975 #endif
18976 #ifdef VK_EXT_extended_dynamic_state2
checkEqual_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * a,const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT * b,OnFailCompareFunc onFail)18977 void checkEqual_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
18978 const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* a,
18979 const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* b, OnFailCompareFunc onFail) {
18980 if (!((a->sType) == (b->sType))) {
18981 onFail("a->sType (Error: Value not equal)");
18982 };
18983 if (a->pNext) {
18984 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
18985 }
18986 if (!((a->extendedDynamicState2) == (b->extendedDynamicState2))) {
18987 onFail("a->extendedDynamicState2 (Error: Value not equal)");
18988 };
18989 if (!((a->extendedDynamicState2LogicOp) == (b->extendedDynamicState2LogicOp))) {
18990 onFail("a->extendedDynamicState2LogicOp (Error: Value not equal)");
18991 };
18992 if (!((a->extendedDynamicState2PatchControlPoints) ==
18993 (b->extendedDynamicState2PatchControlPoints))) {
18994 onFail("a->extendedDynamicState2PatchControlPoints (Error: Value not equal)");
18995 };
18996 }
18997
18998 #endif
18999 #ifdef VK_QNX_screen_surface
checkEqual_VkScreenSurfaceCreateInfoQNX(const VkScreenSurfaceCreateInfoQNX * a,const VkScreenSurfaceCreateInfoQNX * b,OnFailCompareFunc onFail)19000 void checkEqual_VkScreenSurfaceCreateInfoQNX(const VkScreenSurfaceCreateInfoQNX* a,
19001 const VkScreenSurfaceCreateInfoQNX* b,
19002 OnFailCompareFunc onFail) {
19003 if (!((a->sType) == (b->sType))) {
19004 onFail("a->sType (Error: Value not equal)");
19005 };
19006 if (a->pNext) {
19007 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19008 }
19009 if (!((a->flags) == (b->flags))) {
19010 onFail("a->flags (Error: Value not equal)");
19011 };
19012 if (!((!(a->context) && !(b->context)) || ((a->context) && (b->context)))) {
19013 onFail("a->context (Error: Mismatch in optional field)");
19014 };
19015 if (a->context && b->context) {
19016 if (!((memcmp(a->context, b->context, sizeof(_screen_context)) == 0))) {
19017 onFail("a->context (Error: Unequal dyn array)");
19018 };
19019 }
19020 if (!((!(a->window) && !(b->window)) || ((a->window) && (b->window)))) {
19021 onFail("a->window (Error: Mismatch in optional field)");
19022 };
19023 if (a->window && b->window) {
19024 if (!((memcmp(a->window, b->window, sizeof(_screen_window)) == 0))) {
19025 onFail("a->window (Error: Unequal dyn array)");
19026 };
19027 }
19028 }
19029
19030 #endif
19031 #ifdef VK_EXT_color_write_enable
checkEqual_VkPhysicalDeviceColorWriteEnableFeaturesEXT(const VkPhysicalDeviceColorWriteEnableFeaturesEXT * a,const VkPhysicalDeviceColorWriteEnableFeaturesEXT * b,OnFailCompareFunc onFail)19032 void checkEqual_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
19033 const VkPhysicalDeviceColorWriteEnableFeaturesEXT* a,
19034 const VkPhysicalDeviceColorWriteEnableFeaturesEXT* b, OnFailCompareFunc onFail) {
19035 if (!((a->sType) == (b->sType))) {
19036 onFail("a->sType (Error: Value not equal)");
19037 };
19038 if (a->pNext) {
19039 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19040 }
19041 if (!((a->colorWriteEnable) == (b->colorWriteEnable))) {
19042 onFail("a->colorWriteEnable (Error: Value not equal)");
19043 };
19044 }
19045
checkEqual_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT * a,const VkPipelineColorWriteCreateInfoEXT * b,OnFailCompareFunc onFail)19046 void checkEqual_VkPipelineColorWriteCreateInfoEXT(const VkPipelineColorWriteCreateInfoEXT* a,
19047 const VkPipelineColorWriteCreateInfoEXT* b,
19048 OnFailCompareFunc onFail) {
19049 if (!((a->sType) == (b->sType))) {
19050 onFail("a->sType (Error: Value not equal)");
19051 };
19052 if (a->pNext) {
19053 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19054 }
19055 if (!((a->attachmentCount) == (b->attachmentCount))) {
19056 onFail("a->attachmentCount (Error: Value not equal)");
19057 };
19058 if (!((a->attachmentCount) == (b->attachmentCount))) {
19059 onFail("a->pColorWriteEnables (Error: Lengths not equal)");
19060 };
19061 if (!((memcmp(a->pColorWriteEnables, b->pColorWriteEnables,
19062 a->attachmentCount * sizeof(const VkBool32)) == 0))) {
19063 onFail("a->pColorWriteEnables (Error: Unequal dyn array)");
19064 };
19065 }
19066
19067 #endif
19068 #ifdef VK_EXT_primitives_generated_query
checkEqual_VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT * a,const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT * b,OnFailCompareFunc onFail)19069 void checkEqual_VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(
19070 const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* a,
19071 const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT* b, OnFailCompareFunc onFail) {
19072 if (!((a->sType) == (b->sType))) {
19073 onFail("a->sType (Error: Value not equal)");
19074 };
19075 if (a->pNext) {
19076 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19077 }
19078 if (!((a->primitivesGeneratedQuery) == (b->primitivesGeneratedQuery))) {
19079 onFail("a->primitivesGeneratedQuery (Error: Value not equal)");
19080 };
19081 if (!((a->primitivesGeneratedQueryWithRasterizerDiscard) ==
19082 (b->primitivesGeneratedQueryWithRasterizerDiscard))) {
19083 onFail("a->primitivesGeneratedQueryWithRasterizerDiscard (Error: Value not equal)");
19084 };
19085 if (!((a->primitivesGeneratedQueryWithNonZeroStreams) ==
19086 (b->primitivesGeneratedQueryWithNonZeroStreams))) {
19087 onFail("a->primitivesGeneratedQueryWithNonZeroStreams (Error: Value not equal)");
19088 };
19089 }
19090
19091 #endif
19092 #ifdef VK_GOOGLE_gfxstream
checkEqual_VkImportColorBufferGOOGLE(const VkImportColorBufferGOOGLE * a,const VkImportColorBufferGOOGLE * b,OnFailCompareFunc onFail)19093 void checkEqual_VkImportColorBufferGOOGLE(const VkImportColorBufferGOOGLE* a,
19094 const VkImportColorBufferGOOGLE* b,
19095 OnFailCompareFunc onFail) {
19096 if (!((a->sType) == (b->sType))) {
19097 onFail("a->sType (Error: Value not equal)");
19098 };
19099 if (a->pNext) {
19100 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19101 }
19102 if (!((a->colorBuffer) == (b->colorBuffer))) {
19103 onFail("a->colorBuffer (Error: Value not equal)");
19104 };
19105 }
19106
checkEqual_VkImportBufferGOOGLE(const VkImportBufferGOOGLE * a,const VkImportBufferGOOGLE * b,OnFailCompareFunc onFail)19107 void checkEqual_VkImportBufferGOOGLE(const VkImportBufferGOOGLE* a, const VkImportBufferGOOGLE* b,
19108 OnFailCompareFunc onFail) {
19109 if (!((a->sType) == (b->sType))) {
19110 onFail("a->sType (Error: Value not equal)");
19111 };
19112 if (a->pNext) {
19113 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19114 }
19115 if (!((a->buffer) == (b->buffer))) {
19116 onFail("a->buffer (Error: Value not equal)");
19117 };
19118 }
19119
checkEqual_VkCreateBlobGOOGLE(const VkCreateBlobGOOGLE * a,const VkCreateBlobGOOGLE * b,OnFailCompareFunc onFail)19120 void checkEqual_VkCreateBlobGOOGLE(const VkCreateBlobGOOGLE* a, const VkCreateBlobGOOGLE* b,
19121 OnFailCompareFunc onFail) {
19122 if (!((a->sType) == (b->sType))) {
19123 onFail("a->sType (Error: Value not equal)");
19124 };
19125 if (a->pNext) {
19126 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19127 }
19128 if (!((a->blobMem) == (b->blobMem))) {
19129 onFail("a->blobMem (Error: Value not equal)");
19130 };
19131 if (!((a->blobFlags) == (b->blobFlags))) {
19132 onFail("a->blobFlags (Error: Value not equal)");
19133 };
19134 if (!((a->blobId) == (b->blobId))) {
19135 onFail("a->blobId (Error: Value not equal)");
19136 };
19137 }
19138
19139 #endif
19140 #ifdef VK_EXT_global_priority_query
19141 #endif
19142 #ifdef VK_EXT_image_view_min_lod
checkEqual_VkPhysicalDeviceImageViewMinLodFeaturesEXT(const VkPhysicalDeviceImageViewMinLodFeaturesEXT * a,const VkPhysicalDeviceImageViewMinLodFeaturesEXT * b,OnFailCompareFunc onFail)19143 void checkEqual_VkPhysicalDeviceImageViewMinLodFeaturesEXT(
19144 const VkPhysicalDeviceImageViewMinLodFeaturesEXT* a,
19145 const VkPhysicalDeviceImageViewMinLodFeaturesEXT* b, OnFailCompareFunc onFail) {
19146 if (!((a->sType) == (b->sType))) {
19147 onFail("a->sType (Error: Value not equal)");
19148 };
19149 if (a->pNext) {
19150 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19151 }
19152 if (!((a->minLod) == (b->minLod))) {
19153 onFail("a->minLod (Error: Value not equal)");
19154 };
19155 }
19156
checkEqual_VkImageViewMinLodCreateInfoEXT(const VkImageViewMinLodCreateInfoEXT * a,const VkImageViewMinLodCreateInfoEXT * b,OnFailCompareFunc onFail)19157 void checkEqual_VkImageViewMinLodCreateInfoEXT(const VkImageViewMinLodCreateInfoEXT* a,
19158 const VkImageViewMinLodCreateInfoEXT* b,
19159 OnFailCompareFunc onFail) {
19160 if (!((a->sType) == (b->sType))) {
19161 onFail("a->sType (Error: Value not equal)");
19162 };
19163 if (a->pNext) {
19164 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19165 }
19166 if (!((a->minLod) == (b->minLod))) {
19167 onFail("a->minLod (Error: Value not equal)");
19168 };
19169 }
19170
19171 #endif
19172 #ifdef VK_EXT_multi_draw
checkEqual_VkPhysicalDeviceMultiDrawFeaturesEXT(const VkPhysicalDeviceMultiDrawFeaturesEXT * a,const VkPhysicalDeviceMultiDrawFeaturesEXT * b,OnFailCompareFunc onFail)19173 void checkEqual_VkPhysicalDeviceMultiDrawFeaturesEXT(const VkPhysicalDeviceMultiDrawFeaturesEXT* a,
19174 const VkPhysicalDeviceMultiDrawFeaturesEXT* b,
19175 OnFailCompareFunc onFail) {
19176 if (!((a->sType) == (b->sType))) {
19177 onFail("a->sType (Error: Value not equal)");
19178 };
19179 if (a->pNext) {
19180 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19181 }
19182 if (!((a->multiDraw) == (b->multiDraw))) {
19183 onFail("a->multiDraw (Error: Value not equal)");
19184 };
19185 }
19186
checkEqual_VkPhysicalDeviceMultiDrawPropertiesEXT(const VkPhysicalDeviceMultiDrawPropertiesEXT * a,const VkPhysicalDeviceMultiDrawPropertiesEXT * b,OnFailCompareFunc onFail)19187 void checkEqual_VkPhysicalDeviceMultiDrawPropertiesEXT(
19188 const VkPhysicalDeviceMultiDrawPropertiesEXT* a,
19189 const VkPhysicalDeviceMultiDrawPropertiesEXT* b, OnFailCompareFunc onFail) {
19190 if (!((a->sType) == (b->sType))) {
19191 onFail("a->sType (Error: Value not equal)");
19192 };
19193 if (a->pNext) {
19194 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19195 }
19196 if (!((a->maxMultiDrawCount) == (b->maxMultiDrawCount))) {
19197 onFail("a->maxMultiDrawCount (Error: Value not equal)");
19198 };
19199 }
19200
checkEqual_VkMultiDrawInfoEXT(const VkMultiDrawInfoEXT * a,const VkMultiDrawInfoEXT * b,OnFailCompareFunc onFail)19201 void checkEqual_VkMultiDrawInfoEXT(const VkMultiDrawInfoEXT* a, const VkMultiDrawInfoEXT* b,
19202 OnFailCompareFunc onFail) {
19203 if (!((a->firstVertex) == (b->firstVertex))) {
19204 onFail("a->firstVertex (Error: Value not equal)");
19205 };
19206 if (!((a->vertexCount) == (b->vertexCount))) {
19207 onFail("a->vertexCount (Error: Value not equal)");
19208 };
19209 }
19210
checkEqual_VkMultiDrawIndexedInfoEXT(const VkMultiDrawIndexedInfoEXT * a,const VkMultiDrawIndexedInfoEXT * b,OnFailCompareFunc onFail)19211 void checkEqual_VkMultiDrawIndexedInfoEXT(const VkMultiDrawIndexedInfoEXT* a,
19212 const VkMultiDrawIndexedInfoEXT* b,
19213 OnFailCompareFunc onFail) {
19214 if (!((a->firstIndex) == (b->firstIndex))) {
19215 onFail("a->firstIndex (Error: Value not equal)");
19216 };
19217 if (!((a->indexCount) == (b->indexCount))) {
19218 onFail("a->indexCount (Error: Value not equal)");
19219 };
19220 if (!((a->vertexOffset) == (b->vertexOffset))) {
19221 onFail("a->vertexOffset (Error: Value not equal)");
19222 };
19223 }
19224
19225 #endif
19226 #ifdef VK_EXT_image_2d_view_of_3d
checkEqual_VkPhysicalDeviceImage2DViewOf3DFeaturesEXT(const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT * a,const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT * b,OnFailCompareFunc onFail)19227 void checkEqual_VkPhysicalDeviceImage2DViewOf3DFeaturesEXT(
19228 const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* a,
19229 const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT* b, OnFailCompareFunc onFail) {
19230 if (!((a->sType) == (b->sType))) {
19231 onFail("a->sType (Error: Value not equal)");
19232 };
19233 if (a->pNext) {
19234 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19235 }
19236 if (!((a->image2DViewOf3D) == (b->image2DViewOf3D))) {
19237 onFail("a->image2DViewOf3D (Error: Value not equal)");
19238 };
19239 if (!((a->sampler2DViewOf3D) == (b->sampler2DViewOf3D))) {
19240 onFail("a->sampler2DViewOf3D (Error: Value not equal)");
19241 };
19242 }
19243
19244 #endif
19245 #ifdef VK_EXT_shader_tile_image
checkEqual_VkPhysicalDeviceShaderTileImageFeaturesEXT(const VkPhysicalDeviceShaderTileImageFeaturesEXT * a,const VkPhysicalDeviceShaderTileImageFeaturesEXT * b,OnFailCompareFunc onFail)19246 void checkEqual_VkPhysicalDeviceShaderTileImageFeaturesEXT(
19247 const VkPhysicalDeviceShaderTileImageFeaturesEXT* a,
19248 const VkPhysicalDeviceShaderTileImageFeaturesEXT* b, OnFailCompareFunc onFail) {
19249 if (!((a->sType) == (b->sType))) {
19250 onFail("a->sType (Error: Value not equal)");
19251 };
19252 if (a->pNext) {
19253 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19254 }
19255 if (!((a->shaderTileImageColorReadAccess) == (b->shaderTileImageColorReadAccess))) {
19256 onFail("a->shaderTileImageColorReadAccess (Error: Value not equal)");
19257 };
19258 if (!((a->shaderTileImageDepthReadAccess) == (b->shaderTileImageDepthReadAccess))) {
19259 onFail("a->shaderTileImageDepthReadAccess (Error: Value not equal)");
19260 };
19261 if (!((a->shaderTileImageStencilReadAccess) == (b->shaderTileImageStencilReadAccess))) {
19262 onFail("a->shaderTileImageStencilReadAccess (Error: Value not equal)");
19263 };
19264 }
19265
checkEqual_VkPhysicalDeviceShaderTileImagePropertiesEXT(const VkPhysicalDeviceShaderTileImagePropertiesEXT * a,const VkPhysicalDeviceShaderTileImagePropertiesEXT * b,OnFailCompareFunc onFail)19266 void checkEqual_VkPhysicalDeviceShaderTileImagePropertiesEXT(
19267 const VkPhysicalDeviceShaderTileImagePropertiesEXT* a,
19268 const VkPhysicalDeviceShaderTileImagePropertiesEXT* b, OnFailCompareFunc onFail) {
19269 if (!((a->sType) == (b->sType))) {
19270 onFail("a->sType (Error: Value not equal)");
19271 };
19272 if (a->pNext) {
19273 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19274 }
19275 if (!((a->shaderTileImageCoherentReadAccelerated) ==
19276 (b->shaderTileImageCoherentReadAccelerated))) {
19277 onFail("a->shaderTileImageCoherentReadAccelerated (Error: Value not equal)");
19278 };
19279 if (!((a->shaderTileImageReadSampleFromPixelRateInvocation) ==
19280 (b->shaderTileImageReadSampleFromPixelRateInvocation))) {
19281 onFail("a->shaderTileImageReadSampleFromPixelRateInvocation (Error: Value not equal)");
19282 };
19283 if (!((a->shaderTileImageReadFromHelperInvocation) ==
19284 (b->shaderTileImageReadFromHelperInvocation))) {
19285 onFail("a->shaderTileImageReadFromHelperInvocation (Error: Value not equal)");
19286 };
19287 }
19288
19289 #endif
19290 #ifdef VK_EXT_opacity_micromap
checkEqual_VkMicromapUsageEXT(const VkMicromapUsageEXT * a,const VkMicromapUsageEXT * b,OnFailCompareFunc onFail)19291 void checkEqual_VkMicromapUsageEXT(const VkMicromapUsageEXT* a, const VkMicromapUsageEXT* b,
19292 OnFailCompareFunc onFail) {
19293 if (!((a->count) == (b->count))) {
19294 onFail("a->count (Error: Value not equal)");
19295 };
19296 if (!((a->subdivisionLevel) == (b->subdivisionLevel))) {
19297 onFail("a->subdivisionLevel (Error: Value not equal)");
19298 };
19299 if (!((a->format) == (b->format))) {
19300 onFail("a->format (Error: Value not equal)");
19301 };
19302 }
19303
checkEqual_VkDeviceOrHostAddressKHR(const VkDeviceOrHostAddressKHR * a,const VkDeviceOrHostAddressKHR * b,OnFailCompareFunc onFail)19304 void checkEqual_VkDeviceOrHostAddressKHR(const VkDeviceOrHostAddressKHR* a,
19305 const VkDeviceOrHostAddressKHR* b,
19306 OnFailCompareFunc onFail) {
19307 if (!((a->deviceAddress) == (b->deviceAddress))) {
19308 onFail("a->deviceAddress (Error: Value not equal)");
19309 };
19310 if (!((!(a->hostAddress) && !(b->hostAddress)) || ((a->hostAddress) && (b->hostAddress)))) {
19311 onFail("a->hostAddress (Error: Mismatch in optional field)");
19312 };
19313 }
19314
checkEqual_VkMicromapBuildInfoEXT(const VkMicromapBuildInfoEXT * a,const VkMicromapBuildInfoEXT * b,OnFailCompareFunc onFail)19315 void checkEqual_VkMicromapBuildInfoEXT(const VkMicromapBuildInfoEXT* a,
19316 const VkMicromapBuildInfoEXT* b, OnFailCompareFunc onFail) {
19317 if (!((a->sType) == (b->sType))) {
19318 onFail("a->sType (Error: Value not equal)");
19319 };
19320 if (a->pNext) {
19321 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19322 }
19323 if (!((a->type) == (b->type))) {
19324 onFail("a->type (Error: Value not equal)");
19325 };
19326 if (!((a->flags) == (b->flags))) {
19327 onFail("a->flags (Error: Value not equal)");
19328 };
19329 if (!((a->mode) == (b->mode))) {
19330 onFail("a->mode (Error: Value not equal)");
19331 };
19332 if (!((a->dstMicromap) == (b->dstMicromap))) {
19333 onFail("a->dstMicromap (Error: Value not equal)");
19334 };
19335 if (!((a->usageCountsCount) == (b->usageCountsCount))) {
19336 onFail("a->usageCountsCount (Error: Value not equal)");
19337 };
19338 if (!((!(a->pUsageCounts) && !(b->pUsageCounts)) || ((a->pUsageCounts) && (b->pUsageCounts)))) {
19339 onFail("a->pUsageCounts (Error: Mismatch in optional field)");
19340 };
19341 if (a->pUsageCounts && b->pUsageCounts) {
19342 if ((a->pUsageCounts) && (b->pUsageCounts)) {
19343 if (!((a->usageCountsCount) == (b->usageCountsCount))) {
19344 onFail("a->pUsageCounts (Error: Lengths not equal)");
19345 };
19346 if ((a->usageCountsCount) == (b->usageCountsCount)) {
19347 if (a) {
19348 for (uint32_t i = 0; i < (uint32_t)a->usageCountsCount; ++i) {
19349 checkEqual_VkMicromapUsageEXT(a->pUsageCounts + i, b->pUsageCounts + i,
19350 onFail);
19351 }
19352 }
19353 }
19354 }
19355 }
19356 checkEqual_VkDeviceOrHostAddressConstKHR(&a->data, &b->data, onFail);
19357 checkEqual_VkDeviceOrHostAddressKHR(&a->scratchData, &b->scratchData, onFail);
19358 checkEqual_VkDeviceOrHostAddressConstKHR(&a->triangleArray, &b->triangleArray, onFail);
19359 if (!((a->triangleArrayStride) == (b->triangleArrayStride))) {
19360 onFail("a->triangleArrayStride (Error: Value not equal)");
19361 };
19362 }
19363
checkEqual_VkMicromapCreateInfoEXT(const VkMicromapCreateInfoEXT * a,const VkMicromapCreateInfoEXT * b,OnFailCompareFunc onFail)19364 void checkEqual_VkMicromapCreateInfoEXT(const VkMicromapCreateInfoEXT* a,
19365 const VkMicromapCreateInfoEXT* b,
19366 OnFailCompareFunc onFail) {
19367 if (!((a->sType) == (b->sType))) {
19368 onFail("a->sType (Error: Value not equal)");
19369 };
19370 if (a->pNext) {
19371 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19372 }
19373 if (!((a->createFlags) == (b->createFlags))) {
19374 onFail("a->createFlags (Error: Value not equal)");
19375 };
19376 if (!((a->buffer) == (b->buffer))) {
19377 onFail("a->buffer (Error: Value not equal)");
19378 };
19379 if (!((a->offset) == (b->offset))) {
19380 onFail("a->offset (Error: Value not equal)");
19381 };
19382 if (!((a->size) == (b->size))) {
19383 onFail("a->size (Error: Value not equal)");
19384 };
19385 if (!((a->type) == (b->type))) {
19386 onFail("a->type (Error: Value not equal)");
19387 };
19388 if (!((a->deviceAddress) == (b->deviceAddress))) {
19389 onFail("a->deviceAddress (Error: Value not equal)");
19390 };
19391 }
19392
checkEqual_VkPhysicalDeviceOpacityMicromapFeaturesEXT(const VkPhysicalDeviceOpacityMicromapFeaturesEXT * a,const VkPhysicalDeviceOpacityMicromapFeaturesEXT * b,OnFailCompareFunc onFail)19393 void checkEqual_VkPhysicalDeviceOpacityMicromapFeaturesEXT(
19394 const VkPhysicalDeviceOpacityMicromapFeaturesEXT* a,
19395 const VkPhysicalDeviceOpacityMicromapFeaturesEXT* b, OnFailCompareFunc onFail) {
19396 if (!((a->sType) == (b->sType))) {
19397 onFail("a->sType (Error: Value not equal)");
19398 };
19399 if (a->pNext) {
19400 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19401 }
19402 if (!((a->micromap) == (b->micromap))) {
19403 onFail("a->micromap (Error: Value not equal)");
19404 };
19405 if (!((a->micromapCaptureReplay) == (b->micromapCaptureReplay))) {
19406 onFail("a->micromapCaptureReplay (Error: Value not equal)");
19407 };
19408 if (!((a->micromapHostCommands) == (b->micromapHostCommands))) {
19409 onFail("a->micromapHostCommands (Error: Value not equal)");
19410 };
19411 }
19412
checkEqual_VkPhysicalDeviceOpacityMicromapPropertiesEXT(const VkPhysicalDeviceOpacityMicromapPropertiesEXT * a,const VkPhysicalDeviceOpacityMicromapPropertiesEXT * b,OnFailCompareFunc onFail)19413 void checkEqual_VkPhysicalDeviceOpacityMicromapPropertiesEXT(
19414 const VkPhysicalDeviceOpacityMicromapPropertiesEXT* a,
19415 const VkPhysicalDeviceOpacityMicromapPropertiesEXT* b, OnFailCompareFunc onFail) {
19416 if (!((a->sType) == (b->sType))) {
19417 onFail("a->sType (Error: Value not equal)");
19418 };
19419 if (a->pNext) {
19420 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19421 }
19422 if (!((a->maxOpacity2StateSubdivisionLevel) == (b->maxOpacity2StateSubdivisionLevel))) {
19423 onFail("a->maxOpacity2StateSubdivisionLevel (Error: Value not equal)");
19424 };
19425 if (!((a->maxOpacity4StateSubdivisionLevel) == (b->maxOpacity4StateSubdivisionLevel))) {
19426 onFail("a->maxOpacity4StateSubdivisionLevel (Error: Value not equal)");
19427 };
19428 }
19429
checkEqual_VkMicromapVersionInfoEXT(const VkMicromapVersionInfoEXT * a,const VkMicromapVersionInfoEXT * b,OnFailCompareFunc onFail)19430 void checkEqual_VkMicromapVersionInfoEXT(const VkMicromapVersionInfoEXT* a,
19431 const VkMicromapVersionInfoEXT* b,
19432 OnFailCompareFunc onFail) {
19433 if (!((a->sType) == (b->sType))) {
19434 onFail("a->sType (Error: Value not equal)");
19435 };
19436 if (a->pNext) {
19437 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19438 }
19439 if (!((2 * VK_UUID_SIZE) == (2 * VK_UUID_SIZE))) {
19440 onFail("a->pVersionData (Error: Lengths not equal)");
19441 };
19442 if (!((memcmp(a->pVersionData, b->pVersionData, 2 * VK_UUID_SIZE * sizeof(const uint8_t)) ==
19443 0))) {
19444 onFail("a->pVersionData (Error: Unequal dyn array)");
19445 };
19446 }
19447
checkEqual_VkCopyMicromapToMemoryInfoEXT(const VkCopyMicromapToMemoryInfoEXT * a,const VkCopyMicromapToMemoryInfoEXT * b,OnFailCompareFunc onFail)19448 void checkEqual_VkCopyMicromapToMemoryInfoEXT(const VkCopyMicromapToMemoryInfoEXT* a,
19449 const VkCopyMicromapToMemoryInfoEXT* b,
19450 OnFailCompareFunc onFail) {
19451 if (!((a->sType) == (b->sType))) {
19452 onFail("a->sType (Error: Value not equal)");
19453 };
19454 if (a->pNext) {
19455 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19456 }
19457 if (!((a->src) == (b->src))) {
19458 onFail("a->src (Error: Value not equal)");
19459 };
19460 checkEqual_VkDeviceOrHostAddressKHR(&a->dst, &b->dst, onFail);
19461 if (!((a->mode) == (b->mode))) {
19462 onFail("a->mode (Error: Value not equal)");
19463 };
19464 }
19465
checkEqual_VkCopyMemoryToMicromapInfoEXT(const VkCopyMemoryToMicromapInfoEXT * a,const VkCopyMemoryToMicromapInfoEXT * b,OnFailCompareFunc onFail)19466 void checkEqual_VkCopyMemoryToMicromapInfoEXT(const VkCopyMemoryToMicromapInfoEXT* a,
19467 const VkCopyMemoryToMicromapInfoEXT* b,
19468 OnFailCompareFunc onFail) {
19469 if (!((a->sType) == (b->sType))) {
19470 onFail("a->sType (Error: Value not equal)");
19471 };
19472 if (a->pNext) {
19473 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19474 }
19475 checkEqual_VkDeviceOrHostAddressConstKHR(&a->src, &b->src, onFail);
19476 if (!((a->dst) == (b->dst))) {
19477 onFail("a->dst (Error: Value not equal)");
19478 };
19479 if (!((a->mode) == (b->mode))) {
19480 onFail("a->mode (Error: Value not equal)");
19481 };
19482 }
19483
checkEqual_VkCopyMicromapInfoEXT(const VkCopyMicromapInfoEXT * a,const VkCopyMicromapInfoEXT * b,OnFailCompareFunc onFail)19484 void checkEqual_VkCopyMicromapInfoEXT(const VkCopyMicromapInfoEXT* a,
19485 const VkCopyMicromapInfoEXT* b, OnFailCompareFunc onFail) {
19486 if (!((a->sType) == (b->sType))) {
19487 onFail("a->sType (Error: Value not equal)");
19488 };
19489 if (a->pNext) {
19490 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19491 }
19492 if (!((a->src) == (b->src))) {
19493 onFail("a->src (Error: Value not equal)");
19494 };
19495 if (!((a->dst) == (b->dst))) {
19496 onFail("a->dst (Error: Value not equal)");
19497 };
19498 if (!((a->mode) == (b->mode))) {
19499 onFail("a->mode (Error: Value not equal)");
19500 };
19501 }
19502
checkEqual_VkMicromapBuildSizesInfoEXT(const VkMicromapBuildSizesInfoEXT * a,const VkMicromapBuildSizesInfoEXT * b,OnFailCompareFunc onFail)19503 void checkEqual_VkMicromapBuildSizesInfoEXT(const VkMicromapBuildSizesInfoEXT* a,
19504 const VkMicromapBuildSizesInfoEXT* b,
19505 OnFailCompareFunc onFail) {
19506 if (!((a->sType) == (b->sType))) {
19507 onFail("a->sType (Error: Value not equal)");
19508 };
19509 if (a->pNext) {
19510 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19511 }
19512 if (!((a->micromapSize) == (b->micromapSize))) {
19513 onFail("a->micromapSize (Error: Value not equal)");
19514 };
19515 if (!((a->buildScratchSize) == (b->buildScratchSize))) {
19516 onFail("a->buildScratchSize (Error: Value not equal)");
19517 };
19518 if (!((a->discardable) == (b->discardable))) {
19519 onFail("a->discardable (Error: Value not equal)");
19520 };
19521 }
19522
checkEqual_VkAccelerationStructureTrianglesOpacityMicromapEXT(const VkAccelerationStructureTrianglesOpacityMicromapEXT * a,const VkAccelerationStructureTrianglesOpacityMicromapEXT * b,OnFailCompareFunc onFail)19523 void checkEqual_VkAccelerationStructureTrianglesOpacityMicromapEXT(
19524 const VkAccelerationStructureTrianglesOpacityMicromapEXT* a,
19525 const VkAccelerationStructureTrianglesOpacityMicromapEXT* b, OnFailCompareFunc onFail) {
19526 if (!((a->sType) == (b->sType))) {
19527 onFail("a->sType (Error: Value not equal)");
19528 };
19529 if (a->pNext) {
19530 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19531 }
19532 if (!((a->indexType) == (b->indexType))) {
19533 onFail("a->indexType (Error: Value not equal)");
19534 };
19535 checkEqual_VkDeviceOrHostAddressConstKHR(&a->indexBuffer, &b->indexBuffer, onFail);
19536 if (!((a->indexStride) == (b->indexStride))) {
19537 onFail("a->indexStride (Error: Value not equal)");
19538 };
19539 if (!((a->baseTriangle) == (b->baseTriangle))) {
19540 onFail("a->baseTriangle (Error: Value not equal)");
19541 };
19542 if (!((a->usageCountsCount) == (b->usageCountsCount))) {
19543 onFail("a->usageCountsCount (Error: Value not equal)");
19544 };
19545 if (!((!(a->pUsageCounts) && !(b->pUsageCounts)) || ((a->pUsageCounts) && (b->pUsageCounts)))) {
19546 onFail("a->pUsageCounts (Error: Mismatch in optional field)");
19547 };
19548 if (a->pUsageCounts && b->pUsageCounts) {
19549 if ((a->pUsageCounts) && (b->pUsageCounts)) {
19550 if (!((a->usageCountsCount) == (b->usageCountsCount))) {
19551 onFail("a->pUsageCounts (Error: Lengths not equal)");
19552 };
19553 if ((a->usageCountsCount) == (b->usageCountsCount)) {
19554 if (a) {
19555 for (uint32_t i = 0; i < (uint32_t)a->usageCountsCount; ++i) {
19556 checkEqual_VkMicromapUsageEXT(a->pUsageCounts + i, b->pUsageCounts + i,
19557 onFail);
19558 }
19559 }
19560 }
19561 }
19562 }
19563 if (!((a->micromap) == (b->micromap))) {
19564 onFail("a->micromap (Error: Value not equal)");
19565 };
19566 }
19567
checkEqual_VkMicromapTriangleEXT(const VkMicromapTriangleEXT * a,const VkMicromapTriangleEXT * b,OnFailCompareFunc onFail)19568 void checkEqual_VkMicromapTriangleEXT(const VkMicromapTriangleEXT* a,
19569 const VkMicromapTriangleEXT* b, OnFailCompareFunc onFail) {
19570 if (!((a->dataOffset) == (b->dataOffset))) {
19571 onFail("a->dataOffset (Error: Value not equal)");
19572 };
19573 if (!((a->subdivisionLevel) == (b->subdivisionLevel))) {
19574 onFail("a->subdivisionLevel (Error: Value not equal)");
19575 };
19576 if (!((a->format) == (b->format))) {
19577 onFail("a->format (Error: Value not equal)");
19578 };
19579 }
19580
19581 #endif
19582 #ifdef VK_NV_displacement_micromap
checkEqual_VkPhysicalDeviceDisplacementMicromapFeaturesNV(const VkPhysicalDeviceDisplacementMicromapFeaturesNV * a,const VkPhysicalDeviceDisplacementMicromapFeaturesNV * b,OnFailCompareFunc onFail)19583 void checkEqual_VkPhysicalDeviceDisplacementMicromapFeaturesNV(
19584 const VkPhysicalDeviceDisplacementMicromapFeaturesNV* a,
19585 const VkPhysicalDeviceDisplacementMicromapFeaturesNV* b, OnFailCompareFunc onFail) {
19586 if (!((a->sType) == (b->sType))) {
19587 onFail("a->sType (Error: Value not equal)");
19588 };
19589 if (a->pNext) {
19590 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19591 }
19592 if (!((a->displacementMicromap) == (b->displacementMicromap))) {
19593 onFail("a->displacementMicromap (Error: Value not equal)");
19594 };
19595 }
19596
checkEqual_VkPhysicalDeviceDisplacementMicromapPropertiesNV(const VkPhysicalDeviceDisplacementMicromapPropertiesNV * a,const VkPhysicalDeviceDisplacementMicromapPropertiesNV * b,OnFailCompareFunc onFail)19597 void checkEqual_VkPhysicalDeviceDisplacementMicromapPropertiesNV(
19598 const VkPhysicalDeviceDisplacementMicromapPropertiesNV* a,
19599 const VkPhysicalDeviceDisplacementMicromapPropertiesNV* b, OnFailCompareFunc onFail) {
19600 if (!((a->sType) == (b->sType))) {
19601 onFail("a->sType (Error: Value not equal)");
19602 };
19603 if (a->pNext) {
19604 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19605 }
19606 if (!((a->maxDisplacementMicromapSubdivisionLevel) ==
19607 (b->maxDisplacementMicromapSubdivisionLevel))) {
19608 onFail("a->maxDisplacementMicromapSubdivisionLevel (Error: Value not equal)");
19609 };
19610 }
19611
checkEqual_VkAccelerationStructureTrianglesDisplacementMicromapNV(const VkAccelerationStructureTrianglesDisplacementMicromapNV * a,const VkAccelerationStructureTrianglesDisplacementMicromapNV * b,OnFailCompareFunc onFail)19612 void checkEqual_VkAccelerationStructureTrianglesDisplacementMicromapNV(
19613 const VkAccelerationStructureTrianglesDisplacementMicromapNV* a,
19614 const VkAccelerationStructureTrianglesDisplacementMicromapNV* b, OnFailCompareFunc onFail) {
19615 if (!((a->sType) == (b->sType))) {
19616 onFail("a->sType (Error: Value not equal)");
19617 };
19618 if (a->pNext) {
19619 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19620 }
19621 if (!((a->displacementBiasAndScaleFormat) == (b->displacementBiasAndScaleFormat))) {
19622 onFail("a->displacementBiasAndScaleFormat (Error: Value not equal)");
19623 };
19624 if (!((a->displacementVectorFormat) == (b->displacementVectorFormat))) {
19625 onFail("a->displacementVectorFormat (Error: Value not equal)");
19626 };
19627 checkEqual_VkDeviceOrHostAddressConstKHR(&a->displacementBiasAndScaleBuffer,
19628 &b->displacementBiasAndScaleBuffer, onFail);
19629 if (!((a->displacementBiasAndScaleStride) == (b->displacementBiasAndScaleStride))) {
19630 onFail("a->displacementBiasAndScaleStride (Error: Value not equal)");
19631 };
19632 checkEqual_VkDeviceOrHostAddressConstKHR(&a->displacementVectorBuffer,
19633 &b->displacementVectorBuffer, onFail);
19634 if (!((a->displacementVectorStride) == (b->displacementVectorStride))) {
19635 onFail("a->displacementVectorStride (Error: Value not equal)");
19636 };
19637 checkEqual_VkDeviceOrHostAddressConstKHR(&a->displacedMicromapPrimitiveFlags,
19638 &b->displacedMicromapPrimitiveFlags, onFail);
19639 if (!((a->displacedMicromapPrimitiveFlagsStride) ==
19640 (b->displacedMicromapPrimitiveFlagsStride))) {
19641 onFail("a->displacedMicromapPrimitiveFlagsStride (Error: Value not equal)");
19642 };
19643 if (!((a->indexType) == (b->indexType))) {
19644 onFail("a->indexType (Error: Value not equal)");
19645 };
19646 checkEqual_VkDeviceOrHostAddressConstKHR(&a->indexBuffer, &b->indexBuffer, onFail);
19647 if (!((a->indexStride) == (b->indexStride))) {
19648 onFail("a->indexStride (Error: Value not equal)");
19649 };
19650 if (!((a->baseTriangle) == (b->baseTriangle))) {
19651 onFail("a->baseTriangle (Error: Value not equal)");
19652 };
19653 if (!((a->usageCountsCount) == (b->usageCountsCount))) {
19654 onFail("a->usageCountsCount (Error: Value not equal)");
19655 };
19656 if (!((!(a->pUsageCounts) && !(b->pUsageCounts)) || ((a->pUsageCounts) && (b->pUsageCounts)))) {
19657 onFail("a->pUsageCounts (Error: Mismatch in optional field)");
19658 };
19659 if (a->pUsageCounts && b->pUsageCounts) {
19660 if ((a->pUsageCounts) && (b->pUsageCounts)) {
19661 if (!((a->usageCountsCount) == (b->usageCountsCount))) {
19662 onFail("a->pUsageCounts (Error: Lengths not equal)");
19663 };
19664 if ((a->usageCountsCount) == (b->usageCountsCount)) {
19665 if (a) {
19666 for (uint32_t i = 0; i < (uint32_t)a->usageCountsCount; ++i) {
19667 checkEqual_VkMicromapUsageEXT(a->pUsageCounts + i, b->pUsageCounts + i,
19668 onFail);
19669 }
19670 }
19671 }
19672 }
19673 }
19674 if (!((a->micromap) == (b->micromap))) {
19675 onFail("a->micromap (Error: Value not equal)");
19676 };
19677 }
19678
19679 #endif
19680 #ifdef VK_EXT_load_store_op_none
19681 #endif
19682 #ifdef VK_HUAWEI_cluster_culling_shader
checkEqual_VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI(const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI * a,const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI * b,OnFailCompareFunc onFail)19683 void checkEqual_VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI(
19684 const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* a,
19685 const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI* b, OnFailCompareFunc onFail) {
19686 if (!((a->sType) == (b->sType))) {
19687 onFail("a->sType (Error: Value not equal)");
19688 };
19689 if (a->pNext) {
19690 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19691 }
19692 if (!((a->clustercullingShader) == (b->clustercullingShader))) {
19693 onFail("a->clustercullingShader (Error: Value not equal)");
19694 };
19695 if (!((a->multiviewClusterCullingShader) == (b->multiviewClusterCullingShader))) {
19696 onFail("a->multiviewClusterCullingShader (Error: Value not equal)");
19697 };
19698 }
19699
checkEqual_VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI(const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI * a,const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI * b,OnFailCompareFunc onFail)19700 void checkEqual_VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI(
19701 const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* a,
19702 const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI* b, OnFailCompareFunc onFail) {
19703 if (!((a->sType) == (b->sType))) {
19704 onFail("a->sType (Error: Value not equal)");
19705 };
19706 if (a->pNext) {
19707 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19708 }
19709 if (!((memcmp(a->maxWorkGroupCount, b->maxWorkGroupCount, 3 * sizeof(uint32_t)) == 0))) {
19710 onFail("a->maxWorkGroupCount (Error: Unequal static array)");
19711 };
19712 if (!((memcmp(a->maxWorkGroupSize, b->maxWorkGroupSize, 3 * sizeof(uint32_t)) == 0))) {
19713 onFail("a->maxWorkGroupSize (Error: Unequal static array)");
19714 };
19715 if (!((a->maxOutputClusterCount) == (b->maxOutputClusterCount))) {
19716 onFail("a->maxOutputClusterCount (Error: Value not equal)");
19717 };
19718 if (!((a->indirectBufferOffsetAlignment) == (b->indirectBufferOffsetAlignment))) {
19719 onFail("a->indirectBufferOffsetAlignment (Error: Value not equal)");
19720 };
19721 }
19722
19723 #endif
19724 #ifdef VK_EXT_border_color_swizzle
checkEqual_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT * a,const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT * b,OnFailCompareFunc onFail)19725 void checkEqual_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
19726 const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* a,
19727 const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* b, OnFailCompareFunc onFail) {
19728 if (!((a->sType) == (b->sType))) {
19729 onFail("a->sType (Error: Value not equal)");
19730 };
19731 if (a->pNext) {
19732 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19733 }
19734 if (!((a->borderColorSwizzle) == (b->borderColorSwizzle))) {
19735 onFail("a->borderColorSwizzle (Error: Value not equal)");
19736 };
19737 if (!((a->borderColorSwizzleFromImage) == (b->borderColorSwizzleFromImage))) {
19738 onFail("a->borderColorSwizzleFromImage (Error: Value not equal)");
19739 };
19740 }
19741
checkEqual_VkSamplerBorderColorComponentMappingCreateInfoEXT(const VkSamplerBorderColorComponentMappingCreateInfoEXT * a,const VkSamplerBorderColorComponentMappingCreateInfoEXT * b,OnFailCompareFunc onFail)19742 void checkEqual_VkSamplerBorderColorComponentMappingCreateInfoEXT(
19743 const VkSamplerBorderColorComponentMappingCreateInfoEXT* a,
19744 const VkSamplerBorderColorComponentMappingCreateInfoEXT* b, OnFailCompareFunc onFail) {
19745 if (!((a->sType) == (b->sType))) {
19746 onFail("a->sType (Error: Value not equal)");
19747 };
19748 if (a->pNext) {
19749 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19750 }
19751 checkEqual_VkComponentMapping(&a->components, &b->components, onFail);
19752 if (!((a->srgb) == (b->srgb))) {
19753 onFail("a->srgb (Error: Value not equal)");
19754 };
19755 }
19756
19757 #endif
19758 #ifdef VK_EXT_pageable_device_local_memory
checkEqual_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT * a,const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT * b,OnFailCompareFunc onFail)19759 void checkEqual_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
19760 const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* a,
19761 const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* b, OnFailCompareFunc onFail) {
19762 if (!((a->sType) == (b->sType))) {
19763 onFail("a->sType (Error: Value not equal)");
19764 };
19765 if (a->pNext) {
19766 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19767 }
19768 if (!((a->pageableDeviceLocalMemory) == (b->pageableDeviceLocalMemory))) {
19769 onFail("a->pageableDeviceLocalMemory (Error: Value not equal)");
19770 };
19771 }
19772
19773 #endif
19774 #ifdef VK_ARM_shader_core_properties
checkEqual_VkPhysicalDeviceShaderCorePropertiesARM(const VkPhysicalDeviceShaderCorePropertiesARM * a,const VkPhysicalDeviceShaderCorePropertiesARM * b,OnFailCompareFunc onFail)19775 void checkEqual_VkPhysicalDeviceShaderCorePropertiesARM(
19776 const VkPhysicalDeviceShaderCorePropertiesARM* a,
19777 const VkPhysicalDeviceShaderCorePropertiesARM* b, OnFailCompareFunc onFail) {
19778 if (!((a->sType) == (b->sType))) {
19779 onFail("a->sType (Error: Value not equal)");
19780 };
19781 if (a->pNext) {
19782 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19783 }
19784 if (!((a->pixelRate) == (b->pixelRate))) {
19785 onFail("a->pixelRate (Error: Value not equal)");
19786 };
19787 if (!((a->texelRate) == (b->texelRate))) {
19788 onFail("a->texelRate (Error: Value not equal)");
19789 };
19790 if (!((a->fmaRate) == (b->fmaRate))) {
19791 onFail("a->fmaRate (Error: Value not equal)");
19792 };
19793 }
19794
19795 #endif
19796 #ifdef VK_EXT_image_sliced_view_of_3d
checkEqual_VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT(const VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT * a,const VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT * b,OnFailCompareFunc onFail)19797 void checkEqual_VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT(
19798 const VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* a,
19799 const VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT* b, OnFailCompareFunc onFail) {
19800 if (!((a->sType) == (b->sType))) {
19801 onFail("a->sType (Error: Value not equal)");
19802 };
19803 if (a->pNext) {
19804 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19805 }
19806 if (!((a->imageSlicedViewOf3D) == (b->imageSlicedViewOf3D))) {
19807 onFail("a->imageSlicedViewOf3D (Error: Value not equal)");
19808 };
19809 }
19810
checkEqual_VkImageViewSlicedCreateInfoEXT(const VkImageViewSlicedCreateInfoEXT * a,const VkImageViewSlicedCreateInfoEXT * b,OnFailCompareFunc onFail)19811 void checkEqual_VkImageViewSlicedCreateInfoEXT(const VkImageViewSlicedCreateInfoEXT* a,
19812 const VkImageViewSlicedCreateInfoEXT* b,
19813 OnFailCompareFunc onFail) {
19814 if (!((a->sType) == (b->sType))) {
19815 onFail("a->sType (Error: Value not equal)");
19816 };
19817 if (a->pNext) {
19818 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19819 }
19820 if (!((a->sliceOffset) == (b->sliceOffset))) {
19821 onFail("a->sliceOffset (Error: Value not equal)");
19822 };
19823 if (!((a->sliceCount) == (b->sliceCount))) {
19824 onFail("a->sliceCount (Error: Value not equal)");
19825 };
19826 }
19827
19828 #endif
19829 #ifdef VK_VALVE_descriptor_set_host_mapping
checkEqual_VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE * a,const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE * b,OnFailCompareFunc onFail)19830 void checkEqual_VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(
19831 const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* a,
19832 const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE* b, OnFailCompareFunc onFail) {
19833 if (!((a->sType) == (b->sType))) {
19834 onFail("a->sType (Error: Value not equal)");
19835 };
19836 if (a->pNext) {
19837 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19838 }
19839 if (!((a->descriptorSetHostMapping) == (b->descriptorSetHostMapping))) {
19840 onFail("a->descriptorSetHostMapping (Error: Value not equal)");
19841 };
19842 }
19843
checkEqual_VkDescriptorSetBindingReferenceVALVE(const VkDescriptorSetBindingReferenceVALVE * a,const VkDescriptorSetBindingReferenceVALVE * b,OnFailCompareFunc onFail)19844 void checkEqual_VkDescriptorSetBindingReferenceVALVE(const VkDescriptorSetBindingReferenceVALVE* a,
19845 const VkDescriptorSetBindingReferenceVALVE* b,
19846 OnFailCompareFunc onFail) {
19847 if (!((a->sType) == (b->sType))) {
19848 onFail("a->sType (Error: Value not equal)");
19849 };
19850 if (a->pNext) {
19851 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19852 }
19853 if (!((a->descriptorSetLayout) == (b->descriptorSetLayout))) {
19854 onFail("a->descriptorSetLayout (Error: Value not equal)");
19855 };
19856 if (!((a->binding) == (b->binding))) {
19857 onFail("a->binding (Error: Value not equal)");
19858 };
19859 }
19860
checkEqual_VkDescriptorSetLayoutHostMappingInfoVALVE(const VkDescriptorSetLayoutHostMappingInfoVALVE * a,const VkDescriptorSetLayoutHostMappingInfoVALVE * b,OnFailCompareFunc onFail)19861 void checkEqual_VkDescriptorSetLayoutHostMappingInfoVALVE(
19862 const VkDescriptorSetLayoutHostMappingInfoVALVE* a,
19863 const VkDescriptorSetLayoutHostMappingInfoVALVE* b, OnFailCompareFunc onFail) {
19864 if (!((a->sType) == (b->sType))) {
19865 onFail("a->sType (Error: Value not equal)");
19866 };
19867 if (a->pNext) {
19868 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19869 }
19870 if (!((a->descriptorOffset) == (b->descriptorOffset))) {
19871 onFail("a->descriptorOffset (Error: Value not equal)");
19872 };
19873 if (!((a->descriptorSize) == (b->descriptorSize))) {
19874 onFail("a->descriptorSize (Error: Value not equal)");
19875 };
19876 }
19877
19878 #endif
19879 #ifdef VK_EXT_depth_clamp_zero_one
checkEqual_VkPhysicalDeviceDepthClampZeroOneFeaturesEXT(const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT * a,const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT * b,OnFailCompareFunc onFail)19880 void checkEqual_VkPhysicalDeviceDepthClampZeroOneFeaturesEXT(
19881 const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* a,
19882 const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT* b, OnFailCompareFunc onFail) {
19883 if (!((a->sType) == (b->sType))) {
19884 onFail("a->sType (Error: Value not equal)");
19885 };
19886 if (a->pNext) {
19887 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19888 }
19889 if (!((a->depthClampZeroOne) == (b->depthClampZeroOne))) {
19890 onFail("a->depthClampZeroOne (Error: Value not equal)");
19891 };
19892 }
19893
19894 #endif
19895 #ifdef VK_EXT_non_seamless_cube_map
checkEqual_VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT(const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT * a,const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT * b,OnFailCompareFunc onFail)19896 void checkEqual_VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT(
19897 const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* a,
19898 const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT* b, OnFailCompareFunc onFail) {
19899 if (!((a->sType) == (b->sType))) {
19900 onFail("a->sType (Error: Value not equal)");
19901 };
19902 if (a->pNext) {
19903 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19904 }
19905 if (!((a->nonSeamlessCubeMap) == (b->nonSeamlessCubeMap))) {
19906 onFail("a->nonSeamlessCubeMap (Error: Value not equal)");
19907 };
19908 }
19909
19910 #endif
19911 #ifdef VK_QCOM_fragment_density_map_offset
checkEqual_VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM * a,const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM * b,OnFailCompareFunc onFail)19912 void checkEqual_VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(
19913 const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* a,
19914 const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM* b, OnFailCompareFunc onFail) {
19915 if (!((a->sType) == (b->sType))) {
19916 onFail("a->sType (Error: Value not equal)");
19917 };
19918 if (a->pNext) {
19919 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19920 }
19921 if (!((a->fragmentDensityMapOffset) == (b->fragmentDensityMapOffset))) {
19922 onFail("a->fragmentDensityMapOffset (Error: Value not equal)");
19923 };
19924 }
19925
checkEqual_VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM * a,const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM * b,OnFailCompareFunc onFail)19926 void checkEqual_VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(
19927 const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* a,
19928 const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM* b, OnFailCompareFunc onFail) {
19929 if (!((a->sType) == (b->sType))) {
19930 onFail("a->sType (Error: Value not equal)");
19931 };
19932 if (a->pNext) {
19933 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19934 }
19935 checkEqual_VkExtent2D(&a->fragmentDensityOffsetGranularity,
19936 &b->fragmentDensityOffsetGranularity, onFail);
19937 }
19938
checkEqual_VkSubpassFragmentDensityMapOffsetEndInfoQCOM(const VkSubpassFragmentDensityMapOffsetEndInfoQCOM * a,const VkSubpassFragmentDensityMapOffsetEndInfoQCOM * b,OnFailCompareFunc onFail)19939 void checkEqual_VkSubpassFragmentDensityMapOffsetEndInfoQCOM(
19940 const VkSubpassFragmentDensityMapOffsetEndInfoQCOM* a,
19941 const VkSubpassFragmentDensityMapOffsetEndInfoQCOM* b, OnFailCompareFunc onFail) {
19942 if (!((a->sType) == (b->sType))) {
19943 onFail("a->sType (Error: Value not equal)");
19944 };
19945 if (a->pNext) {
19946 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
19947 }
19948 if (!((a->fragmentDensityOffsetCount) == (b->fragmentDensityOffsetCount))) {
19949 onFail("a->fragmentDensityOffsetCount (Error: Value not equal)");
19950 };
19951 if ((a->pFragmentDensityOffsets) && (b->pFragmentDensityOffsets)) {
19952 if (!((a->fragmentDensityOffsetCount) == (b->fragmentDensityOffsetCount))) {
19953 onFail("a->pFragmentDensityOffsets (Error: Lengths not equal)");
19954 };
19955 if ((a->fragmentDensityOffsetCount) == (b->fragmentDensityOffsetCount)) {
19956 if (a) {
19957 for (uint32_t i = 0; i < (uint32_t)a->fragmentDensityOffsetCount; ++i) {
19958 checkEqual_VkOffset2D(a->pFragmentDensityOffsets + i,
19959 b->pFragmentDensityOffsets + i, onFail);
19960 }
19961 }
19962 }
19963 }
19964 }
19965
19966 #endif
19967 #ifdef VK_NV_copy_memory_indirect
checkEqual_VkCopyMemoryIndirectCommandNV(const VkCopyMemoryIndirectCommandNV * a,const VkCopyMemoryIndirectCommandNV * b,OnFailCompareFunc onFail)19968 void checkEqual_VkCopyMemoryIndirectCommandNV(const VkCopyMemoryIndirectCommandNV* a,
19969 const VkCopyMemoryIndirectCommandNV* b,
19970 OnFailCompareFunc onFail) {
19971 if (!((a->srcAddress) == (b->srcAddress))) {
19972 onFail("a->srcAddress (Error: Value not equal)");
19973 };
19974 if (!((a->dstAddress) == (b->dstAddress))) {
19975 onFail("a->dstAddress (Error: Value not equal)");
19976 };
19977 if (!((a->size) == (b->size))) {
19978 onFail("a->size (Error: Value not equal)");
19979 };
19980 }
19981
checkEqual_VkCopyMemoryToImageIndirectCommandNV(const VkCopyMemoryToImageIndirectCommandNV * a,const VkCopyMemoryToImageIndirectCommandNV * b,OnFailCompareFunc onFail)19982 void checkEqual_VkCopyMemoryToImageIndirectCommandNV(const VkCopyMemoryToImageIndirectCommandNV* a,
19983 const VkCopyMemoryToImageIndirectCommandNV* b,
19984 OnFailCompareFunc onFail) {
19985 if (!((a->srcAddress) == (b->srcAddress))) {
19986 onFail("a->srcAddress (Error: Value not equal)");
19987 };
19988 if (!((a->bufferRowLength) == (b->bufferRowLength))) {
19989 onFail("a->bufferRowLength (Error: Value not equal)");
19990 };
19991 if (!((a->bufferImageHeight) == (b->bufferImageHeight))) {
19992 onFail("a->bufferImageHeight (Error: Value not equal)");
19993 };
19994 checkEqual_VkImageSubresourceLayers(&a->imageSubresource, &b->imageSubresource, onFail);
19995 checkEqual_VkOffset3D(&a->imageOffset, &b->imageOffset, onFail);
19996 checkEqual_VkExtent3D(&a->imageExtent, &b->imageExtent, onFail);
19997 }
19998
checkEqual_VkPhysicalDeviceCopyMemoryIndirectFeaturesNV(const VkPhysicalDeviceCopyMemoryIndirectFeaturesNV * a,const VkPhysicalDeviceCopyMemoryIndirectFeaturesNV * b,OnFailCompareFunc onFail)19999 void checkEqual_VkPhysicalDeviceCopyMemoryIndirectFeaturesNV(
20000 const VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* a,
20001 const VkPhysicalDeviceCopyMemoryIndirectFeaturesNV* b, OnFailCompareFunc onFail) {
20002 if (!((a->sType) == (b->sType))) {
20003 onFail("a->sType (Error: Value not equal)");
20004 };
20005 if (a->pNext) {
20006 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20007 }
20008 if (!((a->indirectCopy) == (b->indirectCopy))) {
20009 onFail("a->indirectCopy (Error: Value not equal)");
20010 };
20011 }
20012
checkEqual_VkPhysicalDeviceCopyMemoryIndirectPropertiesNV(const VkPhysicalDeviceCopyMemoryIndirectPropertiesNV * a,const VkPhysicalDeviceCopyMemoryIndirectPropertiesNV * b,OnFailCompareFunc onFail)20013 void checkEqual_VkPhysicalDeviceCopyMemoryIndirectPropertiesNV(
20014 const VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* a,
20015 const VkPhysicalDeviceCopyMemoryIndirectPropertiesNV* b, OnFailCompareFunc onFail) {
20016 if (!((a->sType) == (b->sType))) {
20017 onFail("a->sType (Error: Value not equal)");
20018 };
20019 if (a->pNext) {
20020 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20021 }
20022 if (!((a->supportedQueues) == (b->supportedQueues))) {
20023 onFail("a->supportedQueues (Error: Value not equal)");
20024 };
20025 }
20026
20027 #endif
20028 #ifdef VK_NV_memory_decompression
checkEqual_VkDecompressMemoryRegionNV(const VkDecompressMemoryRegionNV * a,const VkDecompressMemoryRegionNV * b,OnFailCompareFunc onFail)20029 void checkEqual_VkDecompressMemoryRegionNV(const VkDecompressMemoryRegionNV* a,
20030 const VkDecompressMemoryRegionNV* b,
20031 OnFailCompareFunc onFail) {
20032 if (!((a->srcAddress) == (b->srcAddress))) {
20033 onFail("a->srcAddress (Error: Value not equal)");
20034 };
20035 if (!((a->dstAddress) == (b->dstAddress))) {
20036 onFail("a->dstAddress (Error: Value not equal)");
20037 };
20038 if (!((a->compressedSize) == (b->compressedSize))) {
20039 onFail("a->compressedSize (Error: Value not equal)");
20040 };
20041 if (!((a->decompressedSize) == (b->decompressedSize))) {
20042 onFail("a->decompressedSize (Error: Value not equal)");
20043 };
20044 if (!((a->decompressionMethod) == (b->decompressionMethod))) {
20045 onFail("a->decompressionMethod (Error: Value not equal)");
20046 };
20047 }
20048
checkEqual_VkPhysicalDeviceMemoryDecompressionFeaturesNV(const VkPhysicalDeviceMemoryDecompressionFeaturesNV * a,const VkPhysicalDeviceMemoryDecompressionFeaturesNV * b,OnFailCompareFunc onFail)20049 void checkEqual_VkPhysicalDeviceMemoryDecompressionFeaturesNV(
20050 const VkPhysicalDeviceMemoryDecompressionFeaturesNV* a,
20051 const VkPhysicalDeviceMemoryDecompressionFeaturesNV* b, OnFailCompareFunc onFail) {
20052 if (!((a->sType) == (b->sType))) {
20053 onFail("a->sType (Error: Value not equal)");
20054 };
20055 if (a->pNext) {
20056 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20057 }
20058 if (!((a->memoryDecompression) == (b->memoryDecompression))) {
20059 onFail("a->memoryDecompression (Error: Value not equal)");
20060 };
20061 }
20062
checkEqual_VkPhysicalDeviceMemoryDecompressionPropertiesNV(const VkPhysicalDeviceMemoryDecompressionPropertiesNV * a,const VkPhysicalDeviceMemoryDecompressionPropertiesNV * b,OnFailCompareFunc onFail)20063 void checkEqual_VkPhysicalDeviceMemoryDecompressionPropertiesNV(
20064 const VkPhysicalDeviceMemoryDecompressionPropertiesNV* a,
20065 const VkPhysicalDeviceMemoryDecompressionPropertiesNV* b, OnFailCompareFunc onFail) {
20066 if (!((a->sType) == (b->sType))) {
20067 onFail("a->sType (Error: Value not equal)");
20068 };
20069 if (a->pNext) {
20070 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20071 }
20072 if (!((a->decompressionMethods) == (b->decompressionMethods))) {
20073 onFail("a->decompressionMethods (Error: Value not equal)");
20074 };
20075 if (!((a->maxDecompressionIndirectCount) == (b->maxDecompressionIndirectCount))) {
20076 onFail("a->maxDecompressionIndirectCount (Error: Value not equal)");
20077 };
20078 }
20079
20080 #endif
20081 #ifdef VK_NV_linear_color_attachment
checkEqual_VkPhysicalDeviceLinearColorAttachmentFeaturesNV(const VkPhysicalDeviceLinearColorAttachmentFeaturesNV * a,const VkPhysicalDeviceLinearColorAttachmentFeaturesNV * b,OnFailCompareFunc onFail)20082 void checkEqual_VkPhysicalDeviceLinearColorAttachmentFeaturesNV(
20083 const VkPhysicalDeviceLinearColorAttachmentFeaturesNV* a,
20084 const VkPhysicalDeviceLinearColorAttachmentFeaturesNV* b, OnFailCompareFunc onFail) {
20085 if (!((a->sType) == (b->sType))) {
20086 onFail("a->sType (Error: Value not equal)");
20087 };
20088 if (a->pNext) {
20089 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20090 }
20091 if (!((a->linearColorAttachment) == (b->linearColorAttachment))) {
20092 onFail("a->linearColorAttachment (Error: Value not equal)");
20093 };
20094 }
20095
20096 #endif
20097 #ifdef VK_GOOGLE_surfaceless_query
20098 #endif
20099 #ifdef VK_EXT_image_compression_control_swapchain
checkEqual_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT * a,const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT * b,OnFailCompareFunc onFail)20100 void checkEqual_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(
20101 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* a,
20102 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT* b,
20103 OnFailCompareFunc onFail) {
20104 if (!((a->sType) == (b->sType))) {
20105 onFail("a->sType (Error: Value not equal)");
20106 };
20107 if (a->pNext) {
20108 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20109 }
20110 if (!((a->imageCompressionControlSwapchain) == (b->imageCompressionControlSwapchain))) {
20111 onFail("a->imageCompressionControlSwapchain (Error: Value not equal)");
20112 };
20113 }
20114
20115 #endif
20116 #ifdef VK_QCOM_image_processing
checkEqual_VkImageViewSampleWeightCreateInfoQCOM(const VkImageViewSampleWeightCreateInfoQCOM * a,const VkImageViewSampleWeightCreateInfoQCOM * b,OnFailCompareFunc onFail)20117 void checkEqual_VkImageViewSampleWeightCreateInfoQCOM(
20118 const VkImageViewSampleWeightCreateInfoQCOM* a, const VkImageViewSampleWeightCreateInfoQCOM* b,
20119 OnFailCompareFunc onFail) {
20120 if (!((a->sType) == (b->sType))) {
20121 onFail("a->sType (Error: Value not equal)");
20122 };
20123 if (a->pNext) {
20124 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20125 }
20126 checkEqual_VkOffset2D(&a->filterCenter, &b->filterCenter, onFail);
20127 checkEqual_VkExtent2D(&a->filterSize, &b->filterSize, onFail);
20128 if (!((a->numPhases) == (b->numPhases))) {
20129 onFail("a->numPhases (Error: Value not equal)");
20130 };
20131 }
20132
checkEqual_VkPhysicalDeviceImageProcessingFeaturesQCOM(const VkPhysicalDeviceImageProcessingFeaturesQCOM * a,const VkPhysicalDeviceImageProcessingFeaturesQCOM * b,OnFailCompareFunc onFail)20133 void checkEqual_VkPhysicalDeviceImageProcessingFeaturesQCOM(
20134 const VkPhysicalDeviceImageProcessingFeaturesQCOM* a,
20135 const VkPhysicalDeviceImageProcessingFeaturesQCOM* b, OnFailCompareFunc onFail) {
20136 if (!((a->sType) == (b->sType))) {
20137 onFail("a->sType (Error: Value not equal)");
20138 };
20139 if (a->pNext) {
20140 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20141 }
20142 if (!((a->textureSampleWeighted) == (b->textureSampleWeighted))) {
20143 onFail("a->textureSampleWeighted (Error: Value not equal)");
20144 };
20145 if (!((a->textureBoxFilter) == (b->textureBoxFilter))) {
20146 onFail("a->textureBoxFilter (Error: Value not equal)");
20147 };
20148 if (!((a->textureBlockMatch) == (b->textureBlockMatch))) {
20149 onFail("a->textureBlockMatch (Error: Value not equal)");
20150 };
20151 }
20152
checkEqual_VkPhysicalDeviceImageProcessingPropertiesQCOM(const VkPhysicalDeviceImageProcessingPropertiesQCOM * a,const VkPhysicalDeviceImageProcessingPropertiesQCOM * b,OnFailCompareFunc onFail)20153 void checkEqual_VkPhysicalDeviceImageProcessingPropertiesQCOM(
20154 const VkPhysicalDeviceImageProcessingPropertiesQCOM* a,
20155 const VkPhysicalDeviceImageProcessingPropertiesQCOM* b, OnFailCompareFunc onFail) {
20156 if (!((a->sType) == (b->sType))) {
20157 onFail("a->sType (Error: Value not equal)");
20158 };
20159 if (a->pNext) {
20160 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20161 }
20162 if (!((a->maxWeightFilterPhases) == (b->maxWeightFilterPhases))) {
20163 onFail("a->maxWeightFilterPhases (Error: Value not equal)");
20164 };
20165 checkEqual_VkExtent2D(&a->maxWeightFilterDimension, &b->maxWeightFilterDimension, onFail);
20166 checkEqual_VkExtent2D(&a->maxBlockMatchRegion, &b->maxBlockMatchRegion, onFail);
20167 checkEqual_VkExtent2D(&a->maxBoxFilterBlockSize, &b->maxBoxFilterBlockSize, onFail);
20168 }
20169
20170 #endif
20171 #ifdef VK_EXT_extended_dynamic_state3
checkEqual_VkPhysicalDeviceExtendedDynamicState3FeaturesEXT(const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT * a,const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT * b,OnFailCompareFunc onFail)20172 void checkEqual_VkPhysicalDeviceExtendedDynamicState3FeaturesEXT(
20173 const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* a,
20174 const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT* b, OnFailCompareFunc onFail) {
20175 if (!((a->sType) == (b->sType))) {
20176 onFail("a->sType (Error: Value not equal)");
20177 };
20178 if (a->pNext) {
20179 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20180 }
20181 if (!((a->extendedDynamicState3TessellationDomainOrigin) ==
20182 (b->extendedDynamicState3TessellationDomainOrigin))) {
20183 onFail("a->extendedDynamicState3TessellationDomainOrigin (Error: Value not equal)");
20184 };
20185 if (!((a->extendedDynamicState3DepthClampEnable) ==
20186 (b->extendedDynamicState3DepthClampEnable))) {
20187 onFail("a->extendedDynamicState3DepthClampEnable (Error: Value not equal)");
20188 };
20189 if (!((a->extendedDynamicState3PolygonMode) == (b->extendedDynamicState3PolygonMode))) {
20190 onFail("a->extendedDynamicState3PolygonMode (Error: Value not equal)");
20191 };
20192 if (!((a->extendedDynamicState3RasterizationSamples) ==
20193 (b->extendedDynamicState3RasterizationSamples))) {
20194 onFail("a->extendedDynamicState3RasterizationSamples (Error: Value not equal)");
20195 };
20196 if (!((a->extendedDynamicState3SampleMask) == (b->extendedDynamicState3SampleMask))) {
20197 onFail("a->extendedDynamicState3SampleMask (Error: Value not equal)");
20198 };
20199 if (!((a->extendedDynamicState3AlphaToCoverageEnable) ==
20200 (b->extendedDynamicState3AlphaToCoverageEnable))) {
20201 onFail("a->extendedDynamicState3AlphaToCoverageEnable (Error: Value not equal)");
20202 };
20203 if (!((a->extendedDynamicState3AlphaToOneEnable) ==
20204 (b->extendedDynamicState3AlphaToOneEnable))) {
20205 onFail("a->extendedDynamicState3AlphaToOneEnable (Error: Value not equal)");
20206 };
20207 if (!((a->extendedDynamicState3LogicOpEnable) == (b->extendedDynamicState3LogicOpEnable))) {
20208 onFail("a->extendedDynamicState3LogicOpEnable (Error: Value not equal)");
20209 };
20210 if (!((a->extendedDynamicState3ColorBlendEnable) ==
20211 (b->extendedDynamicState3ColorBlendEnable))) {
20212 onFail("a->extendedDynamicState3ColorBlendEnable (Error: Value not equal)");
20213 };
20214 if (!((a->extendedDynamicState3ColorBlendEquation) ==
20215 (b->extendedDynamicState3ColorBlendEquation))) {
20216 onFail("a->extendedDynamicState3ColorBlendEquation (Error: Value not equal)");
20217 };
20218 if (!((a->extendedDynamicState3ColorWriteMask) == (b->extendedDynamicState3ColorWriteMask))) {
20219 onFail("a->extendedDynamicState3ColorWriteMask (Error: Value not equal)");
20220 };
20221 if (!((a->extendedDynamicState3RasterizationStream) ==
20222 (b->extendedDynamicState3RasterizationStream))) {
20223 onFail("a->extendedDynamicState3RasterizationStream (Error: Value not equal)");
20224 };
20225 if (!((a->extendedDynamicState3ConservativeRasterizationMode) ==
20226 (b->extendedDynamicState3ConservativeRasterizationMode))) {
20227 onFail("a->extendedDynamicState3ConservativeRasterizationMode (Error: Value not equal)");
20228 };
20229 if (!((a->extendedDynamicState3ExtraPrimitiveOverestimationSize) ==
20230 (b->extendedDynamicState3ExtraPrimitiveOverestimationSize))) {
20231 onFail("a->extendedDynamicState3ExtraPrimitiveOverestimationSize (Error: Value not equal)");
20232 };
20233 if (!((a->extendedDynamicState3DepthClipEnable) == (b->extendedDynamicState3DepthClipEnable))) {
20234 onFail("a->extendedDynamicState3DepthClipEnable (Error: Value not equal)");
20235 };
20236 if (!((a->extendedDynamicState3SampleLocationsEnable) ==
20237 (b->extendedDynamicState3SampleLocationsEnable))) {
20238 onFail("a->extendedDynamicState3SampleLocationsEnable (Error: Value not equal)");
20239 };
20240 if (!((a->extendedDynamicState3ColorBlendAdvanced) ==
20241 (b->extendedDynamicState3ColorBlendAdvanced))) {
20242 onFail("a->extendedDynamicState3ColorBlendAdvanced (Error: Value not equal)");
20243 };
20244 if (!((a->extendedDynamicState3ProvokingVertexMode) ==
20245 (b->extendedDynamicState3ProvokingVertexMode))) {
20246 onFail("a->extendedDynamicState3ProvokingVertexMode (Error: Value not equal)");
20247 };
20248 if (!((a->extendedDynamicState3LineRasterizationMode) ==
20249 (b->extendedDynamicState3LineRasterizationMode))) {
20250 onFail("a->extendedDynamicState3LineRasterizationMode (Error: Value not equal)");
20251 };
20252 if (!((a->extendedDynamicState3LineStippleEnable) ==
20253 (b->extendedDynamicState3LineStippleEnable))) {
20254 onFail("a->extendedDynamicState3LineStippleEnable (Error: Value not equal)");
20255 };
20256 if (!((a->extendedDynamicState3DepthClipNegativeOneToOne) ==
20257 (b->extendedDynamicState3DepthClipNegativeOneToOne))) {
20258 onFail("a->extendedDynamicState3DepthClipNegativeOneToOne (Error: Value not equal)");
20259 };
20260 if (!((a->extendedDynamicState3ViewportWScalingEnable) ==
20261 (b->extendedDynamicState3ViewportWScalingEnable))) {
20262 onFail("a->extendedDynamicState3ViewportWScalingEnable (Error: Value not equal)");
20263 };
20264 if (!((a->extendedDynamicState3ViewportSwizzle) == (b->extendedDynamicState3ViewportSwizzle))) {
20265 onFail("a->extendedDynamicState3ViewportSwizzle (Error: Value not equal)");
20266 };
20267 if (!((a->extendedDynamicState3CoverageToColorEnable) ==
20268 (b->extendedDynamicState3CoverageToColorEnable))) {
20269 onFail("a->extendedDynamicState3CoverageToColorEnable (Error: Value not equal)");
20270 };
20271 if (!((a->extendedDynamicState3CoverageToColorLocation) ==
20272 (b->extendedDynamicState3CoverageToColorLocation))) {
20273 onFail("a->extendedDynamicState3CoverageToColorLocation (Error: Value not equal)");
20274 };
20275 if (!((a->extendedDynamicState3CoverageModulationMode) ==
20276 (b->extendedDynamicState3CoverageModulationMode))) {
20277 onFail("a->extendedDynamicState3CoverageModulationMode (Error: Value not equal)");
20278 };
20279 if (!((a->extendedDynamicState3CoverageModulationTableEnable) ==
20280 (b->extendedDynamicState3CoverageModulationTableEnable))) {
20281 onFail("a->extendedDynamicState3CoverageModulationTableEnable (Error: Value not equal)");
20282 };
20283 if (!((a->extendedDynamicState3CoverageModulationTable) ==
20284 (b->extendedDynamicState3CoverageModulationTable))) {
20285 onFail("a->extendedDynamicState3CoverageModulationTable (Error: Value not equal)");
20286 };
20287 if (!((a->extendedDynamicState3CoverageReductionMode) ==
20288 (b->extendedDynamicState3CoverageReductionMode))) {
20289 onFail("a->extendedDynamicState3CoverageReductionMode (Error: Value not equal)");
20290 };
20291 if (!((a->extendedDynamicState3RepresentativeFragmentTestEnable) ==
20292 (b->extendedDynamicState3RepresentativeFragmentTestEnable))) {
20293 onFail("a->extendedDynamicState3RepresentativeFragmentTestEnable (Error: Value not equal)");
20294 };
20295 if (!((a->extendedDynamicState3ShadingRateImageEnable) ==
20296 (b->extendedDynamicState3ShadingRateImageEnable))) {
20297 onFail("a->extendedDynamicState3ShadingRateImageEnable (Error: Value not equal)");
20298 };
20299 }
20300
checkEqual_VkPhysicalDeviceExtendedDynamicState3PropertiesEXT(const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT * a,const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT * b,OnFailCompareFunc onFail)20301 void checkEqual_VkPhysicalDeviceExtendedDynamicState3PropertiesEXT(
20302 const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* a,
20303 const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT* b, OnFailCompareFunc onFail) {
20304 if (!((a->sType) == (b->sType))) {
20305 onFail("a->sType (Error: Value not equal)");
20306 };
20307 if (a->pNext) {
20308 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20309 }
20310 if (!((a->dynamicPrimitiveTopologyUnrestricted) == (b->dynamicPrimitiveTopologyUnrestricted))) {
20311 onFail("a->dynamicPrimitiveTopologyUnrestricted (Error: Value not equal)");
20312 };
20313 }
20314
checkEqual_VkColorBlendEquationEXT(const VkColorBlendEquationEXT * a,const VkColorBlendEquationEXT * b,OnFailCompareFunc onFail)20315 void checkEqual_VkColorBlendEquationEXT(const VkColorBlendEquationEXT* a,
20316 const VkColorBlendEquationEXT* b,
20317 OnFailCompareFunc onFail) {
20318 if (!((a->srcColorBlendFactor) == (b->srcColorBlendFactor))) {
20319 onFail("a->srcColorBlendFactor (Error: Value not equal)");
20320 };
20321 if (!((a->dstColorBlendFactor) == (b->dstColorBlendFactor))) {
20322 onFail("a->dstColorBlendFactor (Error: Value not equal)");
20323 };
20324 if (!((a->colorBlendOp) == (b->colorBlendOp))) {
20325 onFail("a->colorBlendOp (Error: Value not equal)");
20326 };
20327 if (!((a->srcAlphaBlendFactor) == (b->srcAlphaBlendFactor))) {
20328 onFail("a->srcAlphaBlendFactor (Error: Value not equal)");
20329 };
20330 if (!((a->dstAlphaBlendFactor) == (b->dstAlphaBlendFactor))) {
20331 onFail("a->dstAlphaBlendFactor (Error: Value not equal)");
20332 };
20333 if (!((a->alphaBlendOp) == (b->alphaBlendOp))) {
20334 onFail("a->alphaBlendOp (Error: Value not equal)");
20335 };
20336 }
20337
checkEqual_VkColorBlendAdvancedEXT(const VkColorBlendAdvancedEXT * a,const VkColorBlendAdvancedEXT * b,OnFailCompareFunc onFail)20338 void checkEqual_VkColorBlendAdvancedEXT(const VkColorBlendAdvancedEXT* a,
20339 const VkColorBlendAdvancedEXT* b,
20340 OnFailCompareFunc onFail) {
20341 if (!((a->advancedBlendOp) == (b->advancedBlendOp))) {
20342 onFail("a->advancedBlendOp (Error: Value not equal)");
20343 };
20344 if (!((a->srcPremultiplied) == (b->srcPremultiplied))) {
20345 onFail("a->srcPremultiplied (Error: Value not equal)");
20346 };
20347 if (!((a->dstPremultiplied) == (b->dstPremultiplied))) {
20348 onFail("a->dstPremultiplied (Error: Value not equal)");
20349 };
20350 if (!((a->blendOverlap) == (b->blendOverlap))) {
20351 onFail("a->blendOverlap (Error: Value not equal)");
20352 };
20353 if (!((a->clampResults) == (b->clampResults))) {
20354 onFail("a->clampResults (Error: Value not equal)");
20355 };
20356 }
20357
20358 #endif
20359 #ifdef VK_EXT_subpass_merge_feedback
checkEqual_VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT(const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT * a,const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT * b,OnFailCompareFunc onFail)20360 void checkEqual_VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT(
20361 const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* a,
20362 const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT* b, OnFailCompareFunc onFail) {
20363 if (!((a->sType) == (b->sType))) {
20364 onFail("a->sType (Error: Value not equal)");
20365 };
20366 if (a->pNext) {
20367 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20368 }
20369 if (!((a->subpassMergeFeedback) == (b->subpassMergeFeedback))) {
20370 onFail("a->subpassMergeFeedback (Error: Value not equal)");
20371 };
20372 }
20373
checkEqual_VkRenderPassCreationControlEXT(const VkRenderPassCreationControlEXT * a,const VkRenderPassCreationControlEXT * b,OnFailCompareFunc onFail)20374 void checkEqual_VkRenderPassCreationControlEXT(const VkRenderPassCreationControlEXT* a,
20375 const VkRenderPassCreationControlEXT* b,
20376 OnFailCompareFunc onFail) {
20377 if (!((a->sType) == (b->sType))) {
20378 onFail("a->sType (Error: Value not equal)");
20379 };
20380 if (a->pNext) {
20381 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20382 }
20383 if (!((a->disallowMerging) == (b->disallowMerging))) {
20384 onFail("a->disallowMerging (Error: Value not equal)");
20385 };
20386 }
20387
checkEqual_VkRenderPassCreationFeedbackInfoEXT(const VkRenderPassCreationFeedbackInfoEXT * a,const VkRenderPassCreationFeedbackInfoEXT * b,OnFailCompareFunc onFail)20388 void checkEqual_VkRenderPassCreationFeedbackInfoEXT(const VkRenderPassCreationFeedbackInfoEXT* a,
20389 const VkRenderPassCreationFeedbackInfoEXT* b,
20390 OnFailCompareFunc onFail) {
20391 if (!((a->postMergeSubpassCount) == (b->postMergeSubpassCount))) {
20392 onFail("a->postMergeSubpassCount (Error: Value not equal)");
20393 };
20394 }
20395
checkEqual_VkRenderPassCreationFeedbackCreateInfoEXT(const VkRenderPassCreationFeedbackCreateInfoEXT * a,const VkRenderPassCreationFeedbackCreateInfoEXT * b,OnFailCompareFunc onFail)20396 void checkEqual_VkRenderPassCreationFeedbackCreateInfoEXT(
20397 const VkRenderPassCreationFeedbackCreateInfoEXT* a,
20398 const VkRenderPassCreationFeedbackCreateInfoEXT* b, OnFailCompareFunc onFail) {
20399 if (!((a->sType) == (b->sType))) {
20400 onFail("a->sType (Error: Value not equal)");
20401 };
20402 if (a->pNext) {
20403 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20404 }
20405 if ((a->pRenderPassFeedback) && (b->pRenderPassFeedback)) {
20406 checkEqual_VkRenderPassCreationFeedbackInfoEXT(a->pRenderPassFeedback,
20407 b->pRenderPassFeedback, onFail);
20408 }
20409 }
20410
checkEqual_VkRenderPassSubpassFeedbackInfoEXT(const VkRenderPassSubpassFeedbackInfoEXT * a,const VkRenderPassSubpassFeedbackInfoEXT * b,OnFailCompareFunc onFail)20411 void checkEqual_VkRenderPassSubpassFeedbackInfoEXT(const VkRenderPassSubpassFeedbackInfoEXT* a,
20412 const VkRenderPassSubpassFeedbackInfoEXT* b,
20413 OnFailCompareFunc onFail) {
20414 if (!((a->subpassMergeStatus) == (b->subpassMergeStatus))) {
20415 onFail("a->subpassMergeStatus (Error: Value not equal)");
20416 };
20417 if (!((memcmp(a->description, b->description, VK_MAX_DESCRIPTION_SIZE * sizeof(char)) == 0))) {
20418 onFail("a->description (Error: Unequal static array)");
20419 };
20420 if (!((a->postMergeIndex) == (b->postMergeIndex))) {
20421 onFail("a->postMergeIndex (Error: Value not equal)");
20422 };
20423 }
20424
checkEqual_VkRenderPassSubpassFeedbackCreateInfoEXT(const VkRenderPassSubpassFeedbackCreateInfoEXT * a,const VkRenderPassSubpassFeedbackCreateInfoEXT * b,OnFailCompareFunc onFail)20425 void checkEqual_VkRenderPassSubpassFeedbackCreateInfoEXT(
20426 const VkRenderPassSubpassFeedbackCreateInfoEXT* a,
20427 const VkRenderPassSubpassFeedbackCreateInfoEXT* b, OnFailCompareFunc onFail) {
20428 if (!((a->sType) == (b->sType))) {
20429 onFail("a->sType (Error: Value not equal)");
20430 };
20431 if (a->pNext) {
20432 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20433 }
20434 if ((a->pSubpassFeedback) && (b->pSubpassFeedback)) {
20435 checkEqual_VkRenderPassSubpassFeedbackInfoEXT(a->pSubpassFeedback, b->pSubpassFeedback,
20436 onFail);
20437 }
20438 }
20439
20440 #endif
20441 #ifdef VK_LUNARG_direct_driver_loading
checkEqual_VkDirectDriverLoadingInfoLUNARG(const VkDirectDriverLoadingInfoLUNARG * a,const VkDirectDriverLoadingInfoLUNARG * b,OnFailCompareFunc onFail)20442 void checkEqual_VkDirectDriverLoadingInfoLUNARG(const VkDirectDriverLoadingInfoLUNARG* a,
20443 const VkDirectDriverLoadingInfoLUNARG* b,
20444 OnFailCompareFunc onFail) {
20445 if (!((a->sType) == (b->sType))) {
20446 onFail("a->sType (Error: Value not equal)");
20447 };
20448 if (a->pNext) {
20449 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20450 }
20451 if (!((a->flags) == (b->flags))) {
20452 onFail("a->flags (Error: Value not equal)");
20453 };
20454 if (!((a->pfnGetInstanceProcAddr) == (b->pfnGetInstanceProcAddr))) {
20455 onFail("a->pfnGetInstanceProcAddr (Error: Value not equal)");
20456 };
20457 }
20458
checkEqual_VkDirectDriverLoadingListLUNARG(const VkDirectDriverLoadingListLUNARG * a,const VkDirectDriverLoadingListLUNARG * b,OnFailCompareFunc onFail)20459 void checkEqual_VkDirectDriverLoadingListLUNARG(const VkDirectDriverLoadingListLUNARG* a,
20460 const VkDirectDriverLoadingListLUNARG* b,
20461 OnFailCompareFunc onFail) {
20462 if (!((a->sType) == (b->sType))) {
20463 onFail("a->sType (Error: Value not equal)");
20464 };
20465 if (a->pNext) {
20466 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20467 }
20468 if (!((a->mode) == (b->mode))) {
20469 onFail("a->mode (Error: Value not equal)");
20470 };
20471 if (!((a->driverCount) == (b->driverCount))) {
20472 onFail("a->driverCount (Error: Value not equal)");
20473 };
20474 if ((a->pDrivers) && (b->pDrivers)) {
20475 if (!((a->driverCount) == (b->driverCount))) {
20476 onFail("a->pDrivers (Error: Lengths not equal)");
20477 };
20478 if ((a->driverCount) == (b->driverCount)) {
20479 if (a) {
20480 for (uint32_t i = 0; i < (uint32_t)a->driverCount; ++i) {
20481 checkEqual_VkDirectDriverLoadingInfoLUNARG(a->pDrivers + i, b->pDrivers + i,
20482 onFail);
20483 }
20484 }
20485 }
20486 }
20487 }
20488
20489 #endif
20490 #ifdef VK_EXT_shader_module_identifier
checkEqual_VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT(const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT * a,const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT * b,OnFailCompareFunc onFail)20491 void checkEqual_VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT(
20492 const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* a,
20493 const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT* b, OnFailCompareFunc onFail) {
20494 if (!((a->sType) == (b->sType))) {
20495 onFail("a->sType (Error: Value not equal)");
20496 };
20497 if (a->pNext) {
20498 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20499 }
20500 if (!((a->shaderModuleIdentifier) == (b->shaderModuleIdentifier))) {
20501 onFail("a->shaderModuleIdentifier (Error: Value not equal)");
20502 };
20503 }
20504
checkEqual_VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT(const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT * a,const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT * b,OnFailCompareFunc onFail)20505 void checkEqual_VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT(
20506 const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* a,
20507 const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT* b, OnFailCompareFunc onFail) {
20508 if (!((a->sType) == (b->sType))) {
20509 onFail("a->sType (Error: Value not equal)");
20510 };
20511 if (a->pNext) {
20512 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20513 }
20514 if (!((memcmp(a->shaderModuleIdentifierAlgorithmUUID, b->shaderModuleIdentifierAlgorithmUUID,
20515 VK_UUID_SIZE * sizeof(uint8_t)) == 0))) {
20516 onFail("a->shaderModuleIdentifierAlgorithmUUID (Error: Unequal static array)");
20517 };
20518 }
20519
checkEqual_VkPipelineShaderStageModuleIdentifierCreateInfoEXT(const VkPipelineShaderStageModuleIdentifierCreateInfoEXT * a,const VkPipelineShaderStageModuleIdentifierCreateInfoEXT * b,OnFailCompareFunc onFail)20520 void checkEqual_VkPipelineShaderStageModuleIdentifierCreateInfoEXT(
20521 const VkPipelineShaderStageModuleIdentifierCreateInfoEXT* a,
20522 const VkPipelineShaderStageModuleIdentifierCreateInfoEXT* b, OnFailCompareFunc onFail) {
20523 if (!((a->sType) == (b->sType))) {
20524 onFail("a->sType (Error: Value not equal)");
20525 };
20526 if (a->pNext) {
20527 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20528 }
20529 if (!((a->identifierSize) == (b->identifierSize))) {
20530 onFail("a->identifierSize (Error: Value not equal)");
20531 };
20532 if (!((a->identifierSize) == (b->identifierSize))) {
20533 onFail("a->pIdentifier (Error: Lengths not equal)");
20534 };
20535 if (!((memcmp(a->pIdentifier, b->pIdentifier, a->identifierSize * sizeof(const uint8_t)) ==
20536 0))) {
20537 onFail("a->pIdentifier (Error: Unequal dyn array)");
20538 };
20539 }
20540
checkEqual_VkShaderModuleIdentifierEXT(const VkShaderModuleIdentifierEXT * a,const VkShaderModuleIdentifierEXT * b,OnFailCompareFunc onFail)20541 void checkEqual_VkShaderModuleIdentifierEXT(const VkShaderModuleIdentifierEXT* a,
20542 const VkShaderModuleIdentifierEXT* b,
20543 OnFailCompareFunc onFail) {
20544 if (!((a->sType) == (b->sType))) {
20545 onFail("a->sType (Error: Value not equal)");
20546 };
20547 if (a->pNext) {
20548 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20549 }
20550 if (!((a->identifierSize) == (b->identifierSize))) {
20551 onFail("a->identifierSize (Error: Value not equal)");
20552 };
20553 if (!((memcmp(a->identifier, b->identifier,
20554 VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT * sizeof(uint8_t)) == 0))) {
20555 onFail("a->identifier (Error: Unequal static array)");
20556 };
20557 }
20558
20559 #endif
20560 #ifdef VK_EXT_rasterization_order_attachment_access
20561 #endif
20562 #ifdef VK_NV_optical_flow
checkEqual_VkPhysicalDeviceOpticalFlowFeaturesNV(const VkPhysicalDeviceOpticalFlowFeaturesNV * a,const VkPhysicalDeviceOpticalFlowFeaturesNV * b,OnFailCompareFunc onFail)20563 void checkEqual_VkPhysicalDeviceOpticalFlowFeaturesNV(
20564 const VkPhysicalDeviceOpticalFlowFeaturesNV* a, const VkPhysicalDeviceOpticalFlowFeaturesNV* b,
20565 OnFailCompareFunc onFail) {
20566 if (!((a->sType) == (b->sType))) {
20567 onFail("a->sType (Error: Value not equal)");
20568 };
20569 if (a->pNext) {
20570 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20571 }
20572 if (!((a->opticalFlow) == (b->opticalFlow))) {
20573 onFail("a->opticalFlow (Error: Value not equal)");
20574 };
20575 }
20576
checkEqual_VkPhysicalDeviceOpticalFlowPropertiesNV(const VkPhysicalDeviceOpticalFlowPropertiesNV * a,const VkPhysicalDeviceOpticalFlowPropertiesNV * b,OnFailCompareFunc onFail)20577 void checkEqual_VkPhysicalDeviceOpticalFlowPropertiesNV(
20578 const VkPhysicalDeviceOpticalFlowPropertiesNV* a,
20579 const VkPhysicalDeviceOpticalFlowPropertiesNV* b, OnFailCompareFunc onFail) {
20580 if (!((a->sType) == (b->sType))) {
20581 onFail("a->sType (Error: Value not equal)");
20582 };
20583 if (a->pNext) {
20584 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20585 }
20586 if (!((a->supportedOutputGridSizes) == (b->supportedOutputGridSizes))) {
20587 onFail("a->supportedOutputGridSizes (Error: Value not equal)");
20588 };
20589 if (!((a->supportedHintGridSizes) == (b->supportedHintGridSizes))) {
20590 onFail("a->supportedHintGridSizes (Error: Value not equal)");
20591 };
20592 if (!((a->hintSupported) == (b->hintSupported))) {
20593 onFail("a->hintSupported (Error: Value not equal)");
20594 };
20595 if (!((a->costSupported) == (b->costSupported))) {
20596 onFail("a->costSupported (Error: Value not equal)");
20597 };
20598 if (!((a->bidirectionalFlowSupported) == (b->bidirectionalFlowSupported))) {
20599 onFail("a->bidirectionalFlowSupported (Error: Value not equal)");
20600 };
20601 if (!((a->globalFlowSupported) == (b->globalFlowSupported))) {
20602 onFail("a->globalFlowSupported (Error: Value not equal)");
20603 };
20604 if (!((a->minWidth) == (b->minWidth))) {
20605 onFail("a->minWidth (Error: Value not equal)");
20606 };
20607 if (!((a->minHeight) == (b->minHeight))) {
20608 onFail("a->minHeight (Error: Value not equal)");
20609 };
20610 if (!((a->maxWidth) == (b->maxWidth))) {
20611 onFail("a->maxWidth (Error: Value not equal)");
20612 };
20613 if (!((a->maxHeight) == (b->maxHeight))) {
20614 onFail("a->maxHeight (Error: Value not equal)");
20615 };
20616 if (!((a->maxNumRegionsOfInterest) == (b->maxNumRegionsOfInterest))) {
20617 onFail("a->maxNumRegionsOfInterest (Error: Value not equal)");
20618 };
20619 }
20620
checkEqual_VkOpticalFlowImageFormatInfoNV(const VkOpticalFlowImageFormatInfoNV * a,const VkOpticalFlowImageFormatInfoNV * b,OnFailCompareFunc onFail)20621 void checkEqual_VkOpticalFlowImageFormatInfoNV(const VkOpticalFlowImageFormatInfoNV* a,
20622 const VkOpticalFlowImageFormatInfoNV* b,
20623 OnFailCompareFunc onFail) {
20624 if (!((a->sType) == (b->sType))) {
20625 onFail("a->sType (Error: Value not equal)");
20626 };
20627 if (a->pNext) {
20628 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20629 }
20630 if (!((a->usage) == (b->usage))) {
20631 onFail("a->usage (Error: Value not equal)");
20632 };
20633 }
20634
checkEqual_VkOpticalFlowImageFormatPropertiesNV(const VkOpticalFlowImageFormatPropertiesNV * a,const VkOpticalFlowImageFormatPropertiesNV * b,OnFailCompareFunc onFail)20635 void checkEqual_VkOpticalFlowImageFormatPropertiesNV(const VkOpticalFlowImageFormatPropertiesNV* a,
20636 const VkOpticalFlowImageFormatPropertiesNV* b,
20637 OnFailCompareFunc onFail) {
20638 if (!((a->sType) == (b->sType))) {
20639 onFail("a->sType (Error: Value not equal)");
20640 };
20641 if (a->pNext) {
20642 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20643 }
20644 if (!((a->format) == (b->format))) {
20645 onFail("a->format (Error: Value not equal)");
20646 };
20647 }
20648
checkEqual_VkOpticalFlowSessionCreateInfoNV(const VkOpticalFlowSessionCreateInfoNV * a,const VkOpticalFlowSessionCreateInfoNV * b,OnFailCompareFunc onFail)20649 void checkEqual_VkOpticalFlowSessionCreateInfoNV(const VkOpticalFlowSessionCreateInfoNV* a,
20650 const VkOpticalFlowSessionCreateInfoNV* b,
20651 OnFailCompareFunc onFail) {
20652 if (!((a->sType) == (b->sType))) {
20653 onFail("a->sType (Error: Value not equal)");
20654 };
20655 if (a->pNext) {
20656 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20657 }
20658 if (!((a->width) == (b->width))) {
20659 onFail("a->width (Error: Value not equal)");
20660 };
20661 if (!((a->height) == (b->height))) {
20662 onFail("a->height (Error: Value not equal)");
20663 };
20664 if (!((a->imageFormat) == (b->imageFormat))) {
20665 onFail("a->imageFormat (Error: Value not equal)");
20666 };
20667 if (!((a->flowVectorFormat) == (b->flowVectorFormat))) {
20668 onFail("a->flowVectorFormat (Error: Value not equal)");
20669 };
20670 if (!((a->costFormat) == (b->costFormat))) {
20671 onFail("a->costFormat (Error: Value not equal)");
20672 };
20673 if (!((a->outputGridSize) == (b->outputGridSize))) {
20674 onFail("a->outputGridSize (Error: Value not equal)");
20675 };
20676 if (!((a->hintGridSize) == (b->hintGridSize))) {
20677 onFail("a->hintGridSize (Error: Value not equal)");
20678 };
20679 if (!((a->performanceLevel) == (b->performanceLevel))) {
20680 onFail("a->performanceLevel (Error: Value not equal)");
20681 };
20682 if (!((a->flags) == (b->flags))) {
20683 onFail("a->flags (Error: Value not equal)");
20684 };
20685 }
20686
checkEqual_VkOpticalFlowSessionCreatePrivateDataInfoNV(const VkOpticalFlowSessionCreatePrivateDataInfoNV * a,const VkOpticalFlowSessionCreatePrivateDataInfoNV * b,OnFailCompareFunc onFail)20687 void checkEqual_VkOpticalFlowSessionCreatePrivateDataInfoNV(
20688 const VkOpticalFlowSessionCreatePrivateDataInfoNV* a,
20689 const VkOpticalFlowSessionCreatePrivateDataInfoNV* b, OnFailCompareFunc onFail) {
20690 if (!((a->sType) == (b->sType))) {
20691 onFail("a->sType (Error: Value not equal)");
20692 };
20693 if (a->pNext) {
20694 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20695 }
20696 if (!((a->id) == (b->id))) {
20697 onFail("a->id (Error: Value not equal)");
20698 };
20699 if (!((a->size) == (b->size))) {
20700 onFail("a->size (Error: Value not equal)");
20701 };
20702 }
20703
checkEqual_VkOpticalFlowExecuteInfoNV(const VkOpticalFlowExecuteInfoNV * a,const VkOpticalFlowExecuteInfoNV * b,OnFailCompareFunc onFail)20704 void checkEqual_VkOpticalFlowExecuteInfoNV(const VkOpticalFlowExecuteInfoNV* a,
20705 const VkOpticalFlowExecuteInfoNV* b,
20706 OnFailCompareFunc onFail) {
20707 if (!((a->sType) == (b->sType))) {
20708 onFail("a->sType (Error: Value not equal)");
20709 };
20710 if (a->pNext) {
20711 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20712 }
20713 if (!((a->flags) == (b->flags))) {
20714 onFail("a->flags (Error: Value not equal)");
20715 };
20716 if (!((a->regionCount) == (b->regionCount))) {
20717 onFail("a->regionCount (Error: Value not equal)");
20718 };
20719 if ((a->pRegions) && (b->pRegions)) {
20720 if (!((a->regionCount) == (b->regionCount))) {
20721 onFail("a->pRegions (Error: Lengths not equal)");
20722 };
20723 if ((a->regionCount) == (b->regionCount)) {
20724 if (a) {
20725 for (uint32_t i = 0; i < (uint32_t)a->regionCount; ++i) {
20726 checkEqual_VkRect2D(a->pRegions + i, b->pRegions + i, onFail);
20727 }
20728 }
20729 }
20730 }
20731 }
20732
20733 #endif
20734 #ifdef VK_EXT_legacy_dithering
checkEqual_VkPhysicalDeviceLegacyDitheringFeaturesEXT(const VkPhysicalDeviceLegacyDitheringFeaturesEXT * a,const VkPhysicalDeviceLegacyDitheringFeaturesEXT * b,OnFailCompareFunc onFail)20735 void checkEqual_VkPhysicalDeviceLegacyDitheringFeaturesEXT(
20736 const VkPhysicalDeviceLegacyDitheringFeaturesEXT* a,
20737 const VkPhysicalDeviceLegacyDitheringFeaturesEXT* b, OnFailCompareFunc onFail) {
20738 if (!((a->sType) == (b->sType))) {
20739 onFail("a->sType (Error: Value not equal)");
20740 };
20741 if (a->pNext) {
20742 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20743 }
20744 if (!((a->legacyDithering) == (b->legacyDithering))) {
20745 onFail("a->legacyDithering (Error: Value not equal)");
20746 };
20747 }
20748
20749 #endif
20750 #ifdef VK_EXT_pipeline_protected_access
checkEqual_VkPhysicalDevicePipelineProtectedAccessFeaturesEXT(const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT * a,const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT * b,OnFailCompareFunc onFail)20751 void checkEqual_VkPhysicalDevicePipelineProtectedAccessFeaturesEXT(
20752 const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* a,
20753 const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT* b, OnFailCompareFunc onFail) {
20754 if (!((a->sType) == (b->sType))) {
20755 onFail("a->sType (Error: Value not equal)");
20756 };
20757 if (a->pNext) {
20758 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20759 }
20760 if (!((a->pipelineProtectedAccess) == (b->pipelineProtectedAccess))) {
20761 onFail("a->pipelineProtectedAccess (Error: Value not equal)");
20762 };
20763 }
20764
20765 #endif
20766 #ifdef VK_EXT_shader_object
checkEqual_VkPhysicalDeviceShaderObjectFeaturesEXT(const VkPhysicalDeviceShaderObjectFeaturesEXT * a,const VkPhysicalDeviceShaderObjectFeaturesEXT * b,OnFailCompareFunc onFail)20767 void checkEqual_VkPhysicalDeviceShaderObjectFeaturesEXT(
20768 const VkPhysicalDeviceShaderObjectFeaturesEXT* a,
20769 const VkPhysicalDeviceShaderObjectFeaturesEXT* b, OnFailCompareFunc onFail) {
20770 if (!((a->sType) == (b->sType))) {
20771 onFail("a->sType (Error: Value not equal)");
20772 };
20773 if (a->pNext) {
20774 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20775 }
20776 if (!((a->shaderObject) == (b->shaderObject))) {
20777 onFail("a->shaderObject (Error: Value not equal)");
20778 };
20779 }
20780
checkEqual_VkPhysicalDeviceShaderObjectPropertiesEXT(const VkPhysicalDeviceShaderObjectPropertiesEXT * a,const VkPhysicalDeviceShaderObjectPropertiesEXT * b,OnFailCompareFunc onFail)20781 void checkEqual_VkPhysicalDeviceShaderObjectPropertiesEXT(
20782 const VkPhysicalDeviceShaderObjectPropertiesEXT* a,
20783 const VkPhysicalDeviceShaderObjectPropertiesEXT* b, OnFailCompareFunc onFail) {
20784 if (!((a->sType) == (b->sType))) {
20785 onFail("a->sType (Error: Value not equal)");
20786 };
20787 if (a->pNext) {
20788 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20789 }
20790 if (!((memcmp(a->shaderBinaryUUID, b->shaderBinaryUUID, VK_UUID_SIZE * sizeof(uint8_t)) ==
20791 0))) {
20792 onFail("a->shaderBinaryUUID (Error: Unequal static array)");
20793 };
20794 if (!((a->shaderBinaryVersion) == (b->shaderBinaryVersion))) {
20795 onFail("a->shaderBinaryVersion (Error: Value not equal)");
20796 };
20797 }
20798
checkEqual_VkShaderCreateInfoEXT(const VkShaderCreateInfoEXT * a,const VkShaderCreateInfoEXT * b,OnFailCompareFunc onFail)20799 void checkEqual_VkShaderCreateInfoEXT(const VkShaderCreateInfoEXT* a,
20800 const VkShaderCreateInfoEXT* b, OnFailCompareFunc onFail) {
20801 if (!((a->sType) == (b->sType))) {
20802 onFail("a->sType (Error: Value not equal)");
20803 };
20804 if (a->pNext) {
20805 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20806 }
20807 if (!((a->flags) == (b->flags))) {
20808 onFail("a->flags (Error: Value not equal)");
20809 };
20810 if (!((a->stage) == (b->stage))) {
20811 onFail("a->stage (Error: Value not equal)");
20812 };
20813 if (!((a->nextStage) == (b->nextStage))) {
20814 onFail("a->nextStage (Error: Value not equal)");
20815 };
20816 if (!((a->codeType) == (b->codeType))) {
20817 onFail("a->codeType (Error: Value not equal)");
20818 };
20819 if (!((a->codeSize) == (b->codeSize))) {
20820 onFail("a->codeSize (Error: Value not equal)");
20821 };
20822 if (!((!(a->pName) && !(b->pName)) || ((a->pName) && (b->pName)))) {
20823 onFail("a->pName (Error: Mismatch in optional field)");
20824 };
20825 if (a->pName && b->pName) {
20826 if (!((!(a->pName) && !(b->pName)) || ((a->pName) && (b->pName)))) {
20827 onFail("a->pName (Error: Mismatch in string pointer nullness)");
20828 };
20829 if ((a->pName) && (b->pName)) {
20830 if (!((strcmp(a->pName, b->pName) == 0))) {
20831 onFail("a->pName (Error: Unequal strings)");
20832 };
20833 }
20834 }
20835 if (!((a->setLayoutCount) == (b->setLayoutCount))) {
20836 onFail("a->setLayoutCount (Error: Value not equal)");
20837 };
20838 if (!((!(a->pSetLayouts) && !(b->pSetLayouts)) || ((a->pSetLayouts) && (b->pSetLayouts)))) {
20839 onFail("a->pSetLayouts (Error: Mismatch in optional field)");
20840 };
20841 if (a->pSetLayouts && b->pSetLayouts) {
20842 if (!((a->setLayoutCount) == (b->setLayoutCount))) {
20843 onFail("a->pSetLayouts (Error: Lengths not equal)");
20844 };
20845 if (!((memcmp(a->pSetLayouts, b->pSetLayouts,
20846 a->setLayoutCount * sizeof(const VkDescriptorSetLayout)) == 0))) {
20847 onFail("a->pSetLayouts (Error: Unequal dyn array)");
20848 };
20849 }
20850 if (!((a->pushConstantRangeCount) == (b->pushConstantRangeCount))) {
20851 onFail("a->pushConstantRangeCount (Error: Value not equal)");
20852 };
20853 if (!((!(a->pPushConstantRanges) && !(b->pPushConstantRanges)) ||
20854 ((a->pPushConstantRanges) && (b->pPushConstantRanges)))) {
20855 onFail("a->pPushConstantRanges (Error: Mismatch in optional field)");
20856 };
20857 if (a->pPushConstantRanges && b->pPushConstantRanges) {
20858 if ((a->pPushConstantRanges) && (b->pPushConstantRanges)) {
20859 if (!((a->pushConstantRangeCount) == (b->pushConstantRangeCount))) {
20860 onFail("a->pPushConstantRanges (Error: Lengths not equal)");
20861 };
20862 if ((a->pushConstantRangeCount) == (b->pushConstantRangeCount)) {
20863 if (a) {
20864 for (uint32_t i = 0; i < (uint32_t)a->pushConstantRangeCount; ++i) {
20865 checkEqual_VkPushConstantRange(a->pPushConstantRanges + i,
20866 b->pPushConstantRanges + i, onFail);
20867 }
20868 }
20869 }
20870 }
20871 }
20872 if (!((!(a->pSpecializationInfo) && !(b->pSpecializationInfo)) ||
20873 ((a->pSpecializationInfo) && (b->pSpecializationInfo)))) {
20874 onFail("a->pSpecializationInfo (Error: Mismatch in optional field)");
20875 };
20876 if (a->pSpecializationInfo && b->pSpecializationInfo) {
20877 if ((a->pSpecializationInfo) && (b->pSpecializationInfo)) {
20878 checkEqual_VkSpecializationInfo(a->pSpecializationInfo, b->pSpecializationInfo, onFail);
20879 }
20880 }
20881 }
20882
20883 #endif
20884 #ifdef VK_QCOM_tile_properties
checkEqual_VkPhysicalDeviceTilePropertiesFeaturesQCOM(const VkPhysicalDeviceTilePropertiesFeaturesQCOM * a,const VkPhysicalDeviceTilePropertiesFeaturesQCOM * b,OnFailCompareFunc onFail)20885 void checkEqual_VkPhysicalDeviceTilePropertiesFeaturesQCOM(
20886 const VkPhysicalDeviceTilePropertiesFeaturesQCOM* a,
20887 const VkPhysicalDeviceTilePropertiesFeaturesQCOM* b, OnFailCompareFunc onFail) {
20888 if (!((a->sType) == (b->sType))) {
20889 onFail("a->sType (Error: Value not equal)");
20890 };
20891 if (a->pNext) {
20892 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20893 }
20894 if (!((a->tileProperties) == (b->tileProperties))) {
20895 onFail("a->tileProperties (Error: Value not equal)");
20896 };
20897 }
20898
checkEqual_VkTilePropertiesQCOM(const VkTilePropertiesQCOM * a,const VkTilePropertiesQCOM * b,OnFailCompareFunc onFail)20899 void checkEqual_VkTilePropertiesQCOM(const VkTilePropertiesQCOM* a, const VkTilePropertiesQCOM* b,
20900 OnFailCompareFunc onFail) {
20901 if (!((a->sType) == (b->sType))) {
20902 onFail("a->sType (Error: Value not equal)");
20903 };
20904 if (a->pNext) {
20905 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20906 }
20907 checkEqual_VkExtent3D(&a->tileSize, &b->tileSize, onFail);
20908 checkEqual_VkExtent2D(&a->apronSize, &b->apronSize, onFail);
20909 checkEqual_VkOffset2D(&a->origin, &b->origin, onFail);
20910 }
20911
20912 #endif
20913 #ifdef VK_SEC_amigo_profiling
checkEqual_VkPhysicalDeviceAmigoProfilingFeaturesSEC(const VkPhysicalDeviceAmigoProfilingFeaturesSEC * a,const VkPhysicalDeviceAmigoProfilingFeaturesSEC * b,OnFailCompareFunc onFail)20914 void checkEqual_VkPhysicalDeviceAmigoProfilingFeaturesSEC(
20915 const VkPhysicalDeviceAmigoProfilingFeaturesSEC* a,
20916 const VkPhysicalDeviceAmigoProfilingFeaturesSEC* b, OnFailCompareFunc onFail) {
20917 if (!((a->sType) == (b->sType))) {
20918 onFail("a->sType (Error: Value not equal)");
20919 };
20920 if (a->pNext) {
20921 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20922 }
20923 if (!((a->amigoProfiling) == (b->amigoProfiling))) {
20924 onFail("a->amigoProfiling (Error: Value not equal)");
20925 };
20926 }
20927
checkEqual_VkAmigoProfilingSubmitInfoSEC(const VkAmigoProfilingSubmitInfoSEC * a,const VkAmigoProfilingSubmitInfoSEC * b,OnFailCompareFunc onFail)20928 void checkEqual_VkAmigoProfilingSubmitInfoSEC(const VkAmigoProfilingSubmitInfoSEC* a,
20929 const VkAmigoProfilingSubmitInfoSEC* b,
20930 OnFailCompareFunc onFail) {
20931 if (!((a->sType) == (b->sType))) {
20932 onFail("a->sType (Error: Value not equal)");
20933 };
20934 if (a->pNext) {
20935 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20936 }
20937 if (!((a->firstDrawTimestamp) == (b->firstDrawTimestamp))) {
20938 onFail("a->firstDrawTimestamp (Error: Value not equal)");
20939 };
20940 if (!((a->swapBufferTimestamp) == (b->swapBufferTimestamp))) {
20941 onFail("a->swapBufferTimestamp (Error: Value not equal)");
20942 };
20943 }
20944
20945 #endif
20946 #ifdef VK_QCOM_multiview_per_view_viewports
checkEqual_VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM(const VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM * a,const VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM * b,OnFailCompareFunc onFail)20947 void checkEqual_VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM(
20948 const VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* a,
20949 const VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM* b, OnFailCompareFunc onFail) {
20950 if (!((a->sType) == (b->sType))) {
20951 onFail("a->sType (Error: Value not equal)");
20952 };
20953 if (a->pNext) {
20954 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20955 }
20956 if (!((a->multiviewPerViewViewports) == (b->multiviewPerViewViewports))) {
20957 onFail("a->multiviewPerViewViewports (Error: Value not equal)");
20958 };
20959 }
20960
20961 #endif
20962 #ifdef VK_NV_ray_tracing_invocation_reorder
checkEqual_VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV(const VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV * a,const VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV * b,OnFailCompareFunc onFail)20963 void checkEqual_VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV(
20964 const VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* a,
20965 const VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV* b, OnFailCompareFunc onFail) {
20966 if (!((a->sType) == (b->sType))) {
20967 onFail("a->sType (Error: Value not equal)");
20968 };
20969 if (a->pNext) {
20970 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20971 }
20972 if (!((a->rayTracingInvocationReorderReorderingHint) ==
20973 (b->rayTracingInvocationReorderReorderingHint))) {
20974 onFail("a->rayTracingInvocationReorderReorderingHint (Error: Value not equal)");
20975 };
20976 }
20977
checkEqual_VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV(const VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV * a,const VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV * b,OnFailCompareFunc onFail)20978 void checkEqual_VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV(
20979 const VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* a,
20980 const VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV* b, OnFailCompareFunc onFail) {
20981 if (!((a->sType) == (b->sType))) {
20982 onFail("a->sType (Error: Value not equal)");
20983 };
20984 if (a->pNext) {
20985 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
20986 }
20987 if (!((a->rayTracingInvocationReorder) == (b->rayTracingInvocationReorder))) {
20988 onFail("a->rayTracingInvocationReorder (Error: Value not equal)");
20989 };
20990 }
20991
20992 #endif
20993 #ifdef VK_EXT_mutable_descriptor_type
20994 #endif
20995 #ifdef VK_ARM_shader_core_builtins
checkEqual_VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM(const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM * a,const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM * b,OnFailCompareFunc onFail)20996 void checkEqual_VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM(
20997 const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* a,
20998 const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM* b, OnFailCompareFunc onFail) {
20999 if (!((a->sType) == (b->sType))) {
21000 onFail("a->sType (Error: Value not equal)");
21001 };
21002 if (a->pNext) {
21003 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21004 }
21005 if (!((a->shaderCoreBuiltins) == (b->shaderCoreBuiltins))) {
21006 onFail("a->shaderCoreBuiltins (Error: Value not equal)");
21007 };
21008 }
21009
checkEqual_VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM(const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM * a,const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM * b,OnFailCompareFunc onFail)21010 void checkEqual_VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM(
21011 const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* a,
21012 const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM* b, OnFailCompareFunc onFail) {
21013 if (!((a->sType) == (b->sType))) {
21014 onFail("a->sType (Error: Value not equal)");
21015 };
21016 if (a->pNext) {
21017 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21018 }
21019 if (!((a->shaderCoreMask) == (b->shaderCoreMask))) {
21020 onFail("a->shaderCoreMask (Error: Value not equal)");
21021 };
21022 if (!((a->shaderCoreCount) == (b->shaderCoreCount))) {
21023 onFail("a->shaderCoreCount (Error: Value not equal)");
21024 };
21025 if (!((a->shaderWarpsPerCore) == (b->shaderWarpsPerCore))) {
21026 onFail("a->shaderWarpsPerCore (Error: Value not equal)");
21027 };
21028 }
21029
21030 #endif
21031 #ifdef VK_EXT_pipeline_library_group_handles
checkEqual_VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT(const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT * a,const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT * b,OnFailCompareFunc onFail)21032 void checkEqual_VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT(
21033 const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* a,
21034 const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT* b, OnFailCompareFunc onFail) {
21035 if (!((a->sType) == (b->sType))) {
21036 onFail("a->sType (Error: Value not equal)");
21037 };
21038 if (a->pNext) {
21039 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21040 }
21041 if (!((a->pipelineLibraryGroupHandles) == (b->pipelineLibraryGroupHandles))) {
21042 onFail("a->pipelineLibraryGroupHandles (Error: Value not equal)");
21043 };
21044 }
21045
21046 #endif
21047 #ifdef VK_QCOM_multiview_per_view_render_areas
checkEqual_VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM(const VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM * a,const VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM * b,OnFailCompareFunc onFail)21048 void checkEqual_VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM(
21049 const VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* a,
21050 const VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM* b, OnFailCompareFunc onFail) {
21051 if (!((a->sType) == (b->sType))) {
21052 onFail("a->sType (Error: Value not equal)");
21053 };
21054 if (a->pNext) {
21055 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21056 }
21057 if (!((a->multiviewPerViewRenderAreas) == (b->multiviewPerViewRenderAreas))) {
21058 onFail("a->multiviewPerViewRenderAreas (Error: Value not equal)");
21059 };
21060 }
21061
checkEqual_VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM(const VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM * a,const VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM * b,OnFailCompareFunc onFail)21062 void checkEqual_VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM(
21063 const VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* a,
21064 const VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM* b, OnFailCompareFunc onFail) {
21065 if (!((a->sType) == (b->sType))) {
21066 onFail("a->sType (Error: Value not equal)");
21067 };
21068 if (a->pNext) {
21069 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21070 }
21071 if (!((a->perViewRenderAreaCount) == (b->perViewRenderAreaCount))) {
21072 onFail("a->perViewRenderAreaCount (Error: Value not equal)");
21073 };
21074 if ((a->pPerViewRenderAreas) && (b->pPerViewRenderAreas)) {
21075 if (!((a->perViewRenderAreaCount) == (b->perViewRenderAreaCount))) {
21076 onFail("a->pPerViewRenderAreas (Error: Lengths not equal)");
21077 };
21078 if ((a->perViewRenderAreaCount) == (b->perViewRenderAreaCount)) {
21079 if (a) {
21080 for (uint32_t i = 0; i < (uint32_t)a->perViewRenderAreaCount; ++i) {
21081 checkEqual_VkRect2D(a->pPerViewRenderAreas + i, b->pPerViewRenderAreas + i,
21082 onFail);
21083 }
21084 }
21085 }
21086 }
21087 }
21088
21089 #endif
21090 #ifdef VK_EXT_attachment_feedback_loop_dynamic_state
checkEqual_VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT(const VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT * a,const VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT * b,OnFailCompareFunc onFail)21091 void checkEqual_VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT(
21092 const VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* a,
21093 const VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT* b,
21094 OnFailCompareFunc onFail) {
21095 if (!((a->sType) == (b->sType))) {
21096 onFail("a->sType (Error: Value not equal)");
21097 };
21098 if (a->pNext) {
21099 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21100 }
21101 if (!((a->attachmentFeedbackLoopDynamicState) == (b->attachmentFeedbackLoopDynamicState))) {
21102 onFail("a->attachmentFeedbackLoopDynamicState (Error: Value not equal)");
21103 };
21104 }
21105
21106 #endif
21107 #ifdef VK_KHR_acceleration_structure
checkEqual_VkAccelerationStructureBuildRangeInfoKHR(const VkAccelerationStructureBuildRangeInfoKHR * a,const VkAccelerationStructureBuildRangeInfoKHR * b,OnFailCompareFunc onFail)21108 void checkEqual_VkAccelerationStructureBuildRangeInfoKHR(
21109 const VkAccelerationStructureBuildRangeInfoKHR* a,
21110 const VkAccelerationStructureBuildRangeInfoKHR* b, OnFailCompareFunc onFail) {
21111 if (!((a->primitiveCount) == (b->primitiveCount))) {
21112 onFail("a->primitiveCount (Error: Value not equal)");
21113 };
21114 if (!((a->primitiveOffset) == (b->primitiveOffset))) {
21115 onFail("a->primitiveOffset (Error: Value not equal)");
21116 };
21117 if (!((a->firstVertex) == (b->firstVertex))) {
21118 onFail("a->firstVertex (Error: Value not equal)");
21119 };
21120 if (!((a->transformOffset) == (b->transformOffset))) {
21121 onFail("a->transformOffset (Error: Value not equal)");
21122 };
21123 }
21124
checkEqual_VkAccelerationStructureGeometryTrianglesDataKHR(const VkAccelerationStructureGeometryTrianglesDataKHR * a,const VkAccelerationStructureGeometryTrianglesDataKHR * b,OnFailCompareFunc onFail)21125 void checkEqual_VkAccelerationStructureGeometryTrianglesDataKHR(
21126 const VkAccelerationStructureGeometryTrianglesDataKHR* a,
21127 const VkAccelerationStructureGeometryTrianglesDataKHR* b, OnFailCompareFunc onFail) {
21128 if (!((a->sType) == (b->sType))) {
21129 onFail("a->sType (Error: Value not equal)");
21130 };
21131 if (a->pNext) {
21132 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21133 }
21134 if (!((a->vertexFormat) == (b->vertexFormat))) {
21135 onFail("a->vertexFormat (Error: Value not equal)");
21136 };
21137 checkEqual_VkDeviceOrHostAddressConstKHR(&a->vertexData, &b->vertexData, onFail);
21138 if (!((a->vertexStride) == (b->vertexStride))) {
21139 onFail("a->vertexStride (Error: Value not equal)");
21140 };
21141 if (!((a->maxVertex) == (b->maxVertex))) {
21142 onFail("a->maxVertex (Error: Value not equal)");
21143 };
21144 if (!((a->indexType) == (b->indexType))) {
21145 onFail("a->indexType (Error: Value not equal)");
21146 };
21147 checkEqual_VkDeviceOrHostAddressConstKHR(&a->indexData, &b->indexData, onFail);
21148 checkEqual_VkDeviceOrHostAddressConstKHR(&a->transformData, &b->transformData, onFail);
21149 }
21150
checkEqual_VkAccelerationStructureGeometryAabbsDataKHR(const VkAccelerationStructureGeometryAabbsDataKHR * a,const VkAccelerationStructureGeometryAabbsDataKHR * b,OnFailCompareFunc onFail)21151 void checkEqual_VkAccelerationStructureGeometryAabbsDataKHR(
21152 const VkAccelerationStructureGeometryAabbsDataKHR* a,
21153 const VkAccelerationStructureGeometryAabbsDataKHR* b, OnFailCompareFunc onFail) {
21154 if (!((a->sType) == (b->sType))) {
21155 onFail("a->sType (Error: Value not equal)");
21156 };
21157 if (a->pNext) {
21158 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21159 }
21160 checkEqual_VkDeviceOrHostAddressConstKHR(&a->data, &b->data, onFail);
21161 if (!((a->stride) == (b->stride))) {
21162 onFail("a->stride (Error: Value not equal)");
21163 };
21164 }
21165
checkEqual_VkAccelerationStructureGeometryInstancesDataKHR(const VkAccelerationStructureGeometryInstancesDataKHR * a,const VkAccelerationStructureGeometryInstancesDataKHR * b,OnFailCompareFunc onFail)21166 void checkEqual_VkAccelerationStructureGeometryInstancesDataKHR(
21167 const VkAccelerationStructureGeometryInstancesDataKHR* a,
21168 const VkAccelerationStructureGeometryInstancesDataKHR* b, OnFailCompareFunc onFail) {
21169 if (!((a->sType) == (b->sType))) {
21170 onFail("a->sType (Error: Value not equal)");
21171 };
21172 if (a->pNext) {
21173 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21174 }
21175 if (!((a->arrayOfPointers) == (b->arrayOfPointers))) {
21176 onFail("a->arrayOfPointers (Error: Value not equal)");
21177 };
21178 checkEqual_VkDeviceOrHostAddressConstKHR(&a->data, &b->data, onFail);
21179 }
21180
checkEqual_VkAccelerationStructureGeometryDataKHR(const VkAccelerationStructureGeometryDataKHR * a,const VkAccelerationStructureGeometryDataKHR * b,OnFailCompareFunc onFail)21181 void checkEqual_VkAccelerationStructureGeometryDataKHR(
21182 const VkAccelerationStructureGeometryDataKHR* a,
21183 const VkAccelerationStructureGeometryDataKHR* b, OnFailCompareFunc onFail) {
21184 checkEqual_VkAccelerationStructureGeometryTrianglesDataKHR(&a->triangles, &b->triangles,
21185 onFail);
21186 checkEqual_VkAccelerationStructureGeometryAabbsDataKHR(&a->aabbs, &b->aabbs, onFail);
21187 checkEqual_VkAccelerationStructureGeometryInstancesDataKHR(&a->instances, &b->instances,
21188 onFail);
21189 }
21190
checkEqual_VkAccelerationStructureGeometryKHR(const VkAccelerationStructureGeometryKHR * a,const VkAccelerationStructureGeometryKHR * b,OnFailCompareFunc onFail)21191 void checkEqual_VkAccelerationStructureGeometryKHR(const VkAccelerationStructureGeometryKHR* a,
21192 const VkAccelerationStructureGeometryKHR* b,
21193 OnFailCompareFunc onFail) {
21194 if (!((a->sType) == (b->sType))) {
21195 onFail("a->sType (Error: Value not equal)");
21196 };
21197 if (a->pNext) {
21198 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21199 }
21200 if (!((a->geometryType) == (b->geometryType))) {
21201 onFail("a->geometryType (Error: Value not equal)");
21202 };
21203 checkEqual_VkAccelerationStructureGeometryDataKHR(&a->geometry, &b->geometry, onFail);
21204 if (!((a->flags) == (b->flags))) {
21205 onFail("a->flags (Error: Value not equal)");
21206 };
21207 }
21208
checkEqual_VkAccelerationStructureBuildGeometryInfoKHR(const VkAccelerationStructureBuildGeometryInfoKHR * a,const VkAccelerationStructureBuildGeometryInfoKHR * b,OnFailCompareFunc onFail)21209 void checkEqual_VkAccelerationStructureBuildGeometryInfoKHR(
21210 const VkAccelerationStructureBuildGeometryInfoKHR* a,
21211 const VkAccelerationStructureBuildGeometryInfoKHR* b, OnFailCompareFunc onFail) {
21212 if (!((a->sType) == (b->sType))) {
21213 onFail("a->sType (Error: Value not equal)");
21214 };
21215 if (a->pNext) {
21216 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21217 }
21218 if (!((a->type) == (b->type))) {
21219 onFail("a->type (Error: Value not equal)");
21220 };
21221 if (!((a->flags) == (b->flags))) {
21222 onFail("a->flags (Error: Value not equal)");
21223 };
21224 if (!((a->mode) == (b->mode))) {
21225 onFail("a->mode (Error: Value not equal)");
21226 };
21227 if (!((a->srcAccelerationStructure) == (b->srcAccelerationStructure))) {
21228 onFail("a->srcAccelerationStructure (Error: Value not equal)");
21229 };
21230 if (!((a->dstAccelerationStructure) == (b->dstAccelerationStructure))) {
21231 onFail("a->dstAccelerationStructure (Error: Value not equal)");
21232 };
21233 if (!((a->geometryCount) == (b->geometryCount))) {
21234 onFail("a->geometryCount (Error: Value not equal)");
21235 };
21236 if (!((!(a->pGeometries) && !(b->pGeometries)) || ((a->pGeometries) && (b->pGeometries)))) {
21237 onFail("a->pGeometries (Error: Mismatch in optional field)");
21238 };
21239 if (a->pGeometries && b->pGeometries) {
21240 if ((a->pGeometries) && (b->pGeometries)) {
21241 if (!((a->geometryCount) == (b->geometryCount))) {
21242 onFail("a->pGeometries (Error: Lengths not equal)");
21243 };
21244 if ((a->geometryCount) == (b->geometryCount)) {
21245 if (a) {
21246 for (uint32_t i = 0; i < (uint32_t)a->geometryCount; ++i) {
21247 checkEqual_VkAccelerationStructureGeometryKHR(a->pGeometries + i,
21248 b->pGeometries + i, onFail);
21249 }
21250 }
21251 }
21252 }
21253 }
21254 checkEqual_VkDeviceOrHostAddressKHR(&a->scratchData, &b->scratchData, onFail);
21255 }
21256
checkEqual_VkAccelerationStructureCreateInfoKHR(const VkAccelerationStructureCreateInfoKHR * a,const VkAccelerationStructureCreateInfoKHR * b,OnFailCompareFunc onFail)21257 void checkEqual_VkAccelerationStructureCreateInfoKHR(const VkAccelerationStructureCreateInfoKHR* a,
21258 const VkAccelerationStructureCreateInfoKHR* b,
21259 OnFailCompareFunc onFail) {
21260 if (!((a->sType) == (b->sType))) {
21261 onFail("a->sType (Error: Value not equal)");
21262 };
21263 if (a->pNext) {
21264 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21265 }
21266 if (!((a->createFlags) == (b->createFlags))) {
21267 onFail("a->createFlags (Error: Value not equal)");
21268 };
21269 if (!((a->buffer) == (b->buffer))) {
21270 onFail("a->buffer (Error: Value not equal)");
21271 };
21272 if (!((a->offset) == (b->offset))) {
21273 onFail("a->offset (Error: Value not equal)");
21274 };
21275 if (!((a->size) == (b->size))) {
21276 onFail("a->size (Error: Value not equal)");
21277 };
21278 if (!((a->type) == (b->type))) {
21279 onFail("a->type (Error: Value not equal)");
21280 };
21281 if (!((a->deviceAddress) == (b->deviceAddress))) {
21282 onFail("a->deviceAddress (Error: Value not equal)");
21283 };
21284 }
21285
checkEqual_VkWriteDescriptorSetAccelerationStructureKHR(const VkWriteDescriptorSetAccelerationStructureKHR * a,const VkWriteDescriptorSetAccelerationStructureKHR * b,OnFailCompareFunc onFail)21286 void checkEqual_VkWriteDescriptorSetAccelerationStructureKHR(
21287 const VkWriteDescriptorSetAccelerationStructureKHR* a,
21288 const VkWriteDescriptorSetAccelerationStructureKHR* b, OnFailCompareFunc onFail) {
21289 if (!((a->sType) == (b->sType))) {
21290 onFail("a->sType (Error: Value not equal)");
21291 };
21292 if (a->pNext) {
21293 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21294 }
21295 if (!((a->accelerationStructureCount) == (b->accelerationStructureCount))) {
21296 onFail("a->accelerationStructureCount (Error: Value not equal)");
21297 };
21298 if (!((!(a->pAccelerationStructures) && !(b->pAccelerationStructures)) ||
21299 ((a->pAccelerationStructures) && (b->pAccelerationStructures)))) {
21300 onFail("a->pAccelerationStructures (Error: Mismatch in optional field)");
21301 };
21302 if (a->pAccelerationStructures && b->pAccelerationStructures) {
21303 if (!((a->accelerationStructureCount) == (b->accelerationStructureCount))) {
21304 onFail("a->pAccelerationStructures (Error: Lengths not equal)");
21305 };
21306 if (!((memcmp(a->pAccelerationStructures, b->pAccelerationStructures,
21307 a->accelerationStructureCount * sizeof(const VkAccelerationStructureKHR)) ==
21308 0))) {
21309 onFail("a->pAccelerationStructures (Error: Unequal dyn array)");
21310 };
21311 }
21312 }
21313
checkEqual_VkPhysicalDeviceAccelerationStructureFeaturesKHR(const VkPhysicalDeviceAccelerationStructureFeaturesKHR * a,const VkPhysicalDeviceAccelerationStructureFeaturesKHR * b,OnFailCompareFunc onFail)21314 void checkEqual_VkPhysicalDeviceAccelerationStructureFeaturesKHR(
21315 const VkPhysicalDeviceAccelerationStructureFeaturesKHR* a,
21316 const VkPhysicalDeviceAccelerationStructureFeaturesKHR* b, OnFailCompareFunc onFail) {
21317 if (!((a->sType) == (b->sType))) {
21318 onFail("a->sType (Error: Value not equal)");
21319 };
21320 if (a->pNext) {
21321 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21322 }
21323 if (!((a->accelerationStructure) == (b->accelerationStructure))) {
21324 onFail("a->accelerationStructure (Error: Value not equal)");
21325 };
21326 if (!((a->accelerationStructureCaptureReplay) == (b->accelerationStructureCaptureReplay))) {
21327 onFail("a->accelerationStructureCaptureReplay (Error: Value not equal)");
21328 };
21329 if (!((a->accelerationStructureIndirectBuild) == (b->accelerationStructureIndirectBuild))) {
21330 onFail("a->accelerationStructureIndirectBuild (Error: Value not equal)");
21331 };
21332 if (!((a->accelerationStructureHostCommands) == (b->accelerationStructureHostCommands))) {
21333 onFail("a->accelerationStructureHostCommands (Error: Value not equal)");
21334 };
21335 if (!((a->descriptorBindingAccelerationStructureUpdateAfterBind) ==
21336 (b->descriptorBindingAccelerationStructureUpdateAfterBind))) {
21337 onFail("a->descriptorBindingAccelerationStructureUpdateAfterBind (Error: Value not equal)");
21338 };
21339 }
21340
checkEqual_VkPhysicalDeviceAccelerationStructurePropertiesKHR(const VkPhysicalDeviceAccelerationStructurePropertiesKHR * a,const VkPhysicalDeviceAccelerationStructurePropertiesKHR * b,OnFailCompareFunc onFail)21341 void checkEqual_VkPhysicalDeviceAccelerationStructurePropertiesKHR(
21342 const VkPhysicalDeviceAccelerationStructurePropertiesKHR* a,
21343 const VkPhysicalDeviceAccelerationStructurePropertiesKHR* b, OnFailCompareFunc onFail) {
21344 if (!((a->sType) == (b->sType))) {
21345 onFail("a->sType (Error: Value not equal)");
21346 };
21347 if (a->pNext) {
21348 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21349 }
21350 if (!((a->maxGeometryCount) == (b->maxGeometryCount))) {
21351 onFail("a->maxGeometryCount (Error: Value not equal)");
21352 };
21353 if (!((a->maxInstanceCount) == (b->maxInstanceCount))) {
21354 onFail("a->maxInstanceCount (Error: Value not equal)");
21355 };
21356 if (!((a->maxPrimitiveCount) == (b->maxPrimitiveCount))) {
21357 onFail("a->maxPrimitiveCount (Error: Value not equal)");
21358 };
21359 if (!((a->maxPerStageDescriptorAccelerationStructures) ==
21360 (b->maxPerStageDescriptorAccelerationStructures))) {
21361 onFail("a->maxPerStageDescriptorAccelerationStructures (Error: Value not equal)");
21362 };
21363 if (!((a->maxPerStageDescriptorUpdateAfterBindAccelerationStructures) ==
21364 (b->maxPerStageDescriptorUpdateAfterBindAccelerationStructures))) {
21365 onFail(
21366 "a->maxPerStageDescriptorUpdateAfterBindAccelerationStructures (Error: Value not "
21367 "equal)");
21368 };
21369 if (!((a->maxDescriptorSetAccelerationStructures) ==
21370 (b->maxDescriptorSetAccelerationStructures))) {
21371 onFail("a->maxDescriptorSetAccelerationStructures (Error: Value not equal)");
21372 };
21373 if (!((a->maxDescriptorSetUpdateAfterBindAccelerationStructures) ==
21374 (b->maxDescriptorSetUpdateAfterBindAccelerationStructures))) {
21375 onFail("a->maxDescriptorSetUpdateAfterBindAccelerationStructures (Error: Value not equal)");
21376 };
21377 if (!((a->minAccelerationStructureScratchOffsetAlignment) ==
21378 (b->minAccelerationStructureScratchOffsetAlignment))) {
21379 onFail("a->minAccelerationStructureScratchOffsetAlignment (Error: Value not equal)");
21380 };
21381 }
21382
checkEqual_VkAccelerationStructureDeviceAddressInfoKHR(const VkAccelerationStructureDeviceAddressInfoKHR * a,const VkAccelerationStructureDeviceAddressInfoKHR * b,OnFailCompareFunc onFail)21383 void checkEqual_VkAccelerationStructureDeviceAddressInfoKHR(
21384 const VkAccelerationStructureDeviceAddressInfoKHR* a,
21385 const VkAccelerationStructureDeviceAddressInfoKHR* b, OnFailCompareFunc onFail) {
21386 if (!((a->sType) == (b->sType))) {
21387 onFail("a->sType (Error: Value not equal)");
21388 };
21389 if (a->pNext) {
21390 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21391 }
21392 if (!((a->accelerationStructure) == (b->accelerationStructure))) {
21393 onFail("a->accelerationStructure (Error: Value not equal)");
21394 };
21395 }
21396
checkEqual_VkAccelerationStructureVersionInfoKHR(const VkAccelerationStructureVersionInfoKHR * a,const VkAccelerationStructureVersionInfoKHR * b,OnFailCompareFunc onFail)21397 void checkEqual_VkAccelerationStructureVersionInfoKHR(
21398 const VkAccelerationStructureVersionInfoKHR* a, const VkAccelerationStructureVersionInfoKHR* b,
21399 OnFailCompareFunc onFail) {
21400 if (!((a->sType) == (b->sType))) {
21401 onFail("a->sType (Error: Value not equal)");
21402 };
21403 if (a->pNext) {
21404 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21405 }
21406 if (!((2 * VK_UUID_SIZE) == (2 * VK_UUID_SIZE))) {
21407 onFail("a->pVersionData (Error: Lengths not equal)");
21408 };
21409 if (!((memcmp(a->pVersionData, b->pVersionData, 2 * VK_UUID_SIZE * sizeof(const uint8_t)) ==
21410 0))) {
21411 onFail("a->pVersionData (Error: Unequal dyn array)");
21412 };
21413 }
21414
checkEqual_VkCopyAccelerationStructureToMemoryInfoKHR(const VkCopyAccelerationStructureToMemoryInfoKHR * a,const VkCopyAccelerationStructureToMemoryInfoKHR * b,OnFailCompareFunc onFail)21415 void checkEqual_VkCopyAccelerationStructureToMemoryInfoKHR(
21416 const VkCopyAccelerationStructureToMemoryInfoKHR* a,
21417 const VkCopyAccelerationStructureToMemoryInfoKHR* b, OnFailCompareFunc onFail) {
21418 if (!((a->sType) == (b->sType))) {
21419 onFail("a->sType (Error: Value not equal)");
21420 };
21421 if (a->pNext) {
21422 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21423 }
21424 if (!((a->src) == (b->src))) {
21425 onFail("a->src (Error: Value not equal)");
21426 };
21427 checkEqual_VkDeviceOrHostAddressKHR(&a->dst, &b->dst, onFail);
21428 if (!((a->mode) == (b->mode))) {
21429 onFail("a->mode (Error: Value not equal)");
21430 };
21431 }
21432
checkEqual_VkCopyMemoryToAccelerationStructureInfoKHR(const VkCopyMemoryToAccelerationStructureInfoKHR * a,const VkCopyMemoryToAccelerationStructureInfoKHR * b,OnFailCompareFunc onFail)21433 void checkEqual_VkCopyMemoryToAccelerationStructureInfoKHR(
21434 const VkCopyMemoryToAccelerationStructureInfoKHR* a,
21435 const VkCopyMemoryToAccelerationStructureInfoKHR* b, OnFailCompareFunc onFail) {
21436 if (!((a->sType) == (b->sType))) {
21437 onFail("a->sType (Error: Value not equal)");
21438 };
21439 if (a->pNext) {
21440 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21441 }
21442 checkEqual_VkDeviceOrHostAddressConstKHR(&a->src, &b->src, onFail);
21443 if (!((a->dst) == (b->dst))) {
21444 onFail("a->dst (Error: Value not equal)");
21445 };
21446 if (!((a->mode) == (b->mode))) {
21447 onFail("a->mode (Error: Value not equal)");
21448 };
21449 }
21450
checkEqual_VkCopyAccelerationStructureInfoKHR(const VkCopyAccelerationStructureInfoKHR * a,const VkCopyAccelerationStructureInfoKHR * b,OnFailCompareFunc onFail)21451 void checkEqual_VkCopyAccelerationStructureInfoKHR(const VkCopyAccelerationStructureInfoKHR* a,
21452 const VkCopyAccelerationStructureInfoKHR* b,
21453 OnFailCompareFunc onFail) {
21454 if (!((a->sType) == (b->sType))) {
21455 onFail("a->sType (Error: Value not equal)");
21456 };
21457 if (a->pNext) {
21458 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21459 }
21460 if (!((a->src) == (b->src))) {
21461 onFail("a->src (Error: Value not equal)");
21462 };
21463 if (!((a->dst) == (b->dst))) {
21464 onFail("a->dst (Error: Value not equal)");
21465 };
21466 if (!((a->mode) == (b->mode))) {
21467 onFail("a->mode (Error: Value not equal)");
21468 };
21469 }
21470
checkEqual_VkAccelerationStructureBuildSizesInfoKHR(const VkAccelerationStructureBuildSizesInfoKHR * a,const VkAccelerationStructureBuildSizesInfoKHR * b,OnFailCompareFunc onFail)21471 void checkEqual_VkAccelerationStructureBuildSizesInfoKHR(
21472 const VkAccelerationStructureBuildSizesInfoKHR* a,
21473 const VkAccelerationStructureBuildSizesInfoKHR* b, OnFailCompareFunc onFail) {
21474 if (!((a->sType) == (b->sType))) {
21475 onFail("a->sType (Error: Value not equal)");
21476 };
21477 if (a->pNext) {
21478 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21479 }
21480 if (!((a->accelerationStructureSize) == (b->accelerationStructureSize))) {
21481 onFail("a->accelerationStructureSize (Error: Value not equal)");
21482 };
21483 if (!((a->updateScratchSize) == (b->updateScratchSize))) {
21484 onFail("a->updateScratchSize (Error: Value not equal)");
21485 };
21486 if (!((a->buildScratchSize) == (b->buildScratchSize))) {
21487 onFail("a->buildScratchSize (Error: Value not equal)");
21488 };
21489 }
21490
21491 #endif
21492 #ifdef VK_KHR_ray_tracing_pipeline
checkEqual_VkRayTracingShaderGroupCreateInfoKHR(const VkRayTracingShaderGroupCreateInfoKHR * a,const VkRayTracingShaderGroupCreateInfoKHR * b,OnFailCompareFunc onFail)21493 void checkEqual_VkRayTracingShaderGroupCreateInfoKHR(const VkRayTracingShaderGroupCreateInfoKHR* a,
21494 const VkRayTracingShaderGroupCreateInfoKHR* b,
21495 OnFailCompareFunc onFail) {
21496 if (!((a->sType) == (b->sType))) {
21497 onFail("a->sType (Error: Value not equal)");
21498 };
21499 if (a->pNext) {
21500 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21501 }
21502 if (!((a->type) == (b->type))) {
21503 onFail("a->type (Error: Value not equal)");
21504 };
21505 if (!((a->generalShader) == (b->generalShader))) {
21506 onFail("a->generalShader (Error: Value not equal)");
21507 };
21508 if (!((a->closestHitShader) == (b->closestHitShader))) {
21509 onFail("a->closestHitShader (Error: Value not equal)");
21510 };
21511 if (!((a->anyHitShader) == (b->anyHitShader))) {
21512 onFail("a->anyHitShader (Error: Value not equal)");
21513 };
21514 if (!((a->intersectionShader) == (b->intersectionShader))) {
21515 onFail("a->intersectionShader (Error: Value not equal)");
21516 };
21517 if (!((!(a->pShaderGroupCaptureReplayHandle) && !(b->pShaderGroupCaptureReplayHandle)) ||
21518 ((a->pShaderGroupCaptureReplayHandle) && (b->pShaderGroupCaptureReplayHandle)))) {
21519 onFail("a->pShaderGroupCaptureReplayHandle (Error: Mismatch in optional field)");
21520 };
21521 }
21522
checkEqual_VkRayTracingPipelineInterfaceCreateInfoKHR(const VkRayTracingPipelineInterfaceCreateInfoKHR * a,const VkRayTracingPipelineInterfaceCreateInfoKHR * b,OnFailCompareFunc onFail)21523 void checkEqual_VkRayTracingPipelineInterfaceCreateInfoKHR(
21524 const VkRayTracingPipelineInterfaceCreateInfoKHR* a,
21525 const VkRayTracingPipelineInterfaceCreateInfoKHR* b, OnFailCompareFunc onFail) {
21526 if (!((a->sType) == (b->sType))) {
21527 onFail("a->sType (Error: Value not equal)");
21528 };
21529 if (a->pNext) {
21530 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21531 }
21532 if (!((a->maxPipelineRayPayloadSize) == (b->maxPipelineRayPayloadSize))) {
21533 onFail("a->maxPipelineRayPayloadSize (Error: Value not equal)");
21534 };
21535 if (!((a->maxPipelineRayHitAttributeSize) == (b->maxPipelineRayHitAttributeSize))) {
21536 onFail("a->maxPipelineRayHitAttributeSize (Error: Value not equal)");
21537 };
21538 }
21539
checkEqual_VkRayTracingPipelineCreateInfoKHR(const VkRayTracingPipelineCreateInfoKHR * a,const VkRayTracingPipelineCreateInfoKHR * b,OnFailCompareFunc onFail)21540 void checkEqual_VkRayTracingPipelineCreateInfoKHR(const VkRayTracingPipelineCreateInfoKHR* a,
21541 const VkRayTracingPipelineCreateInfoKHR* b,
21542 OnFailCompareFunc onFail) {
21543 if (!((a->sType) == (b->sType))) {
21544 onFail("a->sType (Error: Value not equal)");
21545 };
21546 if (a->pNext) {
21547 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21548 }
21549 if (!((a->flags) == (b->flags))) {
21550 onFail("a->flags (Error: Value not equal)");
21551 };
21552 if (!((a->stageCount) == (b->stageCount))) {
21553 onFail("a->stageCount (Error: Value not equal)");
21554 };
21555 if ((a->pStages) && (b->pStages)) {
21556 if (!((a->stageCount) == (b->stageCount))) {
21557 onFail("a->pStages (Error: Lengths not equal)");
21558 };
21559 if ((a->stageCount) == (b->stageCount)) {
21560 if (a) {
21561 for (uint32_t i = 0; i < (uint32_t)a->stageCount; ++i) {
21562 checkEqual_VkPipelineShaderStageCreateInfo(a->pStages + i, b->pStages + i,
21563 onFail);
21564 }
21565 }
21566 }
21567 }
21568 if (!((a->groupCount) == (b->groupCount))) {
21569 onFail("a->groupCount (Error: Value not equal)");
21570 };
21571 if ((a->pGroups) && (b->pGroups)) {
21572 if (!((a->groupCount) == (b->groupCount))) {
21573 onFail("a->pGroups (Error: Lengths not equal)");
21574 };
21575 if ((a->groupCount) == (b->groupCount)) {
21576 if (a) {
21577 for (uint32_t i = 0; i < (uint32_t)a->groupCount; ++i) {
21578 checkEqual_VkRayTracingShaderGroupCreateInfoKHR(a->pGroups + i, b->pGroups + i,
21579 onFail);
21580 }
21581 }
21582 }
21583 }
21584 if (!((a->maxPipelineRayRecursionDepth) == (b->maxPipelineRayRecursionDepth))) {
21585 onFail("a->maxPipelineRayRecursionDepth (Error: Value not equal)");
21586 };
21587 if (!((!(a->pLibraryInfo) && !(b->pLibraryInfo)) || ((a->pLibraryInfo) && (b->pLibraryInfo)))) {
21588 onFail("a->pLibraryInfo (Error: Mismatch in optional field)");
21589 };
21590 if (a->pLibraryInfo && b->pLibraryInfo) {
21591 if ((a->pLibraryInfo) && (b->pLibraryInfo)) {
21592 checkEqual_VkPipelineLibraryCreateInfoKHR(a->pLibraryInfo, b->pLibraryInfo, onFail);
21593 }
21594 }
21595 if (!((!(a->pLibraryInterface) && !(b->pLibraryInterface)) ||
21596 ((a->pLibraryInterface) && (b->pLibraryInterface)))) {
21597 onFail("a->pLibraryInterface (Error: Mismatch in optional field)");
21598 };
21599 if (a->pLibraryInterface && b->pLibraryInterface) {
21600 if ((a->pLibraryInterface) && (b->pLibraryInterface)) {
21601 checkEqual_VkRayTracingPipelineInterfaceCreateInfoKHR(a->pLibraryInterface,
21602 b->pLibraryInterface, onFail);
21603 }
21604 }
21605 if (!((!(a->pDynamicState) && !(b->pDynamicState)) ||
21606 ((a->pDynamicState) && (b->pDynamicState)))) {
21607 onFail("a->pDynamicState (Error: Mismatch in optional field)");
21608 };
21609 if (a->pDynamicState && b->pDynamicState) {
21610 if ((a->pDynamicState) && (b->pDynamicState)) {
21611 checkEqual_VkPipelineDynamicStateCreateInfo(a->pDynamicState, b->pDynamicState, onFail);
21612 }
21613 }
21614 if (!((a->layout) == (b->layout))) {
21615 onFail("a->layout (Error: Value not equal)");
21616 };
21617 if (!((a->basePipelineHandle) == (b->basePipelineHandle))) {
21618 onFail("a->basePipelineHandle (Error: Value not equal)");
21619 };
21620 if (!((a->basePipelineIndex) == (b->basePipelineIndex))) {
21621 onFail("a->basePipelineIndex (Error: Value not equal)");
21622 };
21623 }
21624
checkEqual_VkPhysicalDeviceRayTracingPipelineFeaturesKHR(const VkPhysicalDeviceRayTracingPipelineFeaturesKHR * a,const VkPhysicalDeviceRayTracingPipelineFeaturesKHR * b,OnFailCompareFunc onFail)21625 void checkEqual_VkPhysicalDeviceRayTracingPipelineFeaturesKHR(
21626 const VkPhysicalDeviceRayTracingPipelineFeaturesKHR* a,
21627 const VkPhysicalDeviceRayTracingPipelineFeaturesKHR* b, OnFailCompareFunc onFail) {
21628 if (!((a->sType) == (b->sType))) {
21629 onFail("a->sType (Error: Value not equal)");
21630 };
21631 if (a->pNext) {
21632 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21633 }
21634 if (!((a->rayTracingPipeline) == (b->rayTracingPipeline))) {
21635 onFail("a->rayTracingPipeline (Error: Value not equal)");
21636 };
21637 if (!((a->rayTracingPipelineShaderGroupHandleCaptureReplay) ==
21638 (b->rayTracingPipelineShaderGroupHandleCaptureReplay))) {
21639 onFail("a->rayTracingPipelineShaderGroupHandleCaptureReplay (Error: Value not equal)");
21640 };
21641 if (!((a->rayTracingPipelineShaderGroupHandleCaptureReplayMixed) ==
21642 (b->rayTracingPipelineShaderGroupHandleCaptureReplayMixed))) {
21643 onFail("a->rayTracingPipelineShaderGroupHandleCaptureReplayMixed (Error: Value not equal)");
21644 };
21645 if (!((a->rayTracingPipelineTraceRaysIndirect) == (b->rayTracingPipelineTraceRaysIndirect))) {
21646 onFail("a->rayTracingPipelineTraceRaysIndirect (Error: Value not equal)");
21647 };
21648 if (!((a->rayTraversalPrimitiveCulling) == (b->rayTraversalPrimitiveCulling))) {
21649 onFail("a->rayTraversalPrimitiveCulling (Error: Value not equal)");
21650 };
21651 }
21652
checkEqual_VkPhysicalDeviceRayTracingPipelinePropertiesKHR(const VkPhysicalDeviceRayTracingPipelinePropertiesKHR * a,const VkPhysicalDeviceRayTracingPipelinePropertiesKHR * b,OnFailCompareFunc onFail)21653 void checkEqual_VkPhysicalDeviceRayTracingPipelinePropertiesKHR(
21654 const VkPhysicalDeviceRayTracingPipelinePropertiesKHR* a,
21655 const VkPhysicalDeviceRayTracingPipelinePropertiesKHR* b, OnFailCompareFunc onFail) {
21656 if (!((a->sType) == (b->sType))) {
21657 onFail("a->sType (Error: Value not equal)");
21658 };
21659 if (a->pNext) {
21660 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21661 }
21662 if (!((a->shaderGroupHandleSize) == (b->shaderGroupHandleSize))) {
21663 onFail("a->shaderGroupHandleSize (Error: Value not equal)");
21664 };
21665 if (!((a->maxRayRecursionDepth) == (b->maxRayRecursionDepth))) {
21666 onFail("a->maxRayRecursionDepth (Error: Value not equal)");
21667 };
21668 if (!((a->maxShaderGroupStride) == (b->maxShaderGroupStride))) {
21669 onFail("a->maxShaderGroupStride (Error: Value not equal)");
21670 };
21671 if (!((a->shaderGroupBaseAlignment) == (b->shaderGroupBaseAlignment))) {
21672 onFail("a->shaderGroupBaseAlignment (Error: Value not equal)");
21673 };
21674 if (!((a->shaderGroupHandleCaptureReplaySize) == (b->shaderGroupHandleCaptureReplaySize))) {
21675 onFail("a->shaderGroupHandleCaptureReplaySize (Error: Value not equal)");
21676 };
21677 if (!((a->maxRayDispatchInvocationCount) == (b->maxRayDispatchInvocationCount))) {
21678 onFail("a->maxRayDispatchInvocationCount (Error: Value not equal)");
21679 };
21680 if (!((a->shaderGroupHandleAlignment) == (b->shaderGroupHandleAlignment))) {
21681 onFail("a->shaderGroupHandleAlignment (Error: Value not equal)");
21682 };
21683 if (!((a->maxRayHitAttributeSize) == (b->maxRayHitAttributeSize))) {
21684 onFail("a->maxRayHitAttributeSize (Error: Value not equal)");
21685 };
21686 }
21687
checkEqual_VkStridedDeviceAddressRegionKHR(const VkStridedDeviceAddressRegionKHR * a,const VkStridedDeviceAddressRegionKHR * b,OnFailCompareFunc onFail)21688 void checkEqual_VkStridedDeviceAddressRegionKHR(const VkStridedDeviceAddressRegionKHR* a,
21689 const VkStridedDeviceAddressRegionKHR* b,
21690 OnFailCompareFunc onFail) {
21691 if (!((a->deviceAddress) == (b->deviceAddress))) {
21692 onFail("a->deviceAddress (Error: Value not equal)");
21693 };
21694 if (!((a->stride) == (b->stride))) {
21695 onFail("a->stride (Error: Value not equal)");
21696 };
21697 if (!((a->size) == (b->size))) {
21698 onFail("a->size (Error: Value not equal)");
21699 };
21700 }
21701
checkEqual_VkTraceRaysIndirectCommandKHR(const VkTraceRaysIndirectCommandKHR * a,const VkTraceRaysIndirectCommandKHR * b,OnFailCompareFunc onFail)21702 void checkEqual_VkTraceRaysIndirectCommandKHR(const VkTraceRaysIndirectCommandKHR* a,
21703 const VkTraceRaysIndirectCommandKHR* b,
21704 OnFailCompareFunc onFail) {
21705 if (!((a->width) == (b->width))) {
21706 onFail("a->width (Error: Value not equal)");
21707 };
21708 if (!((a->height) == (b->height))) {
21709 onFail("a->height (Error: Value not equal)");
21710 };
21711 if (!((a->depth) == (b->depth))) {
21712 onFail("a->depth (Error: Value not equal)");
21713 };
21714 }
21715
21716 #endif
21717 #ifdef VK_KHR_ray_query
checkEqual_VkPhysicalDeviceRayQueryFeaturesKHR(const VkPhysicalDeviceRayQueryFeaturesKHR * a,const VkPhysicalDeviceRayQueryFeaturesKHR * b,OnFailCompareFunc onFail)21718 void checkEqual_VkPhysicalDeviceRayQueryFeaturesKHR(const VkPhysicalDeviceRayQueryFeaturesKHR* a,
21719 const VkPhysicalDeviceRayQueryFeaturesKHR* b,
21720 OnFailCompareFunc onFail) {
21721 if (!((a->sType) == (b->sType))) {
21722 onFail("a->sType (Error: Value not equal)");
21723 };
21724 if (a->pNext) {
21725 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21726 }
21727 if (!((a->rayQuery) == (b->rayQuery))) {
21728 onFail("a->rayQuery (Error: Value not equal)");
21729 };
21730 }
21731
21732 #endif
21733 #ifdef VK_EXT_mesh_shader
checkEqual_VkPhysicalDeviceMeshShaderFeaturesEXT(const VkPhysicalDeviceMeshShaderFeaturesEXT * a,const VkPhysicalDeviceMeshShaderFeaturesEXT * b,OnFailCompareFunc onFail)21734 void checkEqual_VkPhysicalDeviceMeshShaderFeaturesEXT(
21735 const VkPhysicalDeviceMeshShaderFeaturesEXT* a, const VkPhysicalDeviceMeshShaderFeaturesEXT* b,
21736 OnFailCompareFunc onFail) {
21737 if (!((a->sType) == (b->sType))) {
21738 onFail("a->sType (Error: Value not equal)");
21739 };
21740 if (a->pNext) {
21741 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21742 }
21743 if (!((a->taskShader) == (b->taskShader))) {
21744 onFail("a->taskShader (Error: Value not equal)");
21745 };
21746 if (!((a->meshShader) == (b->meshShader))) {
21747 onFail("a->meshShader (Error: Value not equal)");
21748 };
21749 if (!((a->multiviewMeshShader) == (b->multiviewMeshShader))) {
21750 onFail("a->multiviewMeshShader (Error: Value not equal)");
21751 };
21752 if (!((a->primitiveFragmentShadingRateMeshShader) ==
21753 (b->primitiveFragmentShadingRateMeshShader))) {
21754 onFail("a->primitiveFragmentShadingRateMeshShader (Error: Value not equal)");
21755 };
21756 if (!((a->meshShaderQueries) == (b->meshShaderQueries))) {
21757 onFail("a->meshShaderQueries (Error: Value not equal)");
21758 };
21759 }
21760
checkEqual_VkPhysicalDeviceMeshShaderPropertiesEXT(const VkPhysicalDeviceMeshShaderPropertiesEXT * a,const VkPhysicalDeviceMeshShaderPropertiesEXT * b,OnFailCompareFunc onFail)21761 void checkEqual_VkPhysicalDeviceMeshShaderPropertiesEXT(
21762 const VkPhysicalDeviceMeshShaderPropertiesEXT* a,
21763 const VkPhysicalDeviceMeshShaderPropertiesEXT* b, OnFailCompareFunc onFail) {
21764 if (!((a->sType) == (b->sType))) {
21765 onFail("a->sType (Error: Value not equal)");
21766 };
21767 if (a->pNext) {
21768 checkEqual_extension_struct(a->pNext, b->pNext, onFail);
21769 }
21770 if (!((a->maxTaskWorkGroupTotalCount) == (b->maxTaskWorkGroupTotalCount))) {
21771 onFail("a->maxTaskWorkGroupTotalCount (Error: Value not equal)");
21772 };
21773 if (!((memcmp(a->maxTaskWorkGroupCount, b->maxTaskWorkGroupCount, 3 * sizeof(uint32_t)) ==
21774 0))) {
21775 onFail("a->maxTaskWorkGroupCount (Error: Unequal static array)");
21776 };
21777 if (!((a->maxTaskWorkGroupInvocations) == (b->maxTaskWorkGroupInvocations))) {
21778 onFail("a->maxTaskWorkGroupInvocations (Error: Value not equal)");
21779 };
21780 if (!((memcmp(a->maxTaskWorkGroupSize, b->maxTaskWorkGroupSize, 3 * sizeof(uint32_t)) == 0))) {
21781 onFail("a->maxTaskWorkGroupSize (Error: Unequal static array)");
21782 };
21783 if (!((a->maxTaskPayloadSize) == (b->maxTaskPayloadSize))) {
21784 onFail("a->maxTaskPayloadSize (Error: Value not equal)");
21785 };
21786 if (!((a->maxTaskSharedMemorySize) == (b->maxTaskSharedMemorySize))) {
21787 onFail("a->maxTaskSharedMemorySize (Error: Value not equal)");
21788 };
21789 if (!((a->maxTaskPayloadAndSharedMemorySize) == (b->maxTaskPayloadAndSharedMemorySize))) {
21790 onFail("a->maxTaskPayloadAndSharedMemorySize (Error: Value not equal)");
21791 };
21792 if (!((a->maxMeshWorkGroupTotalCount) == (b->maxMeshWorkGroupTotalCount))) {
21793 onFail("a->maxMeshWorkGroupTotalCount (Error: Value not equal)");
21794 };
21795 if (!((memcmp(a->maxMeshWorkGroupCount, b->maxMeshWorkGroupCount, 3 * sizeof(uint32_t)) ==
21796 0))) {
21797 onFail("a->maxMeshWorkGroupCount (Error: Unequal static array)");
21798 };
21799 if (!((a->maxMeshWorkGroupInvocations) == (b->maxMeshWorkGroupInvocations))) {
21800 onFail("a->maxMeshWorkGroupInvocations (Error: Value not equal)");
21801 };
21802 if (!((memcmp(a->maxMeshWorkGroupSize, b->maxMeshWorkGroupSize, 3 * sizeof(uint32_t)) == 0))) {
21803 onFail("a->maxMeshWorkGroupSize (Error: Unequal static array)");
21804 };
21805 if (!((a->maxMeshSharedMemorySize) == (b->maxMeshSharedMemorySize))) {
21806 onFail("a->maxMeshSharedMemorySize (Error: Value not equal)");
21807 };
21808 if (!((a->maxMeshPayloadAndSharedMemorySize) == (b->maxMeshPayloadAndSharedMemorySize))) {
21809 onFail("a->maxMeshPayloadAndSharedMemorySize (Error: Value not equal)");
21810 };
21811 if (!((a->maxMeshOutputMemorySize) == (b->maxMeshOutputMemorySize))) {
21812 onFail("a->maxMeshOutputMemorySize (Error: Value not equal)");
21813 };
21814 if (!((a->maxMeshPayloadAndOutputMemorySize) == (b->maxMeshPayloadAndOutputMemorySize))) {
21815 onFail("a->maxMeshPayloadAndOutputMemorySize (Error: Value not equal)");
21816 };
21817 if (!((a->maxMeshOutputComponents) == (b->maxMeshOutputComponents))) {
21818 onFail("a->maxMeshOutputComponents (Error: Value not equal)");
21819 };
21820 if (!((a->maxMeshOutputVertices) == (b->maxMeshOutputVertices))) {
21821 onFail("a->maxMeshOutputVertices (Error: Value not equal)");
21822 };
21823 if (!((a->maxMeshOutputPrimitives) == (b->maxMeshOutputPrimitives))) {
21824 onFail("a->maxMeshOutputPrimitives (Error: Value not equal)");
21825 };
21826 if (!((a->maxMeshOutputLayers) == (b->maxMeshOutputLayers))) {
21827 onFail("a->maxMeshOutputLayers (Error: Value not equal)");
21828 };
21829 if (!((a->maxMeshMultiviewViewCount) == (b->maxMeshMultiviewViewCount))) {
21830 onFail("a->maxMeshMultiviewViewCount (Error: Value not equal)");
21831 };
21832 if (!((a->meshOutputPerVertexGranularity) == (b->meshOutputPerVertexGranularity))) {
21833 onFail("a->meshOutputPerVertexGranularity (Error: Value not equal)");
21834 };
21835 if (!((a->meshOutputPerPrimitiveGranularity) == (b->meshOutputPerPrimitiveGranularity))) {
21836 onFail("a->meshOutputPerPrimitiveGranularity (Error: Value not equal)");
21837 };
21838 if (!((a->maxPreferredTaskWorkGroupInvocations) == (b->maxPreferredTaskWorkGroupInvocations))) {
21839 onFail("a->maxPreferredTaskWorkGroupInvocations (Error: Value not equal)");
21840 };
21841 if (!((a->maxPreferredMeshWorkGroupInvocations) == (b->maxPreferredMeshWorkGroupInvocations))) {
21842 onFail("a->maxPreferredMeshWorkGroupInvocations (Error: Value not equal)");
21843 };
21844 if (!((a->prefersLocalInvocationVertexOutput) == (b->prefersLocalInvocationVertexOutput))) {
21845 onFail("a->prefersLocalInvocationVertexOutput (Error: Value not equal)");
21846 };
21847 if (!((a->prefersLocalInvocationPrimitiveOutput) ==
21848 (b->prefersLocalInvocationPrimitiveOutput))) {
21849 onFail("a->prefersLocalInvocationPrimitiveOutput (Error: Value not equal)");
21850 };
21851 if (!((a->prefersCompactVertexOutput) == (b->prefersCompactVertexOutput))) {
21852 onFail("a->prefersCompactVertexOutput (Error: Value not equal)");
21853 };
21854 if (!((a->prefersCompactPrimitiveOutput) == (b->prefersCompactPrimitiveOutput))) {
21855 onFail("a->prefersCompactPrimitiveOutput (Error: Value not equal)");
21856 };
21857 }
21858
checkEqual_VkDrawMeshTasksIndirectCommandEXT(const VkDrawMeshTasksIndirectCommandEXT * a,const VkDrawMeshTasksIndirectCommandEXT * b,OnFailCompareFunc onFail)21859 void checkEqual_VkDrawMeshTasksIndirectCommandEXT(const VkDrawMeshTasksIndirectCommandEXT* a,
21860 const VkDrawMeshTasksIndirectCommandEXT* b,
21861 OnFailCompareFunc onFail) {
21862 if (!((a->groupCountX) == (b->groupCountX))) {
21863 onFail("a->groupCountX (Error: Value not equal)");
21864 };
21865 if (!((a->groupCountY) == (b->groupCountY))) {
21866 onFail("a->groupCountY (Error: Value not equal)");
21867 };
21868 if (!((a->groupCountZ) == (b->groupCountZ))) {
21869 onFail("a->groupCountZ (Error: Value not equal)");
21870 };
21871 }
21872
21873 #endif
checkEqual_extension_struct(const void * structExtension,const void * structExtension2,OnFailCompareFunc onFail)21874 void checkEqual_extension_struct(const void* structExtension, const void* structExtension2,
21875 OnFailCompareFunc onFail) {
21876 if (!structExtension) {
21877 return;
21878 }
21879 uint32_t structType = (uint32_t)goldfish_vk_struct_type(structExtension);
21880 switch (structType) {
21881 #ifdef VK_VERSION_1_0
21882 case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: {
21883 checkEqual_VkShaderModuleCreateInfo(
21884 reinterpret_cast<const VkShaderModuleCreateInfo*>(structExtension),
21885 reinterpret_cast<const VkShaderModuleCreateInfo*>(structExtension2), onFail);
21886 break;
21887 }
21888 #endif
21889 #ifdef VK_VERSION_1_1
21890 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: {
21891 checkEqual_VkPhysicalDeviceSubgroupProperties(
21892 reinterpret_cast<const VkPhysicalDeviceSubgroupProperties*>(structExtension),
21893 reinterpret_cast<const VkPhysicalDeviceSubgroupProperties*>(structExtension2),
21894 onFail);
21895 break;
21896 }
21897 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: {
21898 checkEqual_VkPhysicalDevice16BitStorageFeatures(
21899 reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures*>(structExtension),
21900 reinterpret_cast<const VkPhysicalDevice16BitStorageFeatures*>(structExtension2),
21901 onFail);
21902 break;
21903 }
21904 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: {
21905 checkEqual_VkMemoryDedicatedRequirements(
21906 reinterpret_cast<const VkMemoryDedicatedRequirements*>(structExtension),
21907 reinterpret_cast<const VkMemoryDedicatedRequirements*>(structExtension2), onFail);
21908 break;
21909 }
21910 case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: {
21911 checkEqual_VkMemoryDedicatedAllocateInfo(
21912 reinterpret_cast<const VkMemoryDedicatedAllocateInfo*>(structExtension),
21913 reinterpret_cast<const VkMemoryDedicatedAllocateInfo*>(structExtension2), onFail);
21914 break;
21915 }
21916 case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: {
21917 checkEqual_VkMemoryAllocateFlagsInfo(
21918 reinterpret_cast<const VkMemoryAllocateFlagsInfo*>(structExtension),
21919 reinterpret_cast<const VkMemoryAllocateFlagsInfo*>(structExtension2), onFail);
21920 break;
21921 }
21922 case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: {
21923 checkEqual_VkDeviceGroupRenderPassBeginInfo(
21924 reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo*>(structExtension),
21925 reinterpret_cast<const VkDeviceGroupRenderPassBeginInfo*>(structExtension2),
21926 onFail);
21927 break;
21928 }
21929 case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: {
21930 checkEqual_VkDeviceGroupCommandBufferBeginInfo(
21931 reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo*>(structExtension),
21932 reinterpret_cast<const VkDeviceGroupCommandBufferBeginInfo*>(structExtension2),
21933 onFail);
21934 break;
21935 }
21936 case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: {
21937 checkEqual_VkDeviceGroupSubmitInfo(
21938 reinterpret_cast<const VkDeviceGroupSubmitInfo*>(structExtension),
21939 reinterpret_cast<const VkDeviceGroupSubmitInfo*>(structExtension2), onFail);
21940 break;
21941 }
21942 case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: {
21943 checkEqual_VkDeviceGroupBindSparseInfo(
21944 reinterpret_cast<const VkDeviceGroupBindSparseInfo*>(structExtension),
21945 reinterpret_cast<const VkDeviceGroupBindSparseInfo*>(structExtension2), onFail);
21946 break;
21947 }
21948 case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: {
21949 checkEqual_VkBindBufferMemoryDeviceGroupInfo(
21950 reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo*>(structExtension),
21951 reinterpret_cast<const VkBindBufferMemoryDeviceGroupInfo*>(structExtension2),
21952 onFail);
21953 break;
21954 }
21955 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: {
21956 checkEqual_VkBindImageMemoryDeviceGroupInfo(
21957 reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo*>(structExtension),
21958 reinterpret_cast<const VkBindImageMemoryDeviceGroupInfo*>(structExtension2),
21959 onFail);
21960 break;
21961 }
21962 case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: {
21963 checkEqual_VkDeviceGroupDeviceCreateInfo(
21964 reinterpret_cast<const VkDeviceGroupDeviceCreateInfo*>(structExtension),
21965 reinterpret_cast<const VkDeviceGroupDeviceCreateInfo*>(structExtension2), onFail);
21966 break;
21967 }
21968 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: {
21969 checkEqual_VkPhysicalDeviceFeatures2(
21970 reinterpret_cast<const VkPhysicalDeviceFeatures2*>(structExtension),
21971 reinterpret_cast<const VkPhysicalDeviceFeatures2*>(structExtension2), onFail);
21972 break;
21973 }
21974 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: {
21975 checkEqual_VkPhysicalDevicePointClippingProperties(
21976 reinterpret_cast<const VkPhysicalDevicePointClippingProperties*>(structExtension),
21977 reinterpret_cast<const VkPhysicalDevicePointClippingProperties*>(structExtension2),
21978 onFail);
21979 break;
21980 }
21981 case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: {
21982 checkEqual_VkRenderPassInputAttachmentAspectCreateInfo(
21983 reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo*>(
21984 structExtension),
21985 reinterpret_cast<const VkRenderPassInputAttachmentAspectCreateInfo*>(
21986 structExtension2),
21987 onFail);
21988 break;
21989 }
21990 case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: {
21991 checkEqual_VkImageViewUsageCreateInfo(
21992 reinterpret_cast<const VkImageViewUsageCreateInfo*>(structExtension),
21993 reinterpret_cast<const VkImageViewUsageCreateInfo*>(structExtension2), onFail);
21994 break;
21995 }
21996 case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: {
21997 checkEqual_VkPipelineTessellationDomainOriginStateCreateInfo(
21998 reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo*>(
21999 structExtension),
22000 reinterpret_cast<const VkPipelineTessellationDomainOriginStateCreateInfo*>(
22001 structExtension2),
22002 onFail);
22003 break;
22004 }
22005 case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: {
22006 checkEqual_VkRenderPassMultiviewCreateInfo(
22007 reinterpret_cast<const VkRenderPassMultiviewCreateInfo*>(structExtension),
22008 reinterpret_cast<const VkRenderPassMultiviewCreateInfo*>(structExtension2), onFail);
22009 break;
22010 }
22011 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: {
22012 checkEqual_VkPhysicalDeviceMultiviewFeatures(
22013 reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures*>(structExtension),
22014 reinterpret_cast<const VkPhysicalDeviceMultiviewFeatures*>(structExtension2),
22015 onFail);
22016 break;
22017 }
22018 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: {
22019 checkEqual_VkPhysicalDeviceMultiviewProperties(
22020 reinterpret_cast<const VkPhysicalDeviceMultiviewProperties*>(structExtension),
22021 reinterpret_cast<const VkPhysicalDeviceMultiviewProperties*>(structExtension2),
22022 onFail);
22023 break;
22024 }
22025 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: {
22026 checkEqual_VkPhysicalDeviceVariablePointersFeatures(
22027 reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures*>(structExtension),
22028 reinterpret_cast<const VkPhysicalDeviceVariablePointersFeatures*>(structExtension2),
22029 onFail);
22030 break;
22031 }
22032 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: {
22033 checkEqual_VkPhysicalDeviceProtectedMemoryFeatures(
22034 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension),
22035 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension2),
22036 onFail);
22037 break;
22038 }
22039 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: {
22040 checkEqual_VkPhysicalDeviceProtectedMemoryProperties(
22041 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties*>(structExtension),
22042 reinterpret_cast<const VkPhysicalDeviceProtectedMemoryProperties*>(
22043 structExtension2),
22044 onFail);
22045 break;
22046 }
22047 case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: {
22048 checkEqual_VkProtectedSubmitInfo(
22049 reinterpret_cast<const VkProtectedSubmitInfo*>(structExtension),
22050 reinterpret_cast<const VkProtectedSubmitInfo*>(structExtension2), onFail);
22051 break;
22052 }
22053 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: {
22054 checkEqual_VkSamplerYcbcrConversionInfo(
22055 reinterpret_cast<const VkSamplerYcbcrConversionInfo*>(structExtension),
22056 reinterpret_cast<const VkSamplerYcbcrConversionInfo*>(structExtension2), onFail);
22057 break;
22058 }
22059 case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: {
22060 checkEqual_VkBindImagePlaneMemoryInfo(
22061 reinterpret_cast<const VkBindImagePlaneMemoryInfo*>(structExtension),
22062 reinterpret_cast<const VkBindImagePlaneMemoryInfo*>(structExtension2), onFail);
22063 break;
22064 }
22065 case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: {
22066 checkEqual_VkImagePlaneMemoryRequirementsInfo(
22067 reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo*>(structExtension),
22068 reinterpret_cast<const VkImagePlaneMemoryRequirementsInfo*>(structExtension2),
22069 onFail);
22070 break;
22071 }
22072 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: {
22073 checkEqual_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
22074 reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures*>(
22075 structExtension),
22076 reinterpret_cast<const VkPhysicalDeviceSamplerYcbcrConversionFeatures*>(
22077 structExtension2),
22078 onFail);
22079 break;
22080 }
22081 case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: {
22082 checkEqual_VkSamplerYcbcrConversionImageFormatProperties(
22083 reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>(
22084 structExtension),
22085 reinterpret_cast<const VkSamplerYcbcrConversionImageFormatProperties*>(
22086 structExtension2),
22087 onFail);
22088 break;
22089 }
22090 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: {
22091 checkEqual_VkPhysicalDeviceExternalImageFormatInfo(
22092 reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo*>(structExtension),
22093 reinterpret_cast<const VkPhysicalDeviceExternalImageFormatInfo*>(structExtension2),
22094 onFail);
22095 break;
22096 }
22097 case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: {
22098 checkEqual_VkExternalImageFormatProperties(
22099 reinterpret_cast<const VkExternalImageFormatProperties*>(structExtension),
22100 reinterpret_cast<const VkExternalImageFormatProperties*>(structExtension2), onFail);
22101 break;
22102 }
22103 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: {
22104 checkEqual_VkPhysicalDeviceIDProperties(
22105 reinterpret_cast<const VkPhysicalDeviceIDProperties*>(structExtension),
22106 reinterpret_cast<const VkPhysicalDeviceIDProperties*>(structExtension2), onFail);
22107 break;
22108 }
22109 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: {
22110 checkEqual_VkExternalMemoryImageCreateInfo(
22111 reinterpret_cast<const VkExternalMemoryImageCreateInfo*>(structExtension),
22112 reinterpret_cast<const VkExternalMemoryImageCreateInfo*>(structExtension2), onFail);
22113 break;
22114 }
22115 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: {
22116 checkEqual_VkExternalMemoryBufferCreateInfo(
22117 reinterpret_cast<const VkExternalMemoryBufferCreateInfo*>(structExtension),
22118 reinterpret_cast<const VkExternalMemoryBufferCreateInfo*>(structExtension2),
22119 onFail);
22120 break;
22121 }
22122 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: {
22123 checkEqual_VkExportMemoryAllocateInfo(
22124 reinterpret_cast<const VkExportMemoryAllocateInfo*>(structExtension),
22125 reinterpret_cast<const VkExportMemoryAllocateInfo*>(structExtension2), onFail);
22126 break;
22127 }
22128 case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: {
22129 checkEqual_VkExportFenceCreateInfo(
22130 reinterpret_cast<const VkExportFenceCreateInfo*>(structExtension),
22131 reinterpret_cast<const VkExportFenceCreateInfo*>(structExtension2), onFail);
22132 break;
22133 }
22134 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: {
22135 checkEqual_VkExportSemaphoreCreateInfo(
22136 reinterpret_cast<const VkExportSemaphoreCreateInfo*>(structExtension),
22137 reinterpret_cast<const VkExportSemaphoreCreateInfo*>(structExtension2), onFail);
22138 break;
22139 }
22140 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: {
22141 checkEqual_VkPhysicalDeviceMaintenance3Properties(
22142 reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties*>(structExtension),
22143 reinterpret_cast<const VkPhysicalDeviceMaintenance3Properties*>(structExtension2),
22144 onFail);
22145 break;
22146 }
22147 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: {
22148 checkEqual_VkPhysicalDeviceShaderDrawParametersFeatures(
22149 reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures*>(
22150 structExtension),
22151 reinterpret_cast<const VkPhysicalDeviceShaderDrawParametersFeatures*>(
22152 structExtension2),
22153 onFail);
22154 break;
22155 }
22156 #endif
22157 #ifdef VK_VERSION_1_2
22158 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES: {
22159 checkEqual_VkPhysicalDeviceVulkan11Features(
22160 reinterpret_cast<const VkPhysicalDeviceVulkan11Features*>(structExtension),
22161 reinterpret_cast<const VkPhysicalDeviceVulkan11Features*>(structExtension2),
22162 onFail);
22163 break;
22164 }
22165 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES: {
22166 checkEqual_VkPhysicalDeviceVulkan11Properties(
22167 reinterpret_cast<const VkPhysicalDeviceVulkan11Properties*>(structExtension),
22168 reinterpret_cast<const VkPhysicalDeviceVulkan11Properties*>(structExtension2),
22169 onFail);
22170 break;
22171 }
22172 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES: {
22173 checkEqual_VkPhysicalDeviceVulkan12Features(
22174 reinterpret_cast<const VkPhysicalDeviceVulkan12Features*>(structExtension),
22175 reinterpret_cast<const VkPhysicalDeviceVulkan12Features*>(structExtension2),
22176 onFail);
22177 break;
22178 }
22179 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES: {
22180 checkEqual_VkPhysicalDeviceVulkan12Properties(
22181 reinterpret_cast<const VkPhysicalDeviceVulkan12Properties*>(structExtension),
22182 reinterpret_cast<const VkPhysicalDeviceVulkan12Properties*>(structExtension2),
22183 onFail);
22184 break;
22185 }
22186 case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO: {
22187 checkEqual_VkImageFormatListCreateInfo(
22188 reinterpret_cast<const VkImageFormatListCreateInfo*>(structExtension),
22189 reinterpret_cast<const VkImageFormatListCreateInfo*>(structExtension2), onFail);
22190 break;
22191 }
22192 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: {
22193 checkEqual_VkPhysicalDevice8BitStorageFeatures(
22194 reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures*>(structExtension),
22195 reinterpret_cast<const VkPhysicalDevice8BitStorageFeatures*>(structExtension2),
22196 onFail);
22197 break;
22198 }
22199 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES: {
22200 checkEqual_VkPhysicalDeviceDriverProperties(
22201 reinterpret_cast<const VkPhysicalDeviceDriverProperties*>(structExtension),
22202 reinterpret_cast<const VkPhysicalDeviceDriverProperties*>(structExtension2),
22203 onFail);
22204 break;
22205 }
22206 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES: {
22207 checkEqual_VkPhysicalDeviceShaderAtomicInt64Features(
22208 reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features*>(structExtension),
22209 reinterpret_cast<const VkPhysicalDeviceShaderAtomicInt64Features*>(
22210 structExtension2),
22211 onFail);
22212 break;
22213 }
22214 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: {
22215 checkEqual_VkPhysicalDeviceShaderFloat16Int8Features(
22216 reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features*>(structExtension),
22217 reinterpret_cast<const VkPhysicalDeviceShaderFloat16Int8Features*>(
22218 structExtension2),
22219 onFail);
22220 break;
22221 }
22222 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES: {
22223 checkEqual_VkPhysicalDeviceFloatControlsProperties(
22224 reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties*>(structExtension),
22225 reinterpret_cast<const VkPhysicalDeviceFloatControlsProperties*>(structExtension2),
22226 onFail);
22227 break;
22228 }
22229 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO: {
22230 checkEqual_VkDescriptorSetLayoutBindingFlagsCreateInfo(
22231 reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo*>(
22232 structExtension),
22233 reinterpret_cast<const VkDescriptorSetLayoutBindingFlagsCreateInfo*>(
22234 structExtension2),
22235 onFail);
22236 break;
22237 }
22238 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES: {
22239 checkEqual_VkPhysicalDeviceDescriptorIndexingFeatures(
22240 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures*>(
22241 structExtension),
22242 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingFeatures*>(
22243 structExtension2),
22244 onFail);
22245 break;
22246 }
22247 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES: {
22248 checkEqual_VkPhysicalDeviceDescriptorIndexingProperties(
22249 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties*>(
22250 structExtension),
22251 reinterpret_cast<const VkPhysicalDeviceDescriptorIndexingProperties*>(
22252 structExtension2),
22253 onFail);
22254 break;
22255 }
22256 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO: {
22257 checkEqual_VkDescriptorSetVariableDescriptorCountAllocateInfo(
22258 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo*>(
22259 structExtension),
22260 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountAllocateInfo*>(
22261 structExtension2),
22262 onFail);
22263 break;
22264 }
22265 case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT: {
22266 checkEqual_VkDescriptorSetVariableDescriptorCountLayoutSupport(
22267 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport*>(
22268 structExtension),
22269 reinterpret_cast<const VkDescriptorSetVariableDescriptorCountLayoutSupport*>(
22270 structExtension2),
22271 onFail);
22272 break;
22273 }
22274 case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE: {
22275 checkEqual_VkSubpassDescriptionDepthStencilResolve(
22276 reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve*>(structExtension),
22277 reinterpret_cast<const VkSubpassDescriptionDepthStencilResolve*>(structExtension2),
22278 onFail);
22279 break;
22280 }
22281 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES: {
22282 checkEqual_VkPhysicalDeviceDepthStencilResolveProperties(
22283 reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties*>(
22284 structExtension),
22285 reinterpret_cast<const VkPhysicalDeviceDepthStencilResolveProperties*>(
22286 structExtension2),
22287 onFail);
22288 break;
22289 }
22290 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES: {
22291 checkEqual_VkPhysicalDeviceScalarBlockLayoutFeatures(
22292 reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures*>(structExtension),
22293 reinterpret_cast<const VkPhysicalDeviceScalarBlockLayoutFeatures*>(
22294 structExtension2),
22295 onFail);
22296 break;
22297 }
22298 case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO: {
22299 checkEqual_VkImageStencilUsageCreateInfo(
22300 reinterpret_cast<const VkImageStencilUsageCreateInfo*>(structExtension),
22301 reinterpret_cast<const VkImageStencilUsageCreateInfo*>(structExtension2), onFail);
22302 break;
22303 }
22304 case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO: {
22305 checkEqual_VkSamplerReductionModeCreateInfo(
22306 reinterpret_cast<const VkSamplerReductionModeCreateInfo*>(structExtension),
22307 reinterpret_cast<const VkSamplerReductionModeCreateInfo*>(structExtension2),
22308 onFail);
22309 break;
22310 }
22311 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES: {
22312 checkEqual_VkPhysicalDeviceSamplerFilterMinmaxProperties(
22313 reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties*>(
22314 structExtension),
22315 reinterpret_cast<const VkPhysicalDeviceSamplerFilterMinmaxProperties*>(
22316 structExtension2),
22317 onFail);
22318 break;
22319 }
22320 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES: {
22321 checkEqual_VkPhysicalDeviceVulkanMemoryModelFeatures(
22322 reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures*>(structExtension),
22323 reinterpret_cast<const VkPhysicalDeviceVulkanMemoryModelFeatures*>(
22324 structExtension2),
22325 onFail);
22326 break;
22327 }
22328 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES: {
22329 checkEqual_VkPhysicalDeviceImagelessFramebufferFeatures(
22330 reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures*>(
22331 structExtension),
22332 reinterpret_cast<const VkPhysicalDeviceImagelessFramebufferFeatures*>(
22333 structExtension2),
22334 onFail);
22335 break;
22336 }
22337 case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO: {
22338 checkEqual_VkFramebufferAttachmentsCreateInfo(
22339 reinterpret_cast<const VkFramebufferAttachmentsCreateInfo*>(structExtension),
22340 reinterpret_cast<const VkFramebufferAttachmentsCreateInfo*>(structExtension2),
22341 onFail);
22342 break;
22343 }
22344 case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO: {
22345 checkEqual_VkRenderPassAttachmentBeginInfo(
22346 reinterpret_cast<const VkRenderPassAttachmentBeginInfo*>(structExtension),
22347 reinterpret_cast<const VkRenderPassAttachmentBeginInfo*>(structExtension2), onFail);
22348 break;
22349 }
22350 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES: {
22351 checkEqual_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(
22352 reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>(
22353 structExtension),
22354 reinterpret_cast<const VkPhysicalDeviceUniformBufferStandardLayoutFeatures*>(
22355 structExtension2),
22356 onFail);
22357 break;
22358 }
22359 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES: {
22360 checkEqual_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(
22361 reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>(
22362 structExtension),
22363 reinterpret_cast<const VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures*>(
22364 structExtension2),
22365 onFail);
22366 break;
22367 }
22368 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES: {
22369 checkEqual_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(
22370 reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>(
22371 structExtension),
22372 reinterpret_cast<const VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures*>(
22373 structExtension2),
22374 onFail);
22375 break;
22376 }
22377 case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT: {
22378 checkEqual_VkAttachmentReferenceStencilLayout(
22379 reinterpret_cast<const VkAttachmentReferenceStencilLayout*>(structExtension),
22380 reinterpret_cast<const VkAttachmentReferenceStencilLayout*>(structExtension2),
22381 onFail);
22382 break;
22383 }
22384 case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT: {
22385 checkEqual_VkAttachmentDescriptionStencilLayout(
22386 reinterpret_cast<const VkAttachmentDescriptionStencilLayout*>(structExtension),
22387 reinterpret_cast<const VkAttachmentDescriptionStencilLayout*>(structExtension2),
22388 onFail);
22389 break;
22390 }
22391 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES: {
22392 checkEqual_VkPhysicalDeviceHostQueryResetFeatures(
22393 reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures*>(structExtension),
22394 reinterpret_cast<const VkPhysicalDeviceHostQueryResetFeatures*>(structExtension2),
22395 onFail);
22396 break;
22397 }
22398 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES: {
22399 checkEqual_VkPhysicalDeviceTimelineSemaphoreFeatures(
22400 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures*>(structExtension),
22401 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreFeatures*>(
22402 structExtension2),
22403 onFail);
22404 break;
22405 }
22406 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES: {
22407 checkEqual_VkPhysicalDeviceTimelineSemaphoreProperties(
22408 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties*>(
22409 structExtension),
22410 reinterpret_cast<const VkPhysicalDeviceTimelineSemaphoreProperties*>(
22411 structExtension2),
22412 onFail);
22413 break;
22414 }
22415 case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO: {
22416 checkEqual_VkSemaphoreTypeCreateInfo(
22417 reinterpret_cast<const VkSemaphoreTypeCreateInfo*>(structExtension),
22418 reinterpret_cast<const VkSemaphoreTypeCreateInfo*>(structExtension2), onFail);
22419 break;
22420 }
22421 case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO: {
22422 checkEqual_VkTimelineSemaphoreSubmitInfo(
22423 reinterpret_cast<const VkTimelineSemaphoreSubmitInfo*>(structExtension),
22424 reinterpret_cast<const VkTimelineSemaphoreSubmitInfo*>(structExtension2), onFail);
22425 break;
22426 }
22427 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES: {
22428 checkEqual_VkPhysicalDeviceBufferDeviceAddressFeatures(
22429 reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures*>(
22430 structExtension),
22431 reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeatures*>(
22432 structExtension2),
22433 onFail);
22434 break;
22435 }
22436 case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO: {
22437 checkEqual_VkBufferOpaqueCaptureAddressCreateInfo(
22438 reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo*>(structExtension),
22439 reinterpret_cast<const VkBufferOpaqueCaptureAddressCreateInfo*>(structExtension2),
22440 onFail);
22441 break;
22442 }
22443 case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO: {
22444 checkEqual_VkMemoryOpaqueCaptureAddressAllocateInfo(
22445 reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo*>(structExtension),
22446 reinterpret_cast<const VkMemoryOpaqueCaptureAddressAllocateInfo*>(structExtension2),
22447 onFail);
22448 break;
22449 }
22450 #endif
22451 #ifdef VK_VERSION_1_3
22452 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES: {
22453 checkEqual_VkPhysicalDeviceVulkan13Features(
22454 reinterpret_cast<const VkPhysicalDeviceVulkan13Features*>(structExtension),
22455 reinterpret_cast<const VkPhysicalDeviceVulkan13Features*>(structExtension2),
22456 onFail);
22457 break;
22458 }
22459 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES: {
22460 checkEqual_VkPhysicalDeviceVulkan13Properties(
22461 reinterpret_cast<const VkPhysicalDeviceVulkan13Properties*>(structExtension),
22462 reinterpret_cast<const VkPhysicalDeviceVulkan13Properties*>(structExtension2),
22463 onFail);
22464 break;
22465 }
22466 case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO: {
22467 checkEqual_VkPipelineCreationFeedbackCreateInfo(
22468 reinterpret_cast<const VkPipelineCreationFeedbackCreateInfo*>(structExtension),
22469 reinterpret_cast<const VkPipelineCreationFeedbackCreateInfo*>(structExtension2),
22470 onFail);
22471 break;
22472 }
22473 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES: {
22474 checkEqual_VkPhysicalDeviceShaderTerminateInvocationFeatures(
22475 reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeatures*>(
22476 structExtension),
22477 reinterpret_cast<const VkPhysicalDeviceShaderTerminateInvocationFeatures*>(
22478 structExtension2),
22479 onFail);
22480 break;
22481 }
22482 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES: {
22483 checkEqual_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(
22484 reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*>(
22485 structExtension),
22486 reinterpret_cast<const VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures*>(
22487 structExtension2),
22488 onFail);
22489 break;
22490 }
22491 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: {
22492 checkEqual_VkPhysicalDevicePrivateDataFeatures(
22493 reinterpret_cast<const VkPhysicalDevicePrivateDataFeatures*>(structExtension),
22494 reinterpret_cast<const VkPhysicalDevicePrivateDataFeatures*>(structExtension2),
22495 onFail);
22496 break;
22497 }
22498 case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO: {
22499 checkEqual_VkDevicePrivateDataCreateInfo(
22500 reinterpret_cast<const VkDevicePrivateDataCreateInfo*>(structExtension),
22501 reinterpret_cast<const VkDevicePrivateDataCreateInfo*>(structExtension2), onFail);
22502 break;
22503 }
22504 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES: {
22505 checkEqual_VkPhysicalDevicePipelineCreationCacheControlFeatures(
22506 reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeatures*>(
22507 structExtension),
22508 reinterpret_cast<const VkPhysicalDevicePipelineCreationCacheControlFeatures*>(
22509 structExtension2),
22510 onFail);
22511 break;
22512 }
22513 case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2: {
22514 checkEqual_VkMemoryBarrier2(reinterpret_cast<const VkMemoryBarrier2*>(structExtension),
22515 reinterpret_cast<const VkMemoryBarrier2*>(structExtension2),
22516 onFail);
22517 break;
22518 }
22519 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES: {
22520 checkEqual_VkPhysicalDeviceSynchronization2Features(
22521 reinterpret_cast<const VkPhysicalDeviceSynchronization2Features*>(structExtension),
22522 reinterpret_cast<const VkPhysicalDeviceSynchronization2Features*>(structExtension2),
22523 onFail);
22524 break;
22525 }
22526 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES: {
22527 checkEqual_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(
22528 reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*>(
22529 structExtension),
22530 reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures*>(
22531 structExtension2),
22532 onFail);
22533 break;
22534 }
22535 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES: {
22536 checkEqual_VkPhysicalDeviceImageRobustnessFeatures(
22537 reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeatures*>(structExtension),
22538 reinterpret_cast<const VkPhysicalDeviceImageRobustnessFeatures*>(structExtension2),
22539 onFail);
22540 break;
22541 }
22542 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES: {
22543 checkEqual_VkPhysicalDeviceSubgroupSizeControlFeatures(
22544 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeatures*>(
22545 structExtension),
22546 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlFeatures*>(
22547 structExtension2),
22548 onFail);
22549 break;
22550 }
22551 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES: {
22552 checkEqual_VkPhysicalDeviceSubgroupSizeControlProperties(
22553 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlProperties*>(
22554 structExtension),
22555 reinterpret_cast<const VkPhysicalDeviceSubgroupSizeControlProperties*>(
22556 structExtension2),
22557 onFail);
22558 break;
22559 }
22560 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO: {
22561 checkEqual_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(
22562 reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo*>(
22563 structExtension),
22564 reinterpret_cast<const VkPipelineShaderStageRequiredSubgroupSizeCreateInfo*>(
22565 structExtension2),
22566 onFail);
22567 break;
22568 }
22569 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES: {
22570 checkEqual_VkPhysicalDeviceInlineUniformBlockFeatures(
22571 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeatures*>(
22572 structExtension),
22573 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockFeatures*>(
22574 structExtension2),
22575 onFail);
22576 break;
22577 }
22578 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES: {
22579 checkEqual_VkPhysicalDeviceInlineUniformBlockProperties(
22580 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockProperties*>(
22581 structExtension),
22582 reinterpret_cast<const VkPhysicalDeviceInlineUniformBlockProperties*>(
22583 structExtension2),
22584 onFail);
22585 break;
22586 }
22587 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK: {
22588 checkEqual_VkWriteDescriptorSetInlineUniformBlock(
22589 reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlock*>(structExtension),
22590 reinterpret_cast<const VkWriteDescriptorSetInlineUniformBlock*>(structExtension2),
22591 onFail);
22592 break;
22593 }
22594 case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO: {
22595 checkEqual_VkDescriptorPoolInlineUniformBlockCreateInfo(
22596 reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfo*>(
22597 structExtension),
22598 reinterpret_cast<const VkDescriptorPoolInlineUniformBlockCreateInfo*>(
22599 structExtension2),
22600 onFail);
22601 break;
22602 }
22603 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES: {
22604 checkEqual_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(
22605 reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeatures*>(
22606 structExtension),
22607 reinterpret_cast<const VkPhysicalDeviceTextureCompressionASTCHDRFeatures*>(
22608 structExtension2),
22609 onFail);
22610 break;
22611 }
22612 case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO: {
22613 checkEqual_VkPipelineRenderingCreateInfo(
22614 reinterpret_cast<const VkPipelineRenderingCreateInfo*>(structExtension),
22615 reinterpret_cast<const VkPipelineRenderingCreateInfo*>(structExtension2), onFail);
22616 break;
22617 }
22618 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES: {
22619 checkEqual_VkPhysicalDeviceDynamicRenderingFeatures(
22620 reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeatures*>(structExtension),
22621 reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeatures*>(structExtension2),
22622 onFail);
22623 break;
22624 }
22625 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO: {
22626 checkEqual_VkCommandBufferInheritanceRenderingInfo(
22627 reinterpret_cast<const VkCommandBufferInheritanceRenderingInfo*>(structExtension),
22628 reinterpret_cast<const VkCommandBufferInheritanceRenderingInfo*>(structExtension2),
22629 onFail);
22630 break;
22631 }
22632 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES: {
22633 checkEqual_VkPhysicalDeviceShaderIntegerDotProductFeatures(
22634 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeatures*>(
22635 structExtension),
22636 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeatures*>(
22637 structExtension2),
22638 onFail);
22639 break;
22640 }
22641 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES: {
22642 checkEqual_VkPhysicalDeviceShaderIntegerDotProductProperties(
22643 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductProperties*>(
22644 structExtension),
22645 reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductProperties*>(
22646 structExtension2),
22647 onFail);
22648 break;
22649 }
22650 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES: {
22651 checkEqual_VkPhysicalDeviceTexelBufferAlignmentProperties(
22652 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentProperties*>(
22653 structExtension),
22654 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentProperties*>(
22655 structExtension2),
22656 onFail);
22657 break;
22658 }
22659 case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3: {
22660 checkEqual_VkFormatProperties3(
22661 reinterpret_cast<const VkFormatProperties3*>(structExtension),
22662 reinterpret_cast<const VkFormatProperties3*>(structExtension2), onFail);
22663 break;
22664 }
22665 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES: {
22666 checkEqual_VkPhysicalDeviceMaintenance4Features(
22667 reinterpret_cast<const VkPhysicalDeviceMaintenance4Features*>(structExtension),
22668 reinterpret_cast<const VkPhysicalDeviceMaintenance4Features*>(structExtension2),
22669 onFail);
22670 break;
22671 }
22672 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES: {
22673 checkEqual_VkPhysicalDeviceMaintenance4Properties(
22674 reinterpret_cast<const VkPhysicalDeviceMaintenance4Properties*>(structExtension),
22675 reinterpret_cast<const VkPhysicalDeviceMaintenance4Properties*>(structExtension2),
22676 onFail);
22677 break;
22678 }
22679 #endif
22680 #ifdef VK_KHR_swapchain
22681 case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR: {
22682 checkEqual_VkImageSwapchainCreateInfoKHR(
22683 reinterpret_cast<const VkImageSwapchainCreateInfoKHR*>(structExtension),
22684 reinterpret_cast<const VkImageSwapchainCreateInfoKHR*>(structExtension2), onFail);
22685 break;
22686 }
22687 case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR: {
22688 checkEqual_VkBindImageMemorySwapchainInfoKHR(
22689 reinterpret_cast<const VkBindImageMemorySwapchainInfoKHR*>(structExtension),
22690 reinterpret_cast<const VkBindImageMemorySwapchainInfoKHR*>(structExtension2),
22691 onFail);
22692 break;
22693 }
22694 case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR: {
22695 checkEqual_VkDeviceGroupPresentInfoKHR(
22696 reinterpret_cast<const VkDeviceGroupPresentInfoKHR*>(structExtension),
22697 reinterpret_cast<const VkDeviceGroupPresentInfoKHR*>(structExtension2), onFail);
22698 break;
22699 }
22700 case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR: {
22701 checkEqual_VkDeviceGroupSwapchainCreateInfoKHR(
22702 reinterpret_cast<const VkDeviceGroupSwapchainCreateInfoKHR*>(structExtension),
22703 reinterpret_cast<const VkDeviceGroupSwapchainCreateInfoKHR*>(structExtension2),
22704 onFail);
22705 break;
22706 }
22707 #endif
22708 #ifdef VK_KHR_display_swapchain
22709 case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR: {
22710 checkEqual_VkDisplayPresentInfoKHR(
22711 reinterpret_cast<const VkDisplayPresentInfoKHR*>(structExtension),
22712 reinterpret_cast<const VkDisplayPresentInfoKHR*>(structExtension2), onFail);
22713 break;
22714 }
22715 #endif
22716 #ifdef VK_KHR_video_queue
22717 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR: {
22718 checkEqual_VkQueueFamilyQueryResultStatusPropertiesKHR(
22719 reinterpret_cast<const VkQueueFamilyQueryResultStatusPropertiesKHR*>(
22720 structExtension),
22721 reinterpret_cast<const VkQueueFamilyQueryResultStatusPropertiesKHR*>(
22722 structExtension2),
22723 onFail);
22724 break;
22725 }
22726 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR: {
22727 checkEqual_VkQueueFamilyVideoPropertiesKHR(
22728 reinterpret_cast<const VkQueueFamilyVideoPropertiesKHR*>(structExtension),
22729 reinterpret_cast<const VkQueueFamilyVideoPropertiesKHR*>(structExtension2), onFail);
22730 break;
22731 }
22732 case VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR: {
22733 checkEqual_VkVideoProfileInfoKHR(
22734 reinterpret_cast<const VkVideoProfileInfoKHR*>(structExtension),
22735 reinterpret_cast<const VkVideoProfileInfoKHR*>(structExtension2), onFail);
22736 break;
22737 }
22738 case VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR: {
22739 checkEqual_VkVideoProfileListInfoKHR(
22740 reinterpret_cast<const VkVideoProfileListInfoKHR*>(structExtension),
22741 reinterpret_cast<const VkVideoProfileListInfoKHR*>(structExtension2), onFail);
22742 break;
22743 }
22744 #endif
22745 #ifdef VK_KHR_video_decode_queue
22746 case VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR: {
22747 checkEqual_VkVideoDecodeCapabilitiesKHR(
22748 reinterpret_cast<const VkVideoDecodeCapabilitiesKHR*>(structExtension),
22749 reinterpret_cast<const VkVideoDecodeCapabilitiesKHR*>(structExtension2), onFail);
22750 break;
22751 }
22752 case VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR: {
22753 checkEqual_VkVideoDecodeUsageInfoKHR(
22754 reinterpret_cast<const VkVideoDecodeUsageInfoKHR*>(structExtension),
22755 reinterpret_cast<const VkVideoDecodeUsageInfoKHR*>(structExtension2), onFail);
22756 break;
22757 }
22758 #endif
22759 #ifdef VK_KHR_video_decode_h264
22760 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR: {
22761 checkEqual_VkVideoDecodeH264ProfileInfoKHR(
22762 reinterpret_cast<const VkVideoDecodeH264ProfileInfoKHR*>(structExtension),
22763 reinterpret_cast<const VkVideoDecodeH264ProfileInfoKHR*>(structExtension2), onFail);
22764 break;
22765 }
22766 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR: {
22767 checkEqual_VkVideoDecodeH264CapabilitiesKHR(
22768 reinterpret_cast<const VkVideoDecodeH264CapabilitiesKHR*>(structExtension),
22769 reinterpret_cast<const VkVideoDecodeH264CapabilitiesKHR*>(structExtension2),
22770 onFail);
22771 break;
22772 }
22773 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR: {
22774 checkEqual_VkVideoDecodeH264SessionParametersAddInfoKHR(
22775 reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoKHR*>(
22776 structExtension),
22777 reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoKHR*>(
22778 structExtension2),
22779 onFail);
22780 break;
22781 }
22782 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR: {
22783 checkEqual_VkVideoDecodeH264SessionParametersCreateInfoKHR(
22784 reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoKHR*>(
22785 structExtension),
22786 reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoKHR*>(
22787 structExtension2),
22788 onFail);
22789 break;
22790 }
22791 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR: {
22792 checkEqual_VkVideoDecodeH264PictureInfoKHR(
22793 reinterpret_cast<const VkVideoDecodeH264PictureInfoKHR*>(structExtension),
22794 reinterpret_cast<const VkVideoDecodeH264PictureInfoKHR*>(structExtension2), onFail);
22795 break;
22796 }
22797 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR: {
22798 checkEqual_VkVideoDecodeH264DpbSlotInfoKHR(
22799 reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoKHR*>(structExtension),
22800 reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoKHR*>(structExtension2), onFail);
22801 break;
22802 }
22803 #endif
22804 #ifdef VK_KHR_dynamic_rendering
22805 case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: {
22806 checkEqual_VkRenderingFragmentShadingRateAttachmentInfoKHR(
22807 reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(
22808 structExtension),
22809 reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(
22810 structExtension2),
22811 onFail);
22812 break;
22813 }
22814 case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT: {
22815 checkEqual_VkRenderingFragmentDensityMapAttachmentInfoEXT(
22816 reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(
22817 structExtension),
22818 reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(
22819 structExtension2),
22820 onFail);
22821 break;
22822 }
22823 case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD: {
22824 checkEqual_VkAttachmentSampleCountInfoAMD(
22825 reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension),
22826 reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension2), onFail);
22827 break;
22828 }
22829 case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX: {
22830 checkEqual_VkMultiviewPerViewAttributesInfoNVX(
22831 reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension),
22832 reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension2),
22833 onFail);
22834 break;
22835 }
22836 #endif
22837 #ifdef VK_KHR_external_memory_win32
22838 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR: {
22839 checkEqual_VkImportMemoryWin32HandleInfoKHR(
22840 reinterpret_cast<const VkImportMemoryWin32HandleInfoKHR*>(structExtension),
22841 reinterpret_cast<const VkImportMemoryWin32HandleInfoKHR*>(structExtension2),
22842 onFail);
22843 break;
22844 }
22845 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR: {
22846 checkEqual_VkExportMemoryWin32HandleInfoKHR(
22847 reinterpret_cast<const VkExportMemoryWin32HandleInfoKHR*>(structExtension),
22848 reinterpret_cast<const VkExportMemoryWin32HandleInfoKHR*>(structExtension2),
22849 onFail);
22850 break;
22851 }
22852 #endif
22853 #ifdef VK_KHR_external_memory_fd
22854 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR: {
22855 checkEqual_VkImportMemoryFdInfoKHR(
22856 reinterpret_cast<const VkImportMemoryFdInfoKHR*>(structExtension),
22857 reinterpret_cast<const VkImportMemoryFdInfoKHR*>(structExtension2), onFail);
22858 break;
22859 }
22860 #endif
22861 #ifdef VK_KHR_win32_keyed_mutex
22862 case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR: {
22863 checkEqual_VkWin32KeyedMutexAcquireReleaseInfoKHR(
22864 reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoKHR*>(structExtension),
22865 reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoKHR*>(structExtension2),
22866 onFail);
22867 break;
22868 }
22869 #endif
22870 #ifdef VK_KHR_external_semaphore_win32
22871 case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: {
22872 checkEqual_VkExportSemaphoreWin32HandleInfoKHR(
22873 reinterpret_cast<const VkExportSemaphoreWin32HandleInfoKHR*>(structExtension),
22874 reinterpret_cast<const VkExportSemaphoreWin32HandleInfoKHR*>(structExtension2),
22875 onFail);
22876 break;
22877 }
22878 case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR: {
22879 checkEqual_VkD3D12FenceSubmitInfoKHR(
22880 reinterpret_cast<const VkD3D12FenceSubmitInfoKHR*>(structExtension),
22881 reinterpret_cast<const VkD3D12FenceSubmitInfoKHR*>(structExtension2), onFail);
22882 break;
22883 }
22884 #endif
22885 #ifdef VK_KHR_push_descriptor
22886 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR: {
22887 checkEqual_VkPhysicalDevicePushDescriptorPropertiesKHR(
22888 reinterpret_cast<const VkPhysicalDevicePushDescriptorPropertiesKHR*>(
22889 structExtension),
22890 reinterpret_cast<const VkPhysicalDevicePushDescriptorPropertiesKHR*>(
22891 structExtension2),
22892 onFail);
22893 break;
22894 }
22895 #endif
22896 #ifdef VK_KHR_incremental_present
22897 case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: {
22898 checkEqual_VkPresentRegionsKHR(
22899 reinterpret_cast<const VkPresentRegionsKHR*>(structExtension),
22900 reinterpret_cast<const VkPresentRegionsKHR*>(structExtension2), onFail);
22901 break;
22902 }
22903 #endif
22904 #ifdef VK_KHR_shared_presentable_image
22905 case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR: {
22906 checkEqual_VkSharedPresentSurfaceCapabilitiesKHR(
22907 reinterpret_cast<const VkSharedPresentSurfaceCapabilitiesKHR*>(structExtension),
22908 reinterpret_cast<const VkSharedPresentSurfaceCapabilitiesKHR*>(structExtension2),
22909 onFail);
22910 break;
22911 }
22912 #endif
22913 #ifdef VK_KHR_external_fence_win32
22914 case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR: {
22915 checkEqual_VkExportFenceWin32HandleInfoKHR(
22916 reinterpret_cast<const VkExportFenceWin32HandleInfoKHR*>(structExtension),
22917 reinterpret_cast<const VkExportFenceWin32HandleInfoKHR*>(structExtension2), onFail);
22918 break;
22919 }
22920 #endif
22921 #ifdef VK_KHR_performance_query
22922 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR: {
22923 checkEqual_VkPhysicalDevicePerformanceQueryFeaturesKHR(
22924 reinterpret_cast<const VkPhysicalDevicePerformanceQueryFeaturesKHR*>(
22925 structExtension),
22926 reinterpret_cast<const VkPhysicalDevicePerformanceQueryFeaturesKHR*>(
22927 structExtension2),
22928 onFail);
22929 break;
22930 }
22931 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR: {
22932 checkEqual_VkPhysicalDevicePerformanceQueryPropertiesKHR(
22933 reinterpret_cast<const VkPhysicalDevicePerformanceQueryPropertiesKHR*>(
22934 structExtension),
22935 reinterpret_cast<const VkPhysicalDevicePerformanceQueryPropertiesKHR*>(
22936 structExtension2),
22937 onFail);
22938 break;
22939 }
22940 case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR: {
22941 checkEqual_VkQueryPoolPerformanceCreateInfoKHR(
22942 reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR*>(structExtension),
22943 reinterpret_cast<const VkQueryPoolPerformanceCreateInfoKHR*>(structExtension2),
22944 onFail);
22945 break;
22946 }
22947 case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR: {
22948 checkEqual_VkPerformanceQuerySubmitInfoKHR(
22949 reinterpret_cast<const VkPerformanceQuerySubmitInfoKHR*>(structExtension),
22950 reinterpret_cast<const VkPerformanceQuerySubmitInfoKHR*>(structExtension2), onFail);
22951 break;
22952 }
22953 #endif
22954 #ifdef VK_KHR_portability_subset
22955 #ifdef VK_ENABLE_BETA_EXTENSIONS
22956 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR: {
22957 checkEqual_VkPhysicalDevicePortabilitySubsetFeaturesKHR(
22958 reinterpret_cast<const VkPhysicalDevicePortabilitySubsetFeaturesKHR*>(
22959 structExtension),
22960 reinterpret_cast<const VkPhysicalDevicePortabilitySubsetFeaturesKHR*>(
22961 structExtension2),
22962 onFail);
22963 break;
22964 }
22965 #endif // VK_ENABLE_BETA_EXTENSIONS
22966 #ifdef VK_ENABLE_BETA_EXTENSIONS
22967 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR: {
22968 checkEqual_VkPhysicalDevicePortabilitySubsetPropertiesKHR(
22969 reinterpret_cast<const VkPhysicalDevicePortabilitySubsetPropertiesKHR*>(
22970 structExtension),
22971 reinterpret_cast<const VkPhysicalDevicePortabilitySubsetPropertiesKHR*>(
22972 structExtension2),
22973 onFail);
22974 break;
22975 }
22976 #endif // VK_ENABLE_BETA_EXTENSIONS
22977 #endif
22978 #ifdef VK_KHR_shader_clock
22979 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR: {
22980 checkEqual_VkPhysicalDeviceShaderClockFeaturesKHR(
22981 reinterpret_cast<const VkPhysicalDeviceShaderClockFeaturesKHR*>(structExtension),
22982 reinterpret_cast<const VkPhysicalDeviceShaderClockFeaturesKHR*>(structExtension2),
22983 onFail);
22984 break;
22985 }
22986 #endif
22987 #ifdef VK_KHR_video_decode_h265
22988 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR: {
22989 checkEqual_VkVideoDecodeH265ProfileInfoKHR(
22990 reinterpret_cast<const VkVideoDecodeH265ProfileInfoKHR*>(structExtension),
22991 reinterpret_cast<const VkVideoDecodeH265ProfileInfoKHR*>(structExtension2), onFail);
22992 break;
22993 }
22994 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR: {
22995 checkEqual_VkVideoDecodeH265CapabilitiesKHR(
22996 reinterpret_cast<const VkVideoDecodeH265CapabilitiesKHR*>(structExtension),
22997 reinterpret_cast<const VkVideoDecodeH265CapabilitiesKHR*>(structExtension2),
22998 onFail);
22999 break;
23000 }
23001 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR: {
23002 checkEqual_VkVideoDecodeH265SessionParametersAddInfoKHR(
23003 reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoKHR*>(
23004 structExtension),
23005 reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoKHR*>(
23006 structExtension2),
23007 onFail);
23008 break;
23009 }
23010 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR: {
23011 checkEqual_VkVideoDecodeH265SessionParametersCreateInfoKHR(
23012 reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoKHR*>(
23013 structExtension),
23014 reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoKHR*>(
23015 structExtension2),
23016 onFail);
23017 break;
23018 }
23019 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR: {
23020 checkEqual_VkVideoDecodeH265PictureInfoKHR(
23021 reinterpret_cast<const VkVideoDecodeH265PictureInfoKHR*>(structExtension),
23022 reinterpret_cast<const VkVideoDecodeH265PictureInfoKHR*>(structExtension2), onFail);
23023 break;
23024 }
23025 case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR: {
23026 checkEqual_VkVideoDecodeH265DpbSlotInfoKHR(
23027 reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoKHR*>(structExtension),
23028 reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoKHR*>(structExtension2), onFail);
23029 break;
23030 }
23031 #endif
23032 #ifdef VK_KHR_global_priority
23033 case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR: {
23034 checkEqual_VkDeviceQueueGlobalPriorityCreateInfoKHR(
23035 reinterpret_cast<const VkDeviceQueueGlobalPriorityCreateInfoKHR*>(structExtension),
23036 reinterpret_cast<const VkDeviceQueueGlobalPriorityCreateInfoKHR*>(structExtension2),
23037 onFail);
23038 break;
23039 }
23040 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR: {
23041 checkEqual_VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR(
23042 reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*>(
23043 structExtension),
23044 reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR*>(
23045 structExtension2),
23046 onFail);
23047 break;
23048 }
23049 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR: {
23050 checkEqual_VkQueueFamilyGlobalPriorityPropertiesKHR(
23051 reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesKHR*>(structExtension),
23052 reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesKHR*>(structExtension2),
23053 onFail);
23054 break;
23055 }
23056 #endif
23057 #ifdef VK_KHR_fragment_shading_rate
23058 case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: {
23059 checkEqual_VkFragmentShadingRateAttachmentInfoKHR(
23060 reinterpret_cast<const VkFragmentShadingRateAttachmentInfoKHR*>(structExtension),
23061 reinterpret_cast<const VkFragmentShadingRateAttachmentInfoKHR*>(structExtension2),
23062 onFail);
23063 break;
23064 }
23065 case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR: {
23066 checkEqual_VkPipelineFragmentShadingRateStateCreateInfoKHR(
23067 reinterpret_cast<const VkPipelineFragmentShadingRateStateCreateInfoKHR*>(
23068 structExtension),
23069 reinterpret_cast<const VkPipelineFragmentShadingRateStateCreateInfoKHR*>(
23070 structExtension2),
23071 onFail);
23072 break;
23073 }
23074 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR: {
23075 checkEqual_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(
23076 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateFeaturesKHR*>(
23077 structExtension),
23078 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateFeaturesKHR*>(
23079 structExtension2),
23080 onFail);
23081 break;
23082 }
23083 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR: {
23084 checkEqual_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(
23085 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRatePropertiesKHR*>(
23086 structExtension),
23087 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRatePropertiesKHR*>(
23088 structExtension2),
23089 onFail);
23090 break;
23091 }
23092 #endif
23093 #ifdef VK_KHR_surface_protected_capabilities
23094 case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR: {
23095 checkEqual_VkSurfaceProtectedCapabilitiesKHR(
23096 reinterpret_cast<const VkSurfaceProtectedCapabilitiesKHR*>(structExtension),
23097 reinterpret_cast<const VkSurfaceProtectedCapabilitiesKHR*>(structExtension2),
23098 onFail);
23099 break;
23100 }
23101 #endif
23102 #ifdef VK_KHR_present_wait
23103 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR: {
23104 checkEqual_VkPhysicalDevicePresentWaitFeaturesKHR(
23105 reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension),
23106 reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension2),
23107 onFail);
23108 break;
23109 }
23110 #endif
23111 #ifdef VK_KHR_pipeline_executable_properties
23112 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR: {
23113 checkEqual_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(
23114 reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>(
23115 structExtension),
23116 reinterpret_cast<const VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR*>(
23117 structExtension2),
23118 onFail);
23119 break;
23120 }
23121 #endif
23122 #ifdef VK_KHR_pipeline_library
23123 case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR: {
23124 checkEqual_VkPipelineLibraryCreateInfoKHR(
23125 reinterpret_cast<const VkPipelineLibraryCreateInfoKHR*>(structExtension),
23126 reinterpret_cast<const VkPipelineLibraryCreateInfoKHR*>(structExtension2), onFail);
23127 break;
23128 }
23129 #endif
23130 #ifdef VK_KHR_present_id
23131 case VK_STRUCTURE_TYPE_PRESENT_ID_KHR: {
23132 checkEqual_VkPresentIdKHR(reinterpret_cast<const VkPresentIdKHR*>(structExtension),
23133 reinterpret_cast<const VkPresentIdKHR*>(structExtension2),
23134 onFail);
23135 break;
23136 }
23137 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR: {
23138 checkEqual_VkPhysicalDevicePresentIdFeaturesKHR(
23139 reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension),
23140 reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension2),
23141 onFail);
23142 break;
23143 }
23144 #endif
23145 #ifdef VK_KHR_video_encode_queue
23146 #ifdef VK_ENABLE_BETA_EXTENSIONS
23147 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR: {
23148 checkEqual_VkVideoEncodeCapabilitiesKHR(
23149 reinterpret_cast<const VkVideoEncodeCapabilitiesKHR*>(structExtension),
23150 reinterpret_cast<const VkVideoEncodeCapabilitiesKHR*>(structExtension2), onFail);
23151 break;
23152 }
23153 #endif // VK_ENABLE_BETA_EXTENSIONS
23154 #ifdef VK_ENABLE_BETA_EXTENSIONS
23155 case VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR: {
23156 checkEqual_VkQueryPoolVideoEncodeFeedbackCreateInfoKHR(
23157 reinterpret_cast<const VkQueryPoolVideoEncodeFeedbackCreateInfoKHR*>(
23158 structExtension),
23159 reinterpret_cast<const VkQueryPoolVideoEncodeFeedbackCreateInfoKHR*>(
23160 structExtension2),
23161 onFail);
23162 break;
23163 }
23164 #endif // VK_ENABLE_BETA_EXTENSIONS
23165 #ifdef VK_ENABLE_BETA_EXTENSIONS
23166 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR: {
23167 checkEqual_VkVideoEncodeUsageInfoKHR(
23168 reinterpret_cast<const VkVideoEncodeUsageInfoKHR*>(structExtension),
23169 reinterpret_cast<const VkVideoEncodeUsageInfoKHR*>(structExtension2), onFail);
23170 break;
23171 }
23172 #endif // VK_ENABLE_BETA_EXTENSIONS
23173 #ifdef VK_ENABLE_BETA_EXTENSIONS
23174 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR: {
23175 checkEqual_VkVideoEncodeRateControlLayerInfoKHR(
23176 reinterpret_cast<const VkVideoEncodeRateControlLayerInfoKHR*>(structExtension),
23177 reinterpret_cast<const VkVideoEncodeRateControlLayerInfoKHR*>(structExtension2),
23178 onFail);
23179 break;
23180 }
23181 #endif // VK_ENABLE_BETA_EXTENSIONS
23182 #ifdef VK_ENABLE_BETA_EXTENSIONS
23183 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR: {
23184 checkEqual_VkVideoEncodeRateControlInfoKHR(
23185 reinterpret_cast<const VkVideoEncodeRateControlInfoKHR*>(structExtension),
23186 reinterpret_cast<const VkVideoEncodeRateControlInfoKHR*>(structExtension2), onFail);
23187 break;
23188 }
23189 #endif // VK_ENABLE_BETA_EXTENSIONS
23190 #endif
23191 #ifdef VK_KHR_synchronization2
23192 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV: {
23193 checkEqual_VkQueueFamilyCheckpointProperties2NV(
23194 reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension),
23195 reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension2),
23196 onFail);
23197 break;
23198 }
23199 #endif
23200 #ifdef VK_KHR_fragment_shader_barycentric
23201 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR: {
23202 checkEqual_VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR(
23203 reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*>(
23204 structExtension),
23205 reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR*>(
23206 structExtension2),
23207 onFail);
23208 break;
23209 }
23210 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR: {
23211 checkEqual_VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR(
23212 reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*>(
23213 structExtension),
23214 reinterpret_cast<const VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR*>(
23215 structExtension2),
23216 onFail);
23217 break;
23218 }
23219 #endif
23220 #ifdef VK_KHR_shader_subgroup_uniform_control_flow
23221 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR: {
23222 checkEqual_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
23223 reinterpret_cast<
23224 const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(
23225 structExtension),
23226 reinterpret_cast<
23227 const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(
23228 structExtension2),
23229 onFail);
23230 break;
23231 }
23232 #endif
23233 #ifdef VK_KHR_workgroup_memory_explicit_layout
23234 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR: {
23235 checkEqual_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
23236 reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(
23237 structExtension),
23238 reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(
23239 structExtension2),
23240 onFail);
23241 break;
23242 }
23243 #endif
23244 #ifdef VK_KHR_ray_tracing_maintenance1
23245 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR: {
23246 checkEqual_VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(
23247 reinterpret_cast<const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*>(
23248 structExtension),
23249 reinterpret_cast<const VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR*>(
23250 structExtension2),
23251 onFail);
23252 break;
23253 }
23254 #endif
23255 #ifdef VK_KHR_ray_tracing_position_fetch
23256 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR: {
23257 checkEqual_VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR(
23258 reinterpret_cast<const VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*>(
23259 structExtension),
23260 reinterpret_cast<const VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR*>(
23261 structExtension2),
23262 onFail);
23263 break;
23264 }
23265 #endif
23266 #ifdef VK_ANDROID_native_buffer
23267 case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID: {
23268 checkEqual_VkNativeBufferANDROID(
23269 reinterpret_cast<const VkNativeBufferANDROID*>(structExtension),
23270 reinterpret_cast<const VkNativeBufferANDROID*>(structExtension2), onFail);
23271 break;
23272 }
23273 #endif
23274 #ifdef VK_EXT_debug_report
23275 case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT: {
23276 checkEqual_VkDebugReportCallbackCreateInfoEXT(
23277 reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT*>(structExtension),
23278 reinterpret_cast<const VkDebugReportCallbackCreateInfoEXT*>(structExtension2),
23279 onFail);
23280 break;
23281 }
23282 #endif
23283 #ifdef VK_AMD_rasterization_order
23284 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD: {
23285 checkEqual_VkPipelineRasterizationStateRasterizationOrderAMD(
23286 reinterpret_cast<const VkPipelineRasterizationStateRasterizationOrderAMD*>(
23287 structExtension),
23288 reinterpret_cast<const VkPipelineRasterizationStateRasterizationOrderAMD*>(
23289 structExtension2),
23290 onFail);
23291 break;
23292 }
23293 #endif
23294 #ifdef VK_NV_dedicated_allocation
23295 case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV: {
23296 checkEqual_VkDedicatedAllocationImageCreateInfoNV(
23297 reinterpret_cast<const VkDedicatedAllocationImageCreateInfoNV*>(structExtension),
23298 reinterpret_cast<const VkDedicatedAllocationImageCreateInfoNV*>(structExtension2),
23299 onFail);
23300 break;
23301 }
23302 case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV: {
23303 checkEqual_VkDedicatedAllocationBufferCreateInfoNV(
23304 reinterpret_cast<const VkDedicatedAllocationBufferCreateInfoNV*>(structExtension),
23305 reinterpret_cast<const VkDedicatedAllocationBufferCreateInfoNV*>(structExtension2),
23306 onFail);
23307 break;
23308 }
23309 case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV: {
23310 checkEqual_VkDedicatedAllocationMemoryAllocateInfoNV(
23311 reinterpret_cast<const VkDedicatedAllocationMemoryAllocateInfoNV*>(structExtension),
23312 reinterpret_cast<const VkDedicatedAllocationMemoryAllocateInfoNV*>(
23313 structExtension2),
23314 onFail);
23315 break;
23316 }
23317 #endif
23318 #ifdef VK_EXT_transform_feedback
23319 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT: {
23320 checkEqual_VkPhysicalDeviceTransformFeedbackFeaturesEXT(
23321 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT*>(
23322 structExtension),
23323 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackFeaturesEXT*>(
23324 structExtension2),
23325 onFail);
23326 break;
23327 }
23328 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT: {
23329 checkEqual_VkPhysicalDeviceTransformFeedbackPropertiesEXT(
23330 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT*>(
23331 structExtension),
23332 reinterpret_cast<const VkPhysicalDeviceTransformFeedbackPropertiesEXT*>(
23333 structExtension2),
23334 onFail);
23335 break;
23336 }
23337 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT: {
23338 checkEqual_VkPipelineRasterizationStateStreamCreateInfoEXT(
23339 reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT*>(
23340 structExtension),
23341 reinterpret_cast<const VkPipelineRasterizationStateStreamCreateInfoEXT*>(
23342 structExtension2),
23343 onFail);
23344 break;
23345 }
23346 #endif
23347 #ifdef VK_EXT_video_encode_h264
23348 #ifdef VK_ENABLE_BETA_EXTENSIONS
23349 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT: {
23350 checkEqual_VkVideoEncodeH264CapabilitiesEXT(
23351 reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT*>(structExtension),
23352 reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT*>(structExtension2),
23353 onFail);
23354 break;
23355 }
23356 #endif // VK_ENABLE_BETA_EXTENSIONS
23357 #ifdef VK_ENABLE_BETA_EXTENSIONS
23358 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT: {
23359 checkEqual_VkVideoEncodeH264SessionParametersAddInfoEXT(
23360 reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT*>(
23361 structExtension),
23362 reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT*>(
23363 structExtension2),
23364 onFail);
23365 break;
23366 }
23367 #endif // VK_ENABLE_BETA_EXTENSIONS
23368 #ifdef VK_ENABLE_BETA_EXTENSIONS
23369 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT: {
23370 checkEqual_VkVideoEncodeH264SessionParametersCreateInfoEXT(
23371 reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT*>(
23372 structExtension),
23373 reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT*>(
23374 structExtension2),
23375 onFail);
23376 break;
23377 }
23378 #endif // VK_ENABLE_BETA_EXTENSIONS
23379 #ifdef VK_ENABLE_BETA_EXTENSIONS
23380 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT: {
23381 checkEqual_VkVideoEncodeH264VclFrameInfoEXT(
23382 reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT*>(structExtension),
23383 reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT*>(structExtension2),
23384 onFail);
23385 break;
23386 }
23387 #endif // VK_ENABLE_BETA_EXTENSIONS
23388 #ifdef VK_ENABLE_BETA_EXTENSIONS
23389 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT: {
23390 checkEqual_VkVideoEncodeH264DpbSlotInfoEXT(
23391 reinterpret_cast<const VkVideoEncodeH264DpbSlotInfoEXT*>(structExtension),
23392 reinterpret_cast<const VkVideoEncodeH264DpbSlotInfoEXT*>(structExtension2), onFail);
23393 break;
23394 }
23395 #endif // VK_ENABLE_BETA_EXTENSIONS
23396 #ifdef VK_ENABLE_BETA_EXTENSIONS
23397 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT: {
23398 checkEqual_VkVideoEncodeH264ProfileInfoEXT(
23399 reinterpret_cast<const VkVideoEncodeH264ProfileInfoEXT*>(structExtension),
23400 reinterpret_cast<const VkVideoEncodeH264ProfileInfoEXT*>(structExtension2), onFail);
23401 break;
23402 }
23403 #endif // VK_ENABLE_BETA_EXTENSIONS
23404 #ifdef VK_ENABLE_BETA_EXTENSIONS
23405 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT: {
23406 checkEqual_VkVideoEncodeH264RateControlInfoEXT(
23407 reinterpret_cast<const VkVideoEncodeH264RateControlInfoEXT*>(structExtension),
23408 reinterpret_cast<const VkVideoEncodeH264RateControlInfoEXT*>(structExtension2),
23409 onFail);
23410 break;
23411 }
23412 #endif // VK_ENABLE_BETA_EXTENSIONS
23413 #ifdef VK_ENABLE_BETA_EXTENSIONS
23414 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT: {
23415 checkEqual_VkVideoEncodeH264RateControlLayerInfoEXT(
23416 reinterpret_cast<const VkVideoEncodeH264RateControlLayerInfoEXT*>(structExtension),
23417 reinterpret_cast<const VkVideoEncodeH264RateControlLayerInfoEXT*>(structExtension2),
23418 onFail);
23419 break;
23420 }
23421 #endif // VK_ENABLE_BETA_EXTENSIONS
23422 #endif
23423 #ifdef VK_EXT_video_encode_h265
23424 #ifdef VK_ENABLE_BETA_EXTENSIONS
23425 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT: {
23426 checkEqual_VkVideoEncodeH265CapabilitiesEXT(
23427 reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT*>(structExtension),
23428 reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT*>(structExtension2),
23429 onFail);
23430 break;
23431 }
23432 #endif // VK_ENABLE_BETA_EXTENSIONS
23433 #ifdef VK_ENABLE_BETA_EXTENSIONS
23434 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT: {
23435 checkEqual_VkVideoEncodeH265SessionParametersAddInfoEXT(
23436 reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT*>(
23437 structExtension),
23438 reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT*>(
23439 structExtension2),
23440 onFail);
23441 break;
23442 }
23443 #endif // VK_ENABLE_BETA_EXTENSIONS
23444 #ifdef VK_ENABLE_BETA_EXTENSIONS
23445 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT: {
23446 checkEqual_VkVideoEncodeH265SessionParametersCreateInfoEXT(
23447 reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT*>(
23448 structExtension),
23449 reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT*>(
23450 structExtension2),
23451 onFail);
23452 break;
23453 }
23454 #endif // VK_ENABLE_BETA_EXTENSIONS
23455 #ifdef VK_ENABLE_BETA_EXTENSIONS
23456 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT: {
23457 checkEqual_VkVideoEncodeH265VclFrameInfoEXT(
23458 reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT*>(structExtension),
23459 reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT*>(structExtension2),
23460 onFail);
23461 break;
23462 }
23463 #endif // VK_ENABLE_BETA_EXTENSIONS
23464 #ifdef VK_ENABLE_BETA_EXTENSIONS
23465 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT: {
23466 checkEqual_VkVideoEncodeH265DpbSlotInfoEXT(
23467 reinterpret_cast<const VkVideoEncodeH265DpbSlotInfoEXT*>(structExtension),
23468 reinterpret_cast<const VkVideoEncodeH265DpbSlotInfoEXT*>(structExtension2), onFail);
23469 break;
23470 }
23471 #endif // VK_ENABLE_BETA_EXTENSIONS
23472 #ifdef VK_ENABLE_BETA_EXTENSIONS
23473 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT: {
23474 checkEqual_VkVideoEncodeH265ProfileInfoEXT(
23475 reinterpret_cast<const VkVideoEncodeH265ProfileInfoEXT*>(structExtension),
23476 reinterpret_cast<const VkVideoEncodeH265ProfileInfoEXT*>(structExtension2), onFail);
23477 break;
23478 }
23479 #endif // VK_ENABLE_BETA_EXTENSIONS
23480 #ifdef VK_ENABLE_BETA_EXTENSIONS
23481 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT: {
23482 checkEqual_VkVideoEncodeH265RateControlInfoEXT(
23483 reinterpret_cast<const VkVideoEncodeH265RateControlInfoEXT*>(structExtension),
23484 reinterpret_cast<const VkVideoEncodeH265RateControlInfoEXT*>(structExtension2),
23485 onFail);
23486 break;
23487 }
23488 #endif // VK_ENABLE_BETA_EXTENSIONS
23489 #ifdef VK_ENABLE_BETA_EXTENSIONS
23490 case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT: {
23491 checkEqual_VkVideoEncodeH265RateControlLayerInfoEXT(
23492 reinterpret_cast<const VkVideoEncodeH265RateControlLayerInfoEXT*>(structExtension),
23493 reinterpret_cast<const VkVideoEncodeH265RateControlLayerInfoEXT*>(structExtension2),
23494 onFail);
23495 break;
23496 }
23497 #endif // VK_ENABLE_BETA_EXTENSIONS
23498 #endif
23499 #ifdef VK_AMD_texture_gather_bias_lod
23500 case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD: {
23501 checkEqual_VkTextureLODGatherFormatPropertiesAMD(
23502 reinterpret_cast<const VkTextureLODGatherFormatPropertiesAMD*>(structExtension),
23503 reinterpret_cast<const VkTextureLODGatherFormatPropertiesAMD*>(structExtension2),
23504 onFail);
23505 break;
23506 }
23507 #endif
23508 #ifdef VK_NV_corner_sampled_image
23509 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV: {
23510 checkEqual_VkPhysicalDeviceCornerSampledImageFeaturesNV(
23511 reinterpret_cast<const VkPhysicalDeviceCornerSampledImageFeaturesNV*>(
23512 structExtension),
23513 reinterpret_cast<const VkPhysicalDeviceCornerSampledImageFeaturesNV*>(
23514 structExtension2),
23515 onFail);
23516 break;
23517 }
23518 #endif
23519 #ifdef VK_NV_external_memory
23520 case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV: {
23521 checkEqual_VkExternalMemoryImageCreateInfoNV(
23522 reinterpret_cast<const VkExternalMemoryImageCreateInfoNV*>(structExtension),
23523 reinterpret_cast<const VkExternalMemoryImageCreateInfoNV*>(structExtension2),
23524 onFail);
23525 break;
23526 }
23527 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV: {
23528 checkEqual_VkExportMemoryAllocateInfoNV(
23529 reinterpret_cast<const VkExportMemoryAllocateInfoNV*>(structExtension),
23530 reinterpret_cast<const VkExportMemoryAllocateInfoNV*>(structExtension2), onFail);
23531 break;
23532 }
23533 #endif
23534 #ifdef VK_NV_external_memory_win32
23535 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV: {
23536 checkEqual_VkImportMemoryWin32HandleInfoNV(
23537 reinterpret_cast<const VkImportMemoryWin32HandleInfoNV*>(structExtension),
23538 reinterpret_cast<const VkImportMemoryWin32HandleInfoNV*>(structExtension2), onFail);
23539 break;
23540 }
23541 case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV: {
23542 checkEqual_VkExportMemoryWin32HandleInfoNV(
23543 reinterpret_cast<const VkExportMemoryWin32HandleInfoNV*>(structExtension),
23544 reinterpret_cast<const VkExportMemoryWin32HandleInfoNV*>(structExtension2), onFail);
23545 break;
23546 }
23547 #endif
23548 #ifdef VK_NV_win32_keyed_mutex
23549 case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV: {
23550 checkEqual_VkWin32KeyedMutexAcquireReleaseInfoNV(
23551 reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoNV*>(structExtension),
23552 reinterpret_cast<const VkWin32KeyedMutexAcquireReleaseInfoNV*>(structExtension2),
23553 onFail);
23554 break;
23555 }
23556 #endif
23557 #ifdef VK_EXT_validation_flags
23558 case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT: {
23559 checkEqual_VkValidationFlagsEXT(
23560 reinterpret_cast<const VkValidationFlagsEXT*>(structExtension),
23561 reinterpret_cast<const VkValidationFlagsEXT*>(structExtension2), onFail);
23562 break;
23563 }
23564 #endif
23565 #ifdef VK_EXT_astc_decode_mode
23566 case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT: {
23567 checkEqual_VkImageViewASTCDecodeModeEXT(
23568 reinterpret_cast<const VkImageViewASTCDecodeModeEXT*>(structExtension),
23569 reinterpret_cast<const VkImageViewASTCDecodeModeEXT*>(structExtension2), onFail);
23570 break;
23571 }
23572 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT: {
23573 checkEqual_VkPhysicalDeviceASTCDecodeFeaturesEXT(
23574 reinterpret_cast<const VkPhysicalDeviceASTCDecodeFeaturesEXT*>(structExtension),
23575 reinterpret_cast<const VkPhysicalDeviceASTCDecodeFeaturesEXT*>(structExtension2),
23576 onFail);
23577 break;
23578 }
23579 #endif
23580 #ifdef VK_EXT_pipeline_robustness
23581 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT: {
23582 checkEqual_VkPhysicalDevicePipelineRobustnessFeaturesEXT(
23583 reinterpret_cast<const VkPhysicalDevicePipelineRobustnessFeaturesEXT*>(
23584 structExtension),
23585 reinterpret_cast<const VkPhysicalDevicePipelineRobustnessFeaturesEXT*>(
23586 structExtension2),
23587 onFail);
23588 break;
23589 }
23590 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT: {
23591 checkEqual_VkPhysicalDevicePipelineRobustnessPropertiesEXT(
23592 reinterpret_cast<const VkPhysicalDevicePipelineRobustnessPropertiesEXT*>(
23593 structExtension),
23594 reinterpret_cast<const VkPhysicalDevicePipelineRobustnessPropertiesEXT*>(
23595 structExtension2),
23596 onFail);
23597 break;
23598 }
23599 case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT: {
23600 checkEqual_VkPipelineRobustnessCreateInfoEXT(
23601 reinterpret_cast<const VkPipelineRobustnessCreateInfoEXT*>(structExtension),
23602 reinterpret_cast<const VkPipelineRobustnessCreateInfoEXT*>(structExtension2),
23603 onFail);
23604 break;
23605 }
23606 #endif
23607 #ifdef VK_EXT_conditional_rendering
23608 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT: {
23609 checkEqual_VkPhysicalDeviceConditionalRenderingFeaturesEXT(
23610 reinterpret_cast<const VkPhysicalDeviceConditionalRenderingFeaturesEXT*>(
23611 structExtension),
23612 reinterpret_cast<const VkPhysicalDeviceConditionalRenderingFeaturesEXT*>(
23613 structExtension2),
23614 onFail);
23615 break;
23616 }
23617 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT: {
23618 checkEqual_VkCommandBufferInheritanceConditionalRenderingInfoEXT(
23619 reinterpret_cast<const VkCommandBufferInheritanceConditionalRenderingInfoEXT*>(
23620 structExtension),
23621 reinterpret_cast<const VkCommandBufferInheritanceConditionalRenderingInfoEXT*>(
23622 structExtension2),
23623 onFail);
23624 break;
23625 }
23626 #endif
23627 #ifdef VK_NV_clip_space_w_scaling
23628 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV: {
23629 checkEqual_VkPipelineViewportWScalingStateCreateInfoNV(
23630 reinterpret_cast<const VkPipelineViewportWScalingStateCreateInfoNV*>(
23631 structExtension),
23632 reinterpret_cast<const VkPipelineViewportWScalingStateCreateInfoNV*>(
23633 structExtension2),
23634 onFail);
23635 break;
23636 }
23637 #endif
23638 #ifdef VK_EXT_display_control
23639 case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT: {
23640 checkEqual_VkSwapchainCounterCreateInfoEXT(
23641 reinterpret_cast<const VkSwapchainCounterCreateInfoEXT*>(structExtension),
23642 reinterpret_cast<const VkSwapchainCounterCreateInfoEXT*>(structExtension2), onFail);
23643 break;
23644 }
23645 #endif
23646 #ifdef VK_GOOGLE_display_timing
23647 case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE: {
23648 checkEqual_VkPresentTimesInfoGOOGLE(
23649 reinterpret_cast<const VkPresentTimesInfoGOOGLE*>(structExtension),
23650 reinterpret_cast<const VkPresentTimesInfoGOOGLE*>(structExtension2), onFail);
23651 break;
23652 }
23653 #endif
23654 #ifdef VK_NVX_multiview_per_view_attributes
23655 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX: {
23656 checkEqual_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
23657 reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*>(
23658 structExtension),
23659 reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*>(
23660 structExtension2),
23661 onFail);
23662 break;
23663 }
23664 #endif
23665 #ifdef VK_NV_viewport_swizzle
23666 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV: {
23667 checkEqual_VkPipelineViewportSwizzleStateCreateInfoNV(
23668 reinterpret_cast<const VkPipelineViewportSwizzleStateCreateInfoNV*>(
23669 structExtension),
23670 reinterpret_cast<const VkPipelineViewportSwizzleStateCreateInfoNV*>(
23671 structExtension2),
23672 onFail);
23673 break;
23674 }
23675 #endif
23676 #ifdef VK_EXT_discard_rectangles
23677 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT: {
23678 checkEqual_VkPhysicalDeviceDiscardRectanglePropertiesEXT(
23679 reinterpret_cast<const VkPhysicalDeviceDiscardRectanglePropertiesEXT*>(
23680 structExtension),
23681 reinterpret_cast<const VkPhysicalDeviceDiscardRectanglePropertiesEXT*>(
23682 structExtension2),
23683 onFail);
23684 break;
23685 }
23686 case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT: {
23687 checkEqual_VkPipelineDiscardRectangleStateCreateInfoEXT(
23688 reinterpret_cast<const VkPipelineDiscardRectangleStateCreateInfoEXT*>(
23689 structExtension),
23690 reinterpret_cast<const VkPipelineDiscardRectangleStateCreateInfoEXT*>(
23691 structExtension2),
23692 onFail);
23693 break;
23694 }
23695 #endif
23696 #ifdef VK_EXT_conservative_rasterization
23697 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT: {
23698 checkEqual_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(
23699 reinterpret_cast<const VkPhysicalDeviceConservativeRasterizationPropertiesEXT*>(
23700 structExtension),
23701 reinterpret_cast<const VkPhysicalDeviceConservativeRasterizationPropertiesEXT*>(
23702 structExtension2),
23703 onFail);
23704 break;
23705 }
23706 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT: {
23707 checkEqual_VkPipelineRasterizationConservativeStateCreateInfoEXT(
23708 reinterpret_cast<const VkPipelineRasterizationConservativeStateCreateInfoEXT*>(
23709 structExtension),
23710 reinterpret_cast<const VkPipelineRasterizationConservativeStateCreateInfoEXT*>(
23711 structExtension2),
23712 onFail);
23713 break;
23714 }
23715 #endif
23716 #ifdef VK_EXT_depth_clip_enable
23717 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT: {
23718 checkEqual_VkPhysicalDeviceDepthClipEnableFeaturesEXT(
23719 reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT*>(
23720 structExtension),
23721 reinterpret_cast<const VkPhysicalDeviceDepthClipEnableFeaturesEXT*>(
23722 structExtension2),
23723 onFail);
23724 break;
23725 }
23726 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT: {
23727 checkEqual_VkPipelineRasterizationDepthClipStateCreateInfoEXT(
23728 reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT*>(
23729 structExtension),
23730 reinterpret_cast<const VkPipelineRasterizationDepthClipStateCreateInfoEXT*>(
23731 structExtension2),
23732 onFail);
23733 break;
23734 }
23735 #endif
23736 #ifdef VK_EXT_debug_utils
23737 case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT: {
23738 checkEqual_VkDebugUtilsObjectNameInfoEXT(
23739 reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT*>(structExtension),
23740 reinterpret_cast<const VkDebugUtilsObjectNameInfoEXT*>(structExtension2), onFail);
23741 break;
23742 }
23743 case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT: {
23744 checkEqual_VkDebugUtilsMessengerCreateInfoEXT(
23745 reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT*>(structExtension),
23746 reinterpret_cast<const VkDebugUtilsMessengerCreateInfoEXT*>(structExtension2),
23747 onFail);
23748 break;
23749 }
23750 #endif
23751 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
23752 case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID: {
23753 checkEqual_VkAndroidHardwareBufferUsageANDROID(
23754 reinterpret_cast<const VkAndroidHardwareBufferUsageANDROID*>(structExtension),
23755 reinterpret_cast<const VkAndroidHardwareBufferUsageANDROID*>(structExtension2),
23756 onFail);
23757 break;
23758 }
23759 case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID: {
23760 checkEqual_VkAndroidHardwareBufferFormatPropertiesANDROID(
23761 reinterpret_cast<const VkAndroidHardwareBufferFormatPropertiesANDROID*>(
23762 structExtension),
23763 reinterpret_cast<const VkAndroidHardwareBufferFormatPropertiesANDROID*>(
23764 structExtension2),
23765 onFail);
23766 break;
23767 }
23768 case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID: {
23769 checkEqual_VkImportAndroidHardwareBufferInfoANDROID(
23770 reinterpret_cast<const VkImportAndroidHardwareBufferInfoANDROID*>(structExtension),
23771 reinterpret_cast<const VkImportAndroidHardwareBufferInfoANDROID*>(structExtension2),
23772 onFail);
23773 break;
23774 }
23775 case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID: {
23776 checkEqual_VkExternalFormatANDROID(
23777 reinterpret_cast<const VkExternalFormatANDROID*>(structExtension),
23778 reinterpret_cast<const VkExternalFormatANDROID*>(structExtension2), onFail);
23779 break;
23780 }
23781 case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID: {
23782 checkEqual_VkAndroidHardwareBufferFormatProperties2ANDROID(
23783 reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID*>(
23784 structExtension),
23785 reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID*>(
23786 structExtension2),
23787 onFail);
23788 break;
23789 }
23790 #endif
23791 #ifdef VK_EXT_sample_locations
23792 case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT: {
23793 checkEqual_VkSampleLocationsInfoEXT(
23794 reinterpret_cast<const VkSampleLocationsInfoEXT*>(structExtension),
23795 reinterpret_cast<const VkSampleLocationsInfoEXT*>(structExtension2), onFail);
23796 break;
23797 }
23798 case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT: {
23799 checkEqual_VkRenderPassSampleLocationsBeginInfoEXT(
23800 reinterpret_cast<const VkRenderPassSampleLocationsBeginInfoEXT*>(structExtension),
23801 reinterpret_cast<const VkRenderPassSampleLocationsBeginInfoEXT*>(structExtension2),
23802 onFail);
23803 break;
23804 }
23805 case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT: {
23806 checkEqual_VkPipelineSampleLocationsStateCreateInfoEXT(
23807 reinterpret_cast<const VkPipelineSampleLocationsStateCreateInfoEXT*>(
23808 structExtension),
23809 reinterpret_cast<const VkPipelineSampleLocationsStateCreateInfoEXT*>(
23810 structExtension2),
23811 onFail);
23812 break;
23813 }
23814 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT: {
23815 checkEqual_VkPhysicalDeviceSampleLocationsPropertiesEXT(
23816 reinterpret_cast<const VkPhysicalDeviceSampleLocationsPropertiesEXT*>(
23817 structExtension),
23818 reinterpret_cast<const VkPhysicalDeviceSampleLocationsPropertiesEXT*>(
23819 structExtension2),
23820 onFail);
23821 break;
23822 }
23823 #endif
23824 #ifdef VK_EXT_blend_operation_advanced
23825 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT: {
23826 checkEqual_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(
23827 reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*>(
23828 structExtension),
23829 reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*>(
23830 structExtension2),
23831 onFail);
23832 break;
23833 }
23834 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT: {
23835 checkEqual_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(
23836 reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*>(
23837 structExtension),
23838 reinterpret_cast<const VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*>(
23839 structExtension2),
23840 onFail);
23841 break;
23842 }
23843 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT: {
23844 checkEqual_VkPipelineColorBlendAdvancedStateCreateInfoEXT(
23845 reinterpret_cast<const VkPipelineColorBlendAdvancedStateCreateInfoEXT*>(
23846 structExtension),
23847 reinterpret_cast<const VkPipelineColorBlendAdvancedStateCreateInfoEXT*>(
23848 structExtension2),
23849 onFail);
23850 break;
23851 }
23852 #endif
23853 #ifdef VK_NV_fragment_coverage_to_color
23854 case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV: {
23855 checkEqual_VkPipelineCoverageToColorStateCreateInfoNV(
23856 reinterpret_cast<const VkPipelineCoverageToColorStateCreateInfoNV*>(
23857 structExtension),
23858 reinterpret_cast<const VkPipelineCoverageToColorStateCreateInfoNV*>(
23859 structExtension2),
23860 onFail);
23861 break;
23862 }
23863 #endif
23864 #ifdef VK_NV_framebuffer_mixed_samples
23865 case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV: {
23866 checkEqual_VkPipelineCoverageModulationStateCreateInfoNV(
23867 reinterpret_cast<const VkPipelineCoverageModulationStateCreateInfoNV*>(
23868 structExtension),
23869 reinterpret_cast<const VkPipelineCoverageModulationStateCreateInfoNV*>(
23870 structExtension2),
23871 onFail);
23872 break;
23873 }
23874 #endif
23875 #ifdef VK_NV_shader_sm_builtins
23876 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV: {
23877 checkEqual_VkPhysicalDeviceShaderSMBuiltinsPropertiesNV(
23878 reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV*>(
23879 structExtension),
23880 reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsPropertiesNV*>(
23881 structExtension2),
23882 onFail);
23883 break;
23884 }
23885 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV: {
23886 checkEqual_VkPhysicalDeviceShaderSMBuiltinsFeaturesNV(
23887 reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV*>(
23888 structExtension),
23889 reinterpret_cast<const VkPhysicalDeviceShaderSMBuiltinsFeaturesNV*>(
23890 structExtension2),
23891 onFail);
23892 break;
23893 }
23894 #endif
23895 #ifdef VK_EXT_image_drm_format_modifier
23896 case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT: {
23897 checkEqual_VkDrmFormatModifierPropertiesListEXT(
23898 reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT*>(structExtension),
23899 reinterpret_cast<const VkDrmFormatModifierPropertiesListEXT*>(structExtension2),
23900 onFail);
23901 break;
23902 }
23903 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT: {
23904 checkEqual_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(
23905 reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT*>(
23906 structExtension),
23907 reinterpret_cast<const VkPhysicalDeviceImageDrmFormatModifierInfoEXT*>(
23908 structExtension2),
23909 onFail);
23910 break;
23911 }
23912 case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT: {
23913 checkEqual_VkImageDrmFormatModifierListCreateInfoEXT(
23914 reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT*>(structExtension),
23915 reinterpret_cast<const VkImageDrmFormatModifierListCreateInfoEXT*>(
23916 structExtension2),
23917 onFail);
23918 break;
23919 }
23920 case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT: {
23921 checkEqual_VkImageDrmFormatModifierExplicitCreateInfoEXT(
23922 reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(
23923 structExtension),
23924 reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(
23925 structExtension2),
23926 onFail);
23927 break;
23928 }
23929 case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT: {
23930 checkEqual_VkDrmFormatModifierPropertiesList2EXT(
23931 reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension),
23932 reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension2),
23933 onFail);
23934 break;
23935 }
23936 #endif
23937 #ifdef VK_EXT_validation_cache
23938 case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT: {
23939 checkEqual_VkShaderModuleValidationCacheCreateInfoEXT(
23940 reinterpret_cast<const VkShaderModuleValidationCacheCreateInfoEXT*>(
23941 structExtension),
23942 reinterpret_cast<const VkShaderModuleValidationCacheCreateInfoEXT*>(
23943 structExtension2),
23944 onFail);
23945 break;
23946 }
23947 #endif
23948 #ifdef VK_NV_shading_rate_image
23949 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV: {
23950 checkEqual_VkPipelineViewportShadingRateImageStateCreateInfoNV(
23951 reinterpret_cast<const VkPipelineViewportShadingRateImageStateCreateInfoNV*>(
23952 structExtension),
23953 reinterpret_cast<const VkPipelineViewportShadingRateImageStateCreateInfoNV*>(
23954 structExtension2),
23955 onFail);
23956 break;
23957 }
23958 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV: {
23959 checkEqual_VkPhysicalDeviceShadingRateImageFeaturesNV(
23960 reinterpret_cast<const VkPhysicalDeviceShadingRateImageFeaturesNV*>(
23961 structExtension),
23962 reinterpret_cast<const VkPhysicalDeviceShadingRateImageFeaturesNV*>(
23963 structExtension2),
23964 onFail);
23965 break;
23966 }
23967 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV: {
23968 checkEqual_VkPhysicalDeviceShadingRateImagePropertiesNV(
23969 reinterpret_cast<const VkPhysicalDeviceShadingRateImagePropertiesNV*>(
23970 structExtension),
23971 reinterpret_cast<const VkPhysicalDeviceShadingRateImagePropertiesNV*>(
23972 structExtension2),
23973 onFail);
23974 break;
23975 }
23976 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV: {
23977 checkEqual_VkPipelineViewportCoarseSampleOrderStateCreateInfoNV(
23978 reinterpret_cast<const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV*>(
23979 structExtension),
23980 reinterpret_cast<const VkPipelineViewportCoarseSampleOrderStateCreateInfoNV*>(
23981 structExtension2),
23982 onFail);
23983 break;
23984 }
23985 #endif
23986 #ifdef VK_NV_ray_tracing
23987 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV: {
23988 checkEqual_VkWriteDescriptorSetAccelerationStructureNV(
23989 reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureNV*>(
23990 structExtension),
23991 reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureNV*>(
23992 structExtension2),
23993 onFail);
23994 break;
23995 }
23996 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV: {
23997 checkEqual_VkPhysicalDeviceRayTracingPropertiesNV(
23998 reinterpret_cast<const VkPhysicalDeviceRayTracingPropertiesNV*>(structExtension),
23999 reinterpret_cast<const VkPhysicalDeviceRayTracingPropertiesNV*>(structExtension2),
24000 onFail);
24001 break;
24002 }
24003 #endif
24004 #ifdef VK_NV_representative_fragment_test
24005 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV: {
24006 checkEqual_VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV(
24007 reinterpret_cast<const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*>(
24008 structExtension),
24009 reinterpret_cast<const VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV*>(
24010 structExtension2),
24011 onFail);
24012 break;
24013 }
24014 case VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV: {
24015 checkEqual_VkPipelineRepresentativeFragmentTestStateCreateInfoNV(
24016 reinterpret_cast<const VkPipelineRepresentativeFragmentTestStateCreateInfoNV*>(
24017 structExtension),
24018 reinterpret_cast<const VkPipelineRepresentativeFragmentTestStateCreateInfoNV*>(
24019 structExtension2),
24020 onFail);
24021 break;
24022 }
24023 #endif
24024 #ifdef VK_EXT_filter_cubic
24025 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT: {
24026 checkEqual_VkPhysicalDeviceImageViewImageFormatInfoEXT(
24027 reinterpret_cast<const VkPhysicalDeviceImageViewImageFormatInfoEXT*>(
24028 structExtension),
24029 reinterpret_cast<const VkPhysicalDeviceImageViewImageFormatInfoEXT*>(
24030 structExtension2),
24031 onFail);
24032 break;
24033 }
24034 case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT: {
24035 checkEqual_VkFilterCubicImageViewImageFormatPropertiesEXT(
24036 reinterpret_cast<const VkFilterCubicImageViewImageFormatPropertiesEXT*>(
24037 structExtension),
24038 reinterpret_cast<const VkFilterCubicImageViewImageFormatPropertiesEXT*>(
24039 structExtension2),
24040 onFail);
24041 break;
24042 }
24043 #endif
24044 #ifdef VK_EXT_external_memory_host
24045 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT: {
24046 checkEqual_VkImportMemoryHostPointerInfoEXT(
24047 reinterpret_cast<const VkImportMemoryHostPointerInfoEXT*>(structExtension),
24048 reinterpret_cast<const VkImportMemoryHostPointerInfoEXT*>(structExtension2),
24049 onFail);
24050 break;
24051 }
24052 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT: {
24053 checkEqual_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(
24054 reinterpret_cast<const VkPhysicalDeviceExternalMemoryHostPropertiesEXT*>(
24055 structExtension),
24056 reinterpret_cast<const VkPhysicalDeviceExternalMemoryHostPropertiesEXT*>(
24057 structExtension2),
24058 onFail);
24059 break;
24060 }
24061 #endif
24062 #ifdef VK_AMD_pipeline_compiler_control
24063 case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD: {
24064 checkEqual_VkPipelineCompilerControlCreateInfoAMD(
24065 reinterpret_cast<const VkPipelineCompilerControlCreateInfoAMD*>(structExtension),
24066 reinterpret_cast<const VkPipelineCompilerControlCreateInfoAMD*>(structExtension2),
24067 onFail);
24068 break;
24069 }
24070 #endif
24071 #ifdef VK_AMD_shader_core_properties
24072 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD: {
24073 checkEqual_VkPhysicalDeviceShaderCorePropertiesAMD(
24074 reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesAMD*>(structExtension),
24075 reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesAMD*>(structExtension2),
24076 onFail);
24077 break;
24078 }
24079 #endif
24080 #ifdef VK_AMD_memory_overallocation_behavior
24081 case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD: {
24082 checkEqual_VkDeviceMemoryOverallocationCreateInfoAMD(
24083 reinterpret_cast<const VkDeviceMemoryOverallocationCreateInfoAMD*>(structExtension),
24084 reinterpret_cast<const VkDeviceMemoryOverallocationCreateInfoAMD*>(
24085 structExtension2),
24086 onFail);
24087 break;
24088 }
24089 #endif
24090 #ifdef VK_EXT_vertex_attribute_divisor
24091 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: {
24092 checkEqual_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
24093 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>(
24094 structExtension),
24095 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>(
24096 structExtension2),
24097 onFail);
24098 break;
24099 }
24100 case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT: {
24101 checkEqual_VkPipelineVertexInputDivisorStateCreateInfoEXT(
24102 reinterpret_cast<const VkPipelineVertexInputDivisorStateCreateInfoEXT*>(
24103 structExtension),
24104 reinterpret_cast<const VkPipelineVertexInputDivisorStateCreateInfoEXT*>(
24105 structExtension2),
24106 onFail);
24107 break;
24108 }
24109 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT: {
24110 checkEqual_VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT(
24111 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*>(
24112 structExtension),
24113 reinterpret_cast<const VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT*>(
24114 structExtension2),
24115 onFail);
24116 break;
24117 }
24118 #endif
24119 #ifdef VK_GGP_frame_token
24120 case VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP: {
24121 checkEqual_VkPresentFrameTokenGGP(
24122 reinterpret_cast<const VkPresentFrameTokenGGP*>(structExtension),
24123 reinterpret_cast<const VkPresentFrameTokenGGP*>(structExtension2), onFail);
24124 break;
24125 }
24126 #endif
24127 #ifdef VK_NV_compute_shader_derivatives
24128 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV: {
24129 checkEqual_VkPhysicalDeviceComputeShaderDerivativesFeaturesNV(
24130 reinterpret_cast<const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV*>(
24131 structExtension),
24132 reinterpret_cast<const VkPhysicalDeviceComputeShaderDerivativesFeaturesNV*>(
24133 structExtension2),
24134 onFail);
24135 break;
24136 }
24137 #endif
24138 #ifdef VK_NV_mesh_shader
24139 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV: {
24140 checkEqual_VkPhysicalDeviceMeshShaderFeaturesNV(
24141 reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesNV*>(structExtension),
24142 reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesNV*>(structExtension2),
24143 onFail);
24144 break;
24145 }
24146 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV: {
24147 checkEqual_VkPhysicalDeviceMeshShaderPropertiesNV(
24148 reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesNV*>(structExtension),
24149 reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesNV*>(structExtension2),
24150 onFail);
24151 break;
24152 }
24153 #endif
24154 #ifdef VK_NV_shader_image_footprint
24155 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV: {
24156 checkEqual_VkPhysicalDeviceShaderImageFootprintFeaturesNV(
24157 reinterpret_cast<const VkPhysicalDeviceShaderImageFootprintFeaturesNV*>(
24158 structExtension),
24159 reinterpret_cast<const VkPhysicalDeviceShaderImageFootprintFeaturesNV*>(
24160 structExtension2),
24161 onFail);
24162 break;
24163 }
24164 #endif
24165 #ifdef VK_NV_scissor_exclusive
24166 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV: {
24167 checkEqual_VkPipelineViewportExclusiveScissorStateCreateInfoNV(
24168 reinterpret_cast<const VkPipelineViewportExclusiveScissorStateCreateInfoNV*>(
24169 structExtension),
24170 reinterpret_cast<const VkPipelineViewportExclusiveScissorStateCreateInfoNV*>(
24171 structExtension2),
24172 onFail);
24173 break;
24174 }
24175 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV: {
24176 checkEqual_VkPhysicalDeviceExclusiveScissorFeaturesNV(
24177 reinterpret_cast<const VkPhysicalDeviceExclusiveScissorFeaturesNV*>(
24178 structExtension),
24179 reinterpret_cast<const VkPhysicalDeviceExclusiveScissorFeaturesNV*>(
24180 structExtension2),
24181 onFail);
24182 break;
24183 }
24184 #endif
24185 #ifdef VK_NV_device_diagnostic_checkpoints
24186 case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV: {
24187 checkEqual_VkQueueFamilyCheckpointPropertiesNV(
24188 reinterpret_cast<const VkQueueFamilyCheckpointPropertiesNV*>(structExtension),
24189 reinterpret_cast<const VkQueueFamilyCheckpointPropertiesNV*>(structExtension2),
24190 onFail);
24191 break;
24192 }
24193 #endif
24194 #ifdef VK_INTEL_shader_integer_functions2
24195 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL: {
24196 checkEqual_VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(
24197 reinterpret_cast<const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*>(
24198 structExtension),
24199 reinterpret_cast<const VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL*>(
24200 structExtension2),
24201 onFail);
24202 break;
24203 }
24204 #endif
24205 #ifdef VK_INTEL_performance_query
24206 case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL: {
24207 checkEqual_VkQueryPoolPerformanceQueryCreateInfoINTEL(
24208 reinterpret_cast<const VkQueryPoolPerformanceQueryCreateInfoINTEL*>(
24209 structExtension),
24210 reinterpret_cast<const VkQueryPoolPerformanceQueryCreateInfoINTEL*>(
24211 structExtension2),
24212 onFail);
24213 break;
24214 }
24215 #endif
24216 #ifdef VK_EXT_pci_bus_info
24217 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT: {
24218 checkEqual_VkPhysicalDevicePCIBusInfoPropertiesEXT(
24219 reinterpret_cast<const VkPhysicalDevicePCIBusInfoPropertiesEXT*>(structExtension),
24220 reinterpret_cast<const VkPhysicalDevicePCIBusInfoPropertiesEXT*>(structExtension2),
24221 onFail);
24222 break;
24223 }
24224 #endif
24225 #ifdef VK_AMD_display_native_hdr
24226 case VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD: {
24227 checkEqual_VkDisplayNativeHdrSurfaceCapabilitiesAMD(
24228 reinterpret_cast<const VkDisplayNativeHdrSurfaceCapabilitiesAMD*>(structExtension),
24229 reinterpret_cast<const VkDisplayNativeHdrSurfaceCapabilitiesAMD*>(structExtension2),
24230 onFail);
24231 break;
24232 }
24233 case VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD: {
24234 checkEqual_VkSwapchainDisplayNativeHdrCreateInfoAMD(
24235 reinterpret_cast<const VkSwapchainDisplayNativeHdrCreateInfoAMD*>(structExtension),
24236 reinterpret_cast<const VkSwapchainDisplayNativeHdrCreateInfoAMD*>(structExtension2),
24237 onFail);
24238 break;
24239 }
24240 #endif
24241 #ifdef VK_EXT_fragment_density_map
24242 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT: {
24243 checkEqual_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(
24244 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
24245 structExtension),
24246 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapFeaturesEXT*>(
24247 structExtension2),
24248 onFail);
24249 break;
24250 }
24251 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT: {
24252 checkEqual_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(
24253 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>(
24254 structExtension),
24255 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapPropertiesEXT*>(
24256 structExtension2),
24257 onFail);
24258 break;
24259 }
24260 case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT: {
24261 checkEqual_VkRenderPassFragmentDensityMapCreateInfoEXT(
24262 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
24263 structExtension),
24264 reinterpret_cast<const VkRenderPassFragmentDensityMapCreateInfoEXT*>(
24265 structExtension2),
24266 onFail);
24267 break;
24268 }
24269 #endif
24270 #ifdef VK_AMD_shader_core_properties2
24271 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD: {
24272 checkEqual_VkPhysicalDeviceShaderCoreProperties2AMD(
24273 reinterpret_cast<const VkPhysicalDeviceShaderCoreProperties2AMD*>(structExtension),
24274 reinterpret_cast<const VkPhysicalDeviceShaderCoreProperties2AMD*>(structExtension2),
24275 onFail);
24276 break;
24277 }
24278 #endif
24279 #ifdef VK_AMD_device_coherent_memory
24280 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD: {
24281 checkEqual_VkPhysicalDeviceCoherentMemoryFeaturesAMD(
24282 reinterpret_cast<const VkPhysicalDeviceCoherentMemoryFeaturesAMD*>(structExtension),
24283 reinterpret_cast<const VkPhysicalDeviceCoherentMemoryFeaturesAMD*>(
24284 structExtension2),
24285 onFail);
24286 break;
24287 }
24288 #endif
24289 #ifdef VK_EXT_shader_image_atomic_int64
24290 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT: {
24291 checkEqual_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(
24292 reinterpret_cast<const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*>(
24293 structExtension),
24294 reinterpret_cast<const VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT*>(
24295 structExtension2),
24296 onFail);
24297 break;
24298 }
24299 #endif
24300 #ifdef VK_EXT_memory_budget
24301 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT: {
24302 checkEqual_VkPhysicalDeviceMemoryBudgetPropertiesEXT(
24303 reinterpret_cast<const VkPhysicalDeviceMemoryBudgetPropertiesEXT*>(structExtension),
24304 reinterpret_cast<const VkPhysicalDeviceMemoryBudgetPropertiesEXT*>(
24305 structExtension2),
24306 onFail);
24307 break;
24308 }
24309 #endif
24310 #ifdef VK_EXT_memory_priority
24311 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT: {
24312 checkEqual_VkPhysicalDeviceMemoryPriorityFeaturesEXT(
24313 reinterpret_cast<const VkPhysicalDeviceMemoryPriorityFeaturesEXT*>(structExtension),
24314 reinterpret_cast<const VkPhysicalDeviceMemoryPriorityFeaturesEXT*>(
24315 structExtension2),
24316 onFail);
24317 break;
24318 }
24319 case VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT: {
24320 checkEqual_VkMemoryPriorityAllocateInfoEXT(
24321 reinterpret_cast<const VkMemoryPriorityAllocateInfoEXT*>(structExtension),
24322 reinterpret_cast<const VkMemoryPriorityAllocateInfoEXT*>(structExtension2), onFail);
24323 break;
24324 }
24325 #endif
24326 #ifdef VK_NV_dedicated_allocation_image_aliasing
24327 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV: {
24328 checkEqual_VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(
24329 reinterpret_cast<const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*>(
24330 structExtension),
24331 reinterpret_cast<const VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV*>(
24332 structExtension2),
24333 onFail);
24334 break;
24335 }
24336 #endif
24337 #ifdef VK_EXT_buffer_device_address
24338 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT: {
24339 checkEqual_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT(
24340 reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT*>(
24341 structExtension),
24342 reinterpret_cast<const VkPhysicalDeviceBufferDeviceAddressFeaturesEXT*>(
24343 structExtension2),
24344 onFail);
24345 break;
24346 }
24347 case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT: {
24348 checkEqual_VkBufferDeviceAddressCreateInfoEXT(
24349 reinterpret_cast<const VkBufferDeviceAddressCreateInfoEXT*>(structExtension),
24350 reinterpret_cast<const VkBufferDeviceAddressCreateInfoEXT*>(structExtension2),
24351 onFail);
24352 break;
24353 }
24354 #endif
24355 #ifdef VK_EXT_validation_features
24356 case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT: {
24357 checkEqual_VkValidationFeaturesEXT(
24358 reinterpret_cast<const VkValidationFeaturesEXT*>(structExtension),
24359 reinterpret_cast<const VkValidationFeaturesEXT*>(structExtension2), onFail);
24360 break;
24361 }
24362 #endif
24363 #ifdef VK_NV_cooperative_matrix
24364 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV: {
24365 checkEqual_VkPhysicalDeviceCooperativeMatrixFeaturesNV(
24366 reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixFeaturesNV*>(
24367 structExtension),
24368 reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixFeaturesNV*>(
24369 structExtension2),
24370 onFail);
24371 break;
24372 }
24373 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV: {
24374 checkEqual_VkPhysicalDeviceCooperativeMatrixPropertiesNV(
24375 reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixPropertiesNV*>(
24376 structExtension),
24377 reinterpret_cast<const VkPhysicalDeviceCooperativeMatrixPropertiesNV*>(
24378 structExtension2),
24379 onFail);
24380 break;
24381 }
24382 #endif
24383 #ifdef VK_NV_coverage_reduction_mode
24384 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV: {
24385 checkEqual_VkPhysicalDeviceCoverageReductionModeFeaturesNV(
24386 reinterpret_cast<const VkPhysicalDeviceCoverageReductionModeFeaturesNV*>(
24387 structExtension),
24388 reinterpret_cast<const VkPhysicalDeviceCoverageReductionModeFeaturesNV*>(
24389 structExtension2),
24390 onFail);
24391 break;
24392 }
24393 case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV: {
24394 checkEqual_VkPipelineCoverageReductionStateCreateInfoNV(
24395 reinterpret_cast<const VkPipelineCoverageReductionStateCreateInfoNV*>(
24396 structExtension),
24397 reinterpret_cast<const VkPipelineCoverageReductionStateCreateInfoNV*>(
24398 structExtension2),
24399 onFail);
24400 break;
24401 }
24402 #endif
24403 #ifdef VK_EXT_fragment_shader_interlock
24404 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT: {
24405 checkEqual_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(
24406 reinterpret_cast<const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*>(
24407 structExtension),
24408 reinterpret_cast<const VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT*>(
24409 structExtension2),
24410 onFail);
24411 break;
24412 }
24413 #endif
24414 #ifdef VK_EXT_ycbcr_image_arrays
24415 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT: {
24416 checkEqual_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(
24417 reinterpret_cast<const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT*>(
24418 structExtension),
24419 reinterpret_cast<const VkPhysicalDeviceYcbcrImageArraysFeaturesEXT*>(
24420 structExtension2),
24421 onFail);
24422 break;
24423 }
24424 #endif
24425 #ifdef VK_EXT_provoking_vertex
24426 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: {
24427 checkEqual_VkPhysicalDeviceProvokingVertexFeaturesEXT(
24428 reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(
24429 structExtension),
24430 reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(
24431 structExtension2),
24432 onFail);
24433 break;
24434 }
24435 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: {
24436 checkEqual_VkPhysicalDeviceProvokingVertexPropertiesEXT(
24437 reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(
24438 structExtension),
24439 reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(
24440 structExtension2),
24441 onFail);
24442 break;
24443 }
24444 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT: {
24445 checkEqual_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
24446 reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(
24447 structExtension),
24448 reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(
24449 structExtension2),
24450 onFail);
24451 break;
24452 }
24453 #endif
24454 #ifdef VK_EXT_full_screen_exclusive
24455 case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT: {
24456 checkEqual_VkSurfaceFullScreenExclusiveInfoEXT(
24457 reinterpret_cast<const VkSurfaceFullScreenExclusiveInfoEXT*>(structExtension),
24458 reinterpret_cast<const VkSurfaceFullScreenExclusiveInfoEXT*>(structExtension2),
24459 onFail);
24460 break;
24461 }
24462 case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT: {
24463 checkEqual_VkSurfaceCapabilitiesFullScreenExclusiveEXT(
24464 reinterpret_cast<const VkSurfaceCapabilitiesFullScreenExclusiveEXT*>(
24465 structExtension),
24466 reinterpret_cast<const VkSurfaceCapabilitiesFullScreenExclusiveEXT*>(
24467 structExtension2),
24468 onFail);
24469 break;
24470 }
24471 case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT: {
24472 checkEqual_VkSurfaceFullScreenExclusiveWin32InfoEXT(
24473 reinterpret_cast<const VkSurfaceFullScreenExclusiveWin32InfoEXT*>(structExtension),
24474 reinterpret_cast<const VkSurfaceFullScreenExclusiveWin32InfoEXT*>(structExtension2),
24475 onFail);
24476 break;
24477 }
24478 #endif
24479 #ifdef VK_EXT_line_rasterization
24480 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT: {
24481 checkEqual_VkPhysicalDeviceLineRasterizationFeaturesEXT(
24482 reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesEXT*>(
24483 structExtension),
24484 reinterpret_cast<const VkPhysicalDeviceLineRasterizationFeaturesEXT*>(
24485 structExtension2),
24486 onFail);
24487 break;
24488 }
24489 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT: {
24490 checkEqual_VkPhysicalDeviceLineRasterizationPropertiesEXT(
24491 reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesEXT*>(
24492 structExtension),
24493 reinterpret_cast<const VkPhysicalDeviceLineRasterizationPropertiesEXT*>(
24494 structExtension2),
24495 onFail);
24496 break;
24497 }
24498 case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT: {
24499 checkEqual_VkPipelineRasterizationLineStateCreateInfoEXT(
24500 reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoEXT*>(
24501 structExtension),
24502 reinterpret_cast<const VkPipelineRasterizationLineStateCreateInfoEXT*>(
24503 structExtension2),
24504 onFail);
24505 break;
24506 }
24507 #endif
24508 #ifdef VK_EXT_shader_atomic_float
24509 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT: {
24510 checkEqual_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(
24511 reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT*>(
24512 structExtension),
24513 reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloatFeaturesEXT*>(
24514 structExtension2),
24515 onFail);
24516 break;
24517 }
24518 #endif
24519 #ifdef VK_EXT_index_type_uint8
24520 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT: {
24521 checkEqual_VkPhysicalDeviceIndexTypeUint8FeaturesEXT(
24522 reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8FeaturesEXT*>(structExtension),
24523 reinterpret_cast<const VkPhysicalDeviceIndexTypeUint8FeaturesEXT*>(
24524 structExtension2),
24525 onFail);
24526 break;
24527 }
24528 #endif
24529 #ifdef VK_EXT_extended_dynamic_state
24530 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: {
24531 checkEqual_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(
24532 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>(
24533 structExtension),
24534 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT*>(
24535 structExtension2),
24536 onFail);
24537 break;
24538 }
24539 #endif
24540 #ifdef VK_EXT_shader_atomic_float2
24541 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT: {
24542 checkEqual_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
24543 reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(
24544 structExtension),
24545 reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(
24546 structExtension2),
24547 onFail);
24548 break;
24549 }
24550 #endif
24551 #ifdef VK_EXT_surface_maintenance1
24552 case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT: {
24553 checkEqual_VkSurfacePresentModeEXT(
24554 reinterpret_cast<const VkSurfacePresentModeEXT*>(structExtension),
24555 reinterpret_cast<const VkSurfacePresentModeEXT*>(structExtension2), onFail);
24556 break;
24557 }
24558 case VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT: {
24559 checkEqual_VkSurfacePresentScalingCapabilitiesEXT(
24560 reinterpret_cast<const VkSurfacePresentScalingCapabilitiesEXT*>(structExtension),
24561 reinterpret_cast<const VkSurfacePresentScalingCapabilitiesEXT*>(structExtension2),
24562 onFail);
24563 break;
24564 }
24565 case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT: {
24566 checkEqual_VkSurfacePresentModeCompatibilityEXT(
24567 reinterpret_cast<const VkSurfacePresentModeCompatibilityEXT*>(structExtension),
24568 reinterpret_cast<const VkSurfacePresentModeCompatibilityEXT*>(structExtension2),
24569 onFail);
24570 break;
24571 }
24572 #endif
24573 #ifdef VK_EXT_swapchain_maintenance1
24574 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT: {
24575 checkEqual_VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT(
24576 reinterpret_cast<const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*>(
24577 structExtension),
24578 reinterpret_cast<const VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT*>(
24579 structExtension2),
24580 onFail);
24581 break;
24582 }
24583 case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT: {
24584 checkEqual_VkSwapchainPresentFenceInfoEXT(
24585 reinterpret_cast<const VkSwapchainPresentFenceInfoEXT*>(structExtension),
24586 reinterpret_cast<const VkSwapchainPresentFenceInfoEXT*>(structExtension2), onFail);
24587 break;
24588 }
24589 case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT: {
24590 checkEqual_VkSwapchainPresentModesCreateInfoEXT(
24591 reinterpret_cast<const VkSwapchainPresentModesCreateInfoEXT*>(structExtension),
24592 reinterpret_cast<const VkSwapchainPresentModesCreateInfoEXT*>(structExtension2),
24593 onFail);
24594 break;
24595 }
24596 case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT: {
24597 checkEqual_VkSwapchainPresentModeInfoEXT(
24598 reinterpret_cast<const VkSwapchainPresentModeInfoEXT*>(structExtension),
24599 reinterpret_cast<const VkSwapchainPresentModeInfoEXT*>(structExtension2), onFail);
24600 break;
24601 }
24602 case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT: {
24603 checkEqual_VkSwapchainPresentScalingCreateInfoEXT(
24604 reinterpret_cast<const VkSwapchainPresentScalingCreateInfoEXT*>(structExtension),
24605 reinterpret_cast<const VkSwapchainPresentScalingCreateInfoEXT*>(structExtension2),
24606 onFail);
24607 break;
24608 }
24609 #endif
24610 #ifdef VK_NV_device_generated_commands
24611 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV: {
24612 checkEqual_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV(
24613 reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*>(
24614 structExtension),
24615 reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV*>(
24616 structExtension2),
24617 onFail);
24618 break;
24619 }
24620 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV: {
24621 checkEqual_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV(
24622 reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*>(
24623 structExtension),
24624 reinterpret_cast<const VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV*>(
24625 structExtension2),
24626 onFail);
24627 break;
24628 }
24629 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV: {
24630 checkEqual_VkGraphicsPipelineShaderGroupsCreateInfoNV(
24631 reinterpret_cast<const VkGraphicsPipelineShaderGroupsCreateInfoNV*>(
24632 structExtension),
24633 reinterpret_cast<const VkGraphicsPipelineShaderGroupsCreateInfoNV*>(
24634 structExtension2),
24635 onFail);
24636 break;
24637 }
24638 #endif
24639 #ifdef VK_NV_inherited_viewport_scissor
24640 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV: {
24641 checkEqual_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
24642 reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(
24643 structExtension),
24644 reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(
24645 structExtension2),
24646 onFail);
24647 break;
24648 }
24649 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV: {
24650 checkEqual_VkCommandBufferInheritanceViewportScissorInfoNV(
24651 reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV*>(
24652 structExtension),
24653 reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV*>(
24654 structExtension2),
24655 onFail);
24656 break;
24657 }
24658 #endif
24659 #ifdef VK_EXT_texel_buffer_alignment
24660 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: {
24661 checkEqual_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
24662 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>(
24663 structExtension),
24664 reinterpret_cast<const VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT*>(
24665 structExtension2),
24666 onFail);
24667 break;
24668 }
24669 #endif
24670 #ifdef VK_QCOM_render_pass_transform
24671 case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM: {
24672 checkEqual_VkRenderPassTransformBeginInfoQCOM(
24673 reinterpret_cast<const VkRenderPassTransformBeginInfoQCOM*>(structExtension),
24674 reinterpret_cast<const VkRenderPassTransformBeginInfoQCOM*>(structExtension2),
24675 onFail);
24676 break;
24677 }
24678 case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM: {
24679 checkEqual_VkCommandBufferInheritanceRenderPassTransformInfoQCOM(
24680 reinterpret_cast<const VkCommandBufferInheritanceRenderPassTransformInfoQCOM*>(
24681 structExtension),
24682 reinterpret_cast<const VkCommandBufferInheritanceRenderPassTransformInfoQCOM*>(
24683 structExtension2),
24684 onFail);
24685 break;
24686 }
24687 #endif
24688 #ifdef VK_EXT_device_memory_report
24689 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT: {
24690 checkEqual_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(
24691 reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>(
24692 structExtension),
24693 reinterpret_cast<const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT*>(
24694 structExtension2),
24695 onFail);
24696 break;
24697 }
24698 case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT: {
24699 checkEqual_VkDeviceDeviceMemoryReportCreateInfoEXT(
24700 reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT*>(structExtension),
24701 reinterpret_cast<const VkDeviceDeviceMemoryReportCreateInfoEXT*>(structExtension2),
24702 onFail);
24703 break;
24704 }
24705 #endif
24706 #ifdef VK_EXT_robustness2
24707 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT: {
24708 checkEqual_VkPhysicalDeviceRobustness2FeaturesEXT(
24709 reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT*>(structExtension),
24710 reinterpret_cast<const VkPhysicalDeviceRobustness2FeaturesEXT*>(structExtension2),
24711 onFail);
24712 break;
24713 }
24714 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT: {
24715 checkEqual_VkPhysicalDeviceRobustness2PropertiesEXT(
24716 reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT*>(structExtension),
24717 reinterpret_cast<const VkPhysicalDeviceRobustness2PropertiesEXT*>(structExtension2),
24718 onFail);
24719 break;
24720 }
24721 #endif
24722 #ifdef VK_EXT_custom_border_color
24723 case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT: {
24724 checkEqual_VkSamplerCustomBorderColorCreateInfoEXT(
24725 reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT*>(structExtension),
24726 reinterpret_cast<const VkSamplerCustomBorderColorCreateInfoEXT*>(structExtension2),
24727 onFail);
24728 break;
24729 }
24730 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: {
24731 checkEqual_VkPhysicalDeviceCustomBorderColorPropertiesEXT(
24732 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT*>(
24733 structExtension),
24734 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorPropertiesEXT*>(
24735 structExtension2),
24736 onFail);
24737 break;
24738 }
24739 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: {
24740 checkEqual_VkPhysicalDeviceCustomBorderColorFeaturesEXT(
24741 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT*>(
24742 structExtension),
24743 reinterpret_cast<const VkPhysicalDeviceCustomBorderColorFeaturesEXT*>(
24744 structExtension2),
24745 onFail);
24746 break;
24747 }
24748 #endif
24749 #ifdef VK_NV_present_barrier
24750 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV: {
24751 checkEqual_VkPhysicalDevicePresentBarrierFeaturesNV(
24752 reinterpret_cast<const VkPhysicalDevicePresentBarrierFeaturesNV*>(structExtension),
24753 reinterpret_cast<const VkPhysicalDevicePresentBarrierFeaturesNV*>(structExtension2),
24754 onFail);
24755 break;
24756 }
24757 case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV: {
24758 checkEqual_VkSurfaceCapabilitiesPresentBarrierNV(
24759 reinterpret_cast<const VkSurfaceCapabilitiesPresentBarrierNV*>(structExtension),
24760 reinterpret_cast<const VkSurfaceCapabilitiesPresentBarrierNV*>(structExtension2),
24761 onFail);
24762 break;
24763 }
24764 case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV: {
24765 checkEqual_VkSwapchainPresentBarrierCreateInfoNV(
24766 reinterpret_cast<const VkSwapchainPresentBarrierCreateInfoNV*>(structExtension),
24767 reinterpret_cast<const VkSwapchainPresentBarrierCreateInfoNV*>(structExtension2),
24768 onFail);
24769 break;
24770 }
24771 #endif
24772 #ifdef VK_NV_device_diagnostics_config
24773 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV: {
24774 checkEqual_VkPhysicalDeviceDiagnosticsConfigFeaturesNV(
24775 reinterpret_cast<const VkPhysicalDeviceDiagnosticsConfigFeaturesNV*>(
24776 structExtension),
24777 reinterpret_cast<const VkPhysicalDeviceDiagnosticsConfigFeaturesNV*>(
24778 structExtension2),
24779 onFail);
24780 break;
24781 }
24782 case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV: {
24783 checkEqual_VkDeviceDiagnosticsConfigCreateInfoNV(
24784 reinterpret_cast<const VkDeviceDiagnosticsConfigCreateInfoNV*>(structExtension),
24785 reinterpret_cast<const VkDeviceDiagnosticsConfigCreateInfoNV*>(structExtension2),
24786 onFail);
24787 break;
24788 }
24789 #endif
24790 #ifdef VK_NV_low_latency
24791 case VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV: {
24792 checkEqual_VkQueryLowLatencySupportNV(
24793 reinterpret_cast<const VkQueryLowLatencySupportNV*>(structExtension),
24794 reinterpret_cast<const VkQueryLowLatencySupportNV*>(structExtension2), onFail);
24795 break;
24796 }
24797 #endif
24798 #ifdef VK_EXT_metal_objects
24799 case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT: {
24800 checkEqual_VkExportMetalObjectCreateInfoEXT(
24801 reinterpret_cast<const VkExportMetalObjectCreateInfoEXT*>(structExtension),
24802 reinterpret_cast<const VkExportMetalObjectCreateInfoEXT*>(structExtension2),
24803 onFail);
24804 break;
24805 }
24806 case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT: {
24807 checkEqual_VkExportMetalDeviceInfoEXT(
24808 reinterpret_cast<const VkExportMetalDeviceInfoEXT*>(structExtension),
24809 reinterpret_cast<const VkExportMetalDeviceInfoEXT*>(structExtension2), onFail);
24810 break;
24811 }
24812 case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT: {
24813 checkEqual_VkExportMetalCommandQueueInfoEXT(
24814 reinterpret_cast<const VkExportMetalCommandQueueInfoEXT*>(structExtension),
24815 reinterpret_cast<const VkExportMetalCommandQueueInfoEXT*>(structExtension2),
24816 onFail);
24817 break;
24818 }
24819 case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT: {
24820 checkEqual_VkExportMetalBufferInfoEXT(
24821 reinterpret_cast<const VkExportMetalBufferInfoEXT*>(structExtension),
24822 reinterpret_cast<const VkExportMetalBufferInfoEXT*>(structExtension2), onFail);
24823 break;
24824 }
24825 case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT: {
24826 checkEqual_VkImportMetalBufferInfoEXT(
24827 reinterpret_cast<const VkImportMetalBufferInfoEXT*>(structExtension),
24828 reinterpret_cast<const VkImportMetalBufferInfoEXT*>(structExtension2), onFail);
24829 break;
24830 }
24831 case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT: {
24832 checkEqual_VkExportMetalTextureInfoEXT(
24833 reinterpret_cast<const VkExportMetalTextureInfoEXT*>(structExtension),
24834 reinterpret_cast<const VkExportMetalTextureInfoEXT*>(structExtension2), onFail);
24835 break;
24836 }
24837 case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT: {
24838 checkEqual_VkImportMetalTextureInfoEXT(
24839 reinterpret_cast<const VkImportMetalTextureInfoEXT*>(structExtension),
24840 reinterpret_cast<const VkImportMetalTextureInfoEXT*>(structExtension2), onFail);
24841 break;
24842 }
24843 case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT: {
24844 checkEqual_VkExportMetalIOSurfaceInfoEXT(
24845 reinterpret_cast<const VkExportMetalIOSurfaceInfoEXT*>(structExtension),
24846 reinterpret_cast<const VkExportMetalIOSurfaceInfoEXT*>(structExtension2), onFail);
24847 break;
24848 }
24849 case VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT: {
24850 checkEqual_VkImportMetalIOSurfaceInfoEXT(
24851 reinterpret_cast<const VkImportMetalIOSurfaceInfoEXT*>(structExtension),
24852 reinterpret_cast<const VkImportMetalIOSurfaceInfoEXT*>(structExtension2), onFail);
24853 break;
24854 }
24855 case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT: {
24856 checkEqual_VkExportMetalSharedEventInfoEXT(
24857 reinterpret_cast<const VkExportMetalSharedEventInfoEXT*>(structExtension),
24858 reinterpret_cast<const VkExportMetalSharedEventInfoEXT*>(structExtension2), onFail);
24859 break;
24860 }
24861 case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT: {
24862 checkEqual_VkImportMetalSharedEventInfoEXT(
24863 reinterpret_cast<const VkImportMetalSharedEventInfoEXT*>(structExtension),
24864 reinterpret_cast<const VkImportMetalSharedEventInfoEXT*>(structExtension2), onFail);
24865 break;
24866 }
24867 #endif
24868 #ifdef VK_EXT_descriptor_buffer
24869 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT: {
24870 checkEqual_VkPhysicalDeviceDescriptorBufferPropertiesEXT(
24871 reinterpret_cast<const VkPhysicalDeviceDescriptorBufferPropertiesEXT*>(
24872 structExtension),
24873 reinterpret_cast<const VkPhysicalDeviceDescriptorBufferPropertiesEXT*>(
24874 structExtension2),
24875 onFail);
24876 break;
24877 }
24878 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT: {
24879 checkEqual_VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT(
24880 reinterpret_cast<const VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*>(
24881 structExtension),
24882 reinterpret_cast<const VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT*>(
24883 structExtension2),
24884 onFail);
24885 break;
24886 }
24887 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT: {
24888 checkEqual_VkPhysicalDeviceDescriptorBufferFeaturesEXT(
24889 reinterpret_cast<const VkPhysicalDeviceDescriptorBufferFeaturesEXT*>(
24890 structExtension),
24891 reinterpret_cast<const VkPhysicalDeviceDescriptorBufferFeaturesEXT*>(
24892 structExtension2),
24893 onFail);
24894 break;
24895 }
24896 case VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT: {
24897 checkEqual_VkDescriptorBufferBindingPushDescriptorBufferHandleEXT(
24898 reinterpret_cast<const VkDescriptorBufferBindingPushDescriptorBufferHandleEXT*>(
24899 structExtension),
24900 reinterpret_cast<const VkDescriptorBufferBindingPushDescriptorBufferHandleEXT*>(
24901 structExtension2),
24902 onFail);
24903 break;
24904 }
24905 case VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT: {
24906 checkEqual_VkOpaqueCaptureDescriptorDataCreateInfoEXT(
24907 reinterpret_cast<const VkOpaqueCaptureDescriptorDataCreateInfoEXT*>(
24908 structExtension),
24909 reinterpret_cast<const VkOpaqueCaptureDescriptorDataCreateInfoEXT*>(
24910 structExtension2),
24911 onFail);
24912 break;
24913 }
24914 #endif
24915 #ifdef VK_EXT_graphics_pipeline_library
24916 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT: {
24917 checkEqual_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(
24918 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*>(
24919 structExtension),
24920 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT*>(
24921 structExtension2),
24922 onFail);
24923 break;
24924 }
24925 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT: {
24926 checkEqual_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(
24927 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*>(
24928 structExtension),
24929 reinterpret_cast<const VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT*>(
24930 structExtension2),
24931 onFail);
24932 break;
24933 }
24934 case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT: {
24935 checkEqual_VkGraphicsPipelineLibraryCreateInfoEXT(
24936 reinterpret_cast<const VkGraphicsPipelineLibraryCreateInfoEXT*>(structExtension),
24937 reinterpret_cast<const VkGraphicsPipelineLibraryCreateInfoEXT*>(structExtension2),
24938 onFail);
24939 break;
24940 }
24941 #endif
24942 #ifdef VK_AMD_shader_early_and_late_fragment_tests
24943 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD: {
24944 checkEqual_VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD(
24945 reinterpret_cast<const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*>(
24946 structExtension),
24947 reinterpret_cast<const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD*>(
24948 structExtension2),
24949 onFail);
24950 break;
24951 }
24952 #endif
24953 #ifdef VK_NV_fragment_shading_rate_enums
24954 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV: {
24955 checkEqual_VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV(
24956 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*>(
24957 structExtension),
24958 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV*>(
24959 structExtension2),
24960 onFail);
24961 break;
24962 }
24963 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV: {
24964 checkEqual_VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV(
24965 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*>(
24966 structExtension),
24967 reinterpret_cast<const VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV*>(
24968 structExtension2),
24969 onFail);
24970 break;
24971 }
24972 case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV: {
24973 checkEqual_VkPipelineFragmentShadingRateEnumStateCreateInfoNV(
24974 reinterpret_cast<const VkPipelineFragmentShadingRateEnumStateCreateInfoNV*>(
24975 structExtension),
24976 reinterpret_cast<const VkPipelineFragmentShadingRateEnumStateCreateInfoNV*>(
24977 structExtension2),
24978 onFail);
24979 break;
24980 }
24981 #endif
24982 #ifdef VK_NV_ray_tracing_motion_blur
24983 case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV: {
24984 checkEqual_VkAccelerationStructureGeometryMotionTrianglesDataNV(
24985 reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV*>(
24986 structExtension),
24987 reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV*>(
24988 structExtension2),
24989 onFail);
24990 break;
24991 }
24992 case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV: {
24993 checkEqual_VkAccelerationStructureMotionInfoNV(
24994 reinterpret_cast<const VkAccelerationStructureMotionInfoNV*>(structExtension),
24995 reinterpret_cast<const VkAccelerationStructureMotionInfoNV*>(structExtension2),
24996 onFail);
24997 break;
24998 }
24999 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV: {
25000 checkEqual_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
25001 reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(
25002 structExtension),
25003 reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(
25004 structExtension2),
25005 onFail);
25006 break;
25007 }
25008 #endif
25009 #ifdef VK_EXT_ycbcr_2plane_444_formats
25010 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT: {
25011 checkEqual_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
25012 reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(
25013 structExtension),
25014 reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(
25015 structExtension2),
25016 onFail);
25017 break;
25018 }
25019 #endif
25020 #ifdef VK_EXT_fragment_density_map2
25021 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT: {
25022 checkEqual_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
25023 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT*>(
25024 structExtension),
25025 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2FeaturesEXT*>(
25026 structExtension2),
25027 onFail);
25028 break;
25029 }
25030 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT: {
25031 checkEqual_VkPhysicalDeviceFragmentDensityMap2PropertiesEXT(
25032 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT*>(
25033 structExtension),
25034 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMap2PropertiesEXT*>(
25035 structExtension2),
25036 onFail);
25037 break;
25038 }
25039 #endif
25040 #ifdef VK_QCOM_rotated_copy_commands
25041 case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM: {
25042 checkEqual_VkCopyCommandTransformInfoQCOM(
25043 reinterpret_cast<const VkCopyCommandTransformInfoQCOM*>(structExtension),
25044 reinterpret_cast<const VkCopyCommandTransformInfoQCOM*>(structExtension2), onFail);
25045 break;
25046 }
25047 #endif
25048 #ifdef VK_EXT_image_compression_control
25049 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: {
25050 checkEqual_VkPhysicalDeviceImageCompressionControlFeaturesEXT(
25051 reinterpret_cast<const VkPhysicalDeviceImageCompressionControlFeaturesEXT*>(
25052 structExtension),
25053 reinterpret_cast<const VkPhysicalDeviceImageCompressionControlFeaturesEXT*>(
25054 structExtension2),
25055 onFail);
25056 break;
25057 }
25058 case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT: {
25059 checkEqual_VkImageCompressionControlEXT(
25060 reinterpret_cast<const VkImageCompressionControlEXT*>(structExtension),
25061 reinterpret_cast<const VkImageCompressionControlEXT*>(structExtension2), onFail);
25062 break;
25063 }
25064 case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: {
25065 checkEqual_VkImageCompressionPropertiesEXT(
25066 reinterpret_cast<const VkImageCompressionPropertiesEXT*>(structExtension),
25067 reinterpret_cast<const VkImageCompressionPropertiesEXT*>(structExtension2), onFail);
25068 break;
25069 }
25070 #endif
25071 #ifdef VK_EXT_attachment_feedback_loop_layout
25072 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT: {
25073 checkEqual_VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT(
25074 reinterpret_cast<const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*>(
25075 structExtension),
25076 reinterpret_cast<const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT*>(
25077 structExtension2),
25078 onFail);
25079 break;
25080 }
25081 #endif
25082 #ifdef VK_EXT_4444_formats
25083 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: {
25084 checkEqual_VkPhysicalDevice4444FormatsFeaturesEXT(
25085 reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT*>(structExtension),
25086 reinterpret_cast<const VkPhysicalDevice4444FormatsFeaturesEXT*>(structExtension2),
25087 onFail);
25088 break;
25089 }
25090 #endif
25091 #ifdef VK_EXT_device_fault
25092 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT: {
25093 checkEqual_VkPhysicalDeviceFaultFeaturesEXT(
25094 reinterpret_cast<const VkPhysicalDeviceFaultFeaturesEXT*>(structExtension),
25095 reinterpret_cast<const VkPhysicalDeviceFaultFeaturesEXT*>(structExtension2),
25096 onFail);
25097 break;
25098 }
25099 #endif
25100 #ifdef VK_ARM_rasterization_order_attachment_access
25101 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT: {
25102 checkEqual_VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT(
25103 reinterpret_cast<
25104 const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*>(
25105 structExtension),
25106 reinterpret_cast<
25107 const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT*>(
25108 structExtension2),
25109 onFail);
25110 break;
25111 }
25112 #endif
25113 #ifdef VK_EXT_rgba10x6_formats
25114 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT: {
25115 checkEqual_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
25116 reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(
25117 structExtension),
25118 reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(
25119 structExtension2),
25120 onFail);
25121 break;
25122 }
25123 #endif
25124 #ifdef VK_VALVE_mutable_descriptor_type
25125 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT: {
25126 checkEqual_VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT(
25127 reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*>(
25128 structExtension),
25129 reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*>(
25130 structExtension2),
25131 onFail);
25132 break;
25133 }
25134 case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT: {
25135 checkEqual_VkMutableDescriptorTypeCreateInfoEXT(
25136 reinterpret_cast<const VkMutableDescriptorTypeCreateInfoEXT*>(structExtension),
25137 reinterpret_cast<const VkMutableDescriptorTypeCreateInfoEXT*>(structExtension2),
25138 onFail);
25139 break;
25140 }
25141 #endif
25142 #ifdef VK_EXT_vertex_input_dynamic_state
25143 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT: {
25144 checkEqual_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
25145 reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(
25146 structExtension),
25147 reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(
25148 structExtension2),
25149 onFail);
25150 break;
25151 }
25152 #endif
25153 #ifdef VK_EXT_physical_device_drm
25154 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT: {
25155 checkEqual_VkPhysicalDeviceDrmPropertiesEXT(
25156 reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT*>(structExtension),
25157 reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT*>(structExtension2),
25158 onFail);
25159 break;
25160 }
25161 #endif
25162 #ifdef VK_EXT_device_address_binding_report
25163 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT: {
25164 checkEqual_VkPhysicalDeviceAddressBindingReportFeaturesEXT(
25165 reinterpret_cast<const VkPhysicalDeviceAddressBindingReportFeaturesEXT*>(
25166 structExtension),
25167 reinterpret_cast<const VkPhysicalDeviceAddressBindingReportFeaturesEXT*>(
25168 structExtension2),
25169 onFail);
25170 break;
25171 }
25172 case VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT: {
25173 checkEqual_VkDeviceAddressBindingCallbackDataEXT(
25174 reinterpret_cast<const VkDeviceAddressBindingCallbackDataEXT*>(structExtension),
25175 reinterpret_cast<const VkDeviceAddressBindingCallbackDataEXT*>(structExtension2),
25176 onFail);
25177 break;
25178 }
25179 #endif
25180 #ifdef VK_EXT_depth_clip_control
25181 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT: {
25182 checkEqual_VkPhysicalDeviceDepthClipControlFeaturesEXT(
25183 reinterpret_cast<const VkPhysicalDeviceDepthClipControlFeaturesEXT*>(
25184 structExtension),
25185 reinterpret_cast<const VkPhysicalDeviceDepthClipControlFeaturesEXT*>(
25186 structExtension2),
25187 onFail);
25188 break;
25189 }
25190 case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT: {
25191 checkEqual_VkPipelineViewportDepthClipControlCreateInfoEXT(
25192 reinterpret_cast<const VkPipelineViewportDepthClipControlCreateInfoEXT*>(
25193 structExtension),
25194 reinterpret_cast<const VkPipelineViewportDepthClipControlCreateInfoEXT*>(
25195 structExtension2),
25196 onFail);
25197 break;
25198 }
25199 #endif
25200 #ifdef VK_EXT_primitive_topology_list_restart
25201 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: {
25202 checkEqual_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
25203 reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(
25204 structExtension),
25205 reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(
25206 structExtension2),
25207 onFail);
25208 break;
25209 }
25210 #endif
25211 #ifdef VK_FUCHSIA_external_memory
25212 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA: {
25213 checkEqual_VkImportMemoryZirconHandleInfoFUCHSIA(
25214 reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension),
25215 reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension2),
25216 onFail);
25217 break;
25218 }
25219 #endif
25220 #ifdef VK_FUCHSIA_buffer_collection
25221 case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA: {
25222 checkEqual_VkImportMemoryBufferCollectionFUCHSIA(
25223 reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA*>(structExtension),
25224 reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA*>(structExtension2),
25225 onFail);
25226 break;
25227 }
25228 case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA: {
25229 checkEqual_VkBufferCollectionImageCreateInfoFUCHSIA(
25230 reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension),
25231 reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension2),
25232 onFail);
25233 break;
25234 }
25235 case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA: {
25236 checkEqual_VkBufferCollectionBufferCreateInfoFUCHSIA(
25237 reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension),
25238 reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA*>(
25239 structExtension2),
25240 onFail);
25241 break;
25242 }
25243 #endif
25244 #ifdef VK_HUAWEI_subpass_shading
25245 case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI: {
25246 checkEqual_VkSubpassShadingPipelineCreateInfoHUAWEI(
25247 reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension),
25248 reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension2),
25249 onFail);
25250 break;
25251 }
25252 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI: {
25253 checkEqual_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
25254 reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(
25255 structExtension),
25256 reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(
25257 structExtension2),
25258 onFail);
25259 break;
25260 }
25261 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI: {
25262 checkEqual_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
25263 reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(
25264 structExtension),
25265 reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(
25266 structExtension2),
25267 onFail);
25268 break;
25269 }
25270 #endif
25271 #ifdef VK_HUAWEI_invocation_mask
25272 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI: {
25273 checkEqual_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
25274 reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(
25275 structExtension),
25276 reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(
25277 structExtension2),
25278 onFail);
25279 break;
25280 }
25281 #endif
25282 #ifdef VK_NV_external_memory_rdma
25283 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV: {
25284 checkEqual_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
25285 reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(
25286 structExtension),
25287 reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(
25288 structExtension2),
25289 onFail);
25290 break;
25291 }
25292 #endif
25293 #ifdef VK_EXT_pipeline_properties
25294 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT: {
25295 checkEqual_VkPhysicalDevicePipelinePropertiesFeaturesEXT(
25296 reinterpret_cast<const VkPhysicalDevicePipelinePropertiesFeaturesEXT*>(
25297 structExtension),
25298 reinterpret_cast<const VkPhysicalDevicePipelinePropertiesFeaturesEXT*>(
25299 structExtension2),
25300 onFail);
25301 break;
25302 }
25303 #endif
25304 #ifdef VK_EXT_multisampled_render_to_single_sampled
25305 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT: {
25306 checkEqual_VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT(
25307 reinterpret_cast<
25308 const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*>(
25309 structExtension),
25310 reinterpret_cast<
25311 const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT*>(
25312 structExtension2),
25313 onFail);
25314 break;
25315 }
25316 case VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT: {
25317 checkEqual_VkSubpassResolvePerformanceQueryEXT(
25318 reinterpret_cast<const VkSubpassResolvePerformanceQueryEXT*>(structExtension),
25319 reinterpret_cast<const VkSubpassResolvePerformanceQueryEXT*>(structExtension2),
25320 onFail);
25321 break;
25322 }
25323 case VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT: {
25324 checkEqual_VkMultisampledRenderToSingleSampledInfoEXT(
25325 reinterpret_cast<const VkMultisampledRenderToSingleSampledInfoEXT*>(
25326 structExtension),
25327 reinterpret_cast<const VkMultisampledRenderToSingleSampledInfoEXT*>(
25328 structExtension2),
25329 onFail);
25330 break;
25331 }
25332 #endif
25333 #ifdef VK_EXT_extended_dynamic_state2
25334 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT: {
25335 checkEqual_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
25336 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(
25337 structExtension),
25338 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(
25339 structExtension2),
25340 onFail);
25341 break;
25342 }
25343 #endif
25344 #ifdef VK_EXT_color_write_enable
25345 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT: {
25346 checkEqual_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
25347 reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(
25348 structExtension),
25349 reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(
25350 structExtension2),
25351 onFail);
25352 break;
25353 }
25354 case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT: {
25355 checkEqual_VkPipelineColorWriteCreateInfoEXT(
25356 reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension),
25357 reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension2),
25358 onFail);
25359 break;
25360 }
25361 #endif
25362 #ifdef VK_EXT_primitives_generated_query
25363 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT: {
25364 checkEqual_VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(
25365 reinterpret_cast<const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*>(
25366 structExtension),
25367 reinterpret_cast<const VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT*>(
25368 structExtension2),
25369 onFail);
25370 break;
25371 }
25372 #endif
25373 #ifdef VK_GOOGLE_gfxstream
25374 case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE: {
25375 checkEqual_VkImportColorBufferGOOGLE(
25376 reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension),
25377 reinterpret_cast<const VkImportColorBufferGOOGLE*>(structExtension2), onFail);
25378 break;
25379 }
25380 case VK_STRUCTURE_TYPE_IMPORT_BUFFER_GOOGLE: {
25381 checkEqual_VkImportBufferGOOGLE(
25382 reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension),
25383 reinterpret_cast<const VkImportBufferGOOGLE*>(structExtension2), onFail);
25384 break;
25385 }
25386 case VK_STRUCTURE_TYPE_CREATE_BLOB_GOOGLE: {
25387 checkEqual_VkCreateBlobGOOGLE(
25388 reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension),
25389 reinterpret_cast<const VkCreateBlobGOOGLE*>(structExtension2), onFail);
25390 break;
25391 }
25392 #endif
25393 #ifdef VK_EXT_image_view_min_lod
25394 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT: {
25395 checkEqual_VkPhysicalDeviceImageViewMinLodFeaturesEXT(
25396 reinterpret_cast<const VkPhysicalDeviceImageViewMinLodFeaturesEXT*>(
25397 structExtension),
25398 reinterpret_cast<const VkPhysicalDeviceImageViewMinLodFeaturesEXT*>(
25399 structExtension2),
25400 onFail);
25401 break;
25402 }
25403 case VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT: {
25404 checkEqual_VkImageViewMinLodCreateInfoEXT(
25405 reinterpret_cast<const VkImageViewMinLodCreateInfoEXT*>(structExtension),
25406 reinterpret_cast<const VkImageViewMinLodCreateInfoEXT*>(structExtension2), onFail);
25407 break;
25408 }
25409 #endif
25410 #ifdef VK_EXT_multi_draw
25411 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT: {
25412 checkEqual_VkPhysicalDeviceMultiDrawFeaturesEXT(
25413 reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension),
25414 reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension2),
25415 onFail);
25416 break;
25417 }
25418 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT: {
25419 checkEqual_VkPhysicalDeviceMultiDrawPropertiesEXT(
25420 reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension),
25421 reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension2),
25422 onFail);
25423 break;
25424 }
25425 #endif
25426 #ifdef VK_EXT_image_2d_view_of_3d
25427 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT: {
25428 checkEqual_VkPhysicalDeviceImage2DViewOf3DFeaturesEXT(
25429 reinterpret_cast<const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT*>(
25430 structExtension),
25431 reinterpret_cast<const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT*>(
25432 structExtension2),
25433 onFail);
25434 break;
25435 }
25436 #endif
25437 #ifdef VK_EXT_shader_tile_image
25438 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT: {
25439 checkEqual_VkPhysicalDeviceShaderTileImageFeaturesEXT(
25440 reinterpret_cast<const VkPhysicalDeviceShaderTileImageFeaturesEXT*>(
25441 structExtension),
25442 reinterpret_cast<const VkPhysicalDeviceShaderTileImageFeaturesEXT*>(
25443 structExtension2),
25444 onFail);
25445 break;
25446 }
25447 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT: {
25448 checkEqual_VkPhysicalDeviceShaderTileImagePropertiesEXT(
25449 reinterpret_cast<const VkPhysicalDeviceShaderTileImagePropertiesEXT*>(
25450 structExtension),
25451 reinterpret_cast<const VkPhysicalDeviceShaderTileImagePropertiesEXT*>(
25452 structExtension2),
25453 onFail);
25454 break;
25455 }
25456 #endif
25457 #ifdef VK_EXT_opacity_micromap
25458 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT: {
25459 checkEqual_VkPhysicalDeviceOpacityMicromapFeaturesEXT(
25460 reinterpret_cast<const VkPhysicalDeviceOpacityMicromapFeaturesEXT*>(
25461 structExtension),
25462 reinterpret_cast<const VkPhysicalDeviceOpacityMicromapFeaturesEXT*>(
25463 structExtension2),
25464 onFail);
25465 break;
25466 }
25467 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT: {
25468 checkEqual_VkPhysicalDeviceOpacityMicromapPropertiesEXT(
25469 reinterpret_cast<const VkPhysicalDeviceOpacityMicromapPropertiesEXT*>(
25470 structExtension),
25471 reinterpret_cast<const VkPhysicalDeviceOpacityMicromapPropertiesEXT*>(
25472 structExtension2),
25473 onFail);
25474 break;
25475 }
25476 case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT: {
25477 checkEqual_VkAccelerationStructureTrianglesOpacityMicromapEXT(
25478 reinterpret_cast<const VkAccelerationStructureTrianglesOpacityMicromapEXT*>(
25479 structExtension),
25480 reinterpret_cast<const VkAccelerationStructureTrianglesOpacityMicromapEXT*>(
25481 structExtension2),
25482 onFail);
25483 break;
25484 }
25485 #endif
25486 #ifdef VK_NV_displacement_micromap
25487 #ifdef VK_ENABLE_BETA_EXTENSIONS
25488 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV: {
25489 checkEqual_VkPhysicalDeviceDisplacementMicromapFeaturesNV(
25490 reinterpret_cast<const VkPhysicalDeviceDisplacementMicromapFeaturesNV*>(
25491 structExtension),
25492 reinterpret_cast<const VkPhysicalDeviceDisplacementMicromapFeaturesNV*>(
25493 structExtension2),
25494 onFail);
25495 break;
25496 }
25497 #endif // VK_ENABLE_BETA_EXTENSIONS
25498 #ifdef VK_ENABLE_BETA_EXTENSIONS
25499 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV: {
25500 checkEqual_VkPhysicalDeviceDisplacementMicromapPropertiesNV(
25501 reinterpret_cast<const VkPhysicalDeviceDisplacementMicromapPropertiesNV*>(
25502 structExtension),
25503 reinterpret_cast<const VkPhysicalDeviceDisplacementMicromapPropertiesNV*>(
25504 structExtension2),
25505 onFail);
25506 break;
25507 }
25508 #endif // VK_ENABLE_BETA_EXTENSIONS
25509 #ifdef VK_ENABLE_BETA_EXTENSIONS
25510 case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV: {
25511 checkEqual_VkAccelerationStructureTrianglesDisplacementMicromapNV(
25512 reinterpret_cast<const VkAccelerationStructureTrianglesDisplacementMicromapNV*>(
25513 structExtension),
25514 reinterpret_cast<const VkAccelerationStructureTrianglesDisplacementMicromapNV*>(
25515 structExtension2),
25516 onFail);
25517 break;
25518 }
25519 #endif // VK_ENABLE_BETA_EXTENSIONS
25520 #endif
25521 #ifdef VK_HUAWEI_cluster_culling_shader
25522 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI: {
25523 checkEqual_VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI(
25524 reinterpret_cast<const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*>(
25525 structExtension),
25526 reinterpret_cast<const VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI*>(
25527 structExtension2),
25528 onFail);
25529 break;
25530 }
25531 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI: {
25532 checkEqual_VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI(
25533 reinterpret_cast<const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*>(
25534 structExtension),
25535 reinterpret_cast<const VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI*>(
25536 structExtension2),
25537 onFail);
25538 break;
25539 }
25540 #endif
25541 #ifdef VK_EXT_border_color_swizzle
25542 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT: {
25543 checkEqual_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
25544 reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(
25545 structExtension),
25546 reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(
25547 structExtension2),
25548 onFail);
25549 break;
25550 }
25551 case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT: {
25552 checkEqual_VkSamplerBorderColorComponentMappingCreateInfoEXT(
25553 reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT*>(
25554 structExtension),
25555 reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT*>(
25556 structExtension2),
25557 onFail);
25558 break;
25559 }
25560 #endif
25561 #ifdef VK_EXT_pageable_device_local_memory
25562 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT: {
25563 checkEqual_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
25564 reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(
25565 structExtension),
25566 reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(
25567 structExtension2),
25568 onFail);
25569 break;
25570 }
25571 #endif
25572 #ifdef VK_ARM_shader_core_properties
25573 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM: {
25574 checkEqual_VkPhysicalDeviceShaderCorePropertiesARM(
25575 reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesARM*>(structExtension),
25576 reinterpret_cast<const VkPhysicalDeviceShaderCorePropertiesARM*>(structExtension2),
25577 onFail);
25578 break;
25579 }
25580 #endif
25581 #ifdef VK_EXT_image_sliced_view_of_3d
25582 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT: {
25583 checkEqual_VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT(
25584 reinterpret_cast<const VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*>(
25585 structExtension),
25586 reinterpret_cast<const VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT*>(
25587 structExtension2),
25588 onFail);
25589 break;
25590 }
25591 case VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT: {
25592 checkEqual_VkImageViewSlicedCreateInfoEXT(
25593 reinterpret_cast<const VkImageViewSlicedCreateInfoEXT*>(structExtension),
25594 reinterpret_cast<const VkImageViewSlicedCreateInfoEXT*>(structExtension2), onFail);
25595 break;
25596 }
25597 #endif
25598 #ifdef VK_VALVE_descriptor_set_host_mapping
25599 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE: {
25600 checkEqual_VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(
25601 reinterpret_cast<const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*>(
25602 structExtension),
25603 reinterpret_cast<const VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE*>(
25604 structExtension2),
25605 onFail);
25606 break;
25607 }
25608 #endif
25609 #ifdef VK_EXT_depth_clamp_zero_one
25610 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT: {
25611 checkEqual_VkPhysicalDeviceDepthClampZeroOneFeaturesEXT(
25612 reinterpret_cast<const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT*>(
25613 structExtension),
25614 reinterpret_cast<const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT*>(
25615 structExtension2),
25616 onFail);
25617 break;
25618 }
25619 #endif
25620 #ifdef VK_EXT_non_seamless_cube_map
25621 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT: {
25622 checkEqual_VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT(
25623 reinterpret_cast<const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*>(
25624 structExtension),
25625 reinterpret_cast<const VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT*>(
25626 structExtension2),
25627 onFail);
25628 break;
25629 }
25630 #endif
25631 #ifdef VK_QCOM_fragment_density_map_offset
25632 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM: {
25633 checkEqual_VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM(
25634 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*>(
25635 structExtension),
25636 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM*>(
25637 structExtension2),
25638 onFail);
25639 break;
25640 }
25641 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM: {
25642 checkEqual_VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM(
25643 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*>(
25644 structExtension),
25645 reinterpret_cast<const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM*>(
25646 structExtension2),
25647 onFail);
25648 break;
25649 }
25650 case VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM: {
25651 checkEqual_VkSubpassFragmentDensityMapOffsetEndInfoQCOM(
25652 reinterpret_cast<const VkSubpassFragmentDensityMapOffsetEndInfoQCOM*>(
25653 structExtension),
25654 reinterpret_cast<const VkSubpassFragmentDensityMapOffsetEndInfoQCOM*>(
25655 structExtension2),
25656 onFail);
25657 break;
25658 }
25659 #endif
25660 #ifdef VK_NV_copy_memory_indirect
25661 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV: {
25662 checkEqual_VkPhysicalDeviceCopyMemoryIndirectFeaturesNV(
25663 reinterpret_cast<const VkPhysicalDeviceCopyMemoryIndirectFeaturesNV*>(
25664 structExtension),
25665 reinterpret_cast<const VkPhysicalDeviceCopyMemoryIndirectFeaturesNV*>(
25666 structExtension2),
25667 onFail);
25668 break;
25669 }
25670 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV: {
25671 checkEqual_VkPhysicalDeviceCopyMemoryIndirectPropertiesNV(
25672 reinterpret_cast<const VkPhysicalDeviceCopyMemoryIndirectPropertiesNV*>(
25673 structExtension),
25674 reinterpret_cast<const VkPhysicalDeviceCopyMemoryIndirectPropertiesNV*>(
25675 structExtension2),
25676 onFail);
25677 break;
25678 }
25679 #endif
25680 #ifdef VK_NV_memory_decompression
25681 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV: {
25682 checkEqual_VkPhysicalDeviceMemoryDecompressionFeaturesNV(
25683 reinterpret_cast<const VkPhysicalDeviceMemoryDecompressionFeaturesNV*>(
25684 structExtension),
25685 reinterpret_cast<const VkPhysicalDeviceMemoryDecompressionFeaturesNV*>(
25686 structExtension2),
25687 onFail);
25688 break;
25689 }
25690 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV: {
25691 checkEqual_VkPhysicalDeviceMemoryDecompressionPropertiesNV(
25692 reinterpret_cast<const VkPhysicalDeviceMemoryDecompressionPropertiesNV*>(
25693 structExtension),
25694 reinterpret_cast<const VkPhysicalDeviceMemoryDecompressionPropertiesNV*>(
25695 structExtension2),
25696 onFail);
25697 break;
25698 }
25699 #endif
25700 #ifdef VK_NV_linear_color_attachment
25701 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV: {
25702 checkEqual_VkPhysicalDeviceLinearColorAttachmentFeaturesNV(
25703 reinterpret_cast<const VkPhysicalDeviceLinearColorAttachmentFeaturesNV*>(
25704 structExtension),
25705 reinterpret_cast<const VkPhysicalDeviceLinearColorAttachmentFeaturesNV*>(
25706 structExtension2),
25707 onFail);
25708 break;
25709 }
25710 #endif
25711 #ifdef VK_EXT_image_compression_control_swapchain
25712 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT: {
25713 checkEqual_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(
25714 reinterpret_cast<
25715 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*>(
25716 structExtension),
25717 reinterpret_cast<
25718 const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT*>(
25719 structExtension2),
25720 onFail);
25721 break;
25722 }
25723 #endif
25724 #ifdef VK_QCOM_image_processing
25725 case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM: {
25726 checkEqual_VkImageViewSampleWeightCreateInfoQCOM(
25727 reinterpret_cast<const VkImageViewSampleWeightCreateInfoQCOM*>(structExtension),
25728 reinterpret_cast<const VkImageViewSampleWeightCreateInfoQCOM*>(structExtension2),
25729 onFail);
25730 break;
25731 }
25732 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM: {
25733 checkEqual_VkPhysicalDeviceImageProcessingFeaturesQCOM(
25734 reinterpret_cast<const VkPhysicalDeviceImageProcessingFeaturesQCOM*>(
25735 structExtension),
25736 reinterpret_cast<const VkPhysicalDeviceImageProcessingFeaturesQCOM*>(
25737 structExtension2),
25738 onFail);
25739 break;
25740 }
25741 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM: {
25742 checkEqual_VkPhysicalDeviceImageProcessingPropertiesQCOM(
25743 reinterpret_cast<const VkPhysicalDeviceImageProcessingPropertiesQCOM*>(
25744 structExtension),
25745 reinterpret_cast<const VkPhysicalDeviceImageProcessingPropertiesQCOM*>(
25746 structExtension2),
25747 onFail);
25748 break;
25749 }
25750 #endif
25751 #ifdef VK_EXT_extended_dynamic_state3
25752 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT: {
25753 checkEqual_VkPhysicalDeviceExtendedDynamicState3FeaturesEXT(
25754 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT*>(
25755 structExtension),
25756 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT*>(
25757 structExtension2),
25758 onFail);
25759 break;
25760 }
25761 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT: {
25762 checkEqual_VkPhysicalDeviceExtendedDynamicState3PropertiesEXT(
25763 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT*>(
25764 structExtension),
25765 reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT*>(
25766 structExtension2),
25767 onFail);
25768 break;
25769 }
25770 #endif
25771 #ifdef VK_EXT_subpass_merge_feedback
25772 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT: {
25773 checkEqual_VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT(
25774 reinterpret_cast<const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*>(
25775 structExtension),
25776 reinterpret_cast<const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT*>(
25777 structExtension2),
25778 onFail);
25779 break;
25780 }
25781 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT: {
25782 checkEqual_VkRenderPassCreationControlEXT(
25783 reinterpret_cast<const VkRenderPassCreationControlEXT*>(structExtension),
25784 reinterpret_cast<const VkRenderPassCreationControlEXT*>(structExtension2), onFail);
25785 break;
25786 }
25787 case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT: {
25788 checkEqual_VkRenderPassCreationFeedbackCreateInfoEXT(
25789 reinterpret_cast<const VkRenderPassCreationFeedbackCreateInfoEXT*>(structExtension),
25790 reinterpret_cast<const VkRenderPassCreationFeedbackCreateInfoEXT*>(
25791 structExtension2),
25792 onFail);
25793 break;
25794 }
25795 case VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT: {
25796 checkEqual_VkRenderPassSubpassFeedbackCreateInfoEXT(
25797 reinterpret_cast<const VkRenderPassSubpassFeedbackCreateInfoEXT*>(structExtension),
25798 reinterpret_cast<const VkRenderPassSubpassFeedbackCreateInfoEXT*>(structExtension2),
25799 onFail);
25800 break;
25801 }
25802 #endif
25803 #ifdef VK_LUNARG_direct_driver_loading
25804 case VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG: {
25805 checkEqual_VkDirectDriverLoadingListLUNARG(
25806 reinterpret_cast<const VkDirectDriverLoadingListLUNARG*>(structExtension),
25807 reinterpret_cast<const VkDirectDriverLoadingListLUNARG*>(structExtension2), onFail);
25808 break;
25809 }
25810 #endif
25811 #ifdef VK_EXT_shader_module_identifier
25812 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT: {
25813 checkEqual_VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT(
25814 reinterpret_cast<const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*>(
25815 structExtension),
25816 reinterpret_cast<const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT*>(
25817 structExtension2),
25818 onFail);
25819 break;
25820 }
25821 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT: {
25822 checkEqual_VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT(
25823 reinterpret_cast<const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*>(
25824 structExtension),
25825 reinterpret_cast<const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT*>(
25826 structExtension2),
25827 onFail);
25828 break;
25829 }
25830 case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT: {
25831 checkEqual_VkPipelineShaderStageModuleIdentifierCreateInfoEXT(
25832 reinterpret_cast<const VkPipelineShaderStageModuleIdentifierCreateInfoEXT*>(
25833 structExtension),
25834 reinterpret_cast<const VkPipelineShaderStageModuleIdentifierCreateInfoEXT*>(
25835 structExtension2),
25836 onFail);
25837 break;
25838 }
25839 #endif
25840 #ifdef VK_NV_optical_flow
25841 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV: {
25842 checkEqual_VkPhysicalDeviceOpticalFlowFeaturesNV(
25843 reinterpret_cast<const VkPhysicalDeviceOpticalFlowFeaturesNV*>(structExtension),
25844 reinterpret_cast<const VkPhysicalDeviceOpticalFlowFeaturesNV*>(structExtension2),
25845 onFail);
25846 break;
25847 }
25848 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV: {
25849 checkEqual_VkPhysicalDeviceOpticalFlowPropertiesNV(
25850 reinterpret_cast<const VkPhysicalDeviceOpticalFlowPropertiesNV*>(structExtension),
25851 reinterpret_cast<const VkPhysicalDeviceOpticalFlowPropertiesNV*>(structExtension2),
25852 onFail);
25853 break;
25854 }
25855 case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV: {
25856 checkEqual_VkOpticalFlowImageFormatInfoNV(
25857 reinterpret_cast<const VkOpticalFlowImageFormatInfoNV*>(structExtension),
25858 reinterpret_cast<const VkOpticalFlowImageFormatInfoNV*>(structExtension2), onFail);
25859 break;
25860 }
25861 case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV: {
25862 checkEqual_VkOpticalFlowSessionCreatePrivateDataInfoNV(
25863 reinterpret_cast<const VkOpticalFlowSessionCreatePrivateDataInfoNV*>(
25864 structExtension),
25865 reinterpret_cast<const VkOpticalFlowSessionCreatePrivateDataInfoNV*>(
25866 structExtension2),
25867 onFail);
25868 break;
25869 }
25870 #endif
25871 #ifdef VK_EXT_legacy_dithering
25872 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT: {
25873 checkEqual_VkPhysicalDeviceLegacyDitheringFeaturesEXT(
25874 reinterpret_cast<const VkPhysicalDeviceLegacyDitheringFeaturesEXT*>(
25875 structExtension),
25876 reinterpret_cast<const VkPhysicalDeviceLegacyDitheringFeaturesEXT*>(
25877 structExtension2),
25878 onFail);
25879 break;
25880 }
25881 #endif
25882 #ifdef VK_EXT_pipeline_protected_access
25883 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT: {
25884 checkEqual_VkPhysicalDevicePipelineProtectedAccessFeaturesEXT(
25885 reinterpret_cast<const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT*>(
25886 structExtension),
25887 reinterpret_cast<const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT*>(
25888 structExtension2),
25889 onFail);
25890 break;
25891 }
25892 #endif
25893 #ifdef VK_EXT_shader_object
25894 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT: {
25895 checkEqual_VkPhysicalDeviceShaderObjectFeaturesEXT(
25896 reinterpret_cast<const VkPhysicalDeviceShaderObjectFeaturesEXT*>(structExtension),
25897 reinterpret_cast<const VkPhysicalDeviceShaderObjectFeaturesEXT*>(structExtension2),
25898 onFail);
25899 break;
25900 }
25901 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT: {
25902 checkEqual_VkPhysicalDeviceShaderObjectPropertiesEXT(
25903 reinterpret_cast<const VkPhysicalDeviceShaderObjectPropertiesEXT*>(structExtension),
25904 reinterpret_cast<const VkPhysicalDeviceShaderObjectPropertiesEXT*>(
25905 structExtension2),
25906 onFail);
25907 break;
25908 }
25909 #endif
25910 #ifdef VK_QCOM_tile_properties
25911 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM: {
25912 checkEqual_VkPhysicalDeviceTilePropertiesFeaturesQCOM(
25913 reinterpret_cast<const VkPhysicalDeviceTilePropertiesFeaturesQCOM*>(
25914 structExtension),
25915 reinterpret_cast<const VkPhysicalDeviceTilePropertiesFeaturesQCOM*>(
25916 structExtension2),
25917 onFail);
25918 break;
25919 }
25920 #endif
25921 #ifdef VK_SEC_amigo_profiling
25922 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC: {
25923 checkEqual_VkPhysicalDeviceAmigoProfilingFeaturesSEC(
25924 reinterpret_cast<const VkPhysicalDeviceAmigoProfilingFeaturesSEC*>(structExtension),
25925 reinterpret_cast<const VkPhysicalDeviceAmigoProfilingFeaturesSEC*>(
25926 structExtension2),
25927 onFail);
25928 break;
25929 }
25930 case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC: {
25931 checkEqual_VkAmigoProfilingSubmitInfoSEC(
25932 reinterpret_cast<const VkAmigoProfilingSubmitInfoSEC*>(structExtension),
25933 reinterpret_cast<const VkAmigoProfilingSubmitInfoSEC*>(structExtension2), onFail);
25934 break;
25935 }
25936 #endif
25937 #ifdef VK_QCOM_multiview_per_view_viewports
25938 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM: {
25939 checkEqual_VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM(
25940 reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*>(
25941 structExtension),
25942 reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM*>(
25943 structExtension2),
25944 onFail);
25945 break;
25946 }
25947 #endif
25948 #ifdef VK_NV_ray_tracing_invocation_reorder
25949 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV: {
25950 checkEqual_VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV(
25951 reinterpret_cast<const VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*>(
25952 structExtension),
25953 reinterpret_cast<const VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV*>(
25954 structExtension2),
25955 onFail);
25956 break;
25957 }
25958 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV: {
25959 checkEqual_VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV(
25960 reinterpret_cast<const VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*>(
25961 structExtension),
25962 reinterpret_cast<const VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV*>(
25963 structExtension2),
25964 onFail);
25965 break;
25966 }
25967 #endif
25968 #ifdef VK_ARM_shader_core_builtins
25969 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM: {
25970 checkEqual_VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM(
25971 reinterpret_cast<const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*>(
25972 structExtension),
25973 reinterpret_cast<const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*>(
25974 structExtension2),
25975 onFail);
25976 break;
25977 }
25978 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM: {
25979 checkEqual_VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM(
25980 reinterpret_cast<const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*>(
25981 structExtension),
25982 reinterpret_cast<const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM*>(
25983 structExtension2),
25984 onFail);
25985 break;
25986 }
25987 #endif
25988 #ifdef VK_EXT_pipeline_library_group_handles
25989 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT: {
25990 checkEqual_VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT(
25991 reinterpret_cast<const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*>(
25992 structExtension),
25993 reinterpret_cast<const VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT*>(
25994 structExtension2),
25995 onFail);
25996 break;
25997 }
25998 #endif
25999 #ifdef VK_QCOM_multiview_per_view_render_areas
26000 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM: {
26001 checkEqual_VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM(
26002 reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*>(
26003 structExtension),
26004 reinterpret_cast<const VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM*>(
26005 structExtension2),
26006 onFail);
26007 break;
26008 }
26009 case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM: {
26010 checkEqual_VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM(
26011 reinterpret_cast<const VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*>(
26012 structExtension),
26013 reinterpret_cast<const VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM*>(
26014 structExtension2),
26015 onFail);
26016 break;
26017 }
26018 #endif
26019 #ifdef VK_EXT_attachment_feedback_loop_dynamic_state
26020 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT: {
26021 checkEqual_VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT(
26022 reinterpret_cast<
26023 const VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*>(
26024 structExtension),
26025 reinterpret_cast<
26026 const VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT*>(
26027 structExtension2),
26028 onFail);
26029 break;
26030 }
26031 #endif
26032 #ifdef VK_KHR_acceleration_structure
26033 case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR: {
26034 checkEqual_VkWriteDescriptorSetAccelerationStructureKHR(
26035 reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureKHR*>(
26036 structExtension),
26037 reinterpret_cast<const VkWriteDescriptorSetAccelerationStructureKHR*>(
26038 structExtension2),
26039 onFail);
26040 break;
26041 }
26042 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR: {
26043 checkEqual_VkPhysicalDeviceAccelerationStructureFeaturesKHR(
26044 reinterpret_cast<const VkPhysicalDeviceAccelerationStructureFeaturesKHR*>(
26045 structExtension),
26046 reinterpret_cast<const VkPhysicalDeviceAccelerationStructureFeaturesKHR*>(
26047 structExtension2),
26048 onFail);
26049 break;
26050 }
26051 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR: {
26052 checkEqual_VkPhysicalDeviceAccelerationStructurePropertiesKHR(
26053 reinterpret_cast<const VkPhysicalDeviceAccelerationStructurePropertiesKHR*>(
26054 structExtension),
26055 reinterpret_cast<const VkPhysicalDeviceAccelerationStructurePropertiesKHR*>(
26056 structExtension2),
26057 onFail);
26058 break;
26059 }
26060 #endif
26061 #ifdef VK_KHR_ray_tracing_pipeline
26062 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR: {
26063 checkEqual_VkPhysicalDeviceRayTracingPipelineFeaturesKHR(
26064 reinterpret_cast<const VkPhysicalDeviceRayTracingPipelineFeaturesKHR*>(
26065 structExtension),
26066 reinterpret_cast<const VkPhysicalDeviceRayTracingPipelineFeaturesKHR*>(
26067 structExtension2),
26068 onFail);
26069 break;
26070 }
26071 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR: {
26072 checkEqual_VkPhysicalDeviceRayTracingPipelinePropertiesKHR(
26073 reinterpret_cast<const VkPhysicalDeviceRayTracingPipelinePropertiesKHR*>(
26074 structExtension),
26075 reinterpret_cast<const VkPhysicalDeviceRayTracingPipelinePropertiesKHR*>(
26076 structExtension2),
26077 onFail);
26078 break;
26079 }
26080 #endif
26081 #ifdef VK_KHR_ray_query
26082 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR: {
26083 checkEqual_VkPhysicalDeviceRayQueryFeaturesKHR(
26084 reinterpret_cast<const VkPhysicalDeviceRayQueryFeaturesKHR*>(structExtension),
26085 reinterpret_cast<const VkPhysicalDeviceRayQueryFeaturesKHR*>(structExtension2),
26086 onFail);
26087 break;
26088 }
26089 #endif
26090 #ifdef VK_EXT_mesh_shader
26091 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT: {
26092 checkEqual_VkPhysicalDeviceMeshShaderFeaturesEXT(
26093 reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesEXT*>(structExtension),
26094 reinterpret_cast<const VkPhysicalDeviceMeshShaderFeaturesEXT*>(structExtension2),
26095 onFail);
26096 break;
26097 }
26098 case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT: {
26099 checkEqual_VkPhysicalDeviceMeshShaderPropertiesEXT(
26100 reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesEXT*>(structExtension),
26101 reinterpret_cast<const VkPhysicalDeviceMeshShaderPropertiesEXT*>(structExtension2),
26102 onFail);
26103 break;
26104 }
26105 #endif
26106 default: {
26107 return;
26108 }
26109 }
26110 }
26111
26112 } // namespace vk
26113 } // namespace gfxstream
26114