Home | History | Annotate | Download | only in vulkan_enc
      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_transform_guest
     17 // (impl) generated by android/android-emugl/host/libs/libOpenglRender/vulkan-registry/xml/genvk.py -registry android/android-emugl/host/libs/libOpenglRender/vulkan-registry/xml/vk.xml cereal -o android/android-emugl/host/libs/libOpenglRender/vulkan/cereal
     18 // Please do not modify directly;
     19 // re-run android/scripts/generate-vulkan-sources.sh,
     20 // or directly from Python by defining:
     21 // VULKAN_REGISTRY_XML_DIR : Directory containing genvk.py and vk.xml
     22 // CEREAL_OUTPUT_DIR: Where to put the generated sources.
     23 // python3 $VULKAN_REGISTRY_XML_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $CEREAL_OUTPUT_DIR
     24 
     25 #include "goldfish_vk_transform_guest.h"
     26 
     27 
     28 #include "goldfish_vk_extension_structs_guest.h"
     29 #include "goldfish_vk_private_defs.h"
     30 
     31 #include "ResourceTracker.h"
     32 
     33 
     34 namespace goldfish_vk {
     35 
     36 void transform_tohost_extension_struct(
     37     ResourceTracker* resourceTracker,
     38     void* structExtension_out);
     39 
     40 void transform_fromhost_extension_struct(
     41     ResourceTracker* resourceTracker,
     42     void* structExtension_out);
     43 
     44 #ifdef VK_VERSION_1_0
     45 void transform_tohost_VkApplicationInfo(
     46     ResourceTracker* resourceTracker,
     47     VkApplicationInfo* toTransform)
     48 {
     49     (void)resourceTracker;
     50     (void)toTransform;
     51     if (toTransform->pNext)
     52     {
     53         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
     54     }
     55 }
     56 
     57 void transform_fromhost_VkApplicationInfo(
     58     ResourceTracker* resourceTracker,
     59     VkApplicationInfo* toTransform)
     60 {
     61     (void)resourceTracker;
     62     (void)toTransform;
     63     if (toTransform->pNext)
     64     {
     65         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
     66     }
     67 }
     68 
     69 void transform_tohost_VkInstanceCreateInfo(
     70     ResourceTracker* resourceTracker,
     71     VkInstanceCreateInfo* toTransform)
     72 {
     73     (void)resourceTracker;
     74     (void)toTransform;
     75     if (toTransform->pNext)
     76     {
     77         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
     78     }
     79     if (toTransform->pApplicationInfo)
     80     {
     81         transform_tohost_VkApplicationInfo(resourceTracker, (VkApplicationInfo*)(toTransform->pApplicationInfo));
     82     }
     83 }
     84 
     85 void transform_fromhost_VkInstanceCreateInfo(
     86     ResourceTracker* resourceTracker,
     87     VkInstanceCreateInfo* toTransform)
     88 {
     89     (void)resourceTracker;
     90     (void)toTransform;
     91     if (toTransform->pNext)
     92     {
     93         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
     94     }
     95     if (toTransform->pApplicationInfo)
     96     {
     97         transform_fromhost_VkApplicationInfo(resourceTracker, (VkApplicationInfo*)(toTransform->pApplicationInfo));
     98     }
     99 }
    100 
    101 void transform_tohost_VkAllocationCallbacks(
    102     ResourceTracker* resourceTracker,
    103     VkAllocationCallbacks* toTransform)
    104 {
    105     (void)resourceTracker;
    106     (void)toTransform;
    107 }
    108 
    109 void transform_fromhost_VkAllocationCallbacks(
    110     ResourceTracker* resourceTracker,
    111     VkAllocationCallbacks* toTransform)
    112 {
    113     (void)resourceTracker;
    114     (void)toTransform;
    115 }
    116 
    117 void transform_tohost_VkPhysicalDeviceFeatures(
    118     ResourceTracker* resourceTracker,
    119     VkPhysicalDeviceFeatures* toTransform)
    120 {
    121     (void)resourceTracker;
    122     (void)toTransform;
    123 }
    124 
    125 void transform_fromhost_VkPhysicalDeviceFeatures(
    126     ResourceTracker* resourceTracker,
    127     VkPhysicalDeviceFeatures* toTransform)
    128 {
    129     (void)resourceTracker;
    130     (void)toTransform;
    131 }
    132 
    133 void transform_tohost_VkFormatProperties(
    134     ResourceTracker* resourceTracker,
    135     VkFormatProperties* toTransform)
    136 {
    137     (void)resourceTracker;
    138     (void)toTransform;
    139 }
    140 
    141 void transform_fromhost_VkFormatProperties(
    142     ResourceTracker* resourceTracker,
    143     VkFormatProperties* toTransform)
    144 {
    145     (void)resourceTracker;
    146     (void)toTransform;
    147 }
    148 
    149 void transform_tohost_VkExtent3D(
    150     ResourceTracker* resourceTracker,
    151     VkExtent3D* toTransform)
    152 {
    153     (void)resourceTracker;
    154     (void)toTransform;
    155 }
    156 
    157 void transform_fromhost_VkExtent3D(
    158     ResourceTracker* resourceTracker,
    159     VkExtent3D* toTransform)
    160 {
    161     (void)resourceTracker;
    162     (void)toTransform;
    163 }
    164 
    165 void transform_tohost_VkImageFormatProperties(
    166     ResourceTracker* resourceTracker,
    167     VkImageFormatProperties* toTransform)
    168 {
    169     (void)resourceTracker;
    170     (void)toTransform;
    171     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->maxExtent));
    172 }
    173 
    174 void transform_fromhost_VkImageFormatProperties(
    175     ResourceTracker* resourceTracker,
    176     VkImageFormatProperties* toTransform)
    177 {
    178     (void)resourceTracker;
    179     (void)toTransform;
    180     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->maxExtent));
    181 }
    182 
    183 void transform_tohost_VkPhysicalDeviceLimits(
    184     ResourceTracker* resourceTracker,
    185     VkPhysicalDeviceLimits* toTransform)
    186 {
    187     (void)resourceTracker;
    188     (void)toTransform;
    189 }
    190 
    191 void transform_fromhost_VkPhysicalDeviceLimits(
    192     ResourceTracker* resourceTracker,
    193     VkPhysicalDeviceLimits* toTransform)
    194 {
    195     (void)resourceTracker;
    196     (void)toTransform;
    197 }
    198 
    199 void transform_tohost_VkPhysicalDeviceSparseProperties(
    200     ResourceTracker* resourceTracker,
    201     VkPhysicalDeviceSparseProperties* toTransform)
    202 {
    203     (void)resourceTracker;
    204     (void)toTransform;
    205 }
    206 
    207 void transform_fromhost_VkPhysicalDeviceSparseProperties(
    208     ResourceTracker* resourceTracker,
    209     VkPhysicalDeviceSparseProperties* toTransform)
    210 {
    211     (void)resourceTracker;
    212     (void)toTransform;
    213 }
    214 
    215 void transform_tohost_VkPhysicalDeviceProperties(
    216     ResourceTracker* resourceTracker,
    217     VkPhysicalDeviceProperties* toTransform)
    218 {
    219     (void)resourceTracker;
    220     (void)toTransform;
    221     transform_tohost_VkPhysicalDeviceLimits(resourceTracker, (VkPhysicalDeviceLimits*)(&toTransform->limits));
    222     transform_tohost_VkPhysicalDeviceSparseProperties(resourceTracker, (VkPhysicalDeviceSparseProperties*)(&toTransform->sparseProperties));
    223 }
    224 
    225 void transform_fromhost_VkPhysicalDeviceProperties(
    226     ResourceTracker* resourceTracker,
    227     VkPhysicalDeviceProperties* toTransform)
    228 {
    229     (void)resourceTracker;
    230     (void)toTransform;
    231     transform_fromhost_VkPhysicalDeviceLimits(resourceTracker, (VkPhysicalDeviceLimits*)(&toTransform->limits));
    232     transform_fromhost_VkPhysicalDeviceSparseProperties(resourceTracker, (VkPhysicalDeviceSparseProperties*)(&toTransform->sparseProperties));
    233 }
    234 
    235 void transform_tohost_VkQueueFamilyProperties(
    236     ResourceTracker* resourceTracker,
    237     VkQueueFamilyProperties* toTransform)
    238 {
    239     (void)resourceTracker;
    240     (void)toTransform;
    241     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->minImageTransferGranularity));
    242 }
    243 
    244 void transform_fromhost_VkQueueFamilyProperties(
    245     ResourceTracker* resourceTracker,
    246     VkQueueFamilyProperties* toTransform)
    247 {
    248     (void)resourceTracker;
    249     (void)toTransform;
    250     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->minImageTransferGranularity));
    251 }
    252 
    253 void transform_tohost_VkMemoryType(
    254     ResourceTracker* resourceTracker,
    255     VkMemoryType* toTransform)
    256 {
    257     (void)resourceTracker;
    258     (void)toTransform;
    259 }
    260 
    261 void transform_fromhost_VkMemoryType(
    262     ResourceTracker* resourceTracker,
    263     VkMemoryType* toTransform)
    264 {
    265     (void)resourceTracker;
    266     (void)toTransform;
    267 }
    268 
    269 void transform_tohost_VkMemoryHeap(
    270     ResourceTracker* resourceTracker,
    271     VkMemoryHeap* toTransform)
    272 {
    273     (void)resourceTracker;
    274     (void)toTransform;
    275 }
    276 
    277 void transform_fromhost_VkMemoryHeap(
    278     ResourceTracker* resourceTracker,
    279     VkMemoryHeap* toTransform)
    280 {
    281     (void)resourceTracker;
    282     (void)toTransform;
    283 }
    284 
    285 void transform_tohost_VkPhysicalDeviceMemoryProperties(
    286     ResourceTracker* resourceTracker,
    287     VkPhysicalDeviceMemoryProperties* toTransform)
    288 {
    289     (void)resourceTracker;
    290     (void)toTransform;
    291     for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_TYPES; ++i)
    292     {
    293         transform_tohost_VkMemoryType(resourceTracker, (VkMemoryType*)(toTransform->memoryTypes + i));
    294     }
    295     for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_HEAPS; ++i)
    296     {
    297         transform_tohost_VkMemoryHeap(resourceTracker, (VkMemoryHeap*)(toTransform->memoryHeaps + i));
    298     }
    299 }
    300 
    301 void transform_fromhost_VkPhysicalDeviceMemoryProperties(
    302     ResourceTracker* resourceTracker,
    303     VkPhysicalDeviceMemoryProperties* toTransform)
    304 {
    305     (void)resourceTracker;
    306     (void)toTransform;
    307     for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_TYPES; ++i)
    308     {
    309         transform_fromhost_VkMemoryType(resourceTracker, (VkMemoryType*)(toTransform->memoryTypes + i));
    310     }
    311     for (uint32_t i = 0; i < (uint32_t)VK_MAX_MEMORY_HEAPS; ++i)
    312     {
    313         transform_fromhost_VkMemoryHeap(resourceTracker, (VkMemoryHeap*)(toTransform->memoryHeaps + i));
    314     }
    315 }
    316 
    317 void transform_tohost_VkDeviceQueueCreateInfo(
    318     ResourceTracker* resourceTracker,
    319     VkDeviceQueueCreateInfo* toTransform)
    320 {
    321     (void)resourceTracker;
    322     (void)toTransform;
    323     if (toTransform->pNext)
    324     {
    325         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    326     }
    327 }
    328 
    329 void transform_fromhost_VkDeviceQueueCreateInfo(
    330     ResourceTracker* resourceTracker,
    331     VkDeviceQueueCreateInfo* toTransform)
    332 {
    333     (void)resourceTracker;
    334     (void)toTransform;
    335     if (toTransform->pNext)
    336     {
    337         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    338     }
    339 }
    340 
    341 void transform_tohost_VkDeviceCreateInfo(
    342     ResourceTracker* resourceTracker,
    343     VkDeviceCreateInfo* toTransform)
    344 {
    345     (void)resourceTracker;
    346     (void)toTransform;
    347     if (toTransform->pNext)
    348     {
    349         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    350     }
    351     if (toTransform->pQueueCreateInfos)
    352     {
    353         for (uint32_t i = 0; i < (uint32_t)toTransform->queueCreateInfoCount; ++i)
    354         {
    355             transform_tohost_VkDeviceQueueCreateInfo(resourceTracker, (VkDeviceQueueCreateInfo*)(toTransform->pQueueCreateInfos + i));
    356         }
    357     }
    358     if (toTransform->pEnabledFeatures)
    359     {
    360         transform_tohost_VkPhysicalDeviceFeatures(resourceTracker, (VkPhysicalDeviceFeatures*)(toTransform->pEnabledFeatures));
    361     }
    362 }
    363 
    364 void transform_fromhost_VkDeviceCreateInfo(
    365     ResourceTracker* resourceTracker,
    366     VkDeviceCreateInfo* toTransform)
    367 {
    368     (void)resourceTracker;
    369     (void)toTransform;
    370     if (toTransform->pNext)
    371     {
    372         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    373     }
    374     if (toTransform->pQueueCreateInfos)
    375     {
    376         for (uint32_t i = 0; i < (uint32_t)toTransform->queueCreateInfoCount; ++i)
    377         {
    378             transform_fromhost_VkDeviceQueueCreateInfo(resourceTracker, (VkDeviceQueueCreateInfo*)(toTransform->pQueueCreateInfos + i));
    379         }
    380     }
    381     if (toTransform->pEnabledFeatures)
    382     {
    383         transform_fromhost_VkPhysicalDeviceFeatures(resourceTracker, (VkPhysicalDeviceFeatures*)(toTransform->pEnabledFeatures));
    384     }
    385 }
    386 
    387 void transform_tohost_VkExtensionProperties(
    388     ResourceTracker* resourceTracker,
    389     VkExtensionProperties* toTransform)
    390 {
    391     (void)resourceTracker;
    392     (void)toTransform;
    393 }
    394 
    395 void transform_fromhost_VkExtensionProperties(
    396     ResourceTracker* resourceTracker,
    397     VkExtensionProperties* toTransform)
    398 {
    399     (void)resourceTracker;
    400     (void)toTransform;
    401 }
    402 
    403 void transform_tohost_VkLayerProperties(
    404     ResourceTracker* resourceTracker,
    405     VkLayerProperties* toTransform)
    406 {
    407     (void)resourceTracker;
    408     (void)toTransform;
    409 }
    410 
    411 void transform_fromhost_VkLayerProperties(
    412     ResourceTracker* resourceTracker,
    413     VkLayerProperties* toTransform)
    414 {
    415     (void)resourceTracker;
    416     (void)toTransform;
    417 }
    418 
    419 void transform_tohost_VkSubmitInfo(
    420     ResourceTracker* resourceTracker,
    421     VkSubmitInfo* toTransform)
    422 {
    423     (void)resourceTracker;
    424     (void)toTransform;
    425     if (toTransform->pNext)
    426     {
    427         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    428     }
    429 }
    430 
    431 void transform_fromhost_VkSubmitInfo(
    432     ResourceTracker* resourceTracker,
    433     VkSubmitInfo* toTransform)
    434 {
    435     (void)resourceTracker;
    436     (void)toTransform;
    437     if (toTransform->pNext)
    438     {
    439         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    440     }
    441 }
    442 
    443 void transform_tohost_VkMemoryAllocateInfo(
    444     ResourceTracker* resourceTracker,
    445     VkMemoryAllocateInfo* toTransform)
    446 {
    447     (void)resourceTracker;
    448     (void)toTransform;
    449     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeIndex, 1, (uint32_t*)nullptr, 0);
    450     if (toTransform->pNext)
    451     {
    452         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    453     }
    454 }
    455 
    456 void transform_fromhost_VkMemoryAllocateInfo(
    457     ResourceTracker* resourceTracker,
    458     VkMemoryAllocateInfo* toTransform)
    459 {
    460     (void)resourceTracker;
    461     (void)toTransform;
    462     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeIndex, 1, (uint32_t*)nullptr, 0);
    463     if (toTransform->pNext)
    464     {
    465         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    466     }
    467 }
    468 
    469 void transform_tohost_VkMappedMemoryRange(
    470     ResourceTracker* resourceTracker,
    471     VkMappedMemoryRange* toTransform)
    472 {
    473     (void)resourceTracker;
    474     (void)toTransform;
    475     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->offset, 1, (VkDeviceSize*)&toTransform->size, 1, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
    476     if (toTransform->pNext)
    477     {
    478         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    479     }
    480 }
    481 
    482 void transform_fromhost_VkMappedMemoryRange(
    483     ResourceTracker* resourceTracker,
    484     VkMappedMemoryRange* toTransform)
    485 {
    486     (void)resourceTracker;
    487     (void)toTransform;
    488     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->offset, 1, (VkDeviceSize*)&toTransform->size, 1, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
    489     if (toTransform->pNext)
    490     {
    491         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    492     }
    493 }
    494 
    495 void transform_tohost_VkMemoryRequirements(
    496     ResourceTracker* resourceTracker,
    497     VkMemoryRequirements* toTransform)
    498 {
    499     (void)resourceTracker;
    500     (void)toTransform;
    501     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
    502 }
    503 
    504 void transform_fromhost_VkMemoryRequirements(
    505     ResourceTracker* resourceTracker,
    506     VkMemoryRequirements* toTransform)
    507 {
    508     (void)resourceTracker;
    509     (void)toTransform;
    510     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
    511 }
    512 
    513 void transform_tohost_VkSparseImageFormatProperties(
    514     ResourceTracker* resourceTracker,
    515     VkSparseImageFormatProperties* toTransform)
    516 {
    517     (void)resourceTracker;
    518     (void)toTransform;
    519     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->imageGranularity));
    520 }
    521 
    522 void transform_fromhost_VkSparseImageFormatProperties(
    523     ResourceTracker* resourceTracker,
    524     VkSparseImageFormatProperties* toTransform)
    525 {
    526     (void)resourceTracker;
    527     (void)toTransform;
    528     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->imageGranularity));
    529 }
    530 
    531 void transform_tohost_VkSparseImageMemoryRequirements(
    532     ResourceTracker* resourceTracker,
    533     VkSparseImageMemoryRequirements* toTransform)
    534 {
    535     (void)resourceTracker;
    536     (void)toTransform;
    537     transform_tohost_VkSparseImageFormatProperties(resourceTracker, (VkSparseImageFormatProperties*)(&toTransform->formatProperties));
    538 }
    539 
    540 void transform_fromhost_VkSparseImageMemoryRequirements(
    541     ResourceTracker* resourceTracker,
    542     VkSparseImageMemoryRequirements* toTransform)
    543 {
    544     (void)resourceTracker;
    545     (void)toTransform;
    546     transform_fromhost_VkSparseImageFormatProperties(resourceTracker, (VkSparseImageFormatProperties*)(&toTransform->formatProperties));
    547 }
    548 
    549 void transform_tohost_VkSparseMemoryBind(
    550     ResourceTracker* resourceTracker,
    551     VkSparseMemoryBind* toTransform)
    552 {
    553     (void)resourceTracker;
    554     (void)toTransform;
    555     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
    556 }
    557 
    558 void transform_fromhost_VkSparseMemoryBind(
    559     ResourceTracker* resourceTracker,
    560     VkSparseMemoryBind* toTransform)
    561 {
    562     (void)resourceTracker;
    563     (void)toTransform;
    564     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
    565 }
    566 
    567 void transform_tohost_VkSparseBufferMemoryBindInfo(
    568     ResourceTracker* resourceTracker,
    569     VkSparseBufferMemoryBindInfo* toTransform)
    570 {
    571     (void)resourceTracker;
    572     (void)toTransform;
    573     if (toTransform->pBinds)
    574     {
    575         for (uint32_t i = 0; i < (uint32_t)toTransform->bindCount; ++i)
    576         {
    577             transform_tohost_VkSparseMemoryBind(resourceTracker, (VkSparseMemoryBind*)(toTransform->pBinds + i));
    578         }
    579     }
    580 }
    581 
    582 void transform_fromhost_VkSparseBufferMemoryBindInfo(
    583     ResourceTracker* resourceTracker,
    584     VkSparseBufferMemoryBindInfo* toTransform)
    585 {
    586     (void)resourceTracker;
    587     (void)toTransform;
    588     if (toTransform->pBinds)
    589     {
    590         for (uint32_t i = 0; i < (uint32_t)toTransform->bindCount; ++i)
    591         {
    592             transform_fromhost_VkSparseMemoryBind(resourceTracker, (VkSparseMemoryBind*)(toTransform->pBinds + i));
    593         }
    594     }
    595 }
    596 
    597 void transform_tohost_VkSparseImageOpaqueMemoryBindInfo(
    598     ResourceTracker* resourceTracker,
    599     VkSparseImageOpaqueMemoryBindInfo* toTransform)
    600 {
    601     (void)resourceTracker;
    602     (void)toTransform;
    603     if (toTransform->pBinds)
    604     {
    605         for (uint32_t i = 0; i < (uint32_t)toTransform->bindCount; ++i)
    606         {
    607             transform_tohost_VkSparseMemoryBind(resourceTracker, (VkSparseMemoryBind*)(toTransform->pBinds + i));
    608         }
    609     }
    610 }
    611 
    612 void transform_fromhost_VkSparseImageOpaqueMemoryBindInfo(
    613     ResourceTracker* resourceTracker,
    614     VkSparseImageOpaqueMemoryBindInfo* toTransform)
    615 {
    616     (void)resourceTracker;
    617     (void)toTransform;
    618     if (toTransform->pBinds)
    619     {
    620         for (uint32_t i = 0; i < (uint32_t)toTransform->bindCount; ++i)
    621         {
    622             transform_fromhost_VkSparseMemoryBind(resourceTracker, (VkSparseMemoryBind*)(toTransform->pBinds + i));
    623         }
    624     }
    625 }
    626 
    627 void transform_tohost_VkImageSubresource(
    628     ResourceTracker* resourceTracker,
    629     VkImageSubresource* toTransform)
    630 {
    631     (void)resourceTracker;
    632     (void)toTransform;
    633 }
    634 
    635 void transform_fromhost_VkImageSubresource(
    636     ResourceTracker* resourceTracker,
    637     VkImageSubresource* toTransform)
    638 {
    639     (void)resourceTracker;
    640     (void)toTransform;
    641 }
    642 
    643 void transform_tohost_VkOffset3D(
    644     ResourceTracker* resourceTracker,
    645     VkOffset3D* toTransform)
    646 {
    647     (void)resourceTracker;
    648     (void)toTransform;
    649 }
    650 
    651 void transform_fromhost_VkOffset3D(
    652     ResourceTracker* resourceTracker,
    653     VkOffset3D* toTransform)
    654 {
    655     (void)resourceTracker;
    656     (void)toTransform;
    657 }
    658 
    659 void transform_tohost_VkSparseImageMemoryBind(
    660     ResourceTracker* resourceTracker,
    661     VkSparseImageMemoryBind* toTransform)
    662 {
    663     (void)resourceTracker;
    664     (void)toTransform;
    665     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
    666     transform_tohost_VkImageSubresource(resourceTracker, (VkImageSubresource*)(&toTransform->subresource));
    667     transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->offset));
    668     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
    669 }
    670 
    671 void transform_fromhost_VkSparseImageMemoryBind(
    672     ResourceTracker* resourceTracker,
    673     VkSparseImageMemoryBind* toTransform)
    674 {
    675     (void)resourceTracker;
    676     (void)toTransform;
    677     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
    678     transform_fromhost_VkImageSubresource(resourceTracker, (VkImageSubresource*)(&toTransform->subresource));
    679     transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->offset));
    680     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
    681 }
    682 
    683 void transform_tohost_VkSparseImageMemoryBindInfo(
    684     ResourceTracker* resourceTracker,
    685     VkSparseImageMemoryBindInfo* toTransform)
    686 {
    687     (void)resourceTracker;
    688     (void)toTransform;
    689     if (toTransform->pBinds)
    690     {
    691         for (uint32_t i = 0; i < (uint32_t)toTransform->bindCount; ++i)
    692         {
    693             transform_tohost_VkSparseImageMemoryBind(resourceTracker, (VkSparseImageMemoryBind*)(toTransform->pBinds + i));
    694         }
    695     }
    696 }
    697 
    698 void transform_fromhost_VkSparseImageMemoryBindInfo(
    699     ResourceTracker* resourceTracker,
    700     VkSparseImageMemoryBindInfo* toTransform)
    701 {
    702     (void)resourceTracker;
    703     (void)toTransform;
    704     if (toTransform->pBinds)
    705     {
    706         for (uint32_t i = 0; i < (uint32_t)toTransform->bindCount; ++i)
    707         {
    708             transform_fromhost_VkSparseImageMemoryBind(resourceTracker, (VkSparseImageMemoryBind*)(toTransform->pBinds + i));
    709         }
    710     }
    711 }
    712 
    713 void transform_tohost_VkBindSparseInfo(
    714     ResourceTracker* resourceTracker,
    715     VkBindSparseInfo* toTransform)
    716 {
    717     (void)resourceTracker;
    718     (void)toTransform;
    719     if (toTransform->pNext)
    720     {
    721         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    722     }
    723     if (toTransform->pBufferBinds)
    724     {
    725         for (uint32_t i = 0; i < (uint32_t)toTransform->bufferBindCount; ++i)
    726         {
    727             transform_tohost_VkSparseBufferMemoryBindInfo(resourceTracker, (VkSparseBufferMemoryBindInfo*)(toTransform->pBufferBinds + i));
    728         }
    729     }
    730     if (toTransform->pImageOpaqueBinds)
    731     {
    732         for (uint32_t i = 0; i < (uint32_t)toTransform->imageOpaqueBindCount; ++i)
    733         {
    734             transform_tohost_VkSparseImageOpaqueMemoryBindInfo(resourceTracker, (VkSparseImageOpaqueMemoryBindInfo*)(toTransform->pImageOpaqueBinds + i));
    735         }
    736     }
    737     if (toTransform->pImageBinds)
    738     {
    739         for (uint32_t i = 0; i < (uint32_t)toTransform->imageBindCount; ++i)
    740         {
    741             transform_tohost_VkSparseImageMemoryBindInfo(resourceTracker, (VkSparseImageMemoryBindInfo*)(toTransform->pImageBinds + i));
    742         }
    743     }
    744 }
    745 
    746 void transform_fromhost_VkBindSparseInfo(
    747     ResourceTracker* resourceTracker,
    748     VkBindSparseInfo* toTransform)
    749 {
    750     (void)resourceTracker;
    751     (void)toTransform;
    752     if (toTransform->pNext)
    753     {
    754         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    755     }
    756     if (toTransform->pBufferBinds)
    757     {
    758         for (uint32_t i = 0; i < (uint32_t)toTransform->bufferBindCount; ++i)
    759         {
    760             transform_fromhost_VkSparseBufferMemoryBindInfo(resourceTracker, (VkSparseBufferMemoryBindInfo*)(toTransform->pBufferBinds + i));
    761         }
    762     }
    763     if (toTransform->pImageOpaqueBinds)
    764     {
    765         for (uint32_t i = 0; i < (uint32_t)toTransform->imageOpaqueBindCount; ++i)
    766         {
    767             transform_fromhost_VkSparseImageOpaqueMemoryBindInfo(resourceTracker, (VkSparseImageOpaqueMemoryBindInfo*)(toTransform->pImageOpaqueBinds + i));
    768         }
    769     }
    770     if (toTransform->pImageBinds)
    771     {
    772         for (uint32_t i = 0; i < (uint32_t)toTransform->imageBindCount; ++i)
    773         {
    774             transform_fromhost_VkSparseImageMemoryBindInfo(resourceTracker, (VkSparseImageMemoryBindInfo*)(toTransform->pImageBinds + i));
    775         }
    776     }
    777 }
    778 
    779 void transform_tohost_VkFenceCreateInfo(
    780     ResourceTracker* resourceTracker,
    781     VkFenceCreateInfo* toTransform)
    782 {
    783     (void)resourceTracker;
    784     (void)toTransform;
    785     if (toTransform->pNext)
    786     {
    787         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    788     }
    789 }
    790 
    791 void transform_fromhost_VkFenceCreateInfo(
    792     ResourceTracker* resourceTracker,
    793     VkFenceCreateInfo* toTransform)
    794 {
    795     (void)resourceTracker;
    796     (void)toTransform;
    797     if (toTransform->pNext)
    798     {
    799         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    800     }
    801 }
    802 
    803 void transform_tohost_VkSemaphoreCreateInfo(
    804     ResourceTracker* resourceTracker,
    805     VkSemaphoreCreateInfo* toTransform)
    806 {
    807     (void)resourceTracker;
    808     (void)toTransform;
    809     if (toTransform->pNext)
    810     {
    811         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    812     }
    813 }
    814 
    815 void transform_fromhost_VkSemaphoreCreateInfo(
    816     ResourceTracker* resourceTracker,
    817     VkSemaphoreCreateInfo* toTransform)
    818 {
    819     (void)resourceTracker;
    820     (void)toTransform;
    821     if (toTransform->pNext)
    822     {
    823         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    824     }
    825 }
    826 
    827 void transform_tohost_VkEventCreateInfo(
    828     ResourceTracker* resourceTracker,
    829     VkEventCreateInfo* toTransform)
    830 {
    831     (void)resourceTracker;
    832     (void)toTransform;
    833     if (toTransform->pNext)
    834     {
    835         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    836     }
    837 }
    838 
    839 void transform_fromhost_VkEventCreateInfo(
    840     ResourceTracker* resourceTracker,
    841     VkEventCreateInfo* toTransform)
    842 {
    843     (void)resourceTracker;
    844     (void)toTransform;
    845     if (toTransform->pNext)
    846     {
    847         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    848     }
    849 }
    850 
    851 void transform_tohost_VkQueryPoolCreateInfo(
    852     ResourceTracker* resourceTracker,
    853     VkQueryPoolCreateInfo* toTransform)
    854 {
    855     (void)resourceTracker;
    856     (void)toTransform;
    857     if (toTransform->pNext)
    858     {
    859         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    860     }
    861 }
    862 
    863 void transform_fromhost_VkQueryPoolCreateInfo(
    864     ResourceTracker* resourceTracker,
    865     VkQueryPoolCreateInfo* toTransform)
    866 {
    867     (void)resourceTracker;
    868     (void)toTransform;
    869     if (toTransform->pNext)
    870     {
    871         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    872     }
    873 }
    874 
    875 void transform_tohost_VkBufferCreateInfo(
    876     ResourceTracker* resourceTracker,
    877     VkBufferCreateInfo* toTransform)
    878 {
    879     (void)resourceTracker;
    880     (void)toTransform;
    881     if (toTransform->pNext)
    882     {
    883         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    884     }
    885 }
    886 
    887 void transform_fromhost_VkBufferCreateInfo(
    888     ResourceTracker* resourceTracker,
    889     VkBufferCreateInfo* toTransform)
    890 {
    891     (void)resourceTracker;
    892     (void)toTransform;
    893     if (toTransform->pNext)
    894     {
    895         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    896     }
    897 }
    898 
    899 void transform_tohost_VkBufferViewCreateInfo(
    900     ResourceTracker* resourceTracker,
    901     VkBufferViewCreateInfo* toTransform)
    902 {
    903     (void)resourceTracker;
    904     (void)toTransform;
    905     if (toTransform->pNext)
    906     {
    907         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    908     }
    909 }
    910 
    911 void transform_fromhost_VkBufferViewCreateInfo(
    912     ResourceTracker* resourceTracker,
    913     VkBufferViewCreateInfo* toTransform)
    914 {
    915     (void)resourceTracker;
    916     (void)toTransform;
    917     if (toTransform->pNext)
    918     {
    919         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    920     }
    921 }
    922 
    923 void transform_tohost_VkImageCreateInfo(
    924     ResourceTracker* resourceTracker,
    925     VkImageCreateInfo* toTransform)
    926 {
    927     (void)resourceTracker;
    928     (void)toTransform;
    929     if (toTransform->pNext)
    930     {
    931         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    932     }
    933     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
    934 }
    935 
    936 void transform_fromhost_VkImageCreateInfo(
    937     ResourceTracker* resourceTracker,
    938     VkImageCreateInfo* toTransform)
    939 {
    940     (void)resourceTracker;
    941     (void)toTransform;
    942     if (toTransform->pNext)
    943     {
    944         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
    945     }
    946     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
    947 }
    948 
    949 void transform_tohost_VkSubresourceLayout(
    950     ResourceTracker* resourceTracker,
    951     VkSubresourceLayout* toTransform)
    952 {
    953     (void)resourceTracker;
    954     (void)toTransform;
    955 }
    956 
    957 void transform_fromhost_VkSubresourceLayout(
    958     ResourceTracker* resourceTracker,
    959     VkSubresourceLayout* toTransform)
    960 {
    961     (void)resourceTracker;
    962     (void)toTransform;
    963 }
    964 
    965 void transform_tohost_VkComponentMapping(
    966     ResourceTracker* resourceTracker,
    967     VkComponentMapping* toTransform)
    968 {
    969     (void)resourceTracker;
    970     (void)toTransform;
    971 }
    972 
    973 void transform_fromhost_VkComponentMapping(
    974     ResourceTracker* resourceTracker,
    975     VkComponentMapping* toTransform)
    976 {
    977     (void)resourceTracker;
    978     (void)toTransform;
    979 }
    980 
    981 void transform_tohost_VkImageSubresourceRange(
    982     ResourceTracker* resourceTracker,
    983     VkImageSubresourceRange* toTransform)
    984 {
    985     (void)resourceTracker;
    986     (void)toTransform;
    987 }
    988 
    989 void transform_fromhost_VkImageSubresourceRange(
    990     ResourceTracker* resourceTracker,
    991     VkImageSubresourceRange* toTransform)
    992 {
    993     (void)resourceTracker;
    994     (void)toTransform;
    995 }
    996 
    997 void transform_tohost_VkImageViewCreateInfo(
    998     ResourceTracker* resourceTracker,
    999     VkImageViewCreateInfo* toTransform)
   1000 {
   1001     (void)resourceTracker;
   1002     (void)toTransform;
   1003     if (toTransform->pNext)
   1004     {
   1005         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1006     }
   1007     transform_tohost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->components));
   1008     transform_tohost_VkImageSubresourceRange(resourceTracker, (VkImageSubresourceRange*)(&toTransform->subresourceRange));
   1009 }
   1010 
   1011 void transform_fromhost_VkImageViewCreateInfo(
   1012     ResourceTracker* resourceTracker,
   1013     VkImageViewCreateInfo* toTransform)
   1014 {
   1015     (void)resourceTracker;
   1016     (void)toTransform;
   1017     if (toTransform->pNext)
   1018     {
   1019         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1020     }
   1021     transform_fromhost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->components));
   1022     transform_fromhost_VkImageSubresourceRange(resourceTracker, (VkImageSubresourceRange*)(&toTransform->subresourceRange));
   1023 }
   1024 
   1025 void transform_tohost_VkShaderModuleCreateInfo(
   1026     ResourceTracker* resourceTracker,
   1027     VkShaderModuleCreateInfo* toTransform)
   1028 {
   1029     (void)resourceTracker;
   1030     (void)toTransform;
   1031     if (toTransform->pNext)
   1032     {
   1033         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1034     }
   1035 }
   1036 
   1037 void transform_fromhost_VkShaderModuleCreateInfo(
   1038     ResourceTracker* resourceTracker,
   1039     VkShaderModuleCreateInfo* toTransform)
   1040 {
   1041     (void)resourceTracker;
   1042     (void)toTransform;
   1043     if (toTransform->pNext)
   1044     {
   1045         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1046     }
   1047 }
   1048 
   1049 void transform_tohost_VkPipelineCacheCreateInfo(
   1050     ResourceTracker* resourceTracker,
   1051     VkPipelineCacheCreateInfo* toTransform)
   1052 {
   1053     (void)resourceTracker;
   1054     (void)toTransform;
   1055     if (toTransform->pNext)
   1056     {
   1057         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1058     }
   1059 }
   1060 
   1061 void transform_fromhost_VkPipelineCacheCreateInfo(
   1062     ResourceTracker* resourceTracker,
   1063     VkPipelineCacheCreateInfo* toTransform)
   1064 {
   1065     (void)resourceTracker;
   1066     (void)toTransform;
   1067     if (toTransform->pNext)
   1068     {
   1069         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1070     }
   1071 }
   1072 
   1073 void transform_tohost_VkSpecializationMapEntry(
   1074     ResourceTracker* resourceTracker,
   1075     VkSpecializationMapEntry* toTransform)
   1076 {
   1077     (void)resourceTracker;
   1078     (void)toTransform;
   1079 }
   1080 
   1081 void transform_fromhost_VkSpecializationMapEntry(
   1082     ResourceTracker* resourceTracker,
   1083     VkSpecializationMapEntry* toTransform)
   1084 {
   1085     (void)resourceTracker;
   1086     (void)toTransform;
   1087 }
   1088 
   1089 void transform_tohost_VkSpecializationInfo(
   1090     ResourceTracker* resourceTracker,
   1091     VkSpecializationInfo* toTransform)
   1092 {
   1093     (void)resourceTracker;
   1094     (void)toTransform;
   1095     if (toTransform->pMapEntries)
   1096     {
   1097         for (uint32_t i = 0; i < (uint32_t)toTransform->mapEntryCount; ++i)
   1098         {
   1099             transform_tohost_VkSpecializationMapEntry(resourceTracker, (VkSpecializationMapEntry*)(toTransform->pMapEntries + i));
   1100         }
   1101     }
   1102 }
   1103 
   1104 void transform_fromhost_VkSpecializationInfo(
   1105     ResourceTracker* resourceTracker,
   1106     VkSpecializationInfo* toTransform)
   1107 {
   1108     (void)resourceTracker;
   1109     (void)toTransform;
   1110     if (toTransform->pMapEntries)
   1111     {
   1112         for (uint32_t i = 0; i < (uint32_t)toTransform->mapEntryCount; ++i)
   1113         {
   1114             transform_fromhost_VkSpecializationMapEntry(resourceTracker, (VkSpecializationMapEntry*)(toTransform->pMapEntries + i));
   1115         }
   1116     }
   1117 }
   1118 
   1119 void transform_tohost_VkPipelineShaderStageCreateInfo(
   1120     ResourceTracker* resourceTracker,
   1121     VkPipelineShaderStageCreateInfo* toTransform)
   1122 {
   1123     (void)resourceTracker;
   1124     (void)toTransform;
   1125     if (toTransform->pNext)
   1126     {
   1127         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1128     }
   1129     if (toTransform->pSpecializationInfo)
   1130     {
   1131         transform_tohost_VkSpecializationInfo(resourceTracker, (VkSpecializationInfo*)(toTransform->pSpecializationInfo));
   1132     }
   1133 }
   1134 
   1135 void transform_fromhost_VkPipelineShaderStageCreateInfo(
   1136     ResourceTracker* resourceTracker,
   1137     VkPipelineShaderStageCreateInfo* toTransform)
   1138 {
   1139     (void)resourceTracker;
   1140     (void)toTransform;
   1141     if (toTransform->pNext)
   1142     {
   1143         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1144     }
   1145     if (toTransform->pSpecializationInfo)
   1146     {
   1147         transform_fromhost_VkSpecializationInfo(resourceTracker, (VkSpecializationInfo*)(toTransform->pSpecializationInfo));
   1148     }
   1149 }
   1150 
   1151 void transform_tohost_VkVertexInputBindingDescription(
   1152     ResourceTracker* resourceTracker,
   1153     VkVertexInputBindingDescription* toTransform)
   1154 {
   1155     (void)resourceTracker;
   1156     (void)toTransform;
   1157 }
   1158 
   1159 void transform_fromhost_VkVertexInputBindingDescription(
   1160     ResourceTracker* resourceTracker,
   1161     VkVertexInputBindingDescription* toTransform)
   1162 {
   1163     (void)resourceTracker;
   1164     (void)toTransform;
   1165 }
   1166 
   1167 void transform_tohost_VkVertexInputAttributeDescription(
   1168     ResourceTracker* resourceTracker,
   1169     VkVertexInputAttributeDescription* toTransform)
   1170 {
   1171     (void)resourceTracker;
   1172     (void)toTransform;
   1173 }
   1174 
   1175 void transform_fromhost_VkVertexInputAttributeDescription(
   1176     ResourceTracker* resourceTracker,
   1177     VkVertexInputAttributeDescription* toTransform)
   1178 {
   1179     (void)resourceTracker;
   1180     (void)toTransform;
   1181 }
   1182 
   1183 void transform_tohost_VkPipelineVertexInputStateCreateInfo(
   1184     ResourceTracker* resourceTracker,
   1185     VkPipelineVertexInputStateCreateInfo* toTransform)
   1186 {
   1187     (void)resourceTracker;
   1188     (void)toTransform;
   1189     if (toTransform->pNext)
   1190     {
   1191         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1192     }
   1193     if (toTransform->pVertexBindingDescriptions)
   1194     {
   1195         for (uint32_t i = 0; i < (uint32_t)toTransform->vertexBindingDescriptionCount; ++i)
   1196         {
   1197             transform_tohost_VkVertexInputBindingDescription(resourceTracker, (VkVertexInputBindingDescription*)(toTransform->pVertexBindingDescriptions + i));
   1198         }
   1199     }
   1200     if (toTransform->pVertexAttributeDescriptions)
   1201     {
   1202         for (uint32_t i = 0; i < (uint32_t)toTransform->vertexAttributeDescriptionCount; ++i)
   1203         {
   1204             transform_tohost_VkVertexInputAttributeDescription(resourceTracker, (VkVertexInputAttributeDescription*)(toTransform->pVertexAttributeDescriptions + i));
   1205         }
   1206     }
   1207 }
   1208 
   1209 void transform_fromhost_VkPipelineVertexInputStateCreateInfo(
   1210     ResourceTracker* resourceTracker,
   1211     VkPipelineVertexInputStateCreateInfo* toTransform)
   1212 {
   1213     (void)resourceTracker;
   1214     (void)toTransform;
   1215     if (toTransform->pNext)
   1216     {
   1217         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1218     }
   1219     if (toTransform->pVertexBindingDescriptions)
   1220     {
   1221         for (uint32_t i = 0; i < (uint32_t)toTransform->vertexBindingDescriptionCount; ++i)
   1222         {
   1223             transform_fromhost_VkVertexInputBindingDescription(resourceTracker, (VkVertexInputBindingDescription*)(toTransform->pVertexBindingDescriptions + i));
   1224         }
   1225     }
   1226     if (toTransform->pVertexAttributeDescriptions)
   1227     {
   1228         for (uint32_t i = 0; i < (uint32_t)toTransform->vertexAttributeDescriptionCount; ++i)
   1229         {
   1230             transform_fromhost_VkVertexInputAttributeDescription(resourceTracker, (VkVertexInputAttributeDescription*)(toTransform->pVertexAttributeDescriptions + i));
   1231         }
   1232     }
   1233 }
   1234 
   1235 void transform_tohost_VkPipelineInputAssemblyStateCreateInfo(
   1236     ResourceTracker* resourceTracker,
   1237     VkPipelineInputAssemblyStateCreateInfo* toTransform)
   1238 {
   1239     (void)resourceTracker;
   1240     (void)toTransform;
   1241     if (toTransform->pNext)
   1242     {
   1243         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1244     }
   1245 }
   1246 
   1247 void transform_fromhost_VkPipelineInputAssemblyStateCreateInfo(
   1248     ResourceTracker* resourceTracker,
   1249     VkPipelineInputAssemblyStateCreateInfo* toTransform)
   1250 {
   1251     (void)resourceTracker;
   1252     (void)toTransform;
   1253     if (toTransform->pNext)
   1254     {
   1255         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1256     }
   1257 }
   1258 
   1259 void transform_tohost_VkPipelineTessellationStateCreateInfo(
   1260     ResourceTracker* resourceTracker,
   1261     VkPipelineTessellationStateCreateInfo* toTransform)
   1262 {
   1263     (void)resourceTracker;
   1264     (void)toTransform;
   1265     if (toTransform->pNext)
   1266     {
   1267         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1268     }
   1269 }
   1270 
   1271 void transform_fromhost_VkPipelineTessellationStateCreateInfo(
   1272     ResourceTracker* resourceTracker,
   1273     VkPipelineTessellationStateCreateInfo* toTransform)
   1274 {
   1275     (void)resourceTracker;
   1276     (void)toTransform;
   1277     if (toTransform->pNext)
   1278     {
   1279         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1280     }
   1281 }
   1282 
   1283 void transform_tohost_VkViewport(
   1284     ResourceTracker* resourceTracker,
   1285     VkViewport* toTransform)
   1286 {
   1287     (void)resourceTracker;
   1288     (void)toTransform;
   1289 }
   1290 
   1291 void transform_fromhost_VkViewport(
   1292     ResourceTracker* resourceTracker,
   1293     VkViewport* toTransform)
   1294 {
   1295     (void)resourceTracker;
   1296     (void)toTransform;
   1297 }
   1298 
   1299 void transform_tohost_VkOffset2D(
   1300     ResourceTracker* resourceTracker,
   1301     VkOffset2D* toTransform)
   1302 {
   1303     (void)resourceTracker;
   1304     (void)toTransform;
   1305 }
   1306 
   1307 void transform_fromhost_VkOffset2D(
   1308     ResourceTracker* resourceTracker,
   1309     VkOffset2D* toTransform)
   1310 {
   1311     (void)resourceTracker;
   1312     (void)toTransform;
   1313 }
   1314 
   1315 void transform_tohost_VkExtent2D(
   1316     ResourceTracker* resourceTracker,
   1317     VkExtent2D* toTransform)
   1318 {
   1319     (void)resourceTracker;
   1320     (void)toTransform;
   1321 }
   1322 
   1323 void transform_fromhost_VkExtent2D(
   1324     ResourceTracker* resourceTracker,
   1325     VkExtent2D* toTransform)
   1326 {
   1327     (void)resourceTracker;
   1328     (void)toTransform;
   1329 }
   1330 
   1331 void transform_tohost_VkRect2D(
   1332     ResourceTracker* resourceTracker,
   1333     VkRect2D* toTransform)
   1334 {
   1335     (void)resourceTracker;
   1336     (void)toTransform;
   1337     transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->offset));
   1338     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->extent));
   1339 }
   1340 
   1341 void transform_fromhost_VkRect2D(
   1342     ResourceTracker* resourceTracker,
   1343     VkRect2D* toTransform)
   1344 {
   1345     (void)resourceTracker;
   1346     (void)toTransform;
   1347     transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->offset));
   1348     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->extent));
   1349 }
   1350 
   1351 void transform_tohost_VkPipelineViewportStateCreateInfo(
   1352     ResourceTracker* resourceTracker,
   1353     VkPipelineViewportStateCreateInfo* toTransform)
   1354 {
   1355     (void)resourceTracker;
   1356     (void)toTransform;
   1357     if (toTransform->pNext)
   1358     {
   1359         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1360     }
   1361     if (toTransform->pViewports)
   1362     {
   1363         for (uint32_t i = 0; i < (uint32_t)toTransform->viewportCount; ++i)
   1364         {
   1365             transform_tohost_VkViewport(resourceTracker, (VkViewport*)(toTransform->pViewports + i));
   1366         }
   1367     }
   1368     if (toTransform->pScissors)
   1369     {
   1370         for (uint32_t i = 0; i < (uint32_t)toTransform->scissorCount; ++i)
   1371         {
   1372             transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pScissors + i));
   1373         }
   1374     }
   1375 }
   1376 
   1377 void transform_fromhost_VkPipelineViewportStateCreateInfo(
   1378     ResourceTracker* resourceTracker,
   1379     VkPipelineViewportStateCreateInfo* toTransform)
   1380 {
   1381     (void)resourceTracker;
   1382     (void)toTransform;
   1383     if (toTransform->pNext)
   1384     {
   1385         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1386     }
   1387     if (toTransform->pViewports)
   1388     {
   1389         for (uint32_t i = 0; i < (uint32_t)toTransform->viewportCount; ++i)
   1390         {
   1391             transform_fromhost_VkViewport(resourceTracker, (VkViewport*)(toTransform->pViewports + i));
   1392         }
   1393     }
   1394     if (toTransform->pScissors)
   1395     {
   1396         for (uint32_t i = 0; i < (uint32_t)toTransform->scissorCount; ++i)
   1397         {
   1398             transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pScissors + i));
   1399         }
   1400     }
   1401 }
   1402 
   1403 void transform_tohost_VkPipelineRasterizationStateCreateInfo(
   1404     ResourceTracker* resourceTracker,
   1405     VkPipelineRasterizationStateCreateInfo* toTransform)
   1406 {
   1407     (void)resourceTracker;
   1408     (void)toTransform;
   1409     if (toTransform->pNext)
   1410     {
   1411         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1412     }
   1413 }
   1414 
   1415 void transform_fromhost_VkPipelineRasterizationStateCreateInfo(
   1416     ResourceTracker* resourceTracker,
   1417     VkPipelineRasterizationStateCreateInfo* toTransform)
   1418 {
   1419     (void)resourceTracker;
   1420     (void)toTransform;
   1421     if (toTransform->pNext)
   1422     {
   1423         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1424     }
   1425 }
   1426 
   1427 void transform_tohost_VkPipelineMultisampleStateCreateInfo(
   1428     ResourceTracker* resourceTracker,
   1429     VkPipelineMultisampleStateCreateInfo* toTransform)
   1430 {
   1431     (void)resourceTracker;
   1432     (void)toTransform;
   1433     if (toTransform->pNext)
   1434     {
   1435         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1436     }
   1437 }
   1438 
   1439 void transform_fromhost_VkPipelineMultisampleStateCreateInfo(
   1440     ResourceTracker* resourceTracker,
   1441     VkPipelineMultisampleStateCreateInfo* toTransform)
   1442 {
   1443     (void)resourceTracker;
   1444     (void)toTransform;
   1445     if (toTransform->pNext)
   1446     {
   1447         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1448     }
   1449 }
   1450 
   1451 void transform_tohost_VkStencilOpState(
   1452     ResourceTracker* resourceTracker,
   1453     VkStencilOpState* toTransform)
   1454 {
   1455     (void)resourceTracker;
   1456     (void)toTransform;
   1457 }
   1458 
   1459 void transform_fromhost_VkStencilOpState(
   1460     ResourceTracker* resourceTracker,
   1461     VkStencilOpState* toTransform)
   1462 {
   1463     (void)resourceTracker;
   1464     (void)toTransform;
   1465 }
   1466 
   1467 void transform_tohost_VkPipelineDepthStencilStateCreateInfo(
   1468     ResourceTracker* resourceTracker,
   1469     VkPipelineDepthStencilStateCreateInfo* toTransform)
   1470 {
   1471     (void)resourceTracker;
   1472     (void)toTransform;
   1473     if (toTransform->pNext)
   1474     {
   1475         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1476     }
   1477     transform_tohost_VkStencilOpState(resourceTracker, (VkStencilOpState*)(&toTransform->front));
   1478     transform_tohost_VkStencilOpState(resourceTracker, (VkStencilOpState*)(&toTransform->back));
   1479 }
   1480 
   1481 void transform_fromhost_VkPipelineDepthStencilStateCreateInfo(
   1482     ResourceTracker* resourceTracker,
   1483     VkPipelineDepthStencilStateCreateInfo* toTransform)
   1484 {
   1485     (void)resourceTracker;
   1486     (void)toTransform;
   1487     if (toTransform->pNext)
   1488     {
   1489         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1490     }
   1491     transform_fromhost_VkStencilOpState(resourceTracker, (VkStencilOpState*)(&toTransform->front));
   1492     transform_fromhost_VkStencilOpState(resourceTracker, (VkStencilOpState*)(&toTransform->back));
   1493 }
   1494 
   1495 void transform_tohost_VkPipelineColorBlendAttachmentState(
   1496     ResourceTracker* resourceTracker,
   1497     VkPipelineColorBlendAttachmentState* toTransform)
   1498 {
   1499     (void)resourceTracker;
   1500     (void)toTransform;
   1501 }
   1502 
   1503 void transform_fromhost_VkPipelineColorBlendAttachmentState(
   1504     ResourceTracker* resourceTracker,
   1505     VkPipelineColorBlendAttachmentState* toTransform)
   1506 {
   1507     (void)resourceTracker;
   1508     (void)toTransform;
   1509 }
   1510 
   1511 void transform_tohost_VkPipelineColorBlendStateCreateInfo(
   1512     ResourceTracker* resourceTracker,
   1513     VkPipelineColorBlendStateCreateInfo* toTransform)
   1514 {
   1515     (void)resourceTracker;
   1516     (void)toTransform;
   1517     if (toTransform->pNext)
   1518     {
   1519         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1520     }
   1521     if (toTransform->pAttachments)
   1522     {
   1523         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentCount; ++i)
   1524         {
   1525             transform_tohost_VkPipelineColorBlendAttachmentState(resourceTracker, (VkPipelineColorBlendAttachmentState*)(toTransform->pAttachments + i));
   1526         }
   1527     }
   1528 }
   1529 
   1530 void transform_fromhost_VkPipelineColorBlendStateCreateInfo(
   1531     ResourceTracker* resourceTracker,
   1532     VkPipelineColorBlendStateCreateInfo* toTransform)
   1533 {
   1534     (void)resourceTracker;
   1535     (void)toTransform;
   1536     if (toTransform->pNext)
   1537     {
   1538         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1539     }
   1540     if (toTransform->pAttachments)
   1541     {
   1542         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentCount; ++i)
   1543         {
   1544             transform_fromhost_VkPipelineColorBlendAttachmentState(resourceTracker, (VkPipelineColorBlendAttachmentState*)(toTransform->pAttachments + i));
   1545         }
   1546     }
   1547 }
   1548 
   1549 void transform_tohost_VkPipelineDynamicStateCreateInfo(
   1550     ResourceTracker* resourceTracker,
   1551     VkPipelineDynamicStateCreateInfo* toTransform)
   1552 {
   1553     (void)resourceTracker;
   1554     (void)toTransform;
   1555     if (toTransform->pNext)
   1556     {
   1557         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1558     }
   1559 }
   1560 
   1561 void transform_fromhost_VkPipelineDynamicStateCreateInfo(
   1562     ResourceTracker* resourceTracker,
   1563     VkPipelineDynamicStateCreateInfo* toTransform)
   1564 {
   1565     (void)resourceTracker;
   1566     (void)toTransform;
   1567     if (toTransform->pNext)
   1568     {
   1569         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1570     }
   1571 }
   1572 
   1573 void transform_tohost_VkGraphicsPipelineCreateInfo(
   1574     ResourceTracker* resourceTracker,
   1575     VkGraphicsPipelineCreateInfo* toTransform)
   1576 {
   1577     (void)resourceTracker;
   1578     (void)toTransform;
   1579     if (toTransform->pNext)
   1580     {
   1581         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1582     }
   1583     if (toTransform->pStages)
   1584     {
   1585         for (uint32_t i = 0; i < (uint32_t)toTransform->stageCount; ++i)
   1586         {
   1587             transform_tohost_VkPipelineShaderStageCreateInfo(resourceTracker, (VkPipelineShaderStageCreateInfo*)(toTransform->pStages + i));
   1588         }
   1589     }
   1590     if (toTransform->pVertexInputState)
   1591     {
   1592         transform_tohost_VkPipelineVertexInputStateCreateInfo(resourceTracker, (VkPipelineVertexInputStateCreateInfo*)(toTransform->pVertexInputState));
   1593     }
   1594     if (toTransform->pInputAssemblyState)
   1595     {
   1596         transform_tohost_VkPipelineInputAssemblyStateCreateInfo(resourceTracker, (VkPipelineInputAssemblyStateCreateInfo*)(toTransform->pInputAssemblyState));
   1597     }
   1598     if (toTransform->pTessellationState)
   1599     {
   1600         transform_tohost_VkPipelineTessellationStateCreateInfo(resourceTracker, (VkPipelineTessellationStateCreateInfo*)(toTransform->pTessellationState));
   1601     }
   1602     if (toTransform->pViewportState)
   1603     {
   1604         transform_tohost_VkPipelineViewportStateCreateInfo(resourceTracker, (VkPipelineViewportStateCreateInfo*)(toTransform->pViewportState));
   1605     }
   1606     if (toTransform->pRasterizationState)
   1607     {
   1608         transform_tohost_VkPipelineRasterizationStateCreateInfo(resourceTracker, (VkPipelineRasterizationStateCreateInfo*)(toTransform->pRasterizationState));
   1609     }
   1610     if (toTransform->pMultisampleState)
   1611     {
   1612         transform_tohost_VkPipelineMultisampleStateCreateInfo(resourceTracker, (VkPipelineMultisampleStateCreateInfo*)(toTransform->pMultisampleState));
   1613     }
   1614     if (toTransform->pDepthStencilState)
   1615     {
   1616         transform_tohost_VkPipelineDepthStencilStateCreateInfo(resourceTracker, (VkPipelineDepthStencilStateCreateInfo*)(toTransform->pDepthStencilState));
   1617     }
   1618     if (toTransform->pColorBlendState)
   1619     {
   1620         transform_tohost_VkPipelineColorBlendStateCreateInfo(resourceTracker, (VkPipelineColorBlendStateCreateInfo*)(toTransform->pColorBlendState));
   1621     }
   1622     if (toTransform->pDynamicState)
   1623     {
   1624         transform_tohost_VkPipelineDynamicStateCreateInfo(resourceTracker, (VkPipelineDynamicStateCreateInfo*)(toTransform->pDynamicState));
   1625     }
   1626 }
   1627 
   1628 void transform_fromhost_VkGraphicsPipelineCreateInfo(
   1629     ResourceTracker* resourceTracker,
   1630     VkGraphicsPipelineCreateInfo* toTransform)
   1631 {
   1632     (void)resourceTracker;
   1633     (void)toTransform;
   1634     if (toTransform->pNext)
   1635     {
   1636         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1637     }
   1638     if (toTransform->pStages)
   1639     {
   1640         for (uint32_t i = 0; i < (uint32_t)toTransform->stageCount; ++i)
   1641         {
   1642             transform_fromhost_VkPipelineShaderStageCreateInfo(resourceTracker, (VkPipelineShaderStageCreateInfo*)(toTransform->pStages + i));
   1643         }
   1644     }
   1645     if (toTransform->pVertexInputState)
   1646     {
   1647         transform_fromhost_VkPipelineVertexInputStateCreateInfo(resourceTracker, (VkPipelineVertexInputStateCreateInfo*)(toTransform->pVertexInputState));
   1648     }
   1649     if (toTransform->pInputAssemblyState)
   1650     {
   1651         transform_fromhost_VkPipelineInputAssemblyStateCreateInfo(resourceTracker, (VkPipelineInputAssemblyStateCreateInfo*)(toTransform->pInputAssemblyState));
   1652     }
   1653     if (toTransform->pTessellationState)
   1654     {
   1655         transform_fromhost_VkPipelineTessellationStateCreateInfo(resourceTracker, (VkPipelineTessellationStateCreateInfo*)(toTransform->pTessellationState));
   1656     }
   1657     if (toTransform->pViewportState)
   1658     {
   1659         transform_fromhost_VkPipelineViewportStateCreateInfo(resourceTracker, (VkPipelineViewportStateCreateInfo*)(toTransform->pViewportState));
   1660     }
   1661     if (toTransform->pRasterizationState)
   1662     {
   1663         transform_fromhost_VkPipelineRasterizationStateCreateInfo(resourceTracker, (VkPipelineRasterizationStateCreateInfo*)(toTransform->pRasterizationState));
   1664     }
   1665     if (toTransform->pMultisampleState)
   1666     {
   1667         transform_fromhost_VkPipelineMultisampleStateCreateInfo(resourceTracker, (VkPipelineMultisampleStateCreateInfo*)(toTransform->pMultisampleState));
   1668     }
   1669     if (toTransform->pDepthStencilState)
   1670     {
   1671         transform_fromhost_VkPipelineDepthStencilStateCreateInfo(resourceTracker, (VkPipelineDepthStencilStateCreateInfo*)(toTransform->pDepthStencilState));
   1672     }
   1673     if (toTransform->pColorBlendState)
   1674     {
   1675         transform_fromhost_VkPipelineColorBlendStateCreateInfo(resourceTracker, (VkPipelineColorBlendStateCreateInfo*)(toTransform->pColorBlendState));
   1676     }
   1677     if (toTransform->pDynamicState)
   1678     {
   1679         transform_fromhost_VkPipelineDynamicStateCreateInfo(resourceTracker, (VkPipelineDynamicStateCreateInfo*)(toTransform->pDynamicState));
   1680     }
   1681 }
   1682 
   1683 void transform_tohost_VkComputePipelineCreateInfo(
   1684     ResourceTracker* resourceTracker,
   1685     VkComputePipelineCreateInfo* toTransform)
   1686 {
   1687     (void)resourceTracker;
   1688     (void)toTransform;
   1689     if (toTransform->pNext)
   1690     {
   1691         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1692     }
   1693     transform_tohost_VkPipelineShaderStageCreateInfo(resourceTracker, (VkPipelineShaderStageCreateInfo*)(&toTransform->stage));
   1694 }
   1695 
   1696 void transform_fromhost_VkComputePipelineCreateInfo(
   1697     ResourceTracker* resourceTracker,
   1698     VkComputePipelineCreateInfo* toTransform)
   1699 {
   1700     (void)resourceTracker;
   1701     (void)toTransform;
   1702     if (toTransform->pNext)
   1703     {
   1704         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1705     }
   1706     transform_fromhost_VkPipelineShaderStageCreateInfo(resourceTracker, (VkPipelineShaderStageCreateInfo*)(&toTransform->stage));
   1707 }
   1708 
   1709 void transform_tohost_VkPushConstantRange(
   1710     ResourceTracker* resourceTracker,
   1711     VkPushConstantRange* toTransform)
   1712 {
   1713     (void)resourceTracker;
   1714     (void)toTransform;
   1715 }
   1716 
   1717 void transform_fromhost_VkPushConstantRange(
   1718     ResourceTracker* resourceTracker,
   1719     VkPushConstantRange* toTransform)
   1720 {
   1721     (void)resourceTracker;
   1722     (void)toTransform;
   1723 }
   1724 
   1725 void transform_tohost_VkPipelineLayoutCreateInfo(
   1726     ResourceTracker* resourceTracker,
   1727     VkPipelineLayoutCreateInfo* toTransform)
   1728 {
   1729     (void)resourceTracker;
   1730     (void)toTransform;
   1731     if (toTransform->pNext)
   1732     {
   1733         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1734     }
   1735     if (toTransform->pPushConstantRanges)
   1736     {
   1737         for (uint32_t i = 0; i < (uint32_t)toTransform->pushConstantRangeCount; ++i)
   1738         {
   1739             transform_tohost_VkPushConstantRange(resourceTracker, (VkPushConstantRange*)(toTransform->pPushConstantRanges + i));
   1740         }
   1741     }
   1742 }
   1743 
   1744 void transform_fromhost_VkPipelineLayoutCreateInfo(
   1745     ResourceTracker* resourceTracker,
   1746     VkPipelineLayoutCreateInfo* toTransform)
   1747 {
   1748     (void)resourceTracker;
   1749     (void)toTransform;
   1750     if (toTransform->pNext)
   1751     {
   1752         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1753     }
   1754     if (toTransform->pPushConstantRanges)
   1755     {
   1756         for (uint32_t i = 0; i < (uint32_t)toTransform->pushConstantRangeCount; ++i)
   1757         {
   1758             transform_fromhost_VkPushConstantRange(resourceTracker, (VkPushConstantRange*)(toTransform->pPushConstantRanges + i));
   1759         }
   1760     }
   1761 }
   1762 
   1763 void transform_tohost_VkSamplerCreateInfo(
   1764     ResourceTracker* resourceTracker,
   1765     VkSamplerCreateInfo* toTransform)
   1766 {
   1767     (void)resourceTracker;
   1768     (void)toTransform;
   1769     if (toTransform->pNext)
   1770     {
   1771         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1772     }
   1773 }
   1774 
   1775 void transform_fromhost_VkSamplerCreateInfo(
   1776     ResourceTracker* resourceTracker,
   1777     VkSamplerCreateInfo* toTransform)
   1778 {
   1779     (void)resourceTracker;
   1780     (void)toTransform;
   1781     if (toTransform->pNext)
   1782     {
   1783         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1784     }
   1785 }
   1786 
   1787 void transform_tohost_VkDescriptorSetLayoutBinding(
   1788     ResourceTracker* resourceTracker,
   1789     VkDescriptorSetLayoutBinding* toTransform)
   1790 {
   1791     (void)resourceTracker;
   1792     (void)toTransform;
   1793 }
   1794 
   1795 void transform_fromhost_VkDescriptorSetLayoutBinding(
   1796     ResourceTracker* resourceTracker,
   1797     VkDescriptorSetLayoutBinding* toTransform)
   1798 {
   1799     (void)resourceTracker;
   1800     (void)toTransform;
   1801 }
   1802 
   1803 void transform_tohost_VkDescriptorSetLayoutCreateInfo(
   1804     ResourceTracker* resourceTracker,
   1805     VkDescriptorSetLayoutCreateInfo* toTransform)
   1806 {
   1807     (void)resourceTracker;
   1808     (void)toTransform;
   1809     if (toTransform->pNext)
   1810     {
   1811         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1812     }
   1813     if (toTransform->pBindings)
   1814     {
   1815         for (uint32_t i = 0; i < (uint32_t)toTransform->bindingCount; ++i)
   1816         {
   1817             transform_tohost_VkDescriptorSetLayoutBinding(resourceTracker, (VkDescriptorSetLayoutBinding*)(toTransform->pBindings + i));
   1818         }
   1819     }
   1820 }
   1821 
   1822 void transform_fromhost_VkDescriptorSetLayoutCreateInfo(
   1823     ResourceTracker* resourceTracker,
   1824     VkDescriptorSetLayoutCreateInfo* toTransform)
   1825 {
   1826     (void)resourceTracker;
   1827     (void)toTransform;
   1828     if (toTransform->pNext)
   1829     {
   1830         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1831     }
   1832     if (toTransform->pBindings)
   1833     {
   1834         for (uint32_t i = 0; i < (uint32_t)toTransform->bindingCount; ++i)
   1835         {
   1836             transform_fromhost_VkDescriptorSetLayoutBinding(resourceTracker, (VkDescriptorSetLayoutBinding*)(toTransform->pBindings + i));
   1837         }
   1838     }
   1839 }
   1840 
   1841 void transform_tohost_VkDescriptorPoolSize(
   1842     ResourceTracker* resourceTracker,
   1843     VkDescriptorPoolSize* toTransform)
   1844 {
   1845     (void)resourceTracker;
   1846     (void)toTransform;
   1847 }
   1848 
   1849 void transform_fromhost_VkDescriptorPoolSize(
   1850     ResourceTracker* resourceTracker,
   1851     VkDescriptorPoolSize* toTransform)
   1852 {
   1853     (void)resourceTracker;
   1854     (void)toTransform;
   1855 }
   1856 
   1857 void transform_tohost_VkDescriptorPoolCreateInfo(
   1858     ResourceTracker* resourceTracker,
   1859     VkDescriptorPoolCreateInfo* toTransform)
   1860 {
   1861     (void)resourceTracker;
   1862     (void)toTransform;
   1863     if (toTransform->pNext)
   1864     {
   1865         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1866     }
   1867     if (toTransform->pPoolSizes)
   1868     {
   1869         for (uint32_t i = 0; i < (uint32_t)toTransform->poolSizeCount; ++i)
   1870         {
   1871             transform_tohost_VkDescriptorPoolSize(resourceTracker, (VkDescriptorPoolSize*)(toTransform->pPoolSizes + i));
   1872         }
   1873     }
   1874 }
   1875 
   1876 void transform_fromhost_VkDescriptorPoolCreateInfo(
   1877     ResourceTracker* resourceTracker,
   1878     VkDescriptorPoolCreateInfo* toTransform)
   1879 {
   1880     (void)resourceTracker;
   1881     (void)toTransform;
   1882     if (toTransform->pNext)
   1883     {
   1884         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1885     }
   1886     if (toTransform->pPoolSizes)
   1887     {
   1888         for (uint32_t i = 0; i < (uint32_t)toTransform->poolSizeCount; ++i)
   1889         {
   1890             transform_fromhost_VkDescriptorPoolSize(resourceTracker, (VkDescriptorPoolSize*)(toTransform->pPoolSizes + i));
   1891         }
   1892     }
   1893 }
   1894 
   1895 void transform_tohost_VkDescriptorSetAllocateInfo(
   1896     ResourceTracker* resourceTracker,
   1897     VkDescriptorSetAllocateInfo* toTransform)
   1898 {
   1899     (void)resourceTracker;
   1900     (void)toTransform;
   1901     if (toTransform->pNext)
   1902     {
   1903         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1904     }
   1905 }
   1906 
   1907 void transform_fromhost_VkDescriptorSetAllocateInfo(
   1908     ResourceTracker* resourceTracker,
   1909     VkDescriptorSetAllocateInfo* toTransform)
   1910 {
   1911     (void)resourceTracker;
   1912     (void)toTransform;
   1913     if (toTransform->pNext)
   1914     {
   1915         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1916     }
   1917 }
   1918 
   1919 void transform_tohost_VkDescriptorImageInfo(
   1920     ResourceTracker* resourceTracker,
   1921     VkDescriptorImageInfo* toTransform)
   1922 {
   1923     (void)resourceTracker;
   1924     (void)toTransform;
   1925 }
   1926 
   1927 void transform_fromhost_VkDescriptorImageInfo(
   1928     ResourceTracker* resourceTracker,
   1929     VkDescriptorImageInfo* toTransform)
   1930 {
   1931     (void)resourceTracker;
   1932     (void)toTransform;
   1933 }
   1934 
   1935 void transform_tohost_VkDescriptorBufferInfo(
   1936     ResourceTracker* resourceTracker,
   1937     VkDescriptorBufferInfo* toTransform)
   1938 {
   1939     (void)resourceTracker;
   1940     (void)toTransform;
   1941 }
   1942 
   1943 void transform_fromhost_VkDescriptorBufferInfo(
   1944     ResourceTracker* resourceTracker,
   1945     VkDescriptorBufferInfo* toTransform)
   1946 {
   1947     (void)resourceTracker;
   1948     (void)toTransform;
   1949 }
   1950 
   1951 void transform_tohost_VkWriteDescriptorSet(
   1952     ResourceTracker* resourceTracker,
   1953     VkWriteDescriptorSet* toTransform)
   1954 {
   1955     (void)resourceTracker;
   1956     (void)toTransform;
   1957     if (toTransform->pNext)
   1958     {
   1959         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1960     }
   1961     if (toTransform->pImageInfo)
   1962     {
   1963         for (uint32_t i = 0; i < (uint32_t)toTransform->descriptorCount; ++i)
   1964         {
   1965             transform_tohost_VkDescriptorImageInfo(resourceTracker, (VkDescriptorImageInfo*)(toTransform->pImageInfo + i));
   1966         }
   1967     }
   1968     if (toTransform->pBufferInfo)
   1969     {
   1970         for (uint32_t i = 0; i < (uint32_t)toTransform->descriptorCount; ++i)
   1971         {
   1972             transform_tohost_VkDescriptorBufferInfo(resourceTracker, (VkDescriptorBufferInfo*)(toTransform->pBufferInfo + i));
   1973         }
   1974     }
   1975 }
   1976 
   1977 void transform_fromhost_VkWriteDescriptorSet(
   1978     ResourceTracker* resourceTracker,
   1979     VkWriteDescriptorSet* toTransform)
   1980 {
   1981     (void)resourceTracker;
   1982     (void)toTransform;
   1983     if (toTransform->pNext)
   1984     {
   1985         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   1986     }
   1987     if (toTransform->pImageInfo)
   1988     {
   1989         for (uint32_t i = 0; i < (uint32_t)toTransform->descriptorCount; ++i)
   1990         {
   1991             transform_fromhost_VkDescriptorImageInfo(resourceTracker, (VkDescriptorImageInfo*)(toTransform->pImageInfo + i));
   1992         }
   1993     }
   1994     if (toTransform->pBufferInfo)
   1995     {
   1996         for (uint32_t i = 0; i < (uint32_t)toTransform->descriptorCount; ++i)
   1997         {
   1998             transform_fromhost_VkDescriptorBufferInfo(resourceTracker, (VkDescriptorBufferInfo*)(toTransform->pBufferInfo + i));
   1999         }
   2000     }
   2001 }
   2002 
   2003 void transform_tohost_VkCopyDescriptorSet(
   2004     ResourceTracker* resourceTracker,
   2005     VkCopyDescriptorSet* toTransform)
   2006 {
   2007     (void)resourceTracker;
   2008     (void)toTransform;
   2009     if (toTransform->pNext)
   2010     {
   2011         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2012     }
   2013 }
   2014 
   2015 void transform_fromhost_VkCopyDescriptorSet(
   2016     ResourceTracker* resourceTracker,
   2017     VkCopyDescriptorSet* toTransform)
   2018 {
   2019     (void)resourceTracker;
   2020     (void)toTransform;
   2021     if (toTransform->pNext)
   2022     {
   2023         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2024     }
   2025 }
   2026 
   2027 void transform_tohost_VkFramebufferCreateInfo(
   2028     ResourceTracker* resourceTracker,
   2029     VkFramebufferCreateInfo* toTransform)
   2030 {
   2031     (void)resourceTracker;
   2032     (void)toTransform;
   2033     if (toTransform->pNext)
   2034     {
   2035         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2036     }
   2037 }
   2038 
   2039 void transform_fromhost_VkFramebufferCreateInfo(
   2040     ResourceTracker* resourceTracker,
   2041     VkFramebufferCreateInfo* toTransform)
   2042 {
   2043     (void)resourceTracker;
   2044     (void)toTransform;
   2045     if (toTransform->pNext)
   2046     {
   2047         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2048     }
   2049 }
   2050 
   2051 void transform_tohost_VkAttachmentDescription(
   2052     ResourceTracker* resourceTracker,
   2053     VkAttachmentDescription* toTransform)
   2054 {
   2055     (void)resourceTracker;
   2056     (void)toTransform;
   2057 }
   2058 
   2059 void transform_fromhost_VkAttachmentDescription(
   2060     ResourceTracker* resourceTracker,
   2061     VkAttachmentDescription* toTransform)
   2062 {
   2063     (void)resourceTracker;
   2064     (void)toTransform;
   2065 }
   2066 
   2067 void transform_tohost_VkAttachmentReference(
   2068     ResourceTracker* resourceTracker,
   2069     VkAttachmentReference* toTransform)
   2070 {
   2071     (void)resourceTracker;
   2072     (void)toTransform;
   2073 }
   2074 
   2075 void transform_fromhost_VkAttachmentReference(
   2076     ResourceTracker* resourceTracker,
   2077     VkAttachmentReference* toTransform)
   2078 {
   2079     (void)resourceTracker;
   2080     (void)toTransform;
   2081 }
   2082 
   2083 void transform_tohost_VkSubpassDescription(
   2084     ResourceTracker* resourceTracker,
   2085     VkSubpassDescription* toTransform)
   2086 {
   2087     (void)resourceTracker;
   2088     (void)toTransform;
   2089     if (toTransform->pInputAttachments)
   2090     {
   2091         for (uint32_t i = 0; i < (uint32_t)toTransform->inputAttachmentCount; ++i)
   2092         {
   2093             transform_tohost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pInputAttachments + i));
   2094         }
   2095     }
   2096     if (toTransform->pColorAttachments)
   2097     {
   2098         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   2099         {
   2100             transform_tohost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pColorAttachments + i));
   2101         }
   2102     }
   2103     if (toTransform->pResolveAttachments)
   2104     {
   2105         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   2106         {
   2107             transform_tohost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pResolveAttachments + i));
   2108         }
   2109     }
   2110     if (toTransform->pDepthStencilAttachment)
   2111     {
   2112         transform_tohost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pDepthStencilAttachment));
   2113     }
   2114 }
   2115 
   2116 void transform_fromhost_VkSubpassDescription(
   2117     ResourceTracker* resourceTracker,
   2118     VkSubpassDescription* toTransform)
   2119 {
   2120     (void)resourceTracker;
   2121     (void)toTransform;
   2122     if (toTransform->pInputAttachments)
   2123     {
   2124         for (uint32_t i = 0; i < (uint32_t)toTransform->inputAttachmentCount; ++i)
   2125         {
   2126             transform_fromhost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pInputAttachments + i));
   2127         }
   2128     }
   2129     if (toTransform->pColorAttachments)
   2130     {
   2131         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   2132         {
   2133             transform_fromhost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pColorAttachments + i));
   2134         }
   2135     }
   2136     if (toTransform->pResolveAttachments)
   2137     {
   2138         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   2139         {
   2140             transform_fromhost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pResolveAttachments + i));
   2141         }
   2142     }
   2143     if (toTransform->pDepthStencilAttachment)
   2144     {
   2145         transform_fromhost_VkAttachmentReference(resourceTracker, (VkAttachmentReference*)(toTransform->pDepthStencilAttachment));
   2146     }
   2147 }
   2148 
   2149 void transform_tohost_VkSubpassDependency(
   2150     ResourceTracker* resourceTracker,
   2151     VkSubpassDependency* toTransform)
   2152 {
   2153     (void)resourceTracker;
   2154     (void)toTransform;
   2155 }
   2156 
   2157 void transform_fromhost_VkSubpassDependency(
   2158     ResourceTracker* resourceTracker,
   2159     VkSubpassDependency* toTransform)
   2160 {
   2161     (void)resourceTracker;
   2162     (void)toTransform;
   2163 }
   2164 
   2165 void transform_tohost_VkRenderPassCreateInfo(
   2166     ResourceTracker* resourceTracker,
   2167     VkRenderPassCreateInfo* toTransform)
   2168 {
   2169     (void)resourceTracker;
   2170     (void)toTransform;
   2171     if (toTransform->pNext)
   2172     {
   2173         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2174     }
   2175     if (toTransform->pAttachments)
   2176     {
   2177         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentCount; ++i)
   2178         {
   2179             transform_tohost_VkAttachmentDescription(resourceTracker, (VkAttachmentDescription*)(toTransform->pAttachments + i));
   2180         }
   2181     }
   2182     if (toTransform->pSubpasses)
   2183     {
   2184         for (uint32_t i = 0; i < (uint32_t)toTransform->subpassCount; ++i)
   2185         {
   2186             transform_tohost_VkSubpassDescription(resourceTracker, (VkSubpassDescription*)(toTransform->pSubpasses + i));
   2187         }
   2188     }
   2189     if (toTransform->pDependencies)
   2190     {
   2191         for (uint32_t i = 0; i < (uint32_t)toTransform->dependencyCount; ++i)
   2192         {
   2193             transform_tohost_VkSubpassDependency(resourceTracker, (VkSubpassDependency*)(toTransform->pDependencies + i));
   2194         }
   2195     }
   2196 }
   2197 
   2198 void transform_fromhost_VkRenderPassCreateInfo(
   2199     ResourceTracker* resourceTracker,
   2200     VkRenderPassCreateInfo* toTransform)
   2201 {
   2202     (void)resourceTracker;
   2203     (void)toTransform;
   2204     if (toTransform->pNext)
   2205     {
   2206         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2207     }
   2208     if (toTransform->pAttachments)
   2209     {
   2210         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentCount; ++i)
   2211         {
   2212             transform_fromhost_VkAttachmentDescription(resourceTracker, (VkAttachmentDescription*)(toTransform->pAttachments + i));
   2213         }
   2214     }
   2215     if (toTransform->pSubpasses)
   2216     {
   2217         for (uint32_t i = 0; i < (uint32_t)toTransform->subpassCount; ++i)
   2218         {
   2219             transform_fromhost_VkSubpassDescription(resourceTracker, (VkSubpassDescription*)(toTransform->pSubpasses + i));
   2220         }
   2221     }
   2222     if (toTransform->pDependencies)
   2223     {
   2224         for (uint32_t i = 0; i < (uint32_t)toTransform->dependencyCount; ++i)
   2225         {
   2226             transform_fromhost_VkSubpassDependency(resourceTracker, (VkSubpassDependency*)(toTransform->pDependencies + i));
   2227         }
   2228     }
   2229 }
   2230 
   2231 void transform_tohost_VkCommandPoolCreateInfo(
   2232     ResourceTracker* resourceTracker,
   2233     VkCommandPoolCreateInfo* toTransform)
   2234 {
   2235     (void)resourceTracker;
   2236     (void)toTransform;
   2237     if (toTransform->pNext)
   2238     {
   2239         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2240     }
   2241 }
   2242 
   2243 void transform_fromhost_VkCommandPoolCreateInfo(
   2244     ResourceTracker* resourceTracker,
   2245     VkCommandPoolCreateInfo* toTransform)
   2246 {
   2247     (void)resourceTracker;
   2248     (void)toTransform;
   2249     if (toTransform->pNext)
   2250     {
   2251         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2252     }
   2253 }
   2254 
   2255 void transform_tohost_VkCommandBufferAllocateInfo(
   2256     ResourceTracker* resourceTracker,
   2257     VkCommandBufferAllocateInfo* toTransform)
   2258 {
   2259     (void)resourceTracker;
   2260     (void)toTransform;
   2261     if (toTransform->pNext)
   2262     {
   2263         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2264     }
   2265 }
   2266 
   2267 void transform_fromhost_VkCommandBufferAllocateInfo(
   2268     ResourceTracker* resourceTracker,
   2269     VkCommandBufferAllocateInfo* toTransform)
   2270 {
   2271     (void)resourceTracker;
   2272     (void)toTransform;
   2273     if (toTransform->pNext)
   2274     {
   2275         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2276     }
   2277 }
   2278 
   2279 void transform_tohost_VkCommandBufferInheritanceInfo(
   2280     ResourceTracker* resourceTracker,
   2281     VkCommandBufferInheritanceInfo* toTransform)
   2282 {
   2283     (void)resourceTracker;
   2284     (void)toTransform;
   2285     if (toTransform->pNext)
   2286     {
   2287         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2288     }
   2289 }
   2290 
   2291 void transform_fromhost_VkCommandBufferInheritanceInfo(
   2292     ResourceTracker* resourceTracker,
   2293     VkCommandBufferInheritanceInfo* toTransform)
   2294 {
   2295     (void)resourceTracker;
   2296     (void)toTransform;
   2297     if (toTransform->pNext)
   2298     {
   2299         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2300     }
   2301 }
   2302 
   2303 void transform_tohost_VkCommandBufferBeginInfo(
   2304     ResourceTracker* resourceTracker,
   2305     VkCommandBufferBeginInfo* toTransform)
   2306 {
   2307     (void)resourceTracker;
   2308     (void)toTransform;
   2309     if (toTransform->pNext)
   2310     {
   2311         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2312     }
   2313     if (toTransform->pInheritanceInfo)
   2314     {
   2315         transform_tohost_VkCommandBufferInheritanceInfo(resourceTracker, (VkCommandBufferInheritanceInfo*)(toTransform->pInheritanceInfo));
   2316     }
   2317 }
   2318 
   2319 void transform_fromhost_VkCommandBufferBeginInfo(
   2320     ResourceTracker* resourceTracker,
   2321     VkCommandBufferBeginInfo* toTransform)
   2322 {
   2323     (void)resourceTracker;
   2324     (void)toTransform;
   2325     if (toTransform->pNext)
   2326     {
   2327         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2328     }
   2329     if (toTransform->pInheritanceInfo)
   2330     {
   2331         transform_fromhost_VkCommandBufferInheritanceInfo(resourceTracker, (VkCommandBufferInheritanceInfo*)(toTransform->pInheritanceInfo));
   2332     }
   2333 }
   2334 
   2335 void transform_tohost_VkBufferCopy(
   2336     ResourceTracker* resourceTracker,
   2337     VkBufferCopy* toTransform)
   2338 {
   2339     (void)resourceTracker;
   2340     (void)toTransform;
   2341 }
   2342 
   2343 void transform_fromhost_VkBufferCopy(
   2344     ResourceTracker* resourceTracker,
   2345     VkBufferCopy* toTransform)
   2346 {
   2347     (void)resourceTracker;
   2348     (void)toTransform;
   2349 }
   2350 
   2351 void transform_tohost_VkImageSubresourceLayers(
   2352     ResourceTracker* resourceTracker,
   2353     VkImageSubresourceLayers* toTransform)
   2354 {
   2355     (void)resourceTracker;
   2356     (void)toTransform;
   2357 }
   2358 
   2359 void transform_fromhost_VkImageSubresourceLayers(
   2360     ResourceTracker* resourceTracker,
   2361     VkImageSubresourceLayers* toTransform)
   2362 {
   2363     (void)resourceTracker;
   2364     (void)toTransform;
   2365 }
   2366 
   2367 void transform_tohost_VkImageCopy(
   2368     ResourceTracker* resourceTracker,
   2369     VkImageCopy* toTransform)
   2370 {
   2371     (void)resourceTracker;
   2372     (void)toTransform;
   2373     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->srcSubresource));
   2374     transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->srcOffset));
   2375     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->dstSubresource));
   2376     transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->dstOffset));
   2377     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
   2378 }
   2379 
   2380 void transform_fromhost_VkImageCopy(
   2381     ResourceTracker* resourceTracker,
   2382     VkImageCopy* toTransform)
   2383 {
   2384     (void)resourceTracker;
   2385     (void)toTransform;
   2386     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->srcSubresource));
   2387     transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->srcOffset));
   2388     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->dstSubresource));
   2389     transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->dstOffset));
   2390     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
   2391 }
   2392 
   2393 void transform_tohost_VkImageBlit(
   2394     ResourceTracker* resourceTracker,
   2395     VkImageBlit* toTransform)
   2396 {
   2397     (void)resourceTracker;
   2398     (void)toTransform;
   2399     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->srcSubresource));
   2400     for (uint32_t i = 0; i < (uint32_t)2; ++i)
   2401     {
   2402         transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(toTransform->srcOffsets + i));
   2403     }
   2404     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->dstSubresource));
   2405     for (uint32_t i = 0; i < (uint32_t)2; ++i)
   2406     {
   2407         transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(toTransform->dstOffsets + i));
   2408     }
   2409 }
   2410 
   2411 void transform_fromhost_VkImageBlit(
   2412     ResourceTracker* resourceTracker,
   2413     VkImageBlit* toTransform)
   2414 {
   2415     (void)resourceTracker;
   2416     (void)toTransform;
   2417     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->srcSubresource));
   2418     for (uint32_t i = 0; i < (uint32_t)2; ++i)
   2419     {
   2420         transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(toTransform->srcOffsets + i));
   2421     }
   2422     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->dstSubresource));
   2423     for (uint32_t i = 0; i < (uint32_t)2; ++i)
   2424     {
   2425         transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(toTransform->dstOffsets + i));
   2426     }
   2427 }
   2428 
   2429 void transform_tohost_VkBufferImageCopy(
   2430     ResourceTracker* resourceTracker,
   2431     VkBufferImageCopy* toTransform)
   2432 {
   2433     (void)resourceTracker;
   2434     (void)toTransform;
   2435     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->imageSubresource));
   2436     transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->imageOffset));
   2437     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->imageExtent));
   2438 }
   2439 
   2440 void transform_fromhost_VkBufferImageCopy(
   2441     ResourceTracker* resourceTracker,
   2442     VkBufferImageCopy* toTransform)
   2443 {
   2444     (void)resourceTracker;
   2445     (void)toTransform;
   2446     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->imageSubresource));
   2447     transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->imageOffset));
   2448     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->imageExtent));
   2449 }
   2450 
   2451 void transform_tohost_VkClearColorValue(
   2452     ResourceTracker* resourceTracker,
   2453     VkClearColorValue* toTransform)
   2454 {
   2455     (void)resourceTracker;
   2456     (void)toTransform;
   2457 }
   2458 
   2459 void transform_fromhost_VkClearColorValue(
   2460     ResourceTracker* resourceTracker,
   2461     VkClearColorValue* toTransform)
   2462 {
   2463     (void)resourceTracker;
   2464     (void)toTransform;
   2465 }
   2466 
   2467 void transform_tohost_VkClearDepthStencilValue(
   2468     ResourceTracker* resourceTracker,
   2469     VkClearDepthStencilValue* toTransform)
   2470 {
   2471     (void)resourceTracker;
   2472     (void)toTransform;
   2473 }
   2474 
   2475 void transform_fromhost_VkClearDepthStencilValue(
   2476     ResourceTracker* resourceTracker,
   2477     VkClearDepthStencilValue* toTransform)
   2478 {
   2479     (void)resourceTracker;
   2480     (void)toTransform;
   2481 }
   2482 
   2483 void transform_tohost_VkClearValue(
   2484     ResourceTracker* resourceTracker,
   2485     VkClearValue* toTransform)
   2486 {
   2487     (void)resourceTracker;
   2488     (void)toTransform;
   2489     transform_tohost_VkClearColorValue(resourceTracker, (VkClearColorValue*)(&toTransform->color));
   2490     transform_tohost_VkClearDepthStencilValue(resourceTracker, (VkClearDepthStencilValue*)(&toTransform->depthStencil));
   2491 }
   2492 
   2493 void transform_fromhost_VkClearValue(
   2494     ResourceTracker* resourceTracker,
   2495     VkClearValue* toTransform)
   2496 {
   2497     (void)resourceTracker;
   2498     (void)toTransform;
   2499     transform_fromhost_VkClearColorValue(resourceTracker, (VkClearColorValue*)(&toTransform->color));
   2500     transform_fromhost_VkClearDepthStencilValue(resourceTracker, (VkClearDepthStencilValue*)(&toTransform->depthStencil));
   2501 }
   2502 
   2503 void transform_tohost_VkClearAttachment(
   2504     ResourceTracker* resourceTracker,
   2505     VkClearAttachment* toTransform)
   2506 {
   2507     (void)resourceTracker;
   2508     (void)toTransform;
   2509     transform_tohost_VkClearValue(resourceTracker, (VkClearValue*)(&toTransform->clearValue));
   2510 }
   2511 
   2512 void transform_fromhost_VkClearAttachment(
   2513     ResourceTracker* resourceTracker,
   2514     VkClearAttachment* toTransform)
   2515 {
   2516     (void)resourceTracker;
   2517     (void)toTransform;
   2518     transform_fromhost_VkClearValue(resourceTracker, (VkClearValue*)(&toTransform->clearValue));
   2519 }
   2520 
   2521 void transform_tohost_VkClearRect(
   2522     ResourceTracker* resourceTracker,
   2523     VkClearRect* toTransform)
   2524 {
   2525     (void)resourceTracker;
   2526     (void)toTransform;
   2527     transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->rect));
   2528 }
   2529 
   2530 void transform_fromhost_VkClearRect(
   2531     ResourceTracker* resourceTracker,
   2532     VkClearRect* toTransform)
   2533 {
   2534     (void)resourceTracker;
   2535     (void)toTransform;
   2536     transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->rect));
   2537 }
   2538 
   2539 void transform_tohost_VkImageResolve(
   2540     ResourceTracker* resourceTracker,
   2541     VkImageResolve* toTransform)
   2542 {
   2543     (void)resourceTracker;
   2544     (void)toTransform;
   2545     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->srcSubresource));
   2546     transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->srcOffset));
   2547     transform_tohost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->dstSubresource));
   2548     transform_tohost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->dstOffset));
   2549     transform_tohost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
   2550 }
   2551 
   2552 void transform_fromhost_VkImageResolve(
   2553     ResourceTracker* resourceTracker,
   2554     VkImageResolve* toTransform)
   2555 {
   2556     (void)resourceTracker;
   2557     (void)toTransform;
   2558     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->srcSubresource));
   2559     transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->srcOffset));
   2560     transform_fromhost_VkImageSubresourceLayers(resourceTracker, (VkImageSubresourceLayers*)(&toTransform->dstSubresource));
   2561     transform_fromhost_VkOffset3D(resourceTracker, (VkOffset3D*)(&toTransform->dstOffset));
   2562     transform_fromhost_VkExtent3D(resourceTracker, (VkExtent3D*)(&toTransform->extent));
   2563 }
   2564 
   2565 void transform_tohost_VkMemoryBarrier(
   2566     ResourceTracker* resourceTracker,
   2567     VkMemoryBarrier* toTransform)
   2568 {
   2569     (void)resourceTracker;
   2570     (void)toTransform;
   2571     if (toTransform->pNext)
   2572     {
   2573         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2574     }
   2575 }
   2576 
   2577 void transform_fromhost_VkMemoryBarrier(
   2578     ResourceTracker* resourceTracker,
   2579     VkMemoryBarrier* toTransform)
   2580 {
   2581     (void)resourceTracker;
   2582     (void)toTransform;
   2583     if (toTransform->pNext)
   2584     {
   2585         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2586     }
   2587 }
   2588 
   2589 void transform_tohost_VkBufferMemoryBarrier(
   2590     ResourceTracker* resourceTracker,
   2591     VkBufferMemoryBarrier* toTransform)
   2592 {
   2593     (void)resourceTracker;
   2594     (void)toTransform;
   2595     if (toTransform->pNext)
   2596     {
   2597         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2598     }
   2599 }
   2600 
   2601 void transform_fromhost_VkBufferMemoryBarrier(
   2602     ResourceTracker* resourceTracker,
   2603     VkBufferMemoryBarrier* toTransform)
   2604 {
   2605     (void)resourceTracker;
   2606     (void)toTransform;
   2607     if (toTransform->pNext)
   2608     {
   2609         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2610     }
   2611 }
   2612 
   2613 void transform_tohost_VkImageMemoryBarrier(
   2614     ResourceTracker* resourceTracker,
   2615     VkImageMemoryBarrier* toTransform)
   2616 {
   2617     (void)resourceTracker;
   2618     (void)toTransform;
   2619     if (toTransform->pNext)
   2620     {
   2621         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2622     }
   2623     transform_tohost_VkImageSubresourceRange(resourceTracker, (VkImageSubresourceRange*)(&toTransform->subresourceRange));
   2624 }
   2625 
   2626 void transform_fromhost_VkImageMemoryBarrier(
   2627     ResourceTracker* resourceTracker,
   2628     VkImageMemoryBarrier* toTransform)
   2629 {
   2630     (void)resourceTracker;
   2631     (void)toTransform;
   2632     if (toTransform->pNext)
   2633     {
   2634         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2635     }
   2636     transform_fromhost_VkImageSubresourceRange(resourceTracker, (VkImageSubresourceRange*)(&toTransform->subresourceRange));
   2637 }
   2638 
   2639 void transform_tohost_VkRenderPassBeginInfo(
   2640     ResourceTracker* resourceTracker,
   2641     VkRenderPassBeginInfo* toTransform)
   2642 {
   2643     (void)resourceTracker;
   2644     (void)toTransform;
   2645     if (toTransform->pNext)
   2646     {
   2647         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2648     }
   2649     transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->renderArea));
   2650     if (toTransform->pClearValues)
   2651     {
   2652         for (uint32_t i = 0; i < (uint32_t)toTransform->clearValueCount; ++i)
   2653         {
   2654             transform_tohost_VkClearValue(resourceTracker, (VkClearValue*)(toTransform->pClearValues + i));
   2655         }
   2656     }
   2657 }
   2658 
   2659 void transform_fromhost_VkRenderPassBeginInfo(
   2660     ResourceTracker* resourceTracker,
   2661     VkRenderPassBeginInfo* toTransform)
   2662 {
   2663     (void)resourceTracker;
   2664     (void)toTransform;
   2665     if (toTransform->pNext)
   2666     {
   2667         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2668     }
   2669     transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->renderArea));
   2670     if (toTransform->pClearValues)
   2671     {
   2672         for (uint32_t i = 0; i < (uint32_t)toTransform->clearValueCount; ++i)
   2673         {
   2674             transform_fromhost_VkClearValue(resourceTracker, (VkClearValue*)(toTransform->pClearValues + i));
   2675         }
   2676     }
   2677 }
   2678 
   2679 void transform_tohost_VkDispatchIndirectCommand(
   2680     ResourceTracker* resourceTracker,
   2681     VkDispatchIndirectCommand* toTransform)
   2682 {
   2683     (void)resourceTracker;
   2684     (void)toTransform;
   2685 }
   2686 
   2687 void transform_fromhost_VkDispatchIndirectCommand(
   2688     ResourceTracker* resourceTracker,
   2689     VkDispatchIndirectCommand* toTransform)
   2690 {
   2691     (void)resourceTracker;
   2692     (void)toTransform;
   2693 }
   2694 
   2695 void transform_tohost_VkDrawIndexedIndirectCommand(
   2696     ResourceTracker* resourceTracker,
   2697     VkDrawIndexedIndirectCommand* toTransform)
   2698 {
   2699     (void)resourceTracker;
   2700     (void)toTransform;
   2701 }
   2702 
   2703 void transform_fromhost_VkDrawIndexedIndirectCommand(
   2704     ResourceTracker* resourceTracker,
   2705     VkDrawIndexedIndirectCommand* toTransform)
   2706 {
   2707     (void)resourceTracker;
   2708     (void)toTransform;
   2709 }
   2710 
   2711 void transform_tohost_VkDrawIndirectCommand(
   2712     ResourceTracker* resourceTracker,
   2713     VkDrawIndirectCommand* toTransform)
   2714 {
   2715     (void)resourceTracker;
   2716     (void)toTransform;
   2717 }
   2718 
   2719 void transform_fromhost_VkDrawIndirectCommand(
   2720     ResourceTracker* resourceTracker,
   2721     VkDrawIndirectCommand* toTransform)
   2722 {
   2723     (void)resourceTracker;
   2724     (void)toTransform;
   2725 }
   2726 
   2727 void transform_tohost_VkBaseOutStructure(
   2728     ResourceTracker* resourceTracker,
   2729     VkBaseOutStructure* toTransform)
   2730 {
   2731     (void)resourceTracker;
   2732     (void)toTransform;
   2733     if (toTransform->pNext)
   2734     {
   2735         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2736     }
   2737 }
   2738 
   2739 void transform_fromhost_VkBaseOutStructure(
   2740     ResourceTracker* resourceTracker,
   2741     VkBaseOutStructure* toTransform)
   2742 {
   2743     (void)resourceTracker;
   2744     (void)toTransform;
   2745     if (toTransform->pNext)
   2746     {
   2747         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2748     }
   2749 }
   2750 
   2751 void transform_tohost_VkBaseInStructure(
   2752     ResourceTracker* resourceTracker,
   2753     VkBaseInStructure* toTransform)
   2754 {
   2755     (void)resourceTracker;
   2756     (void)toTransform;
   2757     if (toTransform->pNext)
   2758     {
   2759         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2760     }
   2761 }
   2762 
   2763 void transform_fromhost_VkBaseInStructure(
   2764     ResourceTracker* resourceTracker,
   2765     VkBaseInStructure* toTransform)
   2766 {
   2767     (void)resourceTracker;
   2768     (void)toTransform;
   2769     if (toTransform->pNext)
   2770     {
   2771         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2772     }
   2773 }
   2774 
   2775 #endif
   2776 #ifdef VK_VERSION_1_1
   2777 void transform_tohost_VkPhysicalDeviceSubgroupProperties(
   2778     ResourceTracker* resourceTracker,
   2779     VkPhysicalDeviceSubgroupProperties* toTransform)
   2780 {
   2781     (void)resourceTracker;
   2782     (void)toTransform;
   2783     if (toTransform->pNext)
   2784     {
   2785         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2786     }
   2787 }
   2788 
   2789 void transform_fromhost_VkPhysicalDeviceSubgroupProperties(
   2790     ResourceTracker* resourceTracker,
   2791     VkPhysicalDeviceSubgroupProperties* toTransform)
   2792 {
   2793     (void)resourceTracker;
   2794     (void)toTransform;
   2795     if (toTransform->pNext)
   2796     {
   2797         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2798     }
   2799 }
   2800 
   2801 void transform_tohost_VkBindBufferMemoryInfo(
   2802     ResourceTracker* resourceTracker,
   2803     VkBindBufferMemoryInfo* toTransform)
   2804 {
   2805     (void)resourceTracker;
   2806     (void)toTransform;
   2807     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   2808     if (toTransform->pNext)
   2809     {
   2810         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2811     }
   2812 }
   2813 
   2814 void transform_fromhost_VkBindBufferMemoryInfo(
   2815     ResourceTracker* resourceTracker,
   2816     VkBindBufferMemoryInfo* toTransform)
   2817 {
   2818     (void)resourceTracker;
   2819     (void)toTransform;
   2820     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   2821     if (toTransform->pNext)
   2822     {
   2823         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2824     }
   2825 }
   2826 
   2827 void transform_tohost_VkBindImageMemoryInfo(
   2828     ResourceTracker* resourceTracker,
   2829     VkBindImageMemoryInfo* toTransform)
   2830 {
   2831     (void)resourceTracker;
   2832     (void)toTransform;
   2833     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   2834     if (toTransform->pNext)
   2835     {
   2836         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2837     }
   2838 }
   2839 
   2840 void transform_fromhost_VkBindImageMemoryInfo(
   2841     ResourceTracker* resourceTracker,
   2842     VkBindImageMemoryInfo* toTransform)
   2843 {
   2844     (void)resourceTracker;
   2845     (void)toTransform;
   2846     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)&toTransform->memoryOffset, 1, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   2847     if (toTransform->pNext)
   2848     {
   2849         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2850     }
   2851 }
   2852 
   2853 void transform_tohost_VkPhysicalDevice16BitStorageFeatures(
   2854     ResourceTracker* resourceTracker,
   2855     VkPhysicalDevice16BitStorageFeatures* toTransform)
   2856 {
   2857     (void)resourceTracker;
   2858     (void)toTransform;
   2859     if (toTransform->pNext)
   2860     {
   2861         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2862     }
   2863 }
   2864 
   2865 void transform_fromhost_VkPhysicalDevice16BitStorageFeatures(
   2866     ResourceTracker* resourceTracker,
   2867     VkPhysicalDevice16BitStorageFeatures* toTransform)
   2868 {
   2869     (void)resourceTracker;
   2870     (void)toTransform;
   2871     if (toTransform->pNext)
   2872     {
   2873         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2874     }
   2875 }
   2876 
   2877 void transform_tohost_VkMemoryDedicatedRequirements(
   2878     ResourceTracker* resourceTracker,
   2879     VkMemoryDedicatedRequirements* toTransform)
   2880 {
   2881     (void)resourceTracker;
   2882     (void)toTransform;
   2883     if (toTransform->pNext)
   2884     {
   2885         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2886     }
   2887 }
   2888 
   2889 void transform_fromhost_VkMemoryDedicatedRequirements(
   2890     ResourceTracker* resourceTracker,
   2891     VkMemoryDedicatedRequirements* toTransform)
   2892 {
   2893     (void)resourceTracker;
   2894     (void)toTransform;
   2895     if (toTransform->pNext)
   2896     {
   2897         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2898     }
   2899 }
   2900 
   2901 void transform_tohost_VkMemoryDedicatedAllocateInfo(
   2902     ResourceTracker* resourceTracker,
   2903     VkMemoryDedicatedAllocateInfo* toTransform)
   2904 {
   2905     (void)resourceTracker;
   2906     (void)toTransform;
   2907     if (toTransform->pNext)
   2908     {
   2909         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2910     }
   2911 }
   2912 
   2913 void transform_fromhost_VkMemoryDedicatedAllocateInfo(
   2914     ResourceTracker* resourceTracker,
   2915     VkMemoryDedicatedAllocateInfo* toTransform)
   2916 {
   2917     (void)resourceTracker;
   2918     (void)toTransform;
   2919     if (toTransform->pNext)
   2920     {
   2921         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2922     }
   2923 }
   2924 
   2925 void transform_tohost_VkMemoryAllocateFlagsInfo(
   2926     ResourceTracker* resourceTracker,
   2927     VkMemoryAllocateFlagsInfo* toTransform)
   2928 {
   2929     (void)resourceTracker;
   2930     (void)toTransform;
   2931     if (toTransform->pNext)
   2932     {
   2933         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2934     }
   2935 }
   2936 
   2937 void transform_fromhost_VkMemoryAllocateFlagsInfo(
   2938     ResourceTracker* resourceTracker,
   2939     VkMemoryAllocateFlagsInfo* toTransform)
   2940 {
   2941     (void)resourceTracker;
   2942     (void)toTransform;
   2943     if (toTransform->pNext)
   2944     {
   2945         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2946     }
   2947 }
   2948 
   2949 void transform_tohost_VkDeviceGroupRenderPassBeginInfo(
   2950     ResourceTracker* resourceTracker,
   2951     VkDeviceGroupRenderPassBeginInfo* toTransform)
   2952 {
   2953     (void)resourceTracker;
   2954     (void)toTransform;
   2955     if (toTransform->pNext)
   2956     {
   2957         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2958     }
   2959     if (toTransform->pDeviceRenderAreas)
   2960     {
   2961         for (uint32_t i = 0; i < (uint32_t)toTransform->deviceRenderAreaCount; ++i)
   2962         {
   2963             transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pDeviceRenderAreas + i));
   2964         }
   2965     }
   2966 }
   2967 
   2968 void transform_fromhost_VkDeviceGroupRenderPassBeginInfo(
   2969     ResourceTracker* resourceTracker,
   2970     VkDeviceGroupRenderPassBeginInfo* toTransform)
   2971 {
   2972     (void)resourceTracker;
   2973     (void)toTransform;
   2974     if (toTransform->pNext)
   2975     {
   2976         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2977     }
   2978     if (toTransform->pDeviceRenderAreas)
   2979     {
   2980         for (uint32_t i = 0; i < (uint32_t)toTransform->deviceRenderAreaCount; ++i)
   2981         {
   2982             transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pDeviceRenderAreas + i));
   2983         }
   2984     }
   2985 }
   2986 
   2987 void transform_tohost_VkDeviceGroupCommandBufferBeginInfo(
   2988     ResourceTracker* resourceTracker,
   2989     VkDeviceGroupCommandBufferBeginInfo* toTransform)
   2990 {
   2991     (void)resourceTracker;
   2992     (void)toTransform;
   2993     if (toTransform->pNext)
   2994     {
   2995         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   2996     }
   2997 }
   2998 
   2999 void transform_fromhost_VkDeviceGroupCommandBufferBeginInfo(
   3000     ResourceTracker* resourceTracker,
   3001     VkDeviceGroupCommandBufferBeginInfo* toTransform)
   3002 {
   3003     (void)resourceTracker;
   3004     (void)toTransform;
   3005     if (toTransform->pNext)
   3006     {
   3007         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3008     }
   3009 }
   3010 
   3011 void transform_tohost_VkDeviceGroupSubmitInfo(
   3012     ResourceTracker* resourceTracker,
   3013     VkDeviceGroupSubmitInfo* toTransform)
   3014 {
   3015     (void)resourceTracker;
   3016     (void)toTransform;
   3017     if (toTransform->pNext)
   3018     {
   3019         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3020     }
   3021 }
   3022 
   3023 void transform_fromhost_VkDeviceGroupSubmitInfo(
   3024     ResourceTracker* resourceTracker,
   3025     VkDeviceGroupSubmitInfo* toTransform)
   3026 {
   3027     (void)resourceTracker;
   3028     (void)toTransform;
   3029     if (toTransform->pNext)
   3030     {
   3031         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3032     }
   3033 }
   3034 
   3035 void transform_tohost_VkDeviceGroupBindSparseInfo(
   3036     ResourceTracker* resourceTracker,
   3037     VkDeviceGroupBindSparseInfo* toTransform)
   3038 {
   3039     (void)resourceTracker;
   3040     (void)toTransform;
   3041     if (toTransform->pNext)
   3042     {
   3043         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3044     }
   3045 }
   3046 
   3047 void transform_fromhost_VkDeviceGroupBindSparseInfo(
   3048     ResourceTracker* resourceTracker,
   3049     VkDeviceGroupBindSparseInfo* toTransform)
   3050 {
   3051     (void)resourceTracker;
   3052     (void)toTransform;
   3053     if (toTransform->pNext)
   3054     {
   3055         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3056     }
   3057 }
   3058 
   3059 void transform_tohost_VkBindBufferMemoryDeviceGroupInfo(
   3060     ResourceTracker* resourceTracker,
   3061     VkBindBufferMemoryDeviceGroupInfo* toTransform)
   3062 {
   3063     (void)resourceTracker;
   3064     (void)toTransform;
   3065     if (toTransform->pNext)
   3066     {
   3067         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3068     }
   3069 }
   3070 
   3071 void transform_fromhost_VkBindBufferMemoryDeviceGroupInfo(
   3072     ResourceTracker* resourceTracker,
   3073     VkBindBufferMemoryDeviceGroupInfo* toTransform)
   3074 {
   3075     (void)resourceTracker;
   3076     (void)toTransform;
   3077     if (toTransform->pNext)
   3078     {
   3079         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3080     }
   3081 }
   3082 
   3083 void transform_tohost_VkBindImageMemoryDeviceGroupInfo(
   3084     ResourceTracker* resourceTracker,
   3085     VkBindImageMemoryDeviceGroupInfo* toTransform)
   3086 {
   3087     (void)resourceTracker;
   3088     (void)toTransform;
   3089     if (toTransform->pNext)
   3090     {
   3091         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3092     }
   3093     if (toTransform->pSplitInstanceBindRegions)
   3094     {
   3095         for (uint32_t i = 0; i < (uint32_t)toTransform->splitInstanceBindRegionCount; ++i)
   3096         {
   3097             transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pSplitInstanceBindRegions + i));
   3098         }
   3099     }
   3100 }
   3101 
   3102 void transform_fromhost_VkBindImageMemoryDeviceGroupInfo(
   3103     ResourceTracker* resourceTracker,
   3104     VkBindImageMemoryDeviceGroupInfo* toTransform)
   3105 {
   3106     (void)resourceTracker;
   3107     (void)toTransform;
   3108     if (toTransform->pNext)
   3109     {
   3110         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3111     }
   3112     if (toTransform->pSplitInstanceBindRegions)
   3113     {
   3114         for (uint32_t i = 0; i < (uint32_t)toTransform->splitInstanceBindRegionCount; ++i)
   3115         {
   3116             transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pSplitInstanceBindRegions + i));
   3117         }
   3118     }
   3119 }
   3120 
   3121 void transform_tohost_VkPhysicalDeviceGroupProperties(
   3122     ResourceTracker* resourceTracker,
   3123     VkPhysicalDeviceGroupProperties* toTransform)
   3124 {
   3125     (void)resourceTracker;
   3126     (void)toTransform;
   3127     if (toTransform->pNext)
   3128     {
   3129         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3130     }
   3131 }
   3132 
   3133 void transform_fromhost_VkPhysicalDeviceGroupProperties(
   3134     ResourceTracker* resourceTracker,
   3135     VkPhysicalDeviceGroupProperties* toTransform)
   3136 {
   3137     (void)resourceTracker;
   3138     (void)toTransform;
   3139     if (toTransform->pNext)
   3140     {
   3141         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3142     }
   3143 }
   3144 
   3145 void transform_tohost_VkDeviceGroupDeviceCreateInfo(
   3146     ResourceTracker* resourceTracker,
   3147     VkDeviceGroupDeviceCreateInfo* toTransform)
   3148 {
   3149     (void)resourceTracker;
   3150     (void)toTransform;
   3151     if (toTransform->pNext)
   3152     {
   3153         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3154     }
   3155 }
   3156 
   3157 void transform_fromhost_VkDeviceGroupDeviceCreateInfo(
   3158     ResourceTracker* resourceTracker,
   3159     VkDeviceGroupDeviceCreateInfo* toTransform)
   3160 {
   3161     (void)resourceTracker;
   3162     (void)toTransform;
   3163     if (toTransform->pNext)
   3164     {
   3165         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3166     }
   3167 }
   3168 
   3169 void transform_tohost_VkBufferMemoryRequirementsInfo2(
   3170     ResourceTracker* resourceTracker,
   3171     VkBufferMemoryRequirementsInfo2* toTransform)
   3172 {
   3173     (void)resourceTracker;
   3174     (void)toTransform;
   3175     if (toTransform->pNext)
   3176     {
   3177         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3178     }
   3179 }
   3180 
   3181 void transform_fromhost_VkBufferMemoryRequirementsInfo2(
   3182     ResourceTracker* resourceTracker,
   3183     VkBufferMemoryRequirementsInfo2* toTransform)
   3184 {
   3185     (void)resourceTracker;
   3186     (void)toTransform;
   3187     if (toTransform->pNext)
   3188     {
   3189         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3190     }
   3191 }
   3192 
   3193 void transform_tohost_VkImageMemoryRequirementsInfo2(
   3194     ResourceTracker* resourceTracker,
   3195     VkImageMemoryRequirementsInfo2* toTransform)
   3196 {
   3197     (void)resourceTracker;
   3198     (void)toTransform;
   3199     if (toTransform->pNext)
   3200     {
   3201         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3202     }
   3203 }
   3204 
   3205 void transform_fromhost_VkImageMemoryRequirementsInfo2(
   3206     ResourceTracker* resourceTracker,
   3207     VkImageMemoryRequirementsInfo2* toTransform)
   3208 {
   3209     (void)resourceTracker;
   3210     (void)toTransform;
   3211     if (toTransform->pNext)
   3212     {
   3213         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3214     }
   3215 }
   3216 
   3217 void transform_tohost_VkImageSparseMemoryRequirementsInfo2(
   3218     ResourceTracker* resourceTracker,
   3219     VkImageSparseMemoryRequirementsInfo2* toTransform)
   3220 {
   3221     (void)resourceTracker;
   3222     (void)toTransform;
   3223     if (toTransform->pNext)
   3224     {
   3225         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3226     }
   3227 }
   3228 
   3229 void transform_fromhost_VkImageSparseMemoryRequirementsInfo2(
   3230     ResourceTracker* resourceTracker,
   3231     VkImageSparseMemoryRequirementsInfo2* toTransform)
   3232 {
   3233     (void)resourceTracker;
   3234     (void)toTransform;
   3235     if (toTransform->pNext)
   3236     {
   3237         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3238     }
   3239 }
   3240 
   3241 void transform_tohost_VkMemoryRequirements2(
   3242     ResourceTracker* resourceTracker,
   3243     VkMemoryRequirements2* toTransform)
   3244 {
   3245     (void)resourceTracker;
   3246     (void)toTransform;
   3247     if (toTransform->pNext)
   3248     {
   3249         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3250     }
   3251     transform_tohost_VkMemoryRequirements(resourceTracker, (VkMemoryRequirements*)(&toTransform->memoryRequirements));
   3252 }
   3253 
   3254 void transform_fromhost_VkMemoryRequirements2(
   3255     ResourceTracker* resourceTracker,
   3256     VkMemoryRequirements2* toTransform)
   3257 {
   3258     (void)resourceTracker;
   3259     (void)toTransform;
   3260     if (toTransform->pNext)
   3261     {
   3262         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3263     }
   3264     transform_fromhost_VkMemoryRequirements(resourceTracker, (VkMemoryRequirements*)(&toTransform->memoryRequirements));
   3265 }
   3266 
   3267 void transform_tohost_VkSparseImageMemoryRequirements2(
   3268     ResourceTracker* resourceTracker,
   3269     VkSparseImageMemoryRequirements2* toTransform)
   3270 {
   3271     (void)resourceTracker;
   3272     (void)toTransform;
   3273     if (toTransform->pNext)
   3274     {
   3275         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3276     }
   3277     transform_tohost_VkSparseImageMemoryRequirements(resourceTracker, (VkSparseImageMemoryRequirements*)(&toTransform->memoryRequirements));
   3278 }
   3279 
   3280 void transform_fromhost_VkSparseImageMemoryRequirements2(
   3281     ResourceTracker* resourceTracker,
   3282     VkSparseImageMemoryRequirements2* toTransform)
   3283 {
   3284     (void)resourceTracker;
   3285     (void)toTransform;
   3286     if (toTransform->pNext)
   3287     {
   3288         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3289     }
   3290     transform_fromhost_VkSparseImageMemoryRequirements(resourceTracker, (VkSparseImageMemoryRequirements*)(&toTransform->memoryRequirements));
   3291 }
   3292 
   3293 void transform_tohost_VkPhysicalDeviceFeatures2(
   3294     ResourceTracker* resourceTracker,
   3295     VkPhysicalDeviceFeatures2* toTransform)
   3296 {
   3297     (void)resourceTracker;
   3298     (void)toTransform;
   3299     if (toTransform->pNext)
   3300     {
   3301         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3302     }
   3303     transform_tohost_VkPhysicalDeviceFeatures(resourceTracker, (VkPhysicalDeviceFeatures*)(&toTransform->features));
   3304 }
   3305 
   3306 void transform_fromhost_VkPhysicalDeviceFeatures2(
   3307     ResourceTracker* resourceTracker,
   3308     VkPhysicalDeviceFeatures2* toTransform)
   3309 {
   3310     (void)resourceTracker;
   3311     (void)toTransform;
   3312     if (toTransform->pNext)
   3313     {
   3314         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3315     }
   3316     transform_fromhost_VkPhysicalDeviceFeatures(resourceTracker, (VkPhysicalDeviceFeatures*)(&toTransform->features));
   3317 }
   3318 
   3319 void transform_tohost_VkPhysicalDeviceProperties2(
   3320     ResourceTracker* resourceTracker,
   3321     VkPhysicalDeviceProperties2* toTransform)
   3322 {
   3323     (void)resourceTracker;
   3324     (void)toTransform;
   3325     if (toTransform->pNext)
   3326     {
   3327         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3328     }
   3329     transform_tohost_VkPhysicalDeviceProperties(resourceTracker, (VkPhysicalDeviceProperties*)(&toTransform->properties));
   3330 }
   3331 
   3332 void transform_fromhost_VkPhysicalDeviceProperties2(
   3333     ResourceTracker* resourceTracker,
   3334     VkPhysicalDeviceProperties2* toTransform)
   3335 {
   3336     (void)resourceTracker;
   3337     (void)toTransform;
   3338     if (toTransform->pNext)
   3339     {
   3340         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3341     }
   3342     transform_fromhost_VkPhysicalDeviceProperties(resourceTracker, (VkPhysicalDeviceProperties*)(&toTransform->properties));
   3343 }
   3344 
   3345 void transform_tohost_VkFormatProperties2(
   3346     ResourceTracker* resourceTracker,
   3347     VkFormatProperties2* toTransform)
   3348 {
   3349     (void)resourceTracker;
   3350     (void)toTransform;
   3351     if (toTransform->pNext)
   3352     {
   3353         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3354     }
   3355     transform_tohost_VkFormatProperties(resourceTracker, (VkFormatProperties*)(&toTransform->formatProperties));
   3356 }
   3357 
   3358 void transform_fromhost_VkFormatProperties2(
   3359     ResourceTracker* resourceTracker,
   3360     VkFormatProperties2* toTransform)
   3361 {
   3362     (void)resourceTracker;
   3363     (void)toTransform;
   3364     if (toTransform->pNext)
   3365     {
   3366         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3367     }
   3368     transform_fromhost_VkFormatProperties(resourceTracker, (VkFormatProperties*)(&toTransform->formatProperties));
   3369 }
   3370 
   3371 void transform_tohost_VkImageFormatProperties2(
   3372     ResourceTracker* resourceTracker,
   3373     VkImageFormatProperties2* toTransform)
   3374 {
   3375     (void)resourceTracker;
   3376     (void)toTransform;
   3377     if (toTransform->pNext)
   3378     {
   3379         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3380     }
   3381     transform_tohost_VkImageFormatProperties(resourceTracker, (VkImageFormatProperties*)(&toTransform->imageFormatProperties));
   3382 }
   3383 
   3384 void transform_fromhost_VkImageFormatProperties2(
   3385     ResourceTracker* resourceTracker,
   3386     VkImageFormatProperties2* toTransform)
   3387 {
   3388     (void)resourceTracker;
   3389     (void)toTransform;
   3390     if (toTransform->pNext)
   3391     {
   3392         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3393     }
   3394     transform_fromhost_VkImageFormatProperties(resourceTracker, (VkImageFormatProperties*)(&toTransform->imageFormatProperties));
   3395 }
   3396 
   3397 void transform_tohost_VkPhysicalDeviceImageFormatInfo2(
   3398     ResourceTracker* resourceTracker,
   3399     VkPhysicalDeviceImageFormatInfo2* toTransform)
   3400 {
   3401     (void)resourceTracker;
   3402     (void)toTransform;
   3403     if (toTransform->pNext)
   3404     {
   3405         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3406     }
   3407 }
   3408 
   3409 void transform_fromhost_VkPhysicalDeviceImageFormatInfo2(
   3410     ResourceTracker* resourceTracker,
   3411     VkPhysicalDeviceImageFormatInfo2* toTransform)
   3412 {
   3413     (void)resourceTracker;
   3414     (void)toTransform;
   3415     if (toTransform->pNext)
   3416     {
   3417         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3418     }
   3419 }
   3420 
   3421 void transform_tohost_VkQueueFamilyProperties2(
   3422     ResourceTracker* resourceTracker,
   3423     VkQueueFamilyProperties2* toTransform)
   3424 {
   3425     (void)resourceTracker;
   3426     (void)toTransform;
   3427     if (toTransform->pNext)
   3428     {
   3429         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3430     }
   3431     transform_tohost_VkQueueFamilyProperties(resourceTracker, (VkQueueFamilyProperties*)(&toTransform->queueFamilyProperties));
   3432 }
   3433 
   3434 void transform_fromhost_VkQueueFamilyProperties2(
   3435     ResourceTracker* resourceTracker,
   3436     VkQueueFamilyProperties2* toTransform)
   3437 {
   3438     (void)resourceTracker;
   3439     (void)toTransform;
   3440     if (toTransform->pNext)
   3441     {
   3442         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3443     }
   3444     transform_fromhost_VkQueueFamilyProperties(resourceTracker, (VkQueueFamilyProperties*)(&toTransform->queueFamilyProperties));
   3445 }
   3446 
   3447 void transform_tohost_VkPhysicalDeviceMemoryProperties2(
   3448     ResourceTracker* resourceTracker,
   3449     VkPhysicalDeviceMemoryProperties2* toTransform)
   3450 {
   3451     (void)resourceTracker;
   3452     (void)toTransform;
   3453     if (toTransform->pNext)
   3454     {
   3455         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3456     }
   3457     transform_tohost_VkPhysicalDeviceMemoryProperties(resourceTracker, (VkPhysicalDeviceMemoryProperties*)(&toTransform->memoryProperties));
   3458 }
   3459 
   3460 void transform_fromhost_VkPhysicalDeviceMemoryProperties2(
   3461     ResourceTracker* resourceTracker,
   3462     VkPhysicalDeviceMemoryProperties2* toTransform)
   3463 {
   3464     (void)resourceTracker;
   3465     (void)toTransform;
   3466     if (toTransform->pNext)
   3467     {
   3468         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3469     }
   3470     transform_fromhost_VkPhysicalDeviceMemoryProperties(resourceTracker, (VkPhysicalDeviceMemoryProperties*)(&toTransform->memoryProperties));
   3471 }
   3472 
   3473 void transform_tohost_VkSparseImageFormatProperties2(
   3474     ResourceTracker* resourceTracker,
   3475     VkSparseImageFormatProperties2* toTransform)
   3476 {
   3477     (void)resourceTracker;
   3478     (void)toTransform;
   3479     if (toTransform->pNext)
   3480     {
   3481         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3482     }
   3483     transform_tohost_VkSparseImageFormatProperties(resourceTracker, (VkSparseImageFormatProperties*)(&toTransform->properties));
   3484 }
   3485 
   3486 void transform_fromhost_VkSparseImageFormatProperties2(
   3487     ResourceTracker* resourceTracker,
   3488     VkSparseImageFormatProperties2* toTransform)
   3489 {
   3490     (void)resourceTracker;
   3491     (void)toTransform;
   3492     if (toTransform->pNext)
   3493     {
   3494         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3495     }
   3496     transform_fromhost_VkSparseImageFormatProperties(resourceTracker, (VkSparseImageFormatProperties*)(&toTransform->properties));
   3497 }
   3498 
   3499 void transform_tohost_VkPhysicalDeviceSparseImageFormatInfo2(
   3500     ResourceTracker* resourceTracker,
   3501     VkPhysicalDeviceSparseImageFormatInfo2* toTransform)
   3502 {
   3503     (void)resourceTracker;
   3504     (void)toTransform;
   3505     if (toTransform->pNext)
   3506     {
   3507         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3508     }
   3509 }
   3510 
   3511 void transform_fromhost_VkPhysicalDeviceSparseImageFormatInfo2(
   3512     ResourceTracker* resourceTracker,
   3513     VkPhysicalDeviceSparseImageFormatInfo2* toTransform)
   3514 {
   3515     (void)resourceTracker;
   3516     (void)toTransform;
   3517     if (toTransform->pNext)
   3518     {
   3519         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3520     }
   3521 }
   3522 
   3523 void transform_tohost_VkPhysicalDevicePointClippingProperties(
   3524     ResourceTracker* resourceTracker,
   3525     VkPhysicalDevicePointClippingProperties* toTransform)
   3526 {
   3527     (void)resourceTracker;
   3528     (void)toTransform;
   3529     if (toTransform->pNext)
   3530     {
   3531         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3532     }
   3533 }
   3534 
   3535 void transform_fromhost_VkPhysicalDevicePointClippingProperties(
   3536     ResourceTracker* resourceTracker,
   3537     VkPhysicalDevicePointClippingProperties* toTransform)
   3538 {
   3539     (void)resourceTracker;
   3540     (void)toTransform;
   3541     if (toTransform->pNext)
   3542     {
   3543         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3544     }
   3545 }
   3546 
   3547 void transform_tohost_VkInputAttachmentAspectReference(
   3548     ResourceTracker* resourceTracker,
   3549     VkInputAttachmentAspectReference* toTransform)
   3550 {
   3551     (void)resourceTracker;
   3552     (void)toTransform;
   3553 }
   3554 
   3555 void transform_fromhost_VkInputAttachmentAspectReference(
   3556     ResourceTracker* resourceTracker,
   3557     VkInputAttachmentAspectReference* toTransform)
   3558 {
   3559     (void)resourceTracker;
   3560     (void)toTransform;
   3561 }
   3562 
   3563 void transform_tohost_VkRenderPassInputAttachmentAspectCreateInfo(
   3564     ResourceTracker* resourceTracker,
   3565     VkRenderPassInputAttachmentAspectCreateInfo* toTransform)
   3566 {
   3567     (void)resourceTracker;
   3568     (void)toTransform;
   3569     if (toTransform->pNext)
   3570     {
   3571         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3572     }
   3573     if (toTransform->pAspectReferences)
   3574     {
   3575         for (uint32_t i = 0; i < (uint32_t)toTransform->aspectReferenceCount; ++i)
   3576         {
   3577             transform_tohost_VkInputAttachmentAspectReference(resourceTracker, (VkInputAttachmentAspectReference*)(toTransform->pAspectReferences + i));
   3578         }
   3579     }
   3580 }
   3581 
   3582 void transform_fromhost_VkRenderPassInputAttachmentAspectCreateInfo(
   3583     ResourceTracker* resourceTracker,
   3584     VkRenderPassInputAttachmentAspectCreateInfo* toTransform)
   3585 {
   3586     (void)resourceTracker;
   3587     (void)toTransform;
   3588     if (toTransform->pNext)
   3589     {
   3590         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3591     }
   3592     if (toTransform->pAspectReferences)
   3593     {
   3594         for (uint32_t i = 0; i < (uint32_t)toTransform->aspectReferenceCount; ++i)
   3595         {
   3596             transform_fromhost_VkInputAttachmentAspectReference(resourceTracker, (VkInputAttachmentAspectReference*)(toTransform->pAspectReferences + i));
   3597         }
   3598     }
   3599 }
   3600 
   3601 void transform_tohost_VkImageViewUsageCreateInfo(
   3602     ResourceTracker* resourceTracker,
   3603     VkImageViewUsageCreateInfo* toTransform)
   3604 {
   3605     (void)resourceTracker;
   3606     (void)toTransform;
   3607     if (toTransform->pNext)
   3608     {
   3609         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3610     }
   3611 }
   3612 
   3613 void transform_fromhost_VkImageViewUsageCreateInfo(
   3614     ResourceTracker* resourceTracker,
   3615     VkImageViewUsageCreateInfo* toTransform)
   3616 {
   3617     (void)resourceTracker;
   3618     (void)toTransform;
   3619     if (toTransform->pNext)
   3620     {
   3621         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3622     }
   3623 }
   3624 
   3625 void transform_tohost_VkPipelineTessellationDomainOriginStateCreateInfo(
   3626     ResourceTracker* resourceTracker,
   3627     VkPipelineTessellationDomainOriginStateCreateInfo* toTransform)
   3628 {
   3629     (void)resourceTracker;
   3630     (void)toTransform;
   3631     if (toTransform->pNext)
   3632     {
   3633         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3634     }
   3635 }
   3636 
   3637 void transform_fromhost_VkPipelineTessellationDomainOriginStateCreateInfo(
   3638     ResourceTracker* resourceTracker,
   3639     VkPipelineTessellationDomainOriginStateCreateInfo* toTransform)
   3640 {
   3641     (void)resourceTracker;
   3642     (void)toTransform;
   3643     if (toTransform->pNext)
   3644     {
   3645         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3646     }
   3647 }
   3648 
   3649 void transform_tohost_VkRenderPassMultiviewCreateInfo(
   3650     ResourceTracker* resourceTracker,
   3651     VkRenderPassMultiviewCreateInfo* toTransform)
   3652 {
   3653     (void)resourceTracker;
   3654     (void)toTransform;
   3655     if (toTransform->pNext)
   3656     {
   3657         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3658     }
   3659 }
   3660 
   3661 void transform_fromhost_VkRenderPassMultiviewCreateInfo(
   3662     ResourceTracker* resourceTracker,
   3663     VkRenderPassMultiviewCreateInfo* toTransform)
   3664 {
   3665     (void)resourceTracker;
   3666     (void)toTransform;
   3667     if (toTransform->pNext)
   3668     {
   3669         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3670     }
   3671 }
   3672 
   3673 void transform_tohost_VkPhysicalDeviceMultiviewFeatures(
   3674     ResourceTracker* resourceTracker,
   3675     VkPhysicalDeviceMultiviewFeatures* toTransform)
   3676 {
   3677     (void)resourceTracker;
   3678     (void)toTransform;
   3679     if (toTransform->pNext)
   3680     {
   3681         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3682     }
   3683 }
   3684 
   3685 void transform_fromhost_VkPhysicalDeviceMultiviewFeatures(
   3686     ResourceTracker* resourceTracker,
   3687     VkPhysicalDeviceMultiviewFeatures* toTransform)
   3688 {
   3689     (void)resourceTracker;
   3690     (void)toTransform;
   3691     if (toTransform->pNext)
   3692     {
   3693         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3694     }
   3695 }
   3696 
   3697 void transform_tohost_VkPhysicalDeviceMultiviewProperties(
   3698     ResourceTracker* resourceTracker,
   3699     VkPhysicalDeviceMultiviewProperties* toTransform)
   3700 {
   3701     (void)resourceTracker;
   3702     (void)toTransform;
   3703     if (toTransform->pNext)
   3704     {
   3705         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3706     }
   3707 }
   3708 
   3709 void transform_fromhost_VkPhysicalDeviceMultiviewProperties(
   3710     ResourceTracker* resourceTracker,
   3711     VkPhysicalDeviceMultiviewProperties* toTransform)
   3712 {
   3713     (void)resourceTracker;
   3714     (void)toTransform;
   3715     if (toTransform->pNext)
   3716     {
   3717         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3718     }
   3719 }
   3720 
   3721 void transform_tohost_VkPhysicalDeviceVariablePointerFeatures(
   3722     ResourceTracker* resourceTracker,
   3723     VkPhysicalDeviceVariablePointerFeatures* toTransform)
   3724 {
   3725     (void)resourceTracker;
   3726     (void)toTransform;
   3727     if (toTransform->pNext)
   3728     {
   3729         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3730     }
   3731 }
   3732 
   3733 void transform_fromhost_VkPhysicalDeviceVariablePointerFeatures(
   3734     ResourceTracker* resourceTracker,
   3735     VkPhysicalDeviceVariablePointerFeatures* toTransform)
   3736 {
   3737     (void)resourceTracker;
   3738     (void)toTransform;
   3739     if (toTransform->pNext)
   3740     {
   3741         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3742     }
   3743 }
   3744 
   3745 void transform_tohost_VkPhysicalDeviceProtectedMemoryFeatures(
   3746     ResourceTracker* resourceTracker,
   3747     VkPhysicalDeviceProtectedMemoryFeatures* toTransform)
   3748 {
   3749     (void)resourceTracker;
   3750     (void)toTransform;
   3751     if (toTransform->pNext)
   3752     {
   3753         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3754     }
   3755 }
   3756 
   3757 void transform_fromhost_VkPhysicalDeviceProtectedMemoryFeatures(
   3758     ResourceTracker* resourceTracker,
   3759     VkPhysicalDeviceProtectedMemoryFeatures* toTransform)
   3760 {
   3761     (void)resourceTracker;
   3762     (void)toTransform;
   3763     if (toTransform->pNext)
   3764     {
   3765         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3766     }
   3767 }
   3768 
   3769 void transform_tohost_VkPhysicalDeviceProtectedMemoryProperties(
   3770     ResourceTracker* resourceTracker,
   3771     VkPhysicalDeviceProtectedMemoryProperties* toTransform)
   3772 {
   3773     (void)resourceTracker;
   3774     (void)toTransform;
   3775     if (toTransform->pNext)
   3776     {
   3777         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3778     }
   3779 }
   3780 
   3781 void transform_fromhost_VkPhysicalDeviceProtectedMemoryProperties(
   3782     ResourceTracker* resourceTracker,
   3783     VkPhysicalDeviceProtectedMemoryProperties* toTransform)
   3784 {
   3785     (void)resourceTracker;
   3786     (void)toTransform;
   3787     if (toTransform->pNext)
   3788     {
   3789         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3790     }
   3791 }
   3792 
   3793 void transform_tohost_VkDeviceQueueInfo2(
   3794     ResourceTracker* resourceTracker,
   3795     VkDeviceQueueInfo2* toTransform)
   3796 {
   3797     (void)resourceTracker;
   3798     (void)toTransform;
   3799     if (toTransform->pNext)
   3800     {
   3801         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3802     }
   3803 }
   3804 
   3805 void transform_fromhost_VkDeviceQueueInfo2(
   3806     ResourceTracker* resourceTracker,
   3807     VkDeviceQueueInfo2* toTransform)
   3808 {
   3809     (void)resourceTracker;
   3810     (void)toTransform;
   3811     if (toTransform->pNext)
   3812     {
   3813         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3814     }
   3815 }
   3816 
   3817 void transform_tohost_VkProtectedSubmitInfo(
   3818     ResourceTracker* resourceTracker,
   3819     VkProtectedSubmitInfo* toTransform)
   3820 {
   3821     (void)resourceTracker;
   3822     (void)toTransform;
   3823     if (toTransform->pNext)
   3824     {
   3825         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3826     }
   3827 }
   3828 
   3829 void transform_fromhost_VkProtectedSubmitInfo(
   3830     ResourceTracker* resourceTracker,
   3831     VkProtectedSubmitInfo* toTransform)
   3832 {
   3833     (void)resourceTracker;
   3834     (void)toTransform;
   3835     if (toTransform->pNext)
   3836     {
   3837         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3838     }
   3839 }
   3840 
   3841 void transform_tohost_VkSamplerYcbcrConversionCreateInfo(
   3842     ResourceTracker* resourceTracker,
   3843     VkSamplerYcbcrConversionCreateInfo* toTransform)
   3844 {
   3845     (void)resourceTracker;
   3846     (void)toTransform;
   3847     if (toTransform->pNext)
   3848     {
   3849         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3850     }
   3851     transform_tohost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->components));
   3852 }
   3853 
   3854 void transform_fromhost_VkSamplerYcbcrConversionCreateInfo(
   3855     ResourceTracker* resourceTracker,
   3856     VkSamplerYcbcrConversionCreateInfo* toTransform)
   3857 {
   3858     (void)resourceTracker;
   3859     (void)toTransform;
   3860     if (toTransform->pNext)
   3861     {
   3862         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3863     }
   3864     transform_fromhost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->components));
   3865 }
   3866 
   3867 void transform_tohost_VkSamplerYcbcrConversionInfo(
   3868     ResourceTracker* resourceTracker,
   3869     VkSamplerYcbcrConversionInfo* toTransform)
   3870 {
   3871     (void)resourceTracker;
   3872     (void)toTransform;
   3873     if (toTransform->pNext)
   3874     {
   3875         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3876     }
   3877 }
   3878 
   3879 void transform_fromhost_VkSamplerYcbcrConversionInfo(
   3880     ResourceTracker* resourceTracker,
   3881     VkSamplerYcbcrConversionInfo* toTransform)
   3882 {
   3883     (void)resourceTracker;
   3884     (void)toTransform;
   3885     if (toTransform->pNext)
   3886     {
   3887         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3888     }
   3889 }
   3890 
   3891 void transform_tohost_VkBindImagePlaneMemoryInfo(
   3892     ResourceTracker* resourceTracker,
   3893     VkBindImagePlaneMemoryInfo* toTransform)
   3894 {
   3895     (void)resourceTracker;
   3896     (void)toTransform;
   3897     if (toTransform->pNext)
   3898     {
   3899         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3900     }
   3901 }
   3902 
   3903 void transform_fromhost_VkBindImagePlaneMemoryInfo(
   3904     ResourceTracker* resourceTracker,
   3905     VkBindImagePlaneMemoryInfo* toTransform)
   3906 {
   3907     (void)resourceTracker;
   3908     (void)toTransform;
   3909     if (toTransform->pNext)
   3910     {
   3911         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3912     }
   3913 }
   3914 
   3915 void transform_tohost_VkImagePlaneMemoryRequirementsInfo(
   3916     ResourceTracker* resourceTracker,
   3917     VkImagePlaneMemoryRequirementsInfo* toTransform)
   3918 {
   3919     (void)resourceTracker;
   3920     (void)toTransform;
   3921     if (toTransform->pNext)
   3922     {
   3923         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3924     }
   3925 }
   3926 
   3927 void transform_fromhost_VkImagePlaneMemoryRequirementsInfo(
   3928     ResourceTracker* resourceTracker,
   3929     VkImagePlaneMemoryRequirementsInfo* toTransform)
   3930 {
   3931     (void)resourceTracker;
   3932     (void)toTransform;
   3933     if (toTransform->pNext)
   3934     {
   3935         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3936     }
   3937 }
   3938 
   3939 void transform_tohost_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
   3940     ResourceTracker* resourceTracker,
   3941     VkPhysicalDeviceSamplerYcbcrConversionFeatures* toTransform)
   3942 {
   3943     (void)resourceTracker;
   3944     (void)toTransform;
   3945     if (toTransform->pNext)
   3946     {
   3947         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3948     }
   3949 }
   3950 
   3951 void transform_fromhost_VkPhysicalDeviceSamplerYcbcrConversionFeatures(
   3952     ResourceTracker* resourceTracker,
   3953     VkPhysicalDeviceSamplerYcbcrConversionFeatures* toTransform)
   3954 {
   3955     (void)resourceTracker;
   3956     (void)toTransform;
   3957     if (toTransform->pNext)
   3958     {
   3959         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3960     }
   3961 }
   3962 
   3963 void transform_tohost_VkSamplerYcbcrConversionImageFormatProperties(
   3964     ResourceTracker* resourceTracker,
   3965     VkSamplerYcbcrConversionImageFormatProperties* toTransform)
   3966 {
   3967     (void)resourceTracker;
   3968     (void)toTransform;
   3969     if (toTransform->pNext)
   3970     {
   3971         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3972     }
   3973 }
   3974 
   3975 void transform_fromhost_VkSamplerYcbcrConversionImageFormatProperties(
   3976     ResourceTracker* resourceTracker,
   3977     VkSamplerYcbcrConversionImageFormatProperties* toTransform)
   3978 {
   3979     (void)resourceTracker;
   3980     (void)toTransform;
   3981     if (toTransform->pNext)
   3982     {
   3983         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   3984     }
   3985 }
   3986 
   3987 void transform_tohost_VkDescriptorUpdateTemplateEntry(
   3988     ResourceTracker* resourceTracker,
   3989     VkDescriptorUpdateTemplateEntry* toTransform)
   3990 {
   3991     (void)resourceTracker;
   3992     (void)toTransform;
   3993 }
   3994 
   3995 void transform_fromhost_VkDescriptorUpdateTemplateEntry(
   3996     ResourceTracker* resourceTracker,
   3997     VkDescriptorUpdateTemplateEntry* toTransform)
   3998 {
   3999     (void)resourceTracker;
   4000     (void)toTransform;
   4001 }
   4002 
   4003 void transform_tohost_VkDescriptorUpdateTemplateCreateInfo(
   4004     ResourceTracker* resourceTracker,
   4005     VkDescriptorUpdateTemplateCreateInfo* toTransform)
   4006 {
   4007     (void)resourceTracker;
   4008     (void)toTransform;
   4009     if (toTransform->pNext)
   4010     {
   4011         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4012     }
   4013     if (toTransform->pDescriptorUpdateEntries)
   4014     {
   4015         for (uint32_t i = 0; i < (uint32_t)toTransform->descriptorUpdateEntryCount; ++i)
   4016         {
   4017             transform_tohost_VkDescriptorUpdateTemplateEntry(resourceTracker, (VkDescriptorUpdateTemplateEntry*)(toTransform->pDescriptorUpdateEntries + i));
   4018         }
   4019     }
   4020 }
   4021 
   4022 void transform_fromhost_VkDescriptorUpdateTemplateCreateInfo(
   4023     ResourceTracker* resourceTracker,
   4024     VkDescriptorUpdateTemplateCreateInfo* toTransform)
   4025 {
   4026     (void)resourceTracker;
   4027     (void)toTransform;
   4028     if (toTransform->pNext)
   4029     {
   4030         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4031     }
   4032     if (toTransform->pDescriptorUpdateEntries)
   4033     {
   4034         for (uint32_t i = 0; i < (uint32_t)toTransform->descriptorUpdateEntryCount; ++i)
   4035         {
   4036             transform_fromhost_VkDescriptorUpdateTemplateEntry(resourceTracker, (VkDescriptorUpdateTemplateEntry*)(toTransform->pDescriptorUpdateEntries + i));
   4037         }
   4038     }
   4039 }
   4040 
   4041 void transform_tohost_VkExternalMemoryProperties(
   4042     ResourceTracker* resourceTracker,
   4043     VkExternalMemoryProperties* toTransform)
   4044 {
   4045     (void)resourceTracker;
   4046     (void)toTransform;
   4047 }
   4048 
   4049 void transform_fromhost_VkExternalMemoryProperties(
   4050     ResourceTracker* resourceTracker,
   4051     VkExternalMemoryProperties* toTransform)
   4052 {
   4053     (void)resourceTracker;
   4054     (void)toTransform;
   4055 }
   4056 
   4057 void transform_tohost_VkPhysicalDeviceExternalImageFormatInfo(
   4058     ResourceTracker* resourceTracker,
   4059     VkPhysicalDeviceExternalImageFormatInfo* toTransform)
   4060 {
   4061     (void)resourceTracker;
   4062     (void)toTransform;
   4063     if (toTransform->pNext)
   4064     {
   4065         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4066     }
   4067 }
   4068 
   4069 void transform_fromhost_VkPhysicalDeviceExternalImageFormatInfo(
   4070     ResourceTracker* resourceTracker,
   4071     VkPhysicalDeviceExternalImageFormatInfo* toTransform)
   4072 {
   4073     (void)resourceTracker;
   4074     (void)toTransform;
   4075     if (toTransform->pNext)
   4076     {
   4077         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4078     }
   4079 }
   4080 
   4081 void transform_tohost_VkExternalImageFormatProperties(
   4082     ResourceTracker* resourceTracker,
   4083     VkExternalImageFormatProperties* toTransform)
   4084 {
   4085     (void)resourceTracker;
   4086     (void)toTransform;
   4087     if (toTransform->pNext)
   4088     {
   4089         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4090     }
   4091     resourceTracker->transformImpl_VkExternalMemoryProperties_tohost(&toTransform->externalMemoryProperties, 1);
   4092     transform_tohost_VkExternalMemoryProperties(resourceTracker, (VkExternalMemoryProperties*)(&toTransform->externalMemoryProperties));
   4093 }
   4094 
   4095 void transform_fromhost_VkExternalImageFormatProperties(
   4096     ResourceTracker* resourceTracker,
   4097     VkExternalImageFormatProperties* toTransform)
   4098 {
   4099     (void)resourceTracker;
   4100     (void)toTransform;
   4101     if (toTransform->pNext)
   4102     {
   4103         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4104     }
   4105     resourceTracker->transformImpl_VkExternalMemoryProperties_fromhost(&toTransform->externalMemoryProperties, 1);
   4106     transform_fromhost_VkExternalMemoryProperties(resourceTracker, (VkExternalMemoryProperties*)(&toTransform->externalMemoryProperties));
   4107 }
   4108 
   4109 void transform_tohost_VkPhysicalDeviceExternalBufferInfo(
   4110     ResourceTracker* resourceTracker,
   4111     VkPhysicalDeviceExternalBufferInfo* toTransform)
   4112 {
   4113     (void)resourceTracker;
   4114     (void)toTransform;
   4115     if (toTransform->pNext)
   4116     {
   4117         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4118     }
   4119 }
   4120 
   4121 void transform_fromhost_VkPhysicalDeviceExternalBufferInfo(
   4122     ResourceTracker* resourceTracker,
   4123     VkPhysicalDeviceExternalBufferInfo* toTransform)
   4124 {
   4125     (void)resourceTracker;
   4126     (void)toTransform;
   4127     if (toTransform->pNext)
   4128     {
   4129         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4130     }
   4131 }
   4132 
   4133 void transform_tohost_VkExternalBufferProperties(
   4134     ResourceTracker* resourceTracker,
   4135     VkExternalBufferProperties* toTransform)
   4136 {
   4137     (void)resourceTracker;
   4138     (void)toTransform;
   4139     if (toTransform->pNext)
   4140     {
   4141         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4142     }
   4143     resourceTracker->transformImpl_VkExternalMemoryProperties_tohost(&toTransform->externalMemoryProperties, 1);
   4144     transform_tohost_VkExternalMemoryProperties(resourceTracker, (VkExternalMemoryProperties*)(&toTransform->externalMemoryProperties));
   4145 }
   4146 
   4147 void transform_fromhost_VkExternalBufferProperties(
   4148     ResourceTracker* resourceTracker,
   4149     VkExternalBufferProperties* toTransform)
   4150 {
   4151     (void)resourceTracker;
   4152     (void)toTransform;
   4153     if (toTransform->pNext)
   4154     {
   4155         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4156     }
   4157     resourceTracker->transformImpl_VkExternalMemoryProperties_fromhost(&toTransform->externalMemoryProperties, 1);
   4158     transform_fromhost_VkExternalMemoryProperties(resourceTracker, (VkExternalMemoryProperties*)(&toTransform->externalMemoryProperties));
   4159 }
   4160 
   4161 void transform_tohost_VkPhysicalDeviceIDProperties(
   4162     ResourceTracker* resourceTracker,
   4163     VkPhysicalDeviceIDProperties* toTransform)
   4164 {
   4165     (void)resourceTracker;
   4166     (void)toTransform;
   4167     if (toTransform->pNext)
   4168     {
   4169         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4170     }
   4171 }
   4172 
   4173 void transform_fromhost_VkPhysicalDeviceIDProperties(
   4174     ResourceTracker* resourceTracker,
   4175     VkPhysicalDeviceIDProperties* toTransform)
   4176 {
   4177     (void)resourceTracker;
   4178     (void)toTransform;
   4179     if (toTransform->pNext)
   4180     {
   4181         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4182     }
   4183 }
   4184 
   4185 void transform_tohost_VkExternalMemoryImageCreateInfo(
   4186     ResourceTracker* resourceTracker,
   4187     VkExternalMemoryImageCreateInfo* toTransform)
   4188 {
   4189     (void)resourceTracker;
   4190     (void)toTransform;
   4191     if (toTransform->pNext)
   4192     {
   4193         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4194     }
   4195 }
   4196 
   4197 void transform_fromhost_VkExternalMemoryImageCreateInfo(
   4198     ResourceTracker* resourceTracker,
   4199     VkExternalMemoryImageCreateInfo* toTransform)
   4200 {
   4201     (void)resourceTracker;
   4202     (void)toTransform;
   4203     if (toTransform->pNext)
   4204     {
   4205         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4206     }
   4207 }
   4208 
   4209 void transform_tohost_VkExternalMemoryBufferCreateInfo(
   4210     ResourceTracker* resourceTracker,
   4211     VkExternalMemoryBufferCreateInfo* toTransform)
   4212 {
   4213     (void)resourceTracker;
   4214     (void)toTransform;
   4215     if (toTransform->pNext)
   4216     {
   4217         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4218     }
   4219 }
   4220 
   4221 void transform_fromhost_VkExternalMemoryBufferCreateInfo(
   4222     ResourceTracker* resourceTracker,
   4223     VkExternalMemoryBufferCreateInfo* toTransform)
   4224 {
   4225     (void)resourceTracker;
   4226     (void)toTransform;
   4227     if (toTransform->pNext)
   4228     {
   4229         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4230     }
   4231 }
   4232 
   4233 void transform_tohost_VkExportMemoryAllocateInfo(
   4234     ResourceTracker* resourceTracker,
   4235     VkExportMemoryAllocateInfo* toTransform)
   4236 {
   4237     (void)resourceTracker;
   4238     (void)toTransform;
   4239     if (toTransform->pNext)
   4240     {
   4241         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4242     }
   4243 }
   4244 
   4245 void transform_fromhost_VkExportMemoryAllocateInfo(
   4246     ResourceTracker* resourceTracker,
   4247     VkExportMemoryAllocateInfo* toTransform)
   4248 {
   4249     (void)resourceTracker;
   4250     (void)toTransform;
   4251     if (toTransform->pNext)
   4252     {
   4253         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4254     }
   4255 }
   4256 
   4257 void transform_tohost_VkPhysicalDeviceExternalFenceInfo(
   4258     ResourceTracker* resourceTracker,
   4259     VkPhysicalDeviceExternalFenceInfo* toTransform)
   4260 {
   4261     (void)resourceTracker;
   4262     (void)toTransform;
   4263     if (toTransform->pNext)
   4264     {
   4265         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4266     }
   4267 }
   4268 
   4269 void transform_fromhost_VkPhysicalDeviceExternalFenceInfo(
   4270     ResourceTracker* resourceTracker,
   4271     VkPhysicalDeviceExternalFenceInfo* toTransform)
   4272 {
   4273     (void)resourceTracker;
   4274     (void)toTransform;
   4275     if (toTransform->pNext)
   4276     {
   4277         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4278     }
   4279 }
   4280 
   4281 void transform_tohost_VkExternalFenceProperties(
   4282     ResourceTracker* resourceTracker,
   4283     VkExternalFenceProperties* toTransform)
   4284 {
   4285     (void)resourceTracker;
   4286     (void)toTransform;
   4287     if (toTransform->pNext)
   4288     {
   4289         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4290     }
   4291 }
   4292 
   4293 void transform_fromhost_VkExternalFenceProperties(
   4294     ResourceTracker* resourceTracker,
   4295     VkExternalFenceProperties* toTransform)
   4296 {
   4297     (void)resourceTracker;
   4298     (void)toTransform;
   4299     if (toTransform->pNext)
   4300     {
   4301         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4302     }
   4303 }
   4304 
   4305 void transform_tohost_VkExportFenceCreateInfo(
   4306     ResourceTracker* resourceTracker,
   4307     VkExportFenceCreateInfo* toTransform)
   4308 {
   4309     (void)resourceTracker;
   4310     (void)toTransform;
   4311     if (toTransform->pNext)
   4312     {
   4313         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4314     }
   4315 }
   4316 
   4317 void transform_fromhost_VkExportFenceCreateInfo(
   4318     ResourceTracker* resourceTracker,
   4319     VkExportFenceCreateInfo* toTransform)
   4320 {
   4321     (void)resourceTracker;
   4322     (void)toTransform;
   4323     if (toTransform->pNext)
   4324     {
   4325         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4326     }
   4327 }
   4328 
   4329 void transform_tohost_VkExportSemaphoreCreateInfo(
   4330     ResourceTracker* resourceTracker,
   4331     VkExportSemaphoreCreateInfo* toTransform)
   4332 {
   4333     (void)resourceTracker;
   4334     (void)toTransform;
   4335     if (toTransform->pNext)
   4336     {
   4337         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4338     }
   4339 }
   4340 
   4341 void transform_fromhost_VkExportSemaphoreCreateInfo(
   4342     ResourceTracker* resourceTracker,
   4343     VkExportSemaphoreCreateInfo* toTransform)
   4344 {
   4345     (void)resourceTracker;
   4346     (void)toTransform;
   4347     if (toTransform->pNext)
   4348     {
   4349         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4350     }
   4351 }
   4352 
   4353 void transform_tohost_VkPhysicalDeviceExternalSemaphoreInfo(
   4354     ResourceTracker* resourceTracker,
   4355     VkPhysicalDeviceExternalSemaphoreInfo* toTransform)
   4356 {
   4357     (void)resourceTracker;
   4358     (void)toTransform;
   4359     if (toTransform->pNext)
   4360     {
   4361         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4362     }
   4363 }
   4364 
   4365 void transform_fromhost_VkPhysicalDeviceExternalSemaphoreInfo(
   4366     ResourceTracker* resourceTracker,
   4367     VkPhysicalDeviceExternalSemaphoreInfo* toTransform)
   4368 {
   4369     (void)resourceTracker;
   4370     (void)toTransform;
   4371     if (toTransform->pNext)
   4372     {
   4373         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4374     }
   4375 }
   4376 
   4377 void transform_tohost_VkExternalSemaphoreProperties(
   4378     ResourceTracker* resourceTracker,
   4379     VkExternalSemaphoreProperties* toTransform)
   4380 {
   4381     (void)resourceTracker;
   4382     (void)toTransform;
   4383     if (toTransform->pNext)
   4384     {
   4385         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4386     }
   4387 }
   4388 
   4389 void transform_fromhost_VkExternalSemaphoreProperties(
   4390     ResourceTracker* resourceTracker,
   4391     VkExternalSemaphoreProperties* toTransform)
   4392 {
   4393     (void)resourceTracker;
   4394     (void)toTransform;
   4395     if (toTransform->pNext)
   4396     {
   4397         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4398     }
   4399 }
   4400 
   4401 void transform_tohost_VkPhysicalDeviceMaintenance3Properties(
   4402     ResourceTracker* resourceTracker,
   4403     VkPhysicalDeviceMaintenance3Properties* toTransform)
   4404 {
   4405     (void)resourceTracker;
   4406     (void)toTransform;
   4407     if (toTransform->pNext)
   4408     {
   4409         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4410     }
   4411 }
   4412 
   4413 void transform_fromhost_VkPhysicalDeviceMaintenance3Properties(
   4414     ResourceTracker* resourceTracker,
   4415     VkPhysicalDeviceMaintenance3Properties* toTransform)
   4416 {
   4417     (void)resourceTracker;
   4418     (void)toTransform;
   4419     if (toTransform->pNext)
   4420     {
   4421         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4422     }
   4423 }
   4424 
   4425 void transform_tohost_VkDescriptorSetLayoutSupport(
   4426     ResourceTracker* resourceTracker,
   4427     VkDescriptorSetLayoutSupport* toTransform)
   4428 {
   4429     (void)resourceTracker;
   4430     (void)toTransform;
   4431     if (toTransform->pNext)
   4432     {
   4433         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4434     }
   4435 }
   4436 
   4437 void transform_fromhost_VkDescriptorSetLayoutSupport(
   4438     ResourceTracker* resourceTracker,
   4439     VkDescriptorSetLayoutSupport* toTransform)
   4440 {
   4441     (void)resourceTracker;
   4442     (void)toTransform;
   4443     if (toTransform->pNext)
   4444     {
   4445         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4446     }
   4447 }
   4448 
   4449 void transform_tohost_VkPhysicalDeviceShaderDrawParameterFeatures(
   4450     ResourceTracker* resourceTracker,
   4451     VkPhysicalDeviceShaderDrawParameterFeatures* toTransform)
   4452 {
   4453     (void)resourceTracker;
   4454     (void)toTransform;
   4455     if (toTransform->pNext)
   4456     {
   4457         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4458     }
   4459 }
   4460 
   4461 void transform_fromhost_VkPhysicalDeviceShaderDrawParameterFeatures(
   4462     ResourceTracker* resourceTracker,
   4463     VkPhysicalDeviceShaderDrawParameterFeatures* toTransform)
   4464 {
   4465     (void)resourceTracker;
   4466     (void)toTransform;
   4467     if (toTransform->pNext)
   4468     {
   4469         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4470     }
   4471 }
   4472 
   4473 #endif
   4474 #ifdef VK_KHR_surface
   4475 void transform_tohost_VkSurfaceCapabilitiesKHR(
   4476     ResourceTracker* resourceTracker,
   4477     VkSurfaceCapabilitiesKHR* toTransform)
   4478 {
   4479     (void)resourceTracker;
   4480     (void)toTransform;
   4481     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->currentExtent));
   4482     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minImageExtent));
   4483     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxImageExtent));
   4484 }
   4485 
   4486 void transform_fromhost_VkSurfaceCapabilitiesKHR(
   4487     ResourceTracker* resourceTracker,
   4488     VkSurfaceCapabilitiesKHR* toTransform)
   4489 {
   4490     (void)resourceTracker;
   4491     (void)toTransform;
   4492     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->currentExtent));
   4493     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minImageExtent));
   4494     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxImageExtent));
   4495 }
   4496 
   4497 void transform_tohost_VkSurfaceFormatKHR(
   4498     ResourceTracker* resourceTracker,
   4499     VkSurfaceFormatKHR* toTransform)
   4500 {
   4501     (void)resourceTracker;
   4502     (void)toTransform;
   4503 }
   4504 
   4505 void transform_fromhost_VkSurfaceFormatKHR(
   4506     ResourceTracker* resourceTracker,
   4507     VkSurfaceFormatKHR* toTransform)
   4508 {
   4509     (void)resourceTracker;
   4510     (void)toTransform;
   4511 }
   4512 
   4513 #endif
   4514 #ifdef VK_KHR_swapchain
   4515 void transform_tohost_VkSwapchainCreateInfoKHR(
   4516     ResourceTracker* resourceTracker,
   4517     VkSwapchainCreateInfoKHR* toTransform)
   4518 {
   4519     (void)resourceTracker;
   4520     (void)toTransform;
   4521     if (toTransform->pNext)
   4522     {
   4523         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4524     }
   4525     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->imageExtent));
   4526 }
   4527 
   4528 void transform_fromhost_VkSwapchainCreateInfoKHR(
   4529     ResourceTracker* resourceTracker,
   4530     VkSwapchainCreateInfoKHR* toTransform)
   4531 {
   4532     (void)resourceTracker;
   4533     (void)toTransform;
   4534     if (toTransform->pNext)
   4535     {
   4536         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4537     }
   4538     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->imageExtent));
   4539 }
   4540 
   4541 void transform_tohost_VkPresentInfoKHR(
   4542     ResourceTracker* resourceTracker,
   4543     VkPresentInfoKHR* toTransform)
   4544 {
   4545     (void)resourceTracker;
   4546     (void)toTransform;
   4547     if (toTransform->pNext)
   4548     {
   4549         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4550     }
   4551 }
   4552 
   4553 void transform_fromhost_VkPresentInfoKHR(
   4554     ResourceTracker* resourceTracker,
   4555     VkPresentInfoKHR* toTransform)
   4556 {
   4557     (void)resourceTracker;
   4558     (void)toTransform;
   4559     if (toTransform->pNext)
   4560     {
   4561         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4562     }
   4563 }
   4564 
   4565 void transform_tohost_VkImageSwapchainCreateInfoKHR(
   4566     ResourceTracker* resourceTracker,
   4567     VkImageSwapchainCreateInfoKHR* toTransform)
   4568 {
   4569     (void)resourceTracker;
   4570     (void)toTransform;
   4571     if (toTransform->pNext)
   4572     {
   4573         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4574     }
   4575 }
   4576 
   4577 void transform_fromhost_VkImageSwapchainCreateInfoKHR(
   4578     ResourceTracker* resourceTracker,
   4579     VkImageSwapchainCreateInfoKHR* toTransform)
   4580 {
   4581     (void)resourceTracker;
   4582     (void)toTransform;
   4583     if (toTransform->pNext)
   4584     {
   4585         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4586     }
   4587 }
   4588 
   4589 void transform_tohost_VkBindImageMemorySwapchainInfoKHR(
   4590     ResourceTracker* resourceTracker,
   4591     VkBindImageMemorySwapchainInfoKHR* toTransform)
   4592 {
   4593     (void)resourceTracker;
   4594     (void)toTransform;
   4595     if (toTransform->pNext)
   4596     {
   4597         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4598     }
   4599 }
   4600 
   4601 void transform_fromhost_VkBindImageMemorySwapchainInfoKHR(
   4602     ResourceTracker* resourceTracker,
   4603     VkBindImageMemorySwapchainInfoKHR* toTransform)
   4604 {
   4605     (void)resourceTracker;
   4606     (void)toTransform;
   4607     if (toTransform->pNext)
   4608     {
   4609         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4610     }
   4611 }
   4612 
   4613 void transform_tohost_VkAcquireNextImageInfoKHR(
   4614     ResourceTracker* resourceTracker,
   4615     VkAcquireNextImageInfoKHR* toTransform)
   4616 {
   4617     (void)resourceTracker;
   4618     (void)toTransform;
   4619     if (toTransform->pNext)
   4620     {
   4621         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4622     }
   4623 }
   4624 
   4625 void transform_fromhost_VkAcquireNextImageInfoKHR(
   4626     ResourceTracker* resourceTracker,
   4627     VkAcquireNextImageInfoKHR* toTransform)
   4628 {
   4629     (void)resourceTracker;
   4630     (void)toTransform;
   4631     if (toTransform->pNext)
   4632     {
   4633         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4634     }
   4635 }
   4636 
   4637 void transform_tohost_VkDeviceGroupPresentCapabilitiesKHR(
   4638     ResourceTracker* resourceTracker,
   4639     VkDeviceGroupPresentCapabilitiesKHR* toTransform)
   4640 {
   4641     (void)resourceTracker;
   4642     (void)toTransform;
   4643     if (toTransform->pNext)
   4644     {
   4645         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4646     }
   4647 }
   4648 
   4649 void transform_fromhost_VkDeviceGroupPresentCapabilitiesKHR(
   4650     ResourceTracker* resourceTracker,
   4651     VkDeviceGroupPresentCapabilitiesKHR* toTransform)
   4652 {
   4653     (void)resourceTracker;
   4654     (void)toTransform;
   4655     if (toTransform->pNext)
   4656     {
   4657         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4658     }
   4659 }
   4660 
   4661 void transform_tohost_VkDeviceGroupPresentInfoKHR(
   4662     ResourceTracker* resourceTracker,
   4663     VkDeviceGroupPresentInfoKHR* toTransform)
   4664 {
   4665     (void)resourceTracker;
   4666     (void)toTransform;
   4667     if (toTransform->pNext)
   4668     {
   4669         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4670     }
   4671 }
   4672 
   4673 void transform_fromhost_VkDeviceGroupPresentInfoKHR(
   4674     ResourceTracker* resourceTracker,
   4675     VkDeviceGroupPresentInfoKHR* toTransform)
   4676 {
   4677     (void)resourceTracker;
   4678     (void)toTransform;
   4679     if (toTransform->pNext)
   4680     {
   4681         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4682     }
   4683 }
   4684 
   4685 void transform_tohost_VkDeviceGroupSwapchainCreateInfoKHR(
   4686     ResourceTracker* resourceTracker,
   4687     VkDeviceGroupSwapchainCreateInfoKHR* toTransform)
   4688 {
   4689     (void)resourceTracker;
   4690     (void)toTransform;
   4691     if (toTransform->pNext)
   4692     {
   4693         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4694     }
   4695 }
   4696 
   4697 void transform_fromhost_VkDeviceGroupSwapchainCreateInfoKHR(
   4698     ResourceTracker* resourceTracker,
   4699     VkDeviceGroupSwapchainCreateInfoKHR* toTransform)
   4700 {
   4701     (void)resourceTracker;
   4702     (void)toTransform;
   4703     if (toTransform->pNext)
   4704     {
   4705         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4706     }
   4707 }
   4708 
   4709 #endif
   4710 #ifdef VK_KHR_display
   4711 void transform_tohost_VkDisplayPropertiesKHR(
   4712     ResourceTracker* resourceTracker,
   4713     VkDisplayPropertiesKHR* toTransform)
   4714 {
   4715     (void)resourceTracker;
   4716     (void)toTransform;
   4717     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->physicalDimensions));
   4718     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->physicalResolution));
   4719 }
   4720 
   4721 void transform_fromhost_VkDisplayPropertiesKHR(
   4722     ResourceTracker* resourceTracker,
   4723     VkDisplayPropertiesKHR* toTransform)
   4724 {
   4725     (void)resourceTracker;
   4726     (void)toTransform;
   4727     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->physicalDimensions));
   4728     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->physicalResolution));
   4729 }
   4730 
   4731 void transform_tohost_VkDisplayModeParametersKHR(
   4732     ResourceTracker* resourceTracker,
   4733     VkDisplayModeParametersKHR* toTransform)
   4734 {
   4735     (void)resourceTracker;
   4736     (void)toTransform;
   4737     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->visibleRegion));
   4738 }
   4739 
   4740 void transform_fromhost_VkDisplayModeParametersKHR(
   4741     ResourceTracker* resourceTracker,
   4742     VkDisplayModeParametersKHR* toTransform)
   4743 {
   4744     (void)resourceTracker;
   4745     (void)toTransform;
   4746     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->visibleRegion));
   4747 }
   4748 
   4749 void transform_tohost_VkDisplayModePropertiesKHR(
   4750     ResourceTracker* resourceTracker,
   4751     VkDisplayModePropertiesKHR* toTransform)
   4752 {
   4753     (void)resourceTracker;
   4754     (void)toTransform;
   4755     transform_tohost_VkDisplayModeParametersKHR(resourceTracker, (VkDisplayModeParametersKHR*)(&toTransform->parameters));
   4756 }
   4757 
   4758 void transform_fromhost_VkDisplayModePropertiesKHR(
   4759     ResourceTracker* resourceTracker,
   4760     VkDisplayModePropertiesKHR* toTransform)
   4761 {
   4762     (void)resourceTracker;
   4763     (void)toTransform;
   4764     transform_fromhost_VkDisplayModeParametersKHR(resourceTracker, (VkDisplayModeParametersKHR*)(&toTransform->parameters));
   4765 }
   4766 
   4767 void transform_tohost_VkDisplayModeCreateInfoKHR(
   4768     ResourceTracker* resourceTracker,
   4769     VkDisplayModeCreateInfoKHR* toTransform)
   4770 {
   4771     (void)resourceTracker;
   4772     (void)toTransform;
   4773     if (toTransform->pNext)
   4774     {
   4775         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4776     }
   4777     transform_tohost_VkDisplayModeParametersKHR(resourceTracker, (VkDisplayModeParametersKHR*)(&toTransform->parameters));
   4778 }
   4779 
   4780 void transform_fromhost_VkDisplayModeCreateInfoKHR(
   4781     ResourceTracker* resourceTracker,
   4782     VkDisplayModeCreateInfoKHR* toTransform)
   4783 {
   4784     (void)resourceTracker;
   4785     (void)toTransform;
   4786     if (toTransform->pNext)
   4787     {
   4788         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4789     }
   4790     transform_fromhost_VkDisplayModeParametersKHR(resourceTracker, (VkDisplayModeParametersKHR*)(&toTransform->parameters));
   4791 }
   4792 
   4793 void transform_tohost_VkDisplayPlaneCapabilitiesKHR(
   4794     ResourceTracker* resourceTracker,
   4795     VkDisplayPlaneCapabilitiesKHR* toTransform)
   4796 {
   4797     (void)resourceTracker;
   4798     (void)toTransform;
   4799     transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->minSrcPosition));
   4800     transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->maxSrcPosition));
   4801     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minSrcExtent));
   4802     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxSrcExtent));
   4803     transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->minDstPosition));
   4804     transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->maxDstPosition));
   4805     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minDstExtent));
   4806     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxDstExtent));
   4807 }
   4808 
   4809 void transform_fromhost_VkDisplayPlaneCapabilitiesKHR(
   4810     ResourceTracker* resourceTracker,
   4811     VkDisplayPlaneCapabilitiesKHR* toTransform)
   4812 {
   4813     (void)resourceTracker;
   4814     (void)toTransform;
   4815     transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->minSrcPosition));
   4816     transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->maxSrcPosition));
   4817     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minSrcExtent));
   4818     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxSrcExtent));
   4819     transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->minDstPosition));
   4820     transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->maxDstPosition));
   4821     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minDstExtent));
   4822     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxDstExtent));
   4823 }
   4824 
   4825 void transform_tohost_VkDisplayPlanePropertiesKHR(
   4826     ResourceTracker* resourceTracker,
   4827     VkDisplayPlanePropertiesKHR* toTransform)
   4828 {
   4829     (void)resourceTracker;
   4830     (void)toTransform;
   4831 }
   4832 
   4833 void transform_fromhost_VkDisplayPlanePropertiesKHR(
   4834     ResourceTracker* resourceTracker,
   4835     VkDisplayPlanePropertiesKHR* toTransform)
   4836 {
   4837     (void)resourceTracker;
   4838     (void)toTransform;
   4839 }
   4840 
   4841 void transform_tohost_VkDisplaySurfaceCreateInfoKHR(
   4842     ResourceTracker* resourceTracker,
   4843     VkDisplaySurfaceCreateInfoKHR* toTransform)
   4844 {
   4845     (void)resourceTracker;
   4846     (void)toTransform;
   4847     if (toTransform->pNext)
   4848     {
   4849         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4850     }
   4851     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->imageExtent));
   4852 }
   4853 
   4854 void transform_fromhost_VkDisplaySurfaceCreateInfoKHR(
   4855     ResourceTracker* resourceTracker,
   4856     VkDisplaySurfaceCreateInfoKHR* toTransform)
   4857 {
   4858     (void)resourceTracker;
   4859     (void)toTransform;
   4860     if (toTransform->pNext)
   4861     {
   4862         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4863     }
   4864     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->imageExtent));
   4865 }
   4866 
   4867 #endif
   4868 #ifdef VK_KHR_display_swapchain
   4869 void transform_tohost_VkDisplayPresentInfoKHR(
   4870     ResourceTracker* resourceTracker,
   4871     VkDisplayPresentInfoKHR* toTransform)
   4872 {
   4873     (void)resourceTracker;
   4874     (void)toTransform;
   4875     if (toTransform->pNext)
   4876     {
   4877         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4878     }
   4879     transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->srcRect));
   4880     transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->dstRect));
   4881 }
   4882 
   4883 void transform_fromhost_VkDisplayPresentInfoKHR(
   4884     ResourceTracker* resourceTracker,
   4885     VkDisplayPresentInfoKHR* toTransform)
   4886 {
   4887     (void)resourceTracker;
   4888     (void)toTransform;
   4889     if (toTransform->pNext)
   4890     {
   4891         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4892     }
   4893     transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->srcRect));
   4894     transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->dstRect));
   4895 }
   4896 
   4897 #endif
   4898 #ifdef VK_KHR_xlib_surface
   4899 void transform_tohost_VkXlibSurfaceCreateInfoKHR(
   4900     ResourceTracker* resourceTracker,
   4901     VkXlibSurfaceCreateInfoKHR* toTransform)
   4902 {
   4903     (void)resourceTracker;
   4904     (void)toTransform;
   4905     if (toTransform->pNext)
   4906     {
   4907         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4908     }
   4909 }
   4910 
   4911 void transform_fromhost_VkXlibSurfaceCreateInfoKHR(
   4912     ResourceTracker* resourceTracker,
   4913     VkXlibSurfaceCreateInfoKHR* toTransform)
   4914 {
   4915     (void)resourceTracker;
   4916     (void)toTransform;
   4917     if (toTransform->pNext)
   4918     {
   4919         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4920     }
   4921 }
   4922 
   4923 #endif
   4924 #ifdef VK_KHR_xcb_surface
   4925 void transform_tohost_VkXcbSurfaceCreateInfoKHR(
   4926     ResourceTracker* resourceTracker,
   4927     VkXcbSurfaceCreateInfoKHR* toTransform)
   4928 {
   4929     (void)resourceTracker;
   4930     (void)toTransform;
   4931     if (toTransform->pNext)
   4932     {
   4933         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4934     }
   4935 }
   4936 
   4937 void transform_fromhost_VkXcbSurfaceCreateInfoKHR(
   4938     ResourceTracker* resourceTracker,
   4939     VkXcbSurfaceCreateInfoKHR* toTransform)
   4940 {
   4941     (void)resourceTracker;
   4942     (void)toTransform;
   4943     if (toTransform->pNext)
   4944     {
   4945         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4946     }
   4947 }
   4948 
   4949 #endif
   4950 #ifdef VK_KHR_wayland_surface
   4951 void transform_tohost_VkWaylandSurfaceCreateInfoKHR(
   4952     ResourceTracker* resourceTracker,
   4953     VkWaylandSurfaceCreateInfoKHR* toTransform)
   4954 {
   4955     (void)resourceTracker;
   4956     (void)toTransform;
   4957     if (toTransform->pNext)
   4958     {
   4959         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4960     }
   4961 }
   4962 
   4963 void transform_fromhost_VkWaylandSurfaceCreateInfoKHR(
   4964     ResourceTracker* resourceTracker,
   4965     VkWaylandSurfaceCreateInfoKHR* toTransform)
   4966 {
   4967     (void)resourceTracker;
   4968     (void)toTransform;
   4969     if (toTransform->pNext)
   4970     {
   4971         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4972     }
   4973 }
   4974 
   4975 #endif
   4976 #ifdef VK_KHR_mir_surface
   4977 void transform_tohost_VkMirSurfaceCreateInfoKHR(
   4978     ResourceTracker* resourceTracker,
   4979     VkMirSurfaceCreateInfoKHR* toTransform)
   4980 {
   4981     (void)resourceTracker;
   4982     (void)toTransform;
   4983     if (toTransform->pNext)
   4984     {
   4985         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4986     }
   4987 }
   4988 
   4989 void transform_fromhost_VkMirSurfaceCreateInfoKHR(
   4990     ResourceTracker* resourceTracker,
   4991     VkMirSurfaceCreateInfoKHR* toTransform)
   4992 {
   4993     (void)resourceTracker;
   4994     (void)toTransform;
   4995     if (toTransform->pNext)
   4996     {
   4997         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   4998     }
   4999 }
   5000 
   5001 #endif
   5002 #ifdef VK_KHR_android_surface
   5003 void transform_tohost_VkAndroidSurfaceCreateInfoKHR(
   5004     ResourceTracker* resourceTracker,
   5005     VkAndroidSurfaceCreateInfoKHR* toTransform)
   5006 {
   5007     (void)resourceTracker;
   5008     (void)toTransform;
   5009     if (toTransform->pNext)
   5010     {
   5011         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5012     }
   5013 }
   5014 
   5015 void transform_fromhost_VkAndroidSurfaceCreateInfoKHR(
   5016     ResourceTracker* resourceTracker,
   5017     VkAndroidSurfaceCreateInfoKHR* toTransform)
   5018 {
   5019     (void)resourceTracker;
   5020     (void)toTransform;
   5021     if (toTransform->pNext)
   5022     {
   5023         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5024     }
   5025 }
   5026 
   5027 #endif
   5028 #ifdef VK_KHR_win32_surface
   5029 void transform_tohost_VkWin32SurfaceCreateInfoKHR(
   5030     ResourceTracker* resourceTracker,
   5031     VkWin32SurfaceCreateInfoKHR* toTransform)
   5032 {
   5033     (void)resourceTracker;
   5034     (void)toTransform;
   5035     if (toTransform->pNext)
   5036     {
   5037         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5038     }
   5039 }
   5040 
   5041 void transform_fromhost_VkWin32SurfaceCreateInfoKHR(
   5042     ResourceTracker* resourceTracker,
   5043     VkWin32SurfaceCreateInfoKHR* toTransform)
   5044 {
   5045     (void)resourceTracker;
   5046     (void)toTransform;
   5047     if (toTransform->pNext)
   5048     {
   5049         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5050     }
   5051 }
   5052 
   5053 #endif
   5054 #ifdef VK_KHR_sampler_mirror_clamp_to_edge
   5055 #endif
   5056 #ifdef VK_KHR_multiview
   5057 #endif
   5058 #ifdef VK_KHR_get_physical_device_properties2
   5059 #endif
   5060 #ifdef VK_KHR_device_group
   5061 #endif
   5062 #ifdef VK_KHR_shader_draw_parameters
   5063 #endif
   5064 #ifdef VK_KHR_maintenance1
   5065 #endif
   5066 #ifdef VK_KHR_device_group_creation
   5067 #endif
   5068 #ifdef VK_KHR_external_memory_capabilities
   5069 #endif
   5070 #ifdef VK_KHR_external_memory
   5071 #endif
   5072 #ifdef VK_KHR_external_memory_win32
   5073 void transform_tohost_VkImportMemoryWin32HandleInfoKHR(
   5074     ResourceTracker* resourceTracker,
   5075     VkImportMemoryWin32HandleInfoKHR* toTransform)
   5076 {
   5077     (void)resourceTracker;
   5078     (void)toTransform;
   5079     if (toTransform->pNext)
   5080     {
   5081         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5082     }
   5083 }
   5084 
   5085 void transform_fromhost_VkImportMemoryWin32HandleInfoKHR(
   5086     ResourceTracker* resourceTracker,
   5087     VkImportMemoryWin32HandleInfoKHR* toTransform)
   5088 {
   5089     (void)resourceTracker;
   5090     (void)toTransform;
   5091     if (toTransform->pNext)
   5092     {
   5093         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5094     }
   5095 }
   5096 
   5097 void transform_tohost_VkExportMemoryWin32HandleInfoKHR(
   5098     ResourceTracker* resourceTracker,
   5099     VkExportMemoryWin32HandleInfoKHR* toTransform)
   5100 {
   5101     (void)resourceTracker;
   5102     (void)toTransform;
   5103     if (toTransform->pNext)
   5104     {
   5105         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5106     }
   5107 }
   5108 
   5109 void transform_fromhost_VkExportMemoryWin32HandleInfoKHR(
   5110     ResourceTracker* resourceTracker,
   5111     VkExportMemoryWin32HandleInfoKHR* toTransform)
   5112 {
   5113     (void)resourceTracker;
   5114     (void)toTransform;
   5115     if (toTransform->pNext)
   5116     {
   5117         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5118     }
   5119 }
   5120 
   5121 void transform_tohost_VkMemoryWin32HandlePropertiesKHR(
   5122     ResourceTracker* resourceTracker,
   5123     VkMemoryWin32HandlePropertiesKHR* toTransform)
   5124 {
   5125     (void)resourceTracker;
   5126     (void)toTransform;
   5127     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   5128     if (toTransform->pNext)
   5129     {
   5130         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5131     }
   5132 }
   5133 
   5134 void transform_fromhost_VkMemoryWin32HandlePropertiesKHR(
   5135     ResourceTracker* resourceTracker,
   5136     VkMemoryWin32HandlePropertiesKHR* toTransform)
   5137 {
   5138     (void)resourceTracker;
   5139     (void)toTransform;
   5140     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   5141     if (toTransform->pNext)
   5142     {
   5143         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5144     }
   5145 }
   5146 
   5147 void transform_tohost_VkMemoryGetWin32HandleInfoKHR(
   5148     ResourceTracker* resourceTracker,
   5149     VkMemoryGetWin32HandleInfoKHR* toTransform)
   5150 {
   5151     (void)resourceTracker;
   5152     (void)toTransform;
   5153     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   5154     if (toTransform->pNext)
   5155     {
   5156         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5157     }
   5158 }
   5159 
   5160 void transform_fromhost_VkMemoryGetWin32HandleInfoKHR(
   5161     ResourceTracker* resourceTracker,
   5162     VkMemoryGetWin32HandleInfoKHR* toTransform)
   5163 {
   5164     (void)resourceTracker;
   5165     (void)toTransform;
   5166     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   5167     if (toTransform->pNext)
   5168     {
   5169         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5170     }
   5171 }
   5172 
   5173 #endif
   5174 #ifdef VK_KHR_external_memory_fd
   5175 void transform_tohost_VkImportMemoryFdInfoKHR(
   5176     ResourceTracker* resourceTracker,
   5177     VkImportMemoryFdInfoKHR* toTransform)
   5178 {
   5179     (void)resourceTracker;
   5180     (void)toTransform;
   5181     if (toTransform->pNext)
   5182     {
   5183         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5184     }
   5185 }
   5186 
   5187 void transform_fromhost_VkImportMemoryFdInfoKHR(
   5188     ResourceTracker* resourceTracker,
   5189     VkImportMemoryFdInfoKHR* toTransform)
   5190 {
   5191     (void)resourceTracker;
   5192     (void)toTransform;
   5193     if (toTransform->pNext)
   5194     {
   5195         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5196     }
   5197 }
   5198 
   5199 void transform_tohost_VkMemoryFdPropertiesKHR(
   5200     ResourceTracker* resourceTracker,
   5201     VkMemoryFdPropertiesKHR* toTransform)
   5202 {
   5203     (void)resourceTracker;
   5204     (void)toTransform;
   5205     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   5206     if (toTransform->pNext)
   5207     {
   5208         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5209     }
   5210 }
   5211 
   5212 void transform_fromhost_VkMemoryFdPropertiesKHR(
   5213     ResourceTracker* resourceTracker,
   5214     VkMemoryFdPropertiesKHR* toTransform)
   5215 {
   5216     (void)resourceTracker;
   5217     (void)toTransform;
   5218     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   5219     if (toTransform->pNext)
   5220     {
   5221         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5222     }
   5223 }
   5224 
   5225 void transform_tohost_VkMemoryGetFdInfoKHR(
   5226     ResourceTracker* resourceTracker,
   5227     VkMemoryGetFdInfoKHR* toTransform)
   5228 {
   5229     (void)resourceTracker;
   5230     (void)toTransform;
   5231     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   5232     if (toTransform->pNext)
   5233     {
   5234         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5235     }
   5236 }
   5237 
   5238 void transform_fromhost_VkMemoryGetFdInfoKHR(
   5239     ResourceTracker* resourceTracker,
   5240     VkMemoryGetFdInfoKHR* toTransform)
   5241 {
   5242     (void)resourceTracker;
   5243     (void)toTransform;
   5244     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   5245     if (toTransform->pNext)
   5246     {
   5247         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5248     }
   5249 }
   5250 
   5251 #endif
   5252 #ifdef VK_KHR_win32_keyed_mutex
   5253 void transform_tohost_VkWin32KeyedMutexAcquireReleaseInfoKHR(
   5254     ResourceTracker* resourceTracker,
   5255     VkWin32KeyedMutexAcquireReleaseInfoKHR* toTransform)
   5256 {
   5257     (void)resourceTracker;
   5258     (void)toTransform;
   5259     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)toTransform->pReleaseSyncs, toTransform->releaseCount, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   5260     if (toTransform->pNext)
   5261     {
   5262         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5263     }
   5264 }
   5265 
   5266 void transform_fromhost_VkWin32KeyedMutexAcquireReleaseInfoKHR(
   5267     ResourceTracker* resourceTracker,
   5268     VkWin32KeyedMutexAcquireReleaseInfoKHR* toTransform)
   5269 {
   5270     (void)resourceTracker;
   5271     (void)toTransform;
   5272     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)toTransform->pReleaseSyncs, toTransform->releaseCount, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   5273     if (toTransform->pNext)
   5274     {
   5275         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5276     }
   5277 }
   5278 
   5279 #endif
   5280 #ifdef VK_KHR_external_semaphore_capabilities
   5281 #endif
   5282 #ifdef VK_KHR_external_semaphore
   5283 #endif
   5284 #ifdef VK_KHR_external_semaphore_win32
   5285 void transform_tohost_VkImportSemaphoreWin32HandleInfoKHR(
   5286     ResourceTracker* resourceTracker,
   5287     VkImportSemaphoreWin32HandleInfoKHR* toTransform)
   5288 {
   5289     (void)resourceTracker;
   5290     (void)toTransform;
   5291     if (toTransform->pNext)
   5292     {
   5293         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5294     }
   5295 }
   5296 
   5297 void transform_fromhost_VkImportSemaphoreWin32HandleInfoKHR(
   5298     ResourceTracker* resourceTracker,
   5299     VkImportSemaphoreWin32HandleInfoKHR* toTransform)
   5300 {
   5301     (void)resourceTracker;
   5302     (void)toTransform;
   5303     if (toTransform->pNext)
   5304     {
   5305         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5306     }
   5307 }
   5308 
   5309 void transform_tohost_VkExportSemaphoreWin32HandleInfoKHR(
   5310     ResourceTracker* resourceTracker,
   5311     VkExportSemaphoreWin32HandleInfoKHR* toTransform)
   5312 {
   5313     (void)resourceTracker;
   5314     (void)toTransform;
   5315     if (toTransform->pNext)
   5316     {
   5317         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5318     }
   5319 }
   5320 
   5321 void transform_fromhost_VkExportSemaphoreWin32HandleInfoKHR(
   5322     ResourceTracker* resourceTracker,
   5323     VkExportSemaphoreWin32HandleInfoKHR* toTransform)
   5324 {
   5325     (void)resourceTracker;
   5326     (void)toTransform;
   5327     if (toTransform->pNext)
   5328     {
   5329         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5330     }
   5331 }
   5332 
   5333 void transform_tohost_VkD3D12FenceSubmitInfoKHR(
   5334     ResourceTracker* resourceTracker,
   5335     VkD3D12FenceSubmitInfoKHR* toTransform)
   5336 {
   5337     (void)resourceTracker;
   5338     (void)toTransform;
   5339     if (toTransform->pNext)
   5340     {
   5341         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5342     }
   5343 }
   5344 
   5345 void transform_fromhost_VkD3D12FenceSubmitInfoKHR(
   5346     ResourceTracker* resourceTracker,
   5347     VkD3D12FenceSubmitInfoKHR* toTransform)
   5348 {
   5349     (void)resourceTracker;
   5350     (void)toTransform;
   5351     if (toTransform->pNext)
   5352     {
   5353         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5354     }
   5355 }
   5356 
   5357 void transform_tohost_VkSemaphoreGetWin32HandleInfoKHR(
   5358     ResourceTracker* resourceTracker,
   5359     VkSemaphoreGetWin32HandleInfoKHR* toTransform)
   5360 {
   5361     (void)resourceTracker;
   5362     (void)toTransform;
   5363     if (toTransform->pNext)
   5364     {
   5365         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5366     }
   5367 }
   5368 
   5369 void transform_fromhost_VkSemaphoreGetWin32HandleInfoKHR(
   5370     ResourceTracker* resourceTracker,
   5371     VkSemaphoreGetWin32HandleInfoKHR* toTransform)
   5372 {
   5373     (void)resourceTracker;
   5374     (void)toTransform;
   5375     if (toTransform->pNext)
   5376     {
   5377         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5378     }
   5379 }
   5380 
   5381 #endif
   5382 #ifdef VK_KHR_external_semaphore_fd
   5383 void transform_tohost_VkImportSemaphoreFdInfoKHR(
   5384     ResourceTracker* resourceTracker,
   5385     VkImportSemaphoreFdInfoKHR* toTransform)
   5386 {
   5387     (void)resourceTracker;
   5388     (void)toTransform;
   5389     if (toTransform->pNext)
   5390     {
   5391         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5392     }
   5393 }
   5394 
   5395 void transform_fromhost_VkImportSemaphoreFdInfoKHR(
   5396     ResourceTracker* resourceTracker,
   5397     VkImportSemaphoreFdInfoKHR* toTransform)
   5398 {
   5399     (void)resourceTracker;
   5400     (void)toTransform;
   5401     if (toTransform->pNext)
   5402     {
   5403         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5404     }
   5405 }
   5406 
   5407 void transform_tohost_VkSemaphoreGetFdInfoKHR(
   5408     ResourceTracker* resourceTracker,
   5409     VkSemaphoreGetFdInfoKHR* toTransform)
   5410 {
   5411     (void)resourceTracker;
   5412     (void)toTransform;
   5413     if (toTransform->pNext)
   5414     {
   5415         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5416     }
   5417 }
   5418 
   5419 void transform_fromhost_VkSemaphoreGetFdInfoKHR(
   5420     ResourceTracker* resourceTracker,
   5421     VkSemaphoreGetFdInfoKHR* toTransform)
   5422 {
   5423     (void)resourceTracker;
   5424     (void)toTransform;
   5425     if (toTransform->pNext)
   5426     {
   5427         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5428     }
   5429 }
   5430 
   5431 #endif
   5432 #ifdef VK_KHR_push_descriptor
   5433 void transform_tohost_VkPhysicalDevicePushDescriptorPropertiesKHR(
   5434     ResourceTracker* resourceTracker,
   5435     VkPhysicalDevicePushDescriptorPropertiesKHR* toTransform)
   5436 {
   5437     (void)resourceTracker;
   5438     (void)toTransform;
   5439     if (toTransform->pNext)
   5440     {
   5441         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5442     }
   5443 }
   5444 
   5445 void transform_fromhost_VkPhysicalDevicePushDescriptorPropertiesKHR(
   5446     ResourceTracker* resourceTracker,
   5447     VkPhysicalDevicePushDescriptorPropertiesKHR* toTransform)
   5448 {
   5449     (void)resourceTracker;
   5450     (void)toTransform;
   5451     if (toTransform->pNext)
   5452     {
   5453         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5454     }
   5455 }
   5456 
   5457 #endif
   5458 #ifdef VK_KHR_16bit_storage
   5459 #endif
   5460 #ifdef VK_KHR_incremental_present
   5461 void transform_tohost_VkRectLayerKHR(
   5462     ResourceTracker* resourceTracker,
   5463     VkRectLayerKHR* toTransform)
   5464 {
   5465     (void)resourceTracker;
   5466     (void)toTransform;
   5467     transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->offset));
   5468     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->extent));
   5469 }
   5470 
   5471 void transform_fromhost_VkRectLayerKHR(
   5472     ResourceTracker* resourceTracker,
   5473     VkRectLayerKHR* toTransform)
   5474 {
   5475     (void)resourceTracker;
   5476     (void)toTransform;
   5477     transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->offset));
   5478     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->extent));
   5479 }
   5480 
   5481 void transform_tohost_VkPresentRegionKHR(
   5482     ResourceTracker* resourceTracker,
   5483     VkPresentRegionKHR* toTransform)
   5484 {
   5485     (void)resourceTracker;
   5486     (void)toTransform;
   5487     if (toTransform->pRectangles)
   5488     {
   5489         for (uint32_t i = 0; i < (uint32_t)toTransform->rectangleCount; ++i)
   5490         {
   5491             transform_tohost_VkRectLayerKHR(resourceTracker, (VkRectLayerKHR*)(toTransform->pRectangles + i));
   5492         }
   5493     }
   5494 }
   5495 
   5496 void transform_fromhost_VkPresentRegionKHR(
   5497     ResourceTracker* resourceTracker,
   5498     VkPresentRegionKHR* toTransform)
   5499 {
   5500     (void)resourceTracker;
   5501     (void)toTransform;
   5502     if (toTransform->pRectangles)
   5503     {
   5504         for (uint32_t i = 0; i < (uint32_t)toTransform->rectangleCount; ++i)
   5505         {
   5506             transform_fromhost_VkRectLayerKHR(resourceTracker, (VkRectLayerKHR*)(toTransform->pRectangles + i));
   5507         }
   5508     }
   5509 }
   5510 
   5511 void transform_tohost_VkPresentRegionsKHR(
   5512     ResourceTracker* resourceTracker,
   5513     VkPresentRegionsKHR* toTransform)
   5514 {
   5515     (void)resourceTracker;
   5516     (void)toTransform;
   5517     if (toTransform->pNext)
   5518     {
   5519         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5520     }
   5521     if (toTransform->pRegions)
   5522     {
   5523         for (uint32_t i = 0; i < (uint32_t)toTransform->swapchainCount; ++i)
   5524         {
   5525             transform_tohost_VkPresentRegionKHR(resourceTracker, (VkPresentRegionKHR*)(toTransform->pRegions + i));
   5526         }
   5527     }
   5528 }
   5529 
   5530 void transform_fromhost_VkPresentRegionsKHR(
   5531     ResourceTracker* resourceTracker,
   5532     VkPresentRegionsKHR* toTransform)
   5533 {
   5534     (void)resourceTracker;
   5535     (void)toTransform;
   5536     if (toTransform->pNext)
   5537     {
   5538         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5539     }
   5540     if (toTransform->pRegions)
   5541     {
   5542         for (uint32_t i = 0; i < (uint32_t)toTransform->swapchainCount; ++i)
   5543         {
   5544             transform_fromhost_VkPresentRegionKHR(resourceTracker, (VkPresentRegionKHR*)(toTransform->pRegions + i));
   5545         }
   5546     }
   5547 }
   5548 
   5549 #endif
   5550 #ifdef VK_KHR_descriptor_update_template
   5551 #endif
   5552 #ifdef VK_KHR_create_renderpass2
   5553 void transform_tohost_VkAttachmentDescription2KHR(
   5554     ResourceTracker* resourceTracker,
   5555     VkAttachmentDescription2KHR* toTransform)
   5556 {
   5557     (void)resourceTracker;
   5558     (void)toTransform;
   5559     if (toTransform->pNext)
   5560     {
   5561         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5562     }
   5563 }
   5564 
   5565 void transform_fromhost_VkAttachmentDescription2KHR(
   5566     ResourceTracker* resourceTracker,
   5567     VkAttachmentDescription2KHR* toTransform)
   5568 {
   5569     (void)resourceTracker;
   5570     (void)toTransform;
   5571     if (toTransform->pNext)
   5572     {
   5573         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5574     }
   5575 }
   5576 
   5577 void transform_tohost_VkAttachmentReference2KHR(
   5578     ResourceTracker* resourceTracker,
   5579     VkAttachmentReference2KHR* toTransform)
   5580 {
   5581     (void)resourceTracker;
   5582     (void)toTransform;
   5583     if (toTransform->pNext)
   5584     {
   5585         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5586     }
   5587 }
   5588 
   5589 void transform_fromhost_VkAttachmentReference2KHR(
   5590     ResourceTracker* resourceTracker,
   5591     VkAttachmentReference2KHR* toTransform)
   5592 {
   5593     (void)resourceTracker;
   5594     (void)toTransform;
   5595     if (toTransform->pNext)
   5596     {
   5597         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5598     }
   5599 }
   5600 
   5601 void transform_tohost_VkSubpassDescription2KHR(
   5602     ResourceTracker* resourceTracker,
   5603     VkSubpassDescription2KHR* toTransform)
   5604 {
   5605     (void)resourceTracker;
   5606     (void)toTransform;
   5607     if (toTransform->pNext)
   5608     {
   5609         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5610     }
   5611     if (toTransform->pInputAttachments)
   5612     {
   5613         for (uint32_t i = 0; i < (uint32_t)toTransform->inputAttachmentCount; ++i)
   5614         {
   5615             transform_tohost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pInputAttachments + i));
   5616         }
   5617     }
   5618     if (toTransform->pColorAttachments)
   5619     {
   5620         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   5621         {
   5622             transform_tohost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pColorAttachments + i));
   5623         }
   5624     }
   5625     if (toTransform->pResolveAttachments)
   5626     {
   5627         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   5628         {
   5629             transform_tohost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pResolveAttachments + i));
   5630         }
   5631     }
   5632     if (toTransform->pDepthStencilAttachment)
   5633     {
   5634         transform_tohost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pDepthStencilAttachment));
   5635     }
   5636 }
   5637 
   5638 void transform_fromhost_VkSubpassDescription2KHR(
   5639     ResourceTracker* resourceTracker,
   5640     VkSubpassDescription2KHR* toTransform)
   5641 {
   5642     (void)resourceTracker;
   5643     (void)toTransform;
   5644     if (toTransform->pNext)
   5645     {
   5646         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5647     }
   5648     if (toTransform->pInputAttachments)
   5649     {
   5650         for (uint32_t i = 0; i < (uint32_t)toTransform->inputAttachmentCount; ++i)
   5651         {
   5652             transform_fromhost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pInputAttachments + i));
   5653         }
   5654     }
   5655     if (toTransform->pColorAttachments)
   5656     {
   5657         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   5658         {
   5659             transform_fromhost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pColorAttachments + i));
   5660         }
   5661     }
   5662     if (toTransform->pResolveAttachments)
   5663     {
   5664         for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
   5665         {
   5666             transform_fromhost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pResolveAttachments + i));
   5667         }
   5668     }
   5669     if (toTransform->pDepthStencilAttachment)
   5670     {
   5671         transform_fromhost_VkAttachmentReference2KHR(resourceTracker, (VkAttachmentReference2KHR*)(toTransform->pDepthStencilAttachment));
   5672     }
   5673 }
   5674 
   5675 void transform_tohost_VkSubpassDependency2KHR(
   5676     ResourceTracker* resourceTracker,
   5677     VkSubpassDependency2KHR* toTransform)
   5678 {
   5679     (void)resourceTracker;
   5680     (void)toTransform;
   5681     if (toTransform->pNext)
   5682     {
   5683         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5684     }
   5685 }
   5686 
   5687 void transform_fromhost_VkSubpassDependency2KHR(
   5688     ResourceTracker* resourceTracker,
   5689     VkSubpassDependency2KHR* toTransform)
   5690 {
   5691     (void)resourceTracker;
   5692     (void)toTransform;
   5693     if (toTransform->pNext)
   5694     {
   5695         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5696     }
   5697 }
   5698 
   5699 void transform_tohost_VkRenderPassCreateInfo2KHR(
   5700     ResourceTracker* resourceTracker,
   5701     VkRenderPassCreateInfo2KHR* toTransform)
   5702 {
   5703     (void)resourceTracker;
   5704     (void)toTransform;
   5705     if (toTransform->pNext)
   5706     {
   5707         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5708     }
   5709     if (toTransform->pAttachments)
   5710     {
   5711         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentCount; ++i)
   5712         {
   5713             transform_tohost_VkAttachmentDescription2KHR(resourceTracker, (VkAttachmentDescription2KHR*)(toTransform->pAttachments + i));
   5714         }
   5715     }
   5716     if (toTransform->pSubpasses)
   5717     {
   5718         for (uint32_t i = 0; i < (uint32_t)toTransform->subpassCount; ++i)
   5719         {
   5720             transform_tohost_VkSubpassDescription2KHR(resourceTracker, (VkSubpassDescription2KHR*)(toTransform->pSubpasses + i));
   5721         }
   5722     }
   5723     if (toTransform->pDependencies)
   5724     {
   5725         for (uint32_t i = 0; i < (uint32_t)toTransform->dependencyCount; ++i)
   5726         {
   5727             transform_tohost_VkSubpassDependency2KHR(resourceTracker, (VkSubpassDependency2KHR*)(toTransform->pDependencies + i));
   5728         }
   5729     }
   5730 }
   5731 
   5732 void transform_fromhost_VkRenderPassCreateInfo2KHR(
   5733     ResourceTracker* resourceTracker,
   5734     VkRenderPassCreateInfo2KHR* toTransform)
   5735 {
   5736     (void)resourceTracker;
   5737     (void)toTransform;
   5738     if (toTransform->pNext)
   5739     {
   5740         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5741     }
   5742     if (toTransform->pAttachments)
   5743     {
   5744         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentCount; ++i)
   5745         {
   5746             transform_fromhost_VkAttachmentDescription2KHR(resourceTracker, (VkAttachmentDescription2KHR*)(toTransform->pAttachments + i));
   5747         }
   5748     }
   5749     if (toTransform->pSubpasses)
   5750     {
   5751         for (uint32_t i = 0; i < (uint32_t)toTransform->subpassCount; ++i)
   5752         {
   5753             transform_fromhost_VkSubpassDescription2KHR(resourceTracker, (VkSubpassDescription2KHR*)(toTransform->pSubpasses + i));
   5754         }
   5755     }
   5756     if (toTransform->pDependencies)
   5757     {
   5758         for (uint32_t i = 0; i < (uint32_t)toTransform->dependencyCount; ++i)
   5759         {
   5760             transform_fromhost_VkSubpassDependency2KHR(resourceTracker, (VkSubpassDependency2KHR*)(toTransform->pDependencies + i));
   5761         }
   5762     }
   5763 }
   5764 
   5765 void transform_tohost_VkSubpassBeginInfoKHR(
   5766     ResourceTracker* resourceTracker,
   5767     VkSubpassBeginInfoKHR* toTransform)
   5768 {
   5769     (void)resourceTracker;
   5770     (void)toTransform;
   5771     if (toTransform->pNext)
   5772     {
   5773         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5774     }
   5775 }
   5776 
   5777 void transform_fromhost_VkSubpassBeginInfoKHR(
   5778     ResourceTracker* resourceTracker,
   5779     VkSubpassBeginInfoKHR* toTransform)
   5780 {
   5781     (void)resourceTracker;
   5782     (void)toTransform;
   5783     if (toTransform->pNext)
   5784     {
   5785         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5786     }
   5787 }
   5788 
   5789 void transform_tohost_VkSubpassEndInfoKHR(
   5790     ResourceTracker* resourceTracker,
   5791     VkSubpassEndInfoKHR* toTransform)
   5792 {
   5793     (void)resourceTracker;
   5794     (void)toTransform;
   5795     if (toTransform->pNext)
   5796     {
   5797         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5798     }
   5799 }
   5800 
   5801 void transform_fromhost_VkSubpassEndInfoKHR(
   5802     ResourceTracker* resourceTracker,
   5803     VkSubpassEndInfoKHR* toTransform)
   5804 {
   5805     (void)resourceTracker;
   5806     (void)toTransform;
   5807     if (toTransform->pNext)
   5808     {
   5809         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5810     }
   5811 }
   5812 
   5813 #endif
   5814 #ifdef VK_KHR_shared_presentable_image
   5815 void transform_tohost_VkSharedPresentSurfaceCapabilitiesKHR(
   5816     ResourceTracker* resourceTracker,
   5817     VkSharedPresentSurfaceCapabilitiesKHR* toTransform)
   5818 {
   5819     (void)resourceTracker;
   5820     (void)toTransform;
   5821     if (toTransform->pNext)
   5822     {
   5823         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5824     }
   5825 }
   5826 
   5827 void transform_fromhost_VkSharedPresentSurfaceCapabilitiesKHR(
   5828     ResourceTracker* resourceTracker,
   5829     VkSharedPresentSurfaceCapabilitiesKHR* toTransform)
   5830 {
   5831     (void)resourceTracker;
   5832     (void)toTransform;
   5833     if (toTransform->pNext)
   5834     {
   5835         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5836     }
   5837 }
   5838 
   5839 #endif
   5840 #ifdef VK_KHR_external_fence_capabilities
   5841 #endif
   5842 #ifdef VK_KHR_external_fence
   5843 #endif
   5844 #ifdef VK_KHR_external_fence_win32
   5845 void transform_tohost_VkImportFenceWin32HandleInfoKHR(
   5846     ResourceTracker* resourceTracker,
   5847     VkImportFenceWin32HandleInfoKHR* toTransform)
   5848 {
   5849     (void)resourceTracker;
   5850     (void)toTransform;
   5851     if (toTransform->pNext)
   5852     {
   5853         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5854     }
   5855 }
   5856 
   5857 void transform_fromhost_VkImportFenceWin32HandleInfoKHR(
   5858     ResourceTracker* resourceTracker,
   5859     VkImportFenceWin32HandleInfoKHR* toTransform)
   5860 {
   5861     (void)resourceTracker;
   5862     (void)toTransform;
   5863     if (toTransform->pNext)
   5864     {
   5865         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5866     }
   5867 }
   5868 
   5869 void transform_tohost_VkExportFenceWin32HandleInfoKHR(
   5870     ResourceTracker* resourceTracker,
   5871     VkExportFenceWin32HandleInfoKHR* toTransform)
   5872 {
   5873     (void)resourceTracker;
   5874     (void)toTransform;
   5875     if (toTransform->pNext)
   5876     {
   5877         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5878     }
   5879 }
   5880 
   5881 void transform_fromhost_VkExportFenceWin32HandleInfoKHR(
   5882     ResourceTracker* resourceTracker,
   5883     VkExportFenceWin32HandleInfoKHR* toTransform)
   5884 {
   5885     (void)resourceTracker;
   5886     (void)toTransform;
   5887     if (toTransform->pNext)
   5888     {
   5889         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5890     }
   5891 }
   5892 
   5893 void transform_tohost_VkFenceGetWin32HandleInfoKHR(
   5894     ResourceTracker* resourceTracker,
   5895     VkFenceGetWin32HandleInfoKHR* toTransform)
   5896 {
   5897     (void)resourceTracker;
   5898     (void)toTransform;
   5899     if (toTransform->pNext)
   5900     {
   5901         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5902     }
   5903 }
   5904 
   5905 void transform_fromhost_VkFenceGetWin32HandleInfoKHR(
   5906     ResourceTracker* resourceTracker,
   5907     VkFenceGetWin32HandleInfoKHR* toTransform)
   5908 {
   5909     (void)resourceTracker;
   5910     (void)toTransform;
   5911     if (toTransform->pNext)
   5912     {
   5913         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5914     }
   5915 }
   5916 
   5917 #endif
   5918 #ifdef VK_KHR_external_fence_fd
   5919 void transform_tohost_VkImportFenceFdInfoKHR(
   5920     ResourceTracker* resourceTracker,
   5921     VkImportFenceFdInfoKHR* toTransform)
   5922 {
   5923     (void)resourceTracker;
   5924     (void)toTransform;
   5925     if (toTransform->pNext)
   5926     {
   5927         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5928     }
   5929 }
   5930 
   5931 void transform_fromhost_VkImportFenceFdInfoKHR(
   5932     ResourceTracker* resourceTracker,
   5933     VkImportFenceFdInfoKHR* toTransform)
   5934 {
   5935     (void)resourceTracker;
   5936     (void)toTransform;
   5937     if (toTransform->pNext)
   5938     {
   5939         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5940     }
   5941 }
   5942 
   5943 void transform_tohost_VkFenceGetFdInfoKHR(
   5944     ResourceTracker* resourceTracker,
   5945     VkFenceGetFdInfoKHR* toTransform)
   5946 {
   5947     (void)resourceTracker;
   5948     (void)toTransform;
   5949     if (toTransform->pNext)
   5950     {
   5951         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5952     }
   5953 }
   5954 
   5955 void transform_fromhost_VkFenceGetFdInfoKHR(
   5956     ResourceTracker* resourceTracker,
   5957     VkFenceGetFdInfoKHR* toTransform)
   5958 {
   5959     (void)resourceTracker;
   5960     (void)toTransform;
   5961     if (toTransform->pNext)
   5962     {
   5963         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5964     }
   5965 }
   5966 
   5967 #endif
   5968 #ifdef VK_KHR_maintenance2
   5969 #endif
   5970 #ifdef VK_KHR_get_surface_capabilities2
   5971 void transform_tohost_VkPhysicalDeviceSurfaceInfo2KHR(
   5972     ResourceTracker* resourceTracker,
   5973     VkPhysicalDeviceSurfaceInfo2KHR* toTransform)
   5974 {
   5975     (void)resourceTracker;
   5976     (void)toTransform;
   5977     if (toTransform->pNext)
   5978     {
   5979         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5980     }
   5981 }
   5982 
   5983 void transform_fromhost_VkPhysicalDeviceSurfaceInfo2KHR(
   5984     ResourceTracker* resourceTracker,
   5985     VkPhysicalDeviceSurfaceInfo2KHR* toTransform)
   5986 {
   5987     (void)resourceTracker;
   5988     (void)toTransform;
   5989     if (toTransform->pNext)
   5990     {
   5991         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   5992     }
   5993 }
   5994 
   5995 void transform_tohost_VkSurfaceCapabilities2KHR(
   5996     ResourceTracker* resourceTracker,
   5997     VkSurfaceCapabilities2KHR* toTransform)
   5998 {
   5999     (void)resourceTracker;
   6000     (void)toTransform;
   6001     if (toTransform->pNext)
   6002     {
   6003         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6004     }
   6005     transform_tohost_VkSurfaceCapabilitiesKHR(resourceTracker, (VkSurfaceCapabilitiesKHR*)(&toTransform->surfaceCapabilities));
   6006 }
   6007 
   6008 void transform_fromhost_VkSurfaceCapabilities2KHR(
   6009     ResourceTracker* resourceTracker,
   6010     VkSurfaceCapabilities2KHR* toTransform)
   6011 {
   6012     (void)resourceTracker;
   6013     (void)toTransform;
   6014     if (toTransform->pNext)
   6015     {
   6016         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6017     }
   6018     transform_fromhost_VkSurfaceCapabilitiesKHR(resourceTracker, (VkSurfaceCapabilitiesKHR*)(&toTransform->surfaceCapabilities));
   6019 }
   6020 
   6021 void transform_tohost_VkSurfaceFormat2KHR(
   6022     ResourceTracker* resourceTracker,
   6023     VkSurfaceFormat2KHR* toTransform)
   6024 {
   6025     (void)resourceTracker;
   6026     (void)toTransform;
   6027     if (toTransform->pNext)
   6028     {
   6029         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6030     }
   6031     transform_tohost_VkSurfaceFormatKHR(resourceTracker, (VkSurfaceFormatKHR*)(&toTransform->surfaceFormat));
   6032 }
   6033 
   6034 void transform_fromhost_VkSurfaceFormat2KHR(
   6035     ResourceTracker* resourceTracker,
   6036     VkSurfaceFormat2KHR* toTransform)
   6037 {
   6038     (void)resourceTracker;
   6039     (void)toTransform;
   6040     if (toTransform->pNext)
   6041     {
   6042         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6043     }
   6044     transform_fromhost_VkSurfaceFormatKHR(resourceTracker, (VkSurfaceFormatKHR*)(&toTransform->surfaceFormat));
   6045 }
   6046 
   6047 #endif
   6048 #ifdef VK_KHR_variable_pointers
   6049 #endif
   6050 #ifdef VK_KHR_get_display_properties2
   6051 void transform_tohost_VkDisplayProperties2KHR(
   6052     ResourceTracker* resourceTracker,
   6053     VkDisplayProperties2KHR* toTransform)
   6054 {
   6055     (void)resourceTracker;
   6056     (void)toTransform;
   6057     if (toTransform->pNext)
   6058     {
   6059         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6060     }
   6061     transform_tohost_VkDisplayPropertiesKHR(resourceTracker, (VkDisplayPropertiesKHR*)(&toTransform->displayProperties));
   6062 }
   6063 
   6064 void transform_fromhost_VkDisplayProperties2KHR(
   6065     ResourceTracker* resourceTracker,
   6066     VkDisplayProperties2KHR* toTransform)
   6067 {
   6068     (void)resourceTracker;
   6069     (void)toTransform;
   6070     if (toTransform->pNext)
   6071     {
   6072         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6073     }
   6074     transform_fromhost_VkDisplayPropertiesKHR(resourceTracker, (VkDisplayPropertiesKHR*)(&toTransform->displayProperties));
   6075 }
   6076 
   6077 void transform_tohost_VkDisplayPlaneProperties2KHR(
   6078     ResourceTracker* resourceTracker,
   6079     VkDisplayPlaneProperties2KHR* toTransform)
   6080 {
   6081     (void)resourceTracker;
   6082     (void)toTransform;
   6083     if (toTransform->pNext)
   6084     {
   6085         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6086     }
   6087     transform_tohost_VkDisplayPlanePropertiesKHR(resourceTracker, (VkDisplayPlanePropertiesKHR*)(&toTransform->displayPlaneProperties));
   6088 }
   6089 
   6090 void transform_fromhost_VkDisplayPlaneProperties2KHR(
   6091     ResourceTracker* resourceTracker,
   6092     VkDisplayPlaneProperties2KHR* toTransform)
   6093 {
   6094     (void)resourceTracker;
   6095     (void)toTransform;
   6096     if (toTransform->pNext)
   6097     {
   6098         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6099     }
   6100     transform_fromhost_VkDisplayPlanePropertiesKHR(resourceTracker, (VkDisplayPlanePropertiesKHR*)(&toTransform->displayPlaneProperties));
   6101 }
   6102 
   6103 void transform_tohost_VkDisplayModeProperties2KHR(
   6104     ResourceTracker* resourceTracker,
   6105     VkDisplayModeProperties2KHR* toTransform)
   6106 {
   6107     (void)resourceTracker;
   6108     (void)toTransform;
   6109     if (toTransform->pNext)
   6110     {
   6111         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6112     }
   6113     transform_tohost_VkDisplayModePropertiesKHR(resourceTracker, (VkDisplayModePropertiesKHR*)(&toTransform->displayModeProperties));
   6114 }
   6115 
   6116 void transform_fromhost_VkDisplayModeProperties2KHR(
   6117     ResourceTracker* resourceTracker,
   6118     VkDisplayModeProperties2KHR* toTransform)
   6119 {
   6120     (void)resourceTracker;
   6121     (void)toTransform;
   6122     if (toTransform->pNext)
   6123     {
   6124         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6125     }
   6126     transform_fromhost_VkDisplayModePropertiesKHR(resourceTracker, (VkDisplayModePropertiesKHR*)(&toTransform->displayModeProperties));
   6127 }
   6128 
   6129 void transform_tohost_VkDisplayPlaneInfo2KHR(
   6130     ResourceTracker* resourceTracker,
   6131     VkDisplayPlaneInfo2KHR* toTransform)
   6132 {
   6133     (void)resourceTracker;
   6134     (void)toTransform;
   6135     if (toTransform->pNext)
   6136     {
   6137         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6138     }
   6139 }
   6140 
   6141 void transform_fromhost_VkDisplayPlaneInfo2KHR(
   6142     ResourceTracker* resourceTracker,
   6143     VkDisplayPlaneInfo2KHR* toTransform)
   6144 {
   6145     (void)resourceTracker;
   6146     (void)toTransform;
   6147     if (toTransform->pNext)
   6148     {
   6149         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6150     }
   6151 }
   6152 
   6153 void transform_tohost_VkDisplayPlaneCapabilities2KHR(
   6154     ResourceTracker* resourceTracker,
   6155     VkDisplayPlaneCapabilities2KHR* toTransform)
   6156 {
   6157     (void)resourceTracker;
   6158     (void)toTransform;
   6159     if (toTransform->pNext)
   6160     {
   6161         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6162     }
   6163     transform_tohost_VkDisplayPlaneCapabilitiesKHR(resourceTracker, (VkDisplayPlaneCapabilitiesKHR*)(&toTransform->capabilities));
   6164 }
   6165 
   6166 void transform_fromhost_VkDisplayPlaneCapabilities2KHR(
   6167     ResourceTracker* resourceTracker,
   6168     VkDisplayPlaneCapabilities2KHR* toTransform)
   6169 {
   6170     (void)resourceTracker;
   6171     (void)toTransform;
   6172     if (toTransform->pNext)
   6173     {
   6174         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6175     }
   6176     transform_fromhost_VkDisplayPlaneCapabilitiesKHR(resourceTracker, (VkDisplayPlaneCapabilitiesKHR*)(&toTransform->capabilities));
   6177 }
   6178 
   6179 #endif
   6180 #ifdef VK_KHR_dedicated_allocation
   6181 #endif
   6182 #ifdef VK_KHR_storage_buffer_storage_class
   6183 #endif
   6184 #ifdef VK_KHR_relaxed_block_layout
   6185 #endif
   6186 #ifdef VK_KHR_get_memory_requirements2
   6187 #endif
   6188 #ifdef VK_KHR_image_format_list
   6189 void transform_tohost_VkImageFormatListCreateInfoKHR(
   6190     ResourceTracker* resourceTracker,
   6191     VkImageFormatListCreateInfoKHR* toTransform)
   6192 {
   6193     (void)resourceTracker;
   6194     (void)toTransform;
   6195     if (toTransform->pNext)
   6196     {
   6197         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6198     }
   6199 }
   6200 
   6201 void transform_fromhost_VkImageFormatListCreateInfoKHR(
   6202     ResourceTracker* resourceTracker,
   6203     VkImageFormatListCreateInfoKHR* toTransform)
   6204 {
   6205     (void)resourceTracker;
   6206     (void)toTransform;
   6207     if (toTransform->pNext)
   6208     {
   6209         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6210     }
   6211 }
   6212 
   6213 #endif
   6214 #ifdef VK_KHR_sampler_ycbcr_conversion
   6215 #endif
   6216 #ifdef VK_KHR_bind_memory2
   6217 #endif
   6218 #ifdef VK_KHR_maintenance3
   6219 #endif
   6220 #ifdef VK_KHR_draw_indirect_count
   6221 #endif
   6222 #ifdef VK_KHR_8bit_storage
   6223 void transform_tohost_VkPhysicalDevice8BitStorageFeaturesKHR(
   6224     ResourceTracker* resourceTracker,
   6225     VkPhysicalDevice8BitStorageFeaturesKHR* toTransform)
   6226 {
   6227     (void)resourceTracker;
   6228     (void)toTransform;
   6229     if (toTransform->pNext)
   6230     {
   6231         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6232     }
   6233 }
   6234 
   6235 void transform_fromhost_VkPhysicalDevice8BitStorageFeaturesKHR(
   6236     ResourceTracker* resourceTracker,
   6237     VkPhysicalDevice8BitStorageFeaturesKHR* toTransform)
   6238 {
   6239     (void)resourceTracker;
   6240     (void)toTransform;
   6241     if (toTransform->pNext)
   6242     {
   6243         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6244     }
   6245 }
   6246 
   6247 #endif
   6248 #ifdef VK_ANDROID_native_buffer
   6249 void transform_tohost_VkNativeBufferANDROID(
   6250     ResourceTracker* resourceTracker,
   6251     VkNativeBufferANDROID* toTransform)
   6252 {
   6253     (void)resourceTracker;
   6254     (void)toTransform;
   6255     if (toTransform->pNext)
   6256     {
   6257         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6258     }
   6259 }
   6260 
   6261 void transform_fromhost_VkNativeBufferANDROID(
   6262     ResourceTracker* resourceTracker,
   6263     VkNativeBufferANDROID* toTransform)
   6264 {
   6265     (void)resourceTracker;
   6266     (void)toTransform;
   6267     if (toTransform->pNext)
   6268     {
   6269         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6270     }
   6271 }
   6272 
   6273 #endif
   6274 #ifdef VK_EXT_debug_report
   6275 void transform_tohost_VkDebugReportCallbackCreateInfoEXT(
   6276     ResourceTracker* resourceTracker,
   6277     VkDebugReportCallbackCreateInfoEXT* toTransform)
   6278 {
   6279     (void)resourceTracker;
   6280     (void)toTransform;
   6281     if (toTransform->pNext)
   6282     {
   6283         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6284     }
   6285 }
   6286 
   6287 void transform_fromhost_VkDebugReportCallbackCreateInfoEXT(
   6288     ResourceTracker* resourceTracker,
   6289     VkDebugReportCallbackCreateInfoEXT* toTransform)
   6290 {
   6291     (void)resourceTracker;
   6292     (void)toTransform;
   6293     if (toTransform->pNext)
   6294     {
   6295         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6296     }
   6297 }
   6298 
   6299 #endif
   6300 #ifdef VK_NV_glsl_shader
   6301 #endif
   6302 #ifdef VK_EXT_depth_range_unrestricted
   6303 #endif
   6304 #ifdef VK_IMG_filter_cubic
   6305 #endif
   6306 #ifdef VK_AMD_rasterization_order
   6307 void transform_tohost_VkPipelineRasterizationStateRasterizationOrderAMD(
   6308     ResourceTracker* resourceTracker,
   6309     VkPipelineRasterizationStateRasterizationOrderAMD* toTransform)
   6310 {
   6311     (void)resourceTracker;
   6312     (void)toTransform;
   6313     if (toTransform->pNext)
   6314     {
   6315         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6316     }
   6317 }
   6318 
   6319 void transform_fromhost_VkPipelineRasterizationStateRasterizationOrderAMD(
   6320     ResourceTracker* resourceTracker,
   6321     VkPipelineRasterizationStateRasterizationOrderAMD* toTransform)
   6322 {
   6323     (void)resourceTracker;
   6324     (void)toTransform;
   6325     if (toTransform->pNext)
   6326     {
   6327         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6328     }
   6329 }
   6330 
   6331 #endif
   6332 #ifdef VK_AMD_shader_trinary_minmax
   6333 #endif
   6334 #ifdef VK_AMD_shader_explicit_vertex_parameter
   6335 #endif
   6336 #ifdef VK_EXT_debug_marker
   6337 void transform_tohost_VkDebugMarkerObjectNameInfoEXT(
   6338     ResourceTracker* resourceTracker,
   6339     VkDebugMarkerObjectNameInfoEXT* toTransform)
   6340 {
   6341     (void)resourceTracker;
   6342     (void)toTransform;
   6343     if (toTransform->pNext)
   6344     {
   6345         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6346     }
   6347 }
   6348 
   6349 void transform_fromhost_VkDebugMarkerObjectNameInfoEXT(
   6350     ResourceTracker* resourceTracker,
   6351     VkDebugMarkerObjectNameInfoEXT* toTransform)
   6352 {
   6353     (void)resourceTracker;
   6354     (void)toTransform;
   6355     if (toTransform->pNext)
   6356     {
   6357         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6358     }
   6359 }
   6360 
   6361 void transform_tohost_VkDebugMarkerObjectTagInfoEXT(
   6362     ResourceTracker* resourceTracker,
   6363     VkDebugMarkerObjectTagInfoEXT* toTransform)
   6364 {
   6365     (void)resourceTracker;
   6366     (void)toTransform;
   6367     if (toTransform->pNext)
   6368     {
   6369         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6370     }
   6371 }
   6372 
   6373 void transform_fromhost_VkDebugMarkerObjectTagInfoEXT(
   6374     ResourceTracker* resourceTracker,
   6375     VkDebugMarkerObjectTagInfoEXT* toTransform)
   6376 {
   6377     (void)resourceTracker;
   6378     (void)toTransform;
   6379     if (toTransform->pNext)
   6380     {
   6381         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6382     }
   6383 }
   6384 
   6385 void transform_tohost_VkDebugMarkerMarkerInfoEXT(
   6386     ResourceTracker* resourceTracker,
   6387     VkDebugMarkerMarkerInfoEXT* toTransform)
   6388 {
   6389     (void)resourceTracker;
   6390     (void)toTransform;
   6391     if (toTransform->pNext)
   6392     {
   6393         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6394     }
   6395 }
   6396 
   6397 void transform_fromhost_VkDebugMarkerMarkerInfoEXT(
   6398     ResourceTracker* resourceTracker,
   6399     VkDebugMarkerMarkerInfoEXT* toTransform)
   6400 {
   6401     (void)resourceTracker;
   6402     (void)toTransform;
   6403     if (toTransform->pNext)
   6404     {
   6405         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6406     }
   6407 }
   6408 
   6409 #endif
   6410 #ifdef VK_AMD_gcn_shader
   6411 #endif
   6412 #ifdef VK_NV_dedicated_allocation
   6413 void transform_tohost_VkDedicatedAllocationImageCreateInfoNV(
   6414     ResourceTracker* resourceTracker,
   6415     VkDedicatedAllocationImageCreateInfoNV* toTransform)
   6416 {
   6417     (void)resourceTracker;
   6418     (void)toTransform;
   6419     if (toTransform->pNext)
   6420     {
   6421         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6422     }
   6423 }
   6424 
   6425 void transform_fromhost_VkDedicatedAllocationImageCreateInfoNV(
   6426     ResourceTracker* resourceTracker,
   6427     VkDedicatedAllocationImageCreateInfoNV* toTransform)
   6428 {
   6429     (void)resourceTracker;
   6430     (void)toTransform;
   6431     if (toTransform->pNext)
   6432     {
   6433         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6434     }
   6435 }
   6436 
   6437 void transform_tohost_VkDedicatedAllocationBufferCreateInfoNV(
   6438     ResourceTracker* resourceTracker,
   6439     VkDedicatedAllocationBufferCreateInfoNV* toTransform)
   6440 {
   6441     (void)resourceTracker;
   6442     (void)toTransform;
   6443     if (toTransform->pNext)
   6444     {
   6445         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6446     }
   6447 }
   6448 
   6449 void transform_fromhost_VkDedicatedAllocationBufferCreateInfoNV(
   6450     ResourceTracker* resourceTracker,
   6451     VkDedicatedAllocationBufferCreateInfoNV* toTransform)
   6452 {
   6453     (void)resourceTracker;
   6454     (void)toTransform;
   6455     if (toTransform->pNext)
   6456     {
   6457         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6458     }
   6459 }
   6460 
   6461 void transform_tohost_VkDedicatedAllocationMemoryAllocateInfoNV(
   6462     ResourceTracker* resourceTracker,
   6463     VkDedicatedAllocationMemoryAllocateInfoNV* toTransform)
   6464 {
   6465     (void)resourceTracker;
   6466     (void)toTransform;
   6467     if (toTransform->pNext)
   6468     {
   6469         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6470     }
   6471 }
   6472 
   6473 void transform_fromhost_VkDedicatedAllocationMemoryAllocateInfoNV(
   6474     ResourceTracker* resourceTracker,
   6475     VkDedicatedAllocationMemoryAllocateInfoNV* toTransform)
   6476 {
   6477     (void)resourceTracker;
   6478     (void)toTransform;
   6479     if (toTransform->pNext)
   6480     {
   6481         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6482     }
   6483 }
   6484 
   6485 #endif
   6486 #ifdef VK_AMD_draw_indirect_count
   6487 #endif
   6488 #ifdef VK_AMD_negative_viewport_height
   6489 #endif
   6490 #ifdef VK_AMD_gpu_shader_half_float
   6491 #endif
   6492 #ifdef VK_AMD_shader_ballot
   6493 #endif
   6494 #ifdef VK_AMD_texture_gather_bias_lod
   6495 void transform_tohost_VkTextureLODGatherFormatPropertiesAMD(
   6496     ResourceTracker* resourceTracker,
   6497     VkTextureLODGatherFormatPropertiesAMD* toTransform)
   6498 {
   6499     (void)resourceTracker;
   6500     (void)toTransform;
   6501     if (toTransform->pNext)
   6502     {
   6503         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6504     }
   6505 }
   6506 
   6507 void transform_fromhost_VkTextureLODGatherFormatPropertiesAMD(
   6508     ResourceTracker* resourceTracker,
   6509     VkTextureLODGatherFormatPropertiesAMD* toTransform)
   6510 {
   6511     (void)resourceTracker;
   6512     (void)toTransform;
   6513     if (toTransform->pNext)
   6514     {
   6515         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6516     }
   6517 }
   6518 
   6519 #endif
   6520 #ifdef VK_AMD_shader_info
   6521 void transform_tohost_VkShaderResourceUsageAMD(
   6522     ResourceTracker* resourceTracker,
   6523     VkShaderResourceUsageAMD* toTransform)
   6524 {
   6525     (void)resourceTracker;
   6526     (void)toTransform;
   6527 }
   6528 
   6529 void transform_fromhost_VkShaderResourceUsageAMD(
   6530     ResourceTracker* resourceTracker,
   6531     VkShaderResourceUsageAMD* toTransform)
   6532 {
   6533     (void)resourceTracker;
   6534     (void)toTransform;
   6535 }
   6536 
   6537 void transform_tohost_VkShaderStatisticsInfoAMD(
   6538     ResourceTracker* resourceTracker,
   6539     VkShaderStatisticsInfoAMD* toTransform)
   6540 {
   6541     (void)resourceTracker;
   6542     (void)toTransform;
   6543     transform_tohost_VkShaderResourceUsageAMD(resourceTracker, (VkShaderResourceUsageAMD*)(&toTransform->resourceUsage));
   6544 }
   6545 
   6546 void transform_fromhost_VkShaderStatisticsInfoAMD(
   6547     ResourceTracker* resourceTracker,
   6548     VkShaderStatisticsInfoAMD* toTransform)
   6549 {
   6550     (void)resourceTracker;
   6551     (void)toTransform;
   6552     transform_fromhost_VkShaderResourceUsageAMD(resourceTracker, (VkShaderResourceUsageAMD*)(&toTransform->resourceUsage));
   6553 }
   6554 
   6555 #endif
   6556 #ifdef VK_AMD_shader_image_load_store_lod
   6557 #endif
   6558 #ifdef VK_IMG_format_pvrtc
   6559 #endif
   6560 #ifdef VK_NV_external_memory_capabilities
   6561 void transform_tohost_VkExternalImageFormatPropertiesNV(
   6562     ResourceTracker* resourceTracker,
   6563     VkExternalImageFormatPropertiesNV* toTransform)
   6564 {
   6565     (void)resourceTracker;
   6566     (void)toTransform;
   6567     transform_tohost_VkImageFormatProperties(resourceTracker, (VkImageFormatProperties*)(&toTransform->imageFormatProperties));
   6568 }
   6569 
   6570 void transform_fromhost_VkExternalImageFormatPropertiesNV(
   6571     ResourceTracker* resourceTracker,
   6572     VkExternalImageFormatPropertiesNV* toTransform)
   6573 {
   6574     (void)resourceTracker;
   6575     (void)toTransform;
   6576     transform_fromhost_VkImageFormatProperties(resourceTracker, (VkImageFormatProperties*)(&toTransform->imageFormatProperties));
   6577 }
   6578 
   6579 #endif
   6580 #ifdef VK_NV_external_memory
   6581 void transform_tohost_VkExternalMemoryImageCreateInfoNV(
   6582     ResourceTracker* resourceTracker,
   6583     VkExternalMemoryImageCreateInfoNV* toTransform)
   6584 {
   6585     (void)resourceTracker;
   6586     (void)toTransform;
   6587     if (toTransform->pNext)
   6588     {
   6589         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6590     }
   6591 }
   6592 
   6593 void transform_fromhost_VkExternalMemoryImageCreateInfoNV(
   6594     ResourceTracker* resourceTracker,
   6595     VkExternalMemoryImageCreateInfoNV* toTransform)
   6596 {
   6597     (void)resourceTracker;
   6598     (void)toTransform;
   6599     if (toTransform->pNext)
   6600     {
   6601         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6602     }
   6603 }
   6604 
   6605 void transform_tohost_VkExportMemoryAllocateInfoNV(
   6606     ResourceTracker* resourceTracker,
   6607     VkExportMemoryAllocateInfoNV* toTransform)
   6608 {
   6609     (void)resourceTracker;
   6610     (void)toTransform;
   6611     if (toTransform->pNext)
   6612     {
   6613         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6614     }
   6615 }
   6616 
   6617 void transform_fromhost_VkExportMemoryAllocateInfoNV(
   6618     ResourceTracker* resourceTracker,
   6619     VkExportMemoryAllocateInfoNV* toTransform)
   6620 {
   6621     (void)resourceTracker;
   6622     (void)toTransform;
   6623     if (toTransform->pNext)
   6624     {
   6625         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6626     }
   6627 }
   6628 
   6629 #endif
   6630 #ifdef VK_NV_external_memory_win32
   6631 void transform_tohost_VkImportMemoryWin32HandleInfoNV(
   6632     ResourceTracker* resourceTracker,
   6633     VkImportMemoryWin32HandleInfoNV* toTransform)
   6634 {
   6635     (void)resourceTracker;
   6636     (void)toTransform;
   6637     if (toTransform->pNext)
   6638     {
   6639         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6640     }
   6641 }
   6642 
   6643 void transform_fromhost_VkImportMemoryWin32HandleInfoNV(
   6644     ResourceTracker* resourceTracker,
   6645     VkImportMemoryWin32HandleInfoNV* toTransform)
   6646 {
   6647     (void)resourceTracker;
   6648     (void)toTransform;
   6649     if (toTransform->pNext)
   6650     {
   6651         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6652     }
   6653 }
   6654 
   6655 void transform_tohost_VkExportMemoryWin32HandleInfoNV(
   6656     ResourceTracker* resourceTracker,
   6657     VkExportMemoryWin32HandleInfoNV* toTransform)
   6658 {
   6659     (void)resourceTracker;
   6660     (void)toTransform;
   6661     if (toTransform->pNext)
   6662     {
   6663         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6664     }
   6665 }
   6666 
   6667 void transform_fromhost_VkExportMemoryWin32HandleInfoNV(
   6668     ResourceTracker* resourceTracker,
   6669     VkExportMemoryWin32HandleInfoNV* toTransform)
   6670 {
   6671     (void)resourceTracker;
   6672     (void)toTransform;
   6673     if (toTransform->pNext)
   6674     {
   6675         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6676     }
   6677 }
   6678 
   6679 #endif
   6680 #ifdef VK_NV_win32_keyed_mutex
   6681 void transform_tohost_VkWin32KeyedMutexAcquireReleaseInfoNV(
   6682     ResourceTracker* resourceTracker,
   6683     VkWin32KeyedMutexAcquireReleaseInfoNV* toTransform)
   6684 {
   6685     (void)resourceTracker;
   6686     (void)toTransform;
   6687     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)toTransform->pReleaseSyncs, toTransform->releaseCount, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   6688     if (toTransform->pNext)
   6689     {
   6690         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6691     }
   6692 }
   6693 
   6694 void transform_fromhost_VkWin32KeyedMutexAcquireReleaseInfoNV(
   6695     ResourceTracker* resourceTracker,
   6696     VkWin32KeyedMutexAcquireReleaseInfoNV* toTransform)
   6697 {
   6698     (void)resourceTracker;
   6699     (void)toTransform;
   6700     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)toTransform->pReleaseSyncs, toTransform->releaseCount, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   6701     if (toTransform->pNext)
   6702     {
   6703         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6704     }
   6705 }
   6706 
   6707 #endif
   6708 #ifdef VK_EXT_validation_flags
   6709 void transform_tohost_VkValidationFlagsEXT(
   6710     ResourceTracker* resourceTracker,
   6711     VkValidationFlagsEXT* toTransform)
   6712 {
   6713     (void)resourceTracker;
   6714     (void)toTransform;
   6715     if (toTransform->pNext)
   6716     {
   6717         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6718     }
   6719 }
   6720 
   6721 void transform_fromhost_VkValidationFlagsEXT(
   6722     ResourceTracker* resourceTracker,
   6723     VkValidationFlagsEXT* toTransform)
   6724 {
   6725     (void)resourceTracker;
   6726     (void)toTransform;
   6727     if (toTransform->pNext)
   6728     {
   6729         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6730     }
   6731 }
   6732 
   6733 #endif
   6734 #ifdef VK_NN_vi_surface
   6735 void transform_tohost_VkViSurfaceCreateInfoNN(
   6736     ResourceTracker* resourceTracker,
   6737     VkViSurfaceCreateInfoNN* toTransform)
   6738 {
   6739     (void)resourceTracker;
   6740     (void)toTransform;
   6741     if (toTransform->pNext)
   6742     {
   6743         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6744     }
   6745 }
   6746 
   6747 void transform_fromhost_VkViSurfaceCreateInfoNN(
   6748     ResourceTracker* resourceTracker,
   6749     VkViSurfaceCreateInfoNN* toTransform)
   6750 {
   6751     (void)resourceTracker;
   6752     (void)toTransform;
   6753     if (toTransform->pNext)
   6754     {
   6755         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6756     }
   6757 }
   6758 
   6759 #endif
   6760 #ifdef VK_EXT_shader_subgroup_ballot
   6761 #endif
   6762 #ifdef VK_EXT_shader_subgroup_vote
   6763 #endif
   6764 #ifdef VK_EXT_conditional_rendering
   6765 void transform_tohost_VkConditionalRenderingBeginInfoEXT(
   6766     ResourceTracker* resourceTracker,
   6767     VkConditionalRenderingBeginInfoEXT* toTransform)
   6768 {
   6769     (void)resourceTracker;
   6770     (void)toTransform;
   6771     if (toTransform->pNext)
   6772     {
   6773         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6774     }
   6775 }
   6776 
   6777 void transform_fromhost_VkConditionalRenderingBeginInfoEXT(
   6778     ResourceTracker* resourceTracker,
   6779     VkConditionalRenderingBeginInfoEXT* toTransform)
   6780 {
   6781     (void)resourceTracker;
   6782     (void)toTransform;
   6783     if (toTransform->pNext)
   6784     {
   6785         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6786     }
   6787 }
   6788 
   6789 void transform_tohost_VkPhysicalDeviceConditionalRenderingFeaturesEXT(
   6790     ResourceTracker* resourceTracker,
   6791     VkPhysicalDeviceConditionalRenderingFeaturesEXT* toTransform)
   6792 {
   6793     (void)resourceTracker;
   6794     (void)toTransform;
   6795     if (toTransform->pNext)
   6796     {
   6797         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6798     }
   6799 }
   6800 
   6801 void transform_fromhost_VkPhysicalDeviceConditionalRenderingFeaturesEXT(
   6802     ResourceTracker* resourceTracker,
   6803     VkPhysicalDeviceConditionalRenderingFeaturesEXT* toTransform)
   6804 {
   6805     (void)resourceTracker;
   6806     (void)toTransform;
   6807     if (toTransform->pNext)
   6808     {
   6809         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6810     }
   6811 }
   6812 
   6813 void transform_tohost_VkCommandBufferInheritanceConditionalRenderingInfoEXT(
   6814     ResourceTracker* resourceTracker,
   6815     VkCommandBufferInheritanceConditionalRenderingInfoEXT* toTransform)
   6816 {
   6817     (void)resourceTracker;
   6818     (void)toTransform;
   6819     if (toTransform->pNext)
   6820     {
   6821         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6822     }
   6823 }
   6824 
   6825 void transform_fromhost_VkCommandBufferInheritanceConditionalRenderingInfoEXT(
   6826     ResourceTracker* resourceTracker,
   6827     VkCommandBufferInheritanceConditionalRenderingInfoEXT* toTransform)
   6828 {
   6829     (void)resourceTracker;
   6830     (void)toTransform;
   6831     if (toTransform->pNext)
   6832     {
   6833         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6834     }
   6835 }
   6836 
   6837 #endif
   6838 #ifdef VK_NVX_device_generated_commands
   6839 void transform_tohost_VkDeviceGeneratedCommandsFeaturesNVX(
   6840     ResourceTracker* resourceTracker,
   6841     VkDeviceGeneratedCommandsFeaturesNVX* toTransform)
   6842 {
   6843     (void)resourceTracker;
   6844     (void)toTransform;
   6845     if (toTransform->pNext)
   6846     {
   6847         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6848     }
   6849 }
   6850 
   6851 void transform_fromhost_VkDeviceGeneratedCommandsFeaturesNVX(
   6852     ResourceTracker* resourceTracker,
   6853     VkDeviceGeneratedCommandsFeaturesNVX* toTransform)
   6854 {
   6855     (void)resourceTracker;
   6856     (void)toTransform;
   6857     if (toTransform->pNext)
   6858     {
   6859         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6860     }
   6861 }
   6862 
   6863 void transform_tohost_VkDeviceGeneratedCommandsLimitsNVX(
   6864     ResourceTracker* resourceTracker,
   6865     VkDeviceGeneratedCommandsLimitsNVX* toTransform)
   6866 {
   6867     (void)resourceTracker;
   6868     (void)toTransform;
   6869     if (toTransform->pNext)
   6870     {
   6871         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6872     }
   6873 }
   6874 
   6875 void transform_fromhost_VkDeviceGeneratedCommandsLimitsNVX(
   6876     ResourceTracker* resourceTracker,
   6877     VkDeviceGeneratedCommandsLimitsNVX* toTransform)
   6878 {
   6879     (void)resourceTracker;
   6880     (void)toTransform;
   6881     if (toTransform->pNext)
   6882     {
   6883         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6884     }
   6885 }
   6886 
   6887 void transform_tohost_VkIndirectCommandsTokenNVX(
   6888     ResourceTracker* resourceTracker,
   6889     VkIndirectCommandsTokenNVX* toTransform)
   6890 {
   6891     (void)resourceTracker;
   6892     (void)toTransform;
   6893 }
   6894 
   6895 void transform_fromhost_VkIndirectCommandsTokenNVX(
   6896     ResourceTracker* resourceTracker,
   6897     VkIndirectCommandsTokenNVX* toTransform)
   6898 {
   6899     (void)resourceTracker;
   6900     (void)toTransform;
   6901 }
   6902 
   6903 void transform_tohost_VkIndirectCommandsLayoutTokenNVX(
   6904     ResourceTracker* resourceTracker,
   6905     VkIndirectCommandsLayoutTokenNVX* toTransform)
   6906 {
   6907     (void)resourceTracker;
   6908     (void)toTransform;
   6909 }
   6910 
   6911 void transform_fromhost_VkIndirectCommandsLayoutTokenNVX(
   6912     ResourceTracker* resourceTracker,
   6913     VkIndirectCommandsLayoutTokenNVX* toTransform)
   6914 {
   6915     (void)resourceTracker;
   6916     (void)toTransform;
   6917 }
   6918 
   6919 void transform_tohost_VkIndirectCommandsLayoutCreateInfoNVX(
   6920     ResourceTracker* resourceTracker,
   6921     VkIndirectCommandsLayoutCreateInfoNVX* toTransform)
   6922 {
   6923     (void)resourceTracker;
   6924     (void)toTransform;
   6925     if (toTransform->pNext)
   6926     {
   6927         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6928     }
   6929     if (toTransform->pTokens)
   6930     {
   6931         for (uint32_t i = 0; i < (uint32_t)toTransform->tokenCount; ++i)
   6932         {
   6933             transform_tohost_VkIndirectCommandsLayoutTokenNVX(resourceTracker, (VkIndirectCommandsLayoutTokenNVX*)(toTransform->pTokens + i));
   6934         }
   6935     }
   6936 }
   6937 
   6938 void transform_fromhost_VkIndirectCommandsLayoutCreateInfoNVX(
   6939     ResourceTracker* resourceTracker,
   6940     VkIndirectCommandsLayoutCreateInfoNVX* toTransform)
   6941 {
   6942     (void)resourceTracker;
   6943     (void)toTransform;
   6944     if (toTransform->pNext)
   6945     {
   6946         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6947     }
   6948     if (toTransform->pTokens)
   6949     {
   6950         for (uint32_t i = 0; i < (uint32_t)toTransform->tokenCount; ++i)
   6951         {
   6952             transform_fromhost_VkIndirectCommandsLayoutTokenNVX(resourceTracker, (VkIndirectCommandsLayoutTokenNVX*)(toTransform->pTokens + i));
   6953         }
   6954     }
   6955 }
   6956 
   6957 void transform_tohost_VkCmdProcessCommandsInfoNVX(
   6958     ResourceTracker* resourceTracker,
   6959     VkCmdProcessCommandsInfoNVX* toTransform)
   6960 {
   6961     (void)resourceTracker;
   6962     (void)toTransform;
   6963     if (toTransform->pNext)
   6964     {
   6965         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6966     }
   6967     if (toTransform->pIndirectCommandsTokens)
   6968     {
   6969         for (uint32_t i = 0; i < (uint32_t)toTransform->indirectCommandsTokenCount; ++i)
   6970         {
   6971             transform_tohost_VkIndirectCommandsTokenNVX(resourceTracker, (VkIndirectCommandsTokenNVX*)(toTransform->pIndirectCommandsTokens + i));
   6972         }
   6973     }
   6974 }
   6975 
   6976 void transform_fromhost_VkCmdProcessCommandsInfoNVX(
   6977     ResourceTracker* resourceTracker,
   6978     VkCmdProcessCommandsInfoNVX* toTransform)
   6979 {
   6980     (void)resourceTracker;
   6981     (void)toTransform;
   6982     if (toTransform->pNext)
   6983     {
   6984         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   6985     }
   6986     if (toTransform->pIndirectCommandsTokens)
   6987     {
   6988         for (uint32_t i = 0; i < (uint32_t)toTransform->indirectCommandsTokenCount; ++i)
   6989         {
   6990             transform_fromhost_VkIndirectCommandsTokenNVX(resourceTracker, (VkIndirectCommandsTokenNVX*)(toTransform->pIndirectCommandsTokens + i));
   6991         }
   6992     }
   6993 }
   6994 
   6995 void transform_tohost_VkCmdReserveSpaceForCommandsInfoNVX(
   6996     ResourceTracker* resourceTracker,
   6997     VkCmdReserveSpaceForCommandsInfoNVX* toTransform)
   6998 {
   6999     (void)resourceTracker;
   7000     (void)toTransform;
   7001     if (toTransform->pNext)
   7002     {
   7003         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7004     }
   7005 }
   7006 
   7007 void transform_fromhost_VkCmdReserveSpaceForCommandsInfoNVX(
   7008     ResourceTracker* resourceTracker,
   7009     VkCmdReserveSpaceForCommandsInfoNVX* toTransform)
   7010 {
   7011     (void)resourceTracker;
   7012     (void)toTransform;
   7013     if (toTransform->pNext)
   7014     {
   7015         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7016     }
   7017 }
   7018 
   7019 void transform_tohost_VkObjectTableCreateInfoNVX(
   7020     ResourceTracker* resourceTracker,
   7021     VkObjectTableCreateInfoNVX* toTransform)
   7022 {
   7023     (void)resourceTracker;
   7024     (void)toTransform;
   7025     if (toTransform->pNext)
   7026     {
   7027         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7028     }
   7029 }
   7030 
   7031 void transform_fromhost_VkObjectTableCreateInfoNVX(
   7032     ResourceTracker* resourceTracker,
   7033     VkObjectTableCreateInfoNVX* toTransform)
   7034 {
   7035     (void)resourceTracker;
   7036     (void)toTransform;
   7037     if (toTransform->pNext)
   7038     {
   7039         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7040     }
   7041 }
   7042 
   7043 void transform_tohost_VkObjectTableEntryNVX(
   7044     ResourceTracker* resourceTracker,
   7045     VkObjectTableEntryNVX* toTransform)
   7046 {
   7047     (void)resourceTracker;
   7048     (void)toTransform;
   7049 }
   7050 
   7051 void transform_fromhost_VkObjectTableEntryNVX(
   7052     ResourceTracker* resourceTracker,
   7053     VkObjectTableEntryNVX* toTransform)
   7054 {
   7055     (void)resourceTracker;
   7056     (void)toTransform;
   7057 }
   7058 
   7059 void transform_tohost_VkObjectTablePipelineEntryNVX(
   7060     ResourceTracker* resourceTracker,
   7061     VkObjectTablePipelineEntryNVX* toTransform)
   7062 {
   7063     (void)resourceTracker;
   7064     (void)toTransform;
   7065 }
   7066 
   7067 void transform_fromhost_VkObjectTablePipelineEntryNVX(
   7068     ResourceTracker* resourceTracker,
   7069     VkObjectTablePipelineEntryNVX* toTransform)
   7070 {
   7071     (void)resourceTracker;
   7072     (void)toTransform;
   7073 }
   7074 
   7075 void transform_tohost_VkObjectTableDescriptorSetEntryNVX(
   7076     ResourceTracker* resourceTracker,
   7077     VkObjectTableDescriptorSetEntryNVX* toTransform)
   7078 {
   7079     (void)resourceTracker;
   7080     (void)toTransform;
   7081 }
   7082 
   7083 void transform_fromhost_VkObjectTableDescriptorSetEntryNVX(
   7084     ResourceTracker* resourceTracker,
   7085     VkObjectTableDescriptorSetEntryNVX* toTransform)
   7086 {
   7087     (void)resourceTracker;
   7088     (void)toTransform;
   7089 }
   7090 
   7091 void transform_tohost_VkObjectTableVertexBufferEntryNVX(
   7092     ResourceTracker* resourceTracker,
   7093     VkObjectTableVertexBufferEntryNVX* toTransform)
   7094 {
   7095     (void)resourceTracker;
   7096     (void)toTransform;
   7097 }
   7098 
   7099 void transform_fromhost_VkObjectTableVertexBufferEntryNVX(
   7100     ResourceTracker* resourceTracker,
   7101     VkObjectTableVertexBufferEntryNVX* toTransform)
   7102 {
   7103     (void)resourceTracker;
   7104     (void)toTransform;
   7105 }
   7106 
   7107 void transform_tohost_VkObjectTableIndexBufferEntryNVX(
   7108     ResourceTracker* resourceTracker,
   7109     VkObjectTableIndexBufferEntryNVX* toTransform)
   7110 {
   7111     (void)resourceTracker;
   7112     (void)toTransform;
   7113 }
   7114 
   7115 void transform_fromhost_VkObjectTableIndexBufferEntryNVX(
   7116     ResourceTracker* resourceTracker,
   7117     VkObjectTableIndexBufferEntryNVX* toTransform)
   7118 {
   7119     (void)resourceTracker;
   7120     (void)toTransform;
   7121 }
   7122 
   7123 void transform_tohost_VkObjectTablePushConstantEntryNVX(
   7124     ResourceTracker* resourceTracker,
   7125     VkObjectTablePushConstantEntryNVX* toTransform)
   7126 {
   7127     (void)resourceTracker;
   7128     (void)toTransform;
   7129 }
   7130 
   7131 void transform_fromhost_VkObjectTablePushConstantEntryNVX(
   7132     ResourceTracker* resourceTracker,
   7133     VkObjectTablePushConstantEntryNVX* toTransform)
   7134 {
   7135     (void)resourceTracker;
   7136     (void)toTransform;
   7137 }
   7138 
   7139 #endif
   7140 #ifdef VK_NV_clip_space_w_scaling
   7141 void transform_tohost_VkViewportWScalingNV(
   7142     ResourceTracker* resourceTracker,
   7143     VkViewportWScalingNV* toTransform)
   7144 {
   7145     (void)resourceTracker;
   7146     (void)toTransform;
   7147 }
   7148 
   7149 void transform_fromhost_VkViewportWScalingNV(
   7150     ResourceTracker* resourceTracker,
   7151     VkViewportWScalingNV* toTransform)
   7152 {
   7153     (void)resourceTracker;
   7154     (void)toTransform;
   7155 }
   7156 
   7157 void transform_tohost_VkPipelineViewportWScalingStateCreateInfoNV(
   7158     ResourceTracker* resourceTracker,
   7159     VkPipelineViewportWScalingStateCreateInfoNV* toTransform)
   7160 {
   7161     (void)resourceTracker;
   7162     (void)toTransform;
   7163     if (toTransform->pNext)
   7164     {
   7165         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7166     }
   7167     if (toTransform->pViewportWScalings)
   7168     {
   7169         for (uint32_t i = 0; i < (uint32_t)toTransform->viewportCount; ++i)
   7170         {
   7171             transform_tohost_VkViewportWScalingNV(resourceTracker, (VkViewportWScalingNV*)(toTransform->pViewportWScalings + i));
   7172         }
   7173     }
   7174 }
   7175 
   7176 void transform_fromhost_VkPipelineViewportWScalingStateCreateInfoNV(
   7177     ResourceTracker* resourceTracker,
   7178     VkPipelineViewportWScalingStateCreateInfoNV* toTransform)
   7179 {
   7180     (void)resourceTracker;
   7181     (void)toTransform;
   7182     if (toTransform->pNext)
   7183     {
   7184         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7185     }
   7186     if (toTransform->pViewportWScalings)
   7187     {
   7188         for (uint32_t i = 0; i < (uint32_t)toTransform->viewportCount; ++i)
   7189         {
   7190             transform_fromhost_VkViewportWScalingNV(resourceTracker, (VkViewportWScalingNV*)(toTransform->pViewportWScalings + i));
   7191         }
   7192     }
   7193 }
   7194 
   7195 #endif
   7196 #ifdef VK_EXT_direct_mode_display
   7197 #endif
   7198 #ifdef VK_EXT_acquire_xlib_display
   7199 #endif
   7200 #ifdef VK_EXT_display_surface_counter
   7201 void transform_tohost_VkSurfaceCapabilities2EXT(
   7202     ResourceTracker* resourceTracker,
   7203     VkSurfaceCapabilities2EXT* toTransform)
   7204 {
   7205     (void)resourceTracker;
   7206     (void)toTransform;
   7207     if (toTransform->pNext)
   7208     {
   7209         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7210     }
   7211     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->currentExtent));
   7212     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minImageExtent));
   7213     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxImageExtent));
   7214 }
   7215 
   7216 void transform_fromhost_VkSurfaceCapabilities2EXT(
   7217     ResourceTracker* resourceTracker,
   7218     VkSurfaceCapabilities2EXT* toTransform)
   7219 {
   7220     (void)resourceTracker;
   7221     (void)toTransform;
   7222     if (toTransform->pNext)
   7223     {
   7224         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7225     }
   7226     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->currentExtent));
   7227     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minImageExtent));
   7228     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxImageExtent));
   7229 }
   7230 
   7231 #endif
   7232 #ifdef VK_EXT_display_control
   7233 void transform_tohost_VkDisplayPowerInfoEXT(
   7234     ResourceTracker* resourceTracker,
   7235     VkDisplayPowerInfoEXT* toTransform)
   7236 {
   7237     (void)resourceTracker;
   7238     (void)toTransform;
   7239     if (toTransform->pNext)
   7240     {
   7241         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7242     }
   7243 }
   7244 
   7245 void transform_fromhost_VkDisplayPowerInfoEXT(
   7246     ResourceTracker* resourceTracker,
   7247     VkDisplayPowerInfoEXT* toTransform)
   7248 {
   7249     (void)resourceTracker;
   7250     (void)toTransform;
   7251     if (toTransform->pNext)
   7252     {
   7253         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7254     }
   7255 }
   7256 
   7257 void transform_tohost_VkDeviceEventInfoEXT(
   7258     ResourceTracker* resourceTracker,
   7259     VkDeviceEventInfoEXT* toTransform)
   7260 {
   7261     (void)resourceTracker;
   7262     (void)toTransform;
   7263     if (toTransform->pNext)
   7264     {
   7265         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7266     }
   7267 }
   7268 
   7269 void transform_fromhost_VkDeviceEventInfoEXT(
   7270     ResourceTracker* resourceTracker,
   7271     VkDeviceEventInfoEXT* toTransform)
   7272 {
   7273     (void)resourceTracker;
   7274     (void)toTransform;
   7275     if (toTransform->pNext)
   7276     {
   7277         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7278     }
   7279 }
   7280 
   7281 void transform_tohost_VkDisplayEventInfoEXT(
   7282     ResourceTracker* resourceTracker,
   7283     VkDisplayEventInfoEXT* toTransform)
   7284 {
   7285     (void)resourceTracker;
   7286     (void)toTransform;
   7287     if (toTransform->pNext)
   7288     {
   7289         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7290     }
   7291 }
   7292 
   7293 void transform_fromhost_VkDisplayEventInfoEXT(
   7294     ResourceTracker* resourceTracker,
   7295     VkDisplayEventInfoEXT* toTransform)
   7296 {
   7297     (void)resourceTracker;
   7298     (void)toTransform;
   7299     if (toTransform->pNext)
   7300     {
   7301         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7302     }
   7303 }
   7304 
   7305 void transform_tohost_VkSwapchainCounterCreateInfoEXT(
   7306     ResourceTracker* resourceTracker,
   7307     VkSwapchainCounterCreateInfoEXT* toTransform)
   7308 {
   7309     (void)resourceTracker;
   7310     (void)toTransform;
   7311     if (toTransform->pNext)
   7312     {
   7313         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7314     }
   7315 }
   7316 
   7317 void transform_fromhost_VkSwapchainCounterCreateInfoEXT(
   7318     ResourceTracker* resourceTracker,
   7319     VkSwapchainCounterCreateInfoEXT* toTransform)
   7320 {
   7321     (void)resourceTracker;
   7322     (void)toTransform;
   7323     if (toTransform->pNext)
   7324     {
   7325         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7326     }
   7327 }
   7328 
   7329 #endif
   7330 #ifdef VK_GOOGLE_display_timing
   7331 void transform_tohost_VkRefreshCycleDurationGOOGLE(
   7332     ResourceTracker* resourceTracker,
   7333     VkRefreshCycleDurationGOOGLE* toTransform)
   7334 {
   7335     (void)resourceTracker;
   7336     (void)toTransform;
   7337 }
   7338 
   7339 void transform_fromhost_VkRefreshCycleDurationGOOGLE(
   7340     ResourceTracker* resourceTracker,
   7341     VkRefreshCycleDurationGOOGLE* toTransform)
   7342 {
   7343     (void)resourceTracker;
   7344     (void)toTransform;
   7345 }
   7346 
   7347 void transform_tohost_VkPastPresentationTimingGOOGLE(
   7348     ResourceTracker* resourceTracker,
   7349     VkPastPresentationTimingGOOGLE* toTransform)
   7350 {
   7351     (void)resourceTracker;
   7352     (void)toTransform;
   7353 }
   7354 
   7355 void transform_fromhost_VkPastPresentationTimingGOOGLE(
   7356     ResourceTracker* resourceTracker,
   7357     VkPastPresentationTimingGOOGLE* toTransform)
   7358 {
   7359     (void)resourceTracker;
   7360     (void)toTransform;
   7361 }
   7362 
   7363 void transform_tohost_VkPresentTimeGOOGLE(
   7364     ResourceTracker* resourceTracker,
   7365     VkPresentTimeGOOGLE* toTransform)
   7366 {
   7367     (void)resourceTracker;
   7368     (void)toTransform;
   7369 }
   7370 
   7371 void transform_fromhost_VkPresentTimeGOOGLE(
   7372     ResourceTracker* resourceTracker,
   7373     VkPresentTimeGOOGLE* toTransform)
   7374 {
   7375     (void)resourceTracker;
   7376     (void)toTransform;
   7377 }
   7378 
   7379 void transform_tohost_VkPresentTimesInfoGOOGLE(
   7380     ResourceTracker* resourceTracker,
   7381     VkPresentTimesInfoGOOGLE* toTransform)
   7382 {
   7383     (void)resourceTracker;
   7384     (void)toTransform;
   7385     if (toTransform->pNext)
   7386     {
   7387         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7388     }
   7389     if (toTransform->pTimes)
   7390     {
   7391         for (uint32_t i = 0; i < (uint32_t)toTransform->swapchainCount; ++i)
   7392         {
   7393             transform_tohost_VkPresentTimeGOOGLE(resourceTracker, (VkPresentTimeGOOGLE*)(toTransform->pTimes + i));
   7394         }
   7395     }
   7396 }
   7397 
   7398 void transform_fromhost_VkPresentTimesInfoGOOGLE(
   7399     ResourceTracker* resourceTracker,
   7400     VkPresentTimesInfoGOOGLE* toTransform)
   7401 {
   7402     (void)resourceTracker;
   7403     (void)toTransform;
   7404     if (toTransform->pNext)
   7405     {
   7406         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7407     }
   7408     if (toTransform->pTimes)
   7409     {
   7410         for (uint32_t i = 0; i < (uint32_t)toTransform->swapchainCount; ++i)
   7411         {
   7412             transform_fromhost_VkPresentTimeGOOGLE(resourceTracker, (VkPresentTimeGOOGLE*)(toTransform->pTimes + i));
   7413         }
   7414     }
   7415 }
   7416 
   7417 #endif
   7418 #ifdef VK_NV_sample_mask_override_coverage
   7419 #endif
   7420 #ifdef VK_NV_geometry_shader_passthrough
   7421 #endif
   7422 #ifdef VK_NV_viewport_array2
   7423 #endif
   7424 #ifdef VK_NVX_multiview_per_view_attributes
   7425 void transform_tohost_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
   7426     ResourceTracker* resourceTracker,
   7427     VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* toTransform)
   7428 {
   7429     (void)resourceTracker;
   7430     (void)toTransform;
   7431     if (toTransform->pNext)
   7432     {
   7433         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7434     }
   7435 }
   7436 
   7437 void transform_fromhost_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(
   7438     ResourceTracker* resourceTracker,
   7439     VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX* toTransform)
   7440 {
   7441     (void)resourceTracker;
   7442     (void)toTransform;
   7443     if (toTransform->pNext)
   7444     {
   7445         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7446     }
   7447 }
   7448 
   7449 #endif
   7450 #ifdef VK_NV_viewport_swizzle
   7451 void transform_tohost_VkViewportSwizzleNV(
   7452     ResourceTracker* resourceTracker,
   7453     VkViewportSwizzleNV* toTransform)
   7454 {
   7455     (void)resourceTracker;
   7456     (void)toTransform;
   7457 }
   7458 
   7459 void transform_fromhost_VkViewportSwizzleNV(
   7460     ResourceTracker* resourceTracker,
   7461     VkViewportSwizzleNV* toTransform)
   7462 {
   7463     (void)resourceTracker;
   7464     (void)toTransform;
   7465 }
   7466 
   7467 void transform_tohost_VkPipelineViewportSwizzleStateCreateInfoNV(
   7468     ResourceTracker* resourceTracker,
   7469     VkPipelineViewportSwizzleStateCreateInfoNV* toTransform)
   7470 {
   7471     (void)resourceTracker;
   7472     (void)toTransform;
   7473     if (toTransform->pNext)
   7474     {
   7475         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7476     }
   7477     if (toTransform->pViewportSwizzles)
   7478     {
   7479         for (uint32_t i = 0; i < (uint32_t)toTransform->viewportCount; ++i)
   7480         {
   7481             transform_tohost_VkViewportSwizzleNV(resourceTracker, (VkViewportSwizzleNV*)(toTransform->pViewportSwizzles + i));
   7482         }
   7483     }
   7484 }
   7485 
   7486 void transform_fromhost_VkPipelineViewportSwizzleStateCreateInfoNV(
   7487     ResourceTracker* resourceTracker,
   7488     VkPipelineViewportSwizzleStateCreateInfoNV* toTransform)
   7489 {
   7490     (void)resourceTracker;
   7491     (void)toTransform;
   7492     if (toTransform->pNext)
   7493     {
   7494         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7495     }
   7496     if (toTransform->pViewportSwizzles)
   7497     {
   7498         for (uint32_t i = 0; i < (uint32_t)toTransform->viewportCount; ++i)
   7499         {
   7500             transform_fromhost_VkViewportSwizzleNV(resourceTracker, (VkViewportSwizzleNV*)(toTransform->pViewportSwizzles + i));
   7501         }
   7502     }
   7503 }
   7504 
   7505 #endif
   7506 #ifdef VK_EXT_discard_rectangles
   7507 void transform_tohost_VkPhysicalDeviceDiscardRectanglePropertiesEXT(
   7508     ResourceTracker* resourceTracker,
   7509     VkPhysicalDeviceDiscardRectanglePropertiesEXT* toTransform)
   7510 {
   7511     (void)resourceTracker;
   7512     (void)toTransform;
   7513     if (toTransform->pNext)
   7514     {
   7515         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7516     }
   7517 }
   7518 
   7519 void transform_fromhost_VkPhysicalDeviceDiscardRectanglePropertiesEXT(
   7520     ResourceTracker* resourceTracker,
   7521     VkPhysicalDeviceDiscardRectanglePropertiesEXT* toTransform)
   7522 {
   7523     (void)resourceTracker;
   7524     (void)toTransform;
   7525     if (toTransform->pNext)
   7526     {
   7527         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7528     }
   7529 }
   7530 
   7531 void transform_tohost_VkPipelineDiscardRectangleStateCreateInfoEXT(
   7532     ResourceTracker* resourceTracker,
   7533     VkPipelineDiscardRectangleStateCreateInfoEXT* toTransform)
   7534 {
   7535     (void)resourceTracker;
   7536     (void)toTransform;
   7537     if (toTransform->pNext)
   7538     {
   7539         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7540     }
   7541     if (toTransform->pDiscardRectangles)
   7542     {
   7543         for (uint32_t i = 0; i < (uint32_t)toTransform->discardRectangleCount; ++i)
   7544         {
   7545             transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pDiscardRectangles + i));
   7546         }
   7547     }
   7548 }
   7549 
   7550 void transform_fromhost_VkPipelineDiscardRectangleStateCreateInfoEXT(
   7551     ResourceTracker* resourceTracker,
   7552     VkPipelineDiscardRectangleStateCreateInfoEXT* toTransform)
   7553 {
   7554     (void)resourceTracker;
   7555     (void)toTransform;
   7556     if (toTransform->pNext)
   7557     {
   7558         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7559     }
   7560     if (toTransform->pDiscardRectangles)
   7561     {
   7562         for (uint32_t i = 0; i < (uint32_t)toTransform->discardRectangleCount; ++i)
   7563         {
   7564             transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(toTransform->pDiscardRectangles + i));
   7565         }
   7566     }
   7567 }
   7568 
   7569 #endif
   7570 #ifdef VK_EXT_conservative_rasterization
   7571 void transform_tohost_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(
   7572     ResourceTracker* resourceTracker,
   7573     VkPhysicalDeviceConservativeRasterizationPropertiesEXT* toTransform)
   7574 {
   7575     (void)resourceTracker;
   7576     (void)toTransform;
   7577     if (toTransform->pNext)
   7578     {
   7579         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7580     }
   7581 }
   7582 
   7583 void transform_fromhost_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(
   7584     ResourceTracker* resourceTracker,
   7585     VkPhysicalDeviceConservativeRasterizationPropertiesEXT* toTransform)
   7586 {
   7587     (void)resourceTracker;
   7588     (void)toTransform;
   7589     if (toTransform->pNext)
   7590     {
   7591         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7592     }
   7593 }
   7594 
   7595 void transform_tohost_VkPipelineRasterizationConservativeStateCreateInfoEXT(
   7596     ResourceTracker* resourceTracker,
   7597     VkPipelineRasterizationConservativeStateCreateInfoEXT* toTransform)
   7598 {
   7599     (void)resourceTracker;
   7600     (void)toTransform;
   7601     if (toTransform->pNext)
   7602     {
   7603         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7604     }
   7605 }
   7606 
   7607 void transform_fromhost_VkPipelineRasterizationConservativeStateCreateInfoEXT(
   7608     ResourceTracker* resourceTracker,
   7609     VkPipelineRasterizationConservativeStateCreateInfoEXT* toTransform)
   7610 {
   7611     (void)resourceTracker;
   7612     (void)toTransform;
   7613     if (toTransform->pNext)
   7614     {
   7615         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7616     }
   7617 }
   7618 
   7619 #endif
   7620 #ifdef VK_EXT_swapchain_colorspace
   7621 #endif
   7622 #ifdef VK_EXT_hdr_metadata
   7623 void transform_tohost_VkXYColorEXT(
   7624     ResourceTracker* resourceTracker,
   7625     VkXYColorEXT* toTransform)
   7626 {
   7627     (void)resourceTracker;
   7628     (void)toTransform;
   7629 }
   7630 
   7631 void transform_fromhost_VkXYColorEXT(
   7632     ResourceTracker* resourceTracker,
   7633     VkXYColorEXT* toTransform)
   7634 {
   7635     (void)resourceTracker;
   7636     (void)toTransform;
   7637 }
   7638 
   7639 void transform_tohost_VkHdrMetadataEXT(
   7640     ResourceTracker* resourceTracker,
   7641     VkHdrMetadataEXT* toTransform)
   7642 {
   7643     (void)resourceTracker;
   7644     (void)toTransform;
   7645     if (toTransform->pNext)
   7646     {
   7647         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7648     }
   7649     transform_tohost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->displayPrimaryRed));
   7650     transform_tohost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->displayPrimaryGreen));
   7651     transform_tohost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->displayPrimaryBlue));
   7652     transform_tohost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->whitePoint));
   7653 }
   7654 
   7655 void transform_fromhost_VkHdrMetadataEXT(
   7656     ResourceTracker* resourceTracker,
   7657     VkHdrMetadataEXT* toTransform)
   7658 {
   7659     (void)resourceTracker;
   7660     (void)toTransform;
   7661     if (toTransform->pNext)
   7662     {
   7663         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7664     }
   7665     transform_fromhost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->displayPrimaryRed));
   7666     transform_fromhost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->displayPrimaryGreen));
   7667     transform_fromhost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->displayPrimaryBlue));
   7668     transform_fromhost_VkXYColorEXT(resourceTracker, (VkXYColorEXT*)(&toTransform->whitePoint));
   7669 }
   7670 
   7671 #endif
   7672 #ifdef VK_MVK_ios_surface
   7673 void transform_tohost_VkIOSSurfaceCreateInfoMVK(
   7674     ResourceTracker* resourceTracker,
   7675     VkIOSSurfaceCreateInfoMVK* toTransform)
   7676 {
   7677     (void)resourceTracker;
   7678     (void)toTransform;
   7679     if (toTransform->pNext)
   7680     {
   7681         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7682     }
   7683 }
   7684 
   7685 void transform_fromhost_VkIOSSurfaceCreateInfoMVK(
   7686     ResourceTracker* resourceTracker,
   7687     VkIOSSurfaceCreateInfoMVK* toTransform)
   7688 {
   7689     (void)resourceTracker;
   7690     (void)toTransform;
   7691     if (toTransform->pNext)
   7692     {
   7693         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7694     }
   7695 }
   7696 
   7697 #endif
   7698 #ifdef VK_MVK_macos_surface
   7699 void transform_tohost_VkMacOSSurfaceCreateInfoMVK(
   7700     ResourceTracker* resourceTracker,
   7701     VkMacOSSurfaceCreateInfoMVK* toTransform)
   7702 {
   7703     (void)resourceTracker;
   7704     (void)toTransform;
   7705     if (toTransform->pNext)
   7706     {
   7707         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7708     }
   7709 }
   7710 
   7711 void transform_fromhost_VkMacOSSurfaceCreateInfoMVK(
   7712     ResourceTracker* resourceTracker,
   7713     VkMacOSSurfaceCreateInfoMVK* toTransform)
   7714 {
   7715     (void)resourceTracker;
   7716     (void)toTransform;
   7717     if (toTransform->pNext)
   7718     {
   7719         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7720     }
   7721 }
   7722 
   7723 #endif
   7724 #ifdef VK_EXT_external_memory_dma_buf
   7725 #endif
   7726 #ifdef VK_EXT_queue_family_foreign
   7727 #endif
   7728 #ifdef VK_EXT_debug_utils
   7729 void transform_tohost_VkDebugUtilsObjectNameInfoEXT(
   7730     ResourceTracker* resourceTracker,
   7731     VkDebugUtilsObjectNameInfoEXT* toTransform)
   7732 {
   7733     (void)resourceTracker;
   7734     (void)toTransform;
   7735     if (toTransform->pNext)
   7736     {
   7737         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7738     }
   7739 }
   7740 
   7741 void transform_fromhost_VkDebugUtilsObjectNameInfoEXT(
   7742     ResourceTracker* resourceTracker,
   7743     VkDebugUtilsObjectNameInfoEXT* toTransform)
   7744 {
   7745     (void)resourceTracker;
   7746     (void)toTransform;
   7747     if (toTransform->pNext)
   7748     {
   7749         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7750     }
   7751 }
   7752 
   7753 void transform_tohost_VkDebugUtilsObjectTagInfoEXT(
   7754     ResourceTracker* resourceTracker,
   7755     VkDebugUtilsObjectTagInfoEXT* toTransform)
   7756 {
   7757     (void)resourceTracker;
   7758     (void)toTransform;
   7759     if (toTransform->pNext)
   7760     {
   7761         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7762     }
   7763 }
   7764 
   7765 void transform_fromhost_VkDebugUtilsObjectTagInfoEXT(
   7766     ResourceTracker* resourceTracker,
   7767     VkDebugUtilsObjectTagInfoEXT* toTransform)
   7768 {
   7769     (void)resourceTracker;
   7770     (void)toTransform;
   7771     if (toTransform->pNext)
   7772     {
   7773         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7774     }
   7775 }
   7776 
   7777 void transform_tohost_VkDebugUtilsLabelEXT(
   7778     ResourceTracker* resourceTracker,
   7779     VkDebugUtilsLabelEXT* toTransform)
   7780 {
   7781     (void)resourceTracker;
   7782     (void)toTransform;
   7783     if (toTransform->pNext)
   7784     {
   7785         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7786     }
   7787 }
   7788 
   7789 void transform_fromhost_VkDebugUtilsLabelEXT(
   7790     ResourceTracker* resourceTracker,
   7791     VkDebugUtilsLabelEXT* toTransform)
   7792 {
   7793     (void)resourceTracker;
   7794     (void)toTransform;
   7795     if (toTransform->pNext)
   7796     {
   7797         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7798     }
   7799 }
   7800 
   7801 void transform_tohost_VkDebugUtilsMessengerCallbackDataEXT(
   7802     ResourceTracker* resourceTracker,
   7803     VkDebugUtilsMessengerCallbackDataEXT* toTransform)
   7804 {
   7805     (void)resourceTracker;
   7806     (void)toTransform;
   7807     if (toTransform->pNext)
   7808     {
   7809         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7810     }
   7811     if (toTransform->pQueueLabels)
   7812     {
   7813         for (uint32_t i = 0; i < (uint32_t)toTransform->queueLabelCount; ++i)
   7814         {
   7815             transform_tohost_VkDebugUtilsLabelEXT(resourceTracker, (VkDebugUtilsLabelEXT*)(toTransform->pQueueLabels + i));
   7816         }
   7817     }
   7818     if (toTransform->pCmdBufLabels)
   7819     {
   7820         for (uint32_t i = 0; i < (uint32_t)toTransform->cmdBufLabelCount; ++i)
   7821         {
   7822             transform_tohost_VkDebugUtilsLabelEXT(resourceTracker, (VkDebugUtilsLabelEXT*)(toTransform->pCmdBufLabels + i));
   7823         }
   7824     }
   7825     if (toTransform->pObjects)
   7826     {
   7827         for (uint32_t i = 0; i < (uint32_t)toTransform->objectCount; ++i)
   7828         {
   7829             transform_tohost_VkDebugUtilsObjectNameInfoEXT(resourceTracker, (VkDebugUtilsObjectNameInfoEXT*)(toTransform->pObjects + i));
   7830         }
   7831     }
   7832 }
   7833 
   7834 void transform_fromhost_VkDebugUtilsMessengerCallbackDataEXT(
   7835     ResourceTracker* resourceTracker,
   7836     VkDebugUtilsMessengerCallbackDataEXT* toTransform)
   7837 {
   7838     (void)resourceTracker;
   7839     (void)toTransform;
   7840     if (toTransform->pNext)
   7841     {
   7842         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7843     }
   7844     if (toTransform->pQueueLabels)
   7845     {
   7846         for (uint32_t i = 0; i < (uint32_t)toTransform->queueLabelCount; ++i)
   7847         {
   7848             transform_fromhost_VkDebugUtilsLabelEXT(resourceTracker, (VkDebugUtilsLabelEXT*)(toTransform->pQueueLabels + i));
   7849         }
   7850     }
   7851     if (toTransform->pCmdBufLabels)
   7852     {
   7853         for (uint32_t i = 0; i < (uint32_t)toTransform->cmdBufLabelCount; ++i)
   7854         {
   7855             transform_fromhost_VkDebugUtilsLabelEXT(resourceTracker, (VkDebugUtilsLabelEXT*)(toTransform->pCmdBufLabels + i));
   7856         }
   7857     }
   7858     if (toTransform->pObjects)
   7859     {
   7860         for (uint32_t i = 0; i < (uint32_t)toTransform->objectCount; ++i)
   7861         {
   7862             transform_fromhost_VkDebugUtilsObjectNameInfoEXT(resourceTracker, (VkDebugUtilsObjectNameInfoEXT*)(toTransform->pObjects + i));
   7863         }
   7864     }
   7865 }
   7866 
   7867 void transform_tohost_VkDebugUtilsMessengerCreateInfoEXT(
   7868     ResourceTracker* resourceTracker,
   7869     VkDebugUtilsMessengerCreateInfoEXT* toTransform)
   7870 {
   7871     (void)resourceTracker;
   7872     (void)toTransform;
   7873     if (toTransform->pNext)
   7874     {
   7875         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7876     }
   7877 }
   7878 
   7879 void transform_fromhost_VkDebugUtilsMessengerCreateInfoEXT(
   7880     ResourceTracker* resourceTracker,
   7881     VkDebugUtilsMessengerCreateInfoEXT* toTransform)
   7882 {
   7883     (void)resourceTracker;
   7884     (void)toTransform;
   7885     if (toTransform->pNext)
   7886     {
   7887         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7888     }
   7889 }
   7890 
   7891 #endif
   7892 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
   7893 void transform_tohost_VkAndroidHardwareBufferUsageANDROID(
   7894     ResourceTracker* resourceTracker,
   7895     VkAndroidHardwareBufferUsageANDROID* toTransform)
   7896 {
   7897     (void)resourceTracker;
   7898     (void)toTransform;
   7899     if (toTransform->pNext)
   7900     {
   7901         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7902     }
   7903 }
   7904 
   7905 void transform_fromhost_VkAndroidHardwareBufferUsageANDROID(
   7906     ResourceTracker* resourceTracker,
   7907     VkAndroidHardwareBufferUsageANDROID* toTransform)
   7908 {
   7909     (void)resourceTracker;
   7910     (void)toTransform;
   7911     if (toTransform->pNext)
   7912     {
   7913         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7914     }
   7915 }
   7916 
   7917 void transform_tohost_VkAndroidHardwareBufferPropertiesANDROID(
   7918     ResourceTracker* resourceTracker,
   7919     VkAndroidHardwareBufferPropertiesANDROID* toTransform)
   7920 {
   7921     (void)resourceTracker;
   7922     (void)toTransform;
   7923     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   7924     if (toTransform->pNext)
   7925     {
   7926         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7927     }
   7928 }
   7929 
   7930 void transform_fromhost_VkAndroidHardwareBufferPropertiesANDROID(
   7931     ResourceTracker* resourceTracker,
   7932     VkAndroidHardwareBufferPropertiesANDROID* toTransform)
   7933 {
   7934     (void)resourceTracker;
   7935     (void)toTransform;
   7936     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   7937     if (toTransform->pNext)
   7938     {
   7939         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7940     }
   7941 }
   7942 
   7943 void transform_tohost_VkAndroidHardwareBufferFormatPropertiesANDROID(
   7944     ResourceTracker* resourceTracker,
   7945     VkAndroidHardwareBufferFormatPropertiesANDROID* toTransform)
   7946 {
   7947     (void)resourceTracker;
   7948     (void)toTransform;
   7949     if (toTransform->pNext)
   7950     {
   7951         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7952     }
   7953     transform_tohost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->samplerYcbcrConversionComponents));
   7954 }
   7955 
   7956 void transform_fromhost_VkAndroidHardwareBufferFormatPropertiesANDROID(
   7957     ResourceTracker* resourceTracker,
   7958     VkAndroidHardwareBufferFormatPropertiesANDROID* toTransform)
   7959 {
   7960     (void)resourceTracker;
   7961     (void)toTransform;
   7962     if (toTransform->pNext)
   7963     {
   7964         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7965     }
   7966     transform_fromhost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->samplerYcbcrConversionComponents));
   7967 }
   7968 
   7969 void transform_tohost_VkImportAndroidHardwareBufferInfoANDROID(
   7970     ResourceTracker* resourceTracker,
   7971     VkImportAndroidHardwareBufferInfoANDROID* toTransform)
   7972 {
   7973     (void)resourceTracker;
   7974     (void)toTransform;
   7975     if (toTransform->pNext)
   7976     {
   7977         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7978     }
   7979 }
   7980 
   7981 void transform_fromhost_VkImportAndroidHardwareBufferInfoANDROID(
   7982     ResourceTracker* resourceTracker,
   7983     VkImportAndroidHardwareBufferInfoANDROID* toTransform)
   7984 {
   7985     (void)resourceTracker;
   7986     (void)toTransform;
   7987     if (toTransform->pNext)
   7988     {
   7989         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   7990     }
   7991 }
   7992 
   7993 void transform_tohost_VkMemoryGetAndroidHardwareBufferInfoANDROID(
   7994     ResourceTracker* resourceTracker,
   7995     VkMemoryGetAndroidHardwareBufferInfoANDROID* toTransform)
   7996 {
   7997     (void)resourceTracker;
   7998     (void)toTransform;
   7999     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   8000     if (toTransform->pNext)
   8001     {
   8002         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8003     }
   8004 }
   8005 
   8006 void transform_fromhost_VkMemoryGetAndroidHardwareBufferInfoANDROID(
   8007     ResourceTracker* resourceTracker,
   8008     VkMemoryGetAndroidHardwareBufferInfoANDROID* toTransform)
   8009 {
   8010     (void)resourceTracker;
   8011     (void)toTransform;
   8012     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)&toTransform->memory, 1, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)nullptr, 0);
   8013     if (toTransform->pNext)
   8014     {
   8015         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8016     }
   8017 }
   8018 
   8019 void transform_tohost_VkExternalFormatANDROID(
   8020     ResourceTracker* resourceTracker,
   8021     VkExternalFormatANDROID* toTransform)
   8022 {
   8023     (void)resourceTracker;
   8024     (void)toTransform;
   8025     if (toTransform->pNext)
   8026     {
   8027         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8028     }
   8029 }
   8030 
   8031 void transform_fromhost_VkExternalFormatANDROID(
   8032     ResourceTracker* resourceTracker,
   8033     VkExternalFormatANDROID* toTransform)
   8034 {
   8035     (void)resourceTracker;
   8036     (void)toTransform;
   8037     if (toTransform->pNext)
   8038     {
   8039         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8040     }
   8041 }
   8042 
   8043 #endif
   8044 #ifdef VK_EXT_sampler_filter_minmax
   8045 void transform_tohost_VkSamplerReductionModeCreateInfoEXT(
   8046     ResourceTracker* resourceTracker,
   8047     VkSamplerReductionModeCreateInfoEXT* toTransform)
   8048 {
   8049     (void)resourceTracker;
   8050     (void)toTransform;
   8051     if (toTransform->pNext)
   8052     {
   8053         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8054     }
   8055 }
   8056 
   8057 void transform_fromhost_VkSamplerReductionModeCreateInfoEXT(
   8058     ResourceTracker* resourceTracker,
   8059     VkSamplerReductionModeCreateInfoEXT* toTransform)
   8060 {
   8061     (void)resourceTracker;
   8062     (void)toTransform;
   8063     if (toTransform->pNext)
   8064     {
   8065         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8066     }
   8067 }
   8068 
   8069 void transform_tohost_VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT(
   8070     ResourceTracker* resourceTracker,
   8071     VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* toTransform)
   8072 {
   8073     (void)resourceTracker;
   8074     (void)toTransform;
   8075     if (toTransform->pNext)
   8076     {
   8077         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8078     }
   8079 }
   8080 
   8081 void transform_fromhost_VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT(
   8082     ResourceTracker* resourceTracker,
   8083     VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT* toTransform)
   8084 {
   8085     (void)resourceTracker;
   8086     (void)toTransform;
   8087     if (toTransform->pNext)
   8088     {
   8089         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8090     }
   8091 }
   8092 
   8093 #endif
   8094 #ifdef VK_AMD_gpu_shader_int16
   8095 #endif
   8096 #ifdef VK_AMD_mixed_attachment_samples
   8097 #endif
   8098 #ifdef VK_AMD_shader_fragment_mask
   8099 #endif
   8100 #ifdef VK_EXT_shader_stencil_export
   8101 #endif
   8102 #ifdef VK_EXT_sample_locations
   8103 void transform_tohost_VkSampleLocationEXT(
   8104     ResourceTracker* resourceTracker,
   8105     VkSampleLocationEXT* toTransform)
   8106 {
   8107     (void)resourceTracker;
   8108     (void)toTransform;
   8109 }
   8110 
   8111 void transform_fromhost_VkSampleLocationEXT(
   8112     ResourceTracker* resourceTracker,
   8113     VkSampleLocationEXT* toTransform)
   8114 {
   8115     (void)resourceTracker;
   8116     (void)toTransform;
   8117 }
   8118 
   8119 void transform_tohost_VkSampleLocationsInfoEXT(
   8120     ResourceTracker* resourceTracker,
   8121     VkSampleLocationsInfoEXT* toTransform)
   8122 {
   8123     (void)resourceTracker;
   8124     (void)toTransform;
   8125     if (toTransform->pNext)
   8126     {
   8127         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8128     }
   8129     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->sampleLocationGridSize));
   8130     if (toTransform->pSampleLocations)
   8131     {
   8132         for (uint32_t i = 0; i < (uint32_t)toTransform->sampleLocationsCount; ++i)
   8133         {
   8134             transform_tohost_VkSampleLocationEXT(resourceTracker, (VkSampleLocationEXT*)(toTransform->pSampleLocations + i));
   8135         }
   8136     }
   8137 }
   8138 
   8139 void transform_fromhost_VkSampleLocationsInfoEXT(
   8140     ResourceTracker* resourceTracker,
   8141     VkSampleLocationsInfoEXT* toTransform)
   8142 {
   8143     (void)resourceTracker;
   8144     (void)toTransform;
   8145     if (toTransform->pNext)
   8146     {
   8147         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8148     }
   8149     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->sampleLocationGridSize));
   8150     if (toTransform->pSampleLocations)
   8151     {
   8152         for (uint32_t i = 0; i < (uint32_t)toTransform->sampleLocationsCount; ++i)
   8153         {
   8154             transform_fromhost_VkSampleLocationEXT(resourceTracker, (VkSampleLocationEXT*)(toTransform->pSampleLocations + i));
   8155         }
   8156     }
   8157 }
   8158 
   8159 void transform_tohost_VkAttachmentSampleLocationsEXT(
   8160     ResourceTracker* resourceTracker,
   8161     VkAttachmentSampleLocationsEXT* toTransform)
   8162 {
   8163     (void)resourceTracker;
   8164     (void)toTransform;
   8165     transform_tohost_VkSampleLocationsInfoEXT(resourceTracker, (VkSampleLocationsInfoEXT*)(&toTransform->sampleLocationsInfo));
   8166 }
   8167 
   8168 void transform_fromhost_VkAttachmentSampleLocationsEXT(
   8169     ResourceTracker* resourceTracker,
   8170     VkAttachmentSampleLocationsEXT* toTransform)
   8171 {
   8172     (void)resourceTracker;
   8173     (void)toTransform;
   8174     transform_fromhost_VkSampleLocationsInfoEXT(resourceTracker, (VkSampleLocationsInfoEXT*)(&toTransform->sampleLocationsInfo));
   8175 }
   8176 
   8177 void transform_tohost_VkSubpassSampleLocationsEXT(
   8178     ResourceTracker* resourceTracker,
   8179     VkSubpassSampleLocationsEXT* toTransform)
   8180 {
   8181     (void)resourceTracker;
   8182     (void)toTransform;
   8183     transform_tohost_VkSampleLocationsInfoEXT(resourceTracker, (VkSampleLocationsInfoEXT*)(&toTransform->sampleLocationsInfo));
   8184 }
   8185 
   8186 void transform_fromhost_VkSubpassSampleLocationsEXT(
   8187     ResourceTracker* resourceTracker,
   8188     VkSubpassSampleLocationsEXT* toTransform)
   8189 {
   8190     (void)resourceTracker;
   8191     (void)toTransform;
   8192     transform_fromhost_VkSampleLocationsInfoEXT(resourceTracker, (VkSampleLocationsInfoEXT*)(&toTransform->sampleLocationsInfo));
   8193 }
   8194 
   8195 void transform_tohost_VkRenderPassSampleLocationsBeginInfoEXT(
   8196     ResourceTracker* resourceTracker,
   8197     VkRenderPassSampleLocationsBeginInfoEXT* toTransform)
   8198 {
   8199     (void)resourceTracker;
   8200     (void)toTransform;
   8201     if (toTransform->pNext)
   8202     {
   8203         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8204     }
   8205     if (toTransform->pAttachmentInitialSampleLocations)
   8206     {
   8207         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentInitialSampleLocationsCount; ++i)
   8208         {
   8209             transform_tohost_VkAttachmentSampleLocationsEXT(resourceTracker, (VkAttachmentSampleLocationsEXT*)(toTransform->pAttachmentInitialSampleLocations + i));
   8210         }
   8211     }
   8212     if (toTransform->pPostSubpassSampleLocations)
   8213     {
   8214         for (uint32_t i = 0; i < (uint32_t)toTransform->postSubpassSampleLocationsCount; ++i)
   8215         {
   8216             transform_tohost_VkSubpassSampleLocationsEXT(resourceTracker, (VkSubpassSampleLocationsEXT*)(toTransform->pPostSubpassSampleLocations + i));
   8217         }
   8218     }
   8219 }
   8220 
   8221 void transform_fromhost_VkRenderPassSampleLocationsBeginInfoEXT(
   8222     ResourceTracker* resourceTracker,
   8223     VkRenderPassSampleLocationsBeginInfoEXT* toTransform)
   8224 {
   8225     (void)resourceTracker;
   8226     (void)toTransform;
   8227     if (toTransform->pNext)
   8228     {
   8229         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8230     }
   8231     if (toTransform->pAttachmentInitialSampleLocations)
   8232     {
   8233         for (uint32_t i = 0; i < (uint32_t)toTransform->attachmentInitialSampleLocationsCount; ++i)
   8234         {
   8235             transform_fromhost_VkAttachmentSampleLocationsEXT(resourceTracker, (VkAttachmentSampleLocationsEXT*)(toTransform->pAttachmentInitialSampleLocations + i));
   8236         }
   8237     }
   8238     if (toTransform->pPostSubpassSampleLocations)
   8239     {
   8240         for (uint32_t i = 0; i < (uint32_t)toTransform->postSubpassSampleLocationsCount; ++i)
   8241         {
   8242             transform_fromhost_VkSubpassSampleLocationsEXT(resourceTracker, (VkSubpassSampleLocationsEXT*)(toTransform->pPostSubpassSampleLocations + i));
   8243         }
   8244     }
   8245 }
   8246 
   8247 void transform_tohost_VkPipelineSampleLocationsStateCreateInfoEXT(
   8248     ResourceTracker* resourceTracker,
   8249     VkPipelineSampleLocationsStateCreateInfoEXT* toTransform)
   8250 {
   8251     (void)resourceTracker;
   8252     (void)toTransform;
   8253     if (toTransform->pNext)
   8254     {
   8255         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8256     }
   8257     transform_tohost_VkSampleLocationsInfoEXT(resourceTracker, (VkSampleLocationsInfoEXT*)(&toTransform->sampleLocationsInfo));
   8258 }
   8259 
   8260 void transform_fromhost_VkPipelineSampleLocationsStateCreateInfoEXT(
   8261     ResourceTracker* resourceTracker,
   8262     VkPipelineSampleLocationsStateCreateInfoEXT* toTransform)
   8263 {
   8264     (void)resourceTracker;
   8265     (void)toTransform;
   8266     if (toTransform->pNext)
   8267     {
   8268         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8269     }
   8270     transform_fromhost_VkSampleLocationsInfoEXT(resourceTracker, (VkSampleLocationsInfoEXT*)(&toTransform->sampleLocationsInfo));
   8271 }
   8272 
   8273 void transform_tohost_VkPhysicalDeviceSampleLocationsPropertiesEXT(
   8274     ResourceTracker* resourceTracker,
   8275     VkPhysicalDeviceSampleLocationsPropertiesEXT* toTransform)
   8276 {
   8277     (void)resourceTracker;
   8278     (void)toTransform;
   8279     if (toTransform->pNext)
   8280     {
   8281         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8282     }
   8283     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxSampleLocationGridSize));
   8284 }
   8285 
   8286 void transform_fromhost_VkPhysicalDeviceSampleLocationsPropertiesEXT(
   8287     ResourceTracker* resourceTracker,
   8288     VkPhysicalDeviceSampleLocationsPropertiesEXT* toTransform)
   8289 {
   8290     (void)resourceTracker;
   8291     (void)toTransform;
   8292     if (toTransform->pNext)
   8293     {
   8294         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8295     }
   8296     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxSampleLocationGridSize));
   8297 }
   8298 
   8299 void transform_tohost_VkMultisamplePropertiesEXT(
   8300     ResourceTracker* resourceTracker,
   8301     VkMultisamplePropertiesEXT* toTransform)
   8302 {
   8303     (void)resourceTracker;
   8304     (void)toTransform;
   8305     if (toTransform->pNext)
   8306     {
   8307         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8308     }
   8309     transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxSampleLocationGridSize));
   8310 }
   8311 
   8312 void transform_fromhost_VkMultisamplePropertiesEXT(
   8313     ResourceTracker* resourceTracker,
   8314     VkMultisamplePropertiesEXT* toTransform)
   8315 {
   8316     (void)resourceTracker;
   8317     (void)toTransform;
   8318     if (toTransform->pNext)
   8319     {
   8320         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8321     }
   8322     transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxSampleLocationGridSize));
   8323 }
   8324 
   8325 #endif
   8326 #ifdef VK_EXT_blend_operation_advanced
   8327 void transform_tohost_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(
   8328     ResourceTracker* resourceTracker,
   8329     VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* toTransform)
   8330 {
   8331     (void)resourceTracker;
   8332     (void)toTransform;
   8333     if (toTransform->pNext)
   8334     {
   8335         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8336     }
   8337 }
   8338 
   8339 void transform_fromhost_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(
   8340     ResourceTracker* resourceTracker,
   8341     VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT* toTransform)
   8342 {
   8343     (void)resourceTracker;
   8344     (void)toTransform;
   8345     if (toTransform->pNext)
   8346     {
   8347         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8348     }
   8349 }
   8350 
   8351 void transform_tohost_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(
   8352     ResourceTracker* resourceTracker,
   8353     VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* toTransform)
   8354 {
   8355     (void)resourceTracker;
   8356     (void)toTransform;
   8357     if (toTransform->pNext)
   8358     {
   8359         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8360     }
   8361 }
   8362 
   8363 void transform_fromhost_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(
   8364     ResourceTracker* resourceTracker,
   8365     VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT* toTransform)
   8366 {
   8367     (void)resourceTracker;
   8368     (void)toTransform;
   8369     if (toTransform->pNext)
   8370     {
   8371         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8372     }
   8373 }
   8374 
   8375 void transform_tohost_VkPipelineColorBlendAdvancedStateCreateInfoEXT(
   8376     ResourceTracker* resourceTracker,
   8377     VkPipelineColorBlendAdvancedStateCreateInfoEXT* toTransform)
   8378 {
   8379     (void)resourceTracker;
   8380     (void)toTransform;
   8381     if (toTransform->pNext)
   8382     {
   8383         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8384     }
   8385 }
   8386 
   8387 void transform_fromhost_VkPipelineColorBlendAdvancedStateCreateInfoEXT(
   8388     ResourceTracker* resourceTracker,
   8389     VkPipelineColorBlendAdvancedStateCreateInfoEXT* toTransform)
   8390 {
   8391     (void)resourceTracker;
   8392     (void)toTransform;
   8393     if (toTransform->pNext)
   8394     {
   8395         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8396     }
   8397 }
   8398 
   8399 #endif
   8400 #ifdef VK_NV_fragment_coverage_to_color
   8401 void transform_tohost_VkPipelineCoverageToColorStateCreateInfoNV(
   8402     ResourceTracker* resourceTracker,
   8403     VkPipelineCoverageToColorStateCreateInfoNV* toTransform)
   8404 {
   8405     (void)resourceTracker;
   8406     (void)toTransform;
   8407     if (toTransform->pNext)
   8408     {
   8409         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8410     }
   8411 }
   8412 
   8413 void transform_fromhost_VkPipelineCoverageToColorStateCreateInfoNV(
   8414     ResourceTracker* resourceTracker,
   8415     VkPipelineCoverageToColorStateCreateInfoNV* toTransform)
   8416 {
   8417     (void)resourceTracker;
   8418     (void)toTransform;
   8419     if (toTransform->pNext)
   8420     {
   8421         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8422     }
   8423 }
   8424 
   8425 #endif
   8426 #ifdef VK_NV_framebuffer_mixed_samples
   8427 void transform_tohost_VkPipelineCoverageModulationStateCreateInfoNV(
   8428     ResourceTracker* resourceTracker,
   8429     VkPipelineCoverageModulationStateCreateInfoNV* toTransform)
   8430 {
   8431     (void)resourceTracker;
   8432     (void)toTransform;
   8433     if (toTransform->pNext)
   8434     {
   8435         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8436     }
   8437 }
   8438 
   8439 void transform_fromhost_VkPipelineCoverageModulationStateCreateInfoNV(
   8440     ResourceTracker* resourceTracker,
   8441     VkPipelineCoverageModulationStateCreateInfoNV* toTransform)
   8442 {
   8443     (void)resourceTracker;
   8444     (void)toTransform;
   8445     if (toTransform->pNext)
   8446     {
   8447         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8448     }
   8449 }
   8450 
   8451 #endif
   8452 #ifdef VK_NV_fill_rectangle
   8453 #endif
   8454 #ifdef VK_EXT_post_depth_coverage
   8455 #endif
   8456 #ifdef VK_EXT_validation_cache
   8457 void transform_tohost_VkValidationCacheCreateInfoEXT(
   8458     ResourceTracker* resourceTracker,
   8459     VkValidationCacheCreateInfoEXT* toTransform)
   8460 {
   8461     (void)resourceTracker;
   8462     (void)toTransform;
   8463     if (toTransform->pNext)
   8464     {
   8465         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8466     }
   8467 }
   8468 
   8469 void transform_fromhost_VkValidationCacheCreateInfoEXT(
   8470     ResourceTracker* resourceTracker,
   8471     VkValidationCacheCreateInfoEXT* toTransform)
   8472 {
   8473     (void)resourceTracker;
   8474     (void)toTransform;
   8475     if (toTransform->pNext)
   8476     {
   8477         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8478     }
   8479 }
   8480 
   8481 void transform_tohost_VkShaderModuleValidationCacheCreateInfoEXT(
   8482     ResourceTracker* resourceTracker,
   8483     VkShaderModuleValidationCacheCreateInfoEXT* toTransform)
   8484 {
   8485     (void)resourceTracker;
   8486     (void)toTransform;
   8487     if (toTransform->pNext)
   8488     {
   8489         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8490     }
   8491 }
   8492 
   8493 void transform_fromhost_VkShaderModuleValidationCacheCreateInfoEXT(
   8494     ResourceTracker* resourceTracker,
   8495     VkShaderModuleValidationCacheCreateInfoEXT* toTransform)
   8496 {
   8497     (void)resourceTracker;
   8498     (void)toTransform;
   8499     if (toTransform->pNext)
   8500     {
   8501         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8502     }
   8503 }
   8504 
   8505 #endif
   8506 #ifdef VK_EXT_descriptor_indexing
   8507 void transform_tohost_VkDescriptorSetLayoutBindingFlagsCreateInfoEXT(
   8508     ResourceTracker* resourceTracker,
   8509     VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* toTransform)
   8510 {
   8511     (void)resourceTracker;
   8512     (void)toTransform;
   8513     if (toTransform->pNext)
   8514     {
   8515         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8516     }
   8517 }
   8518 
   8519 void transform_fromhost_VkDescriptorSetLayoutBindingFlagsCreateInfoEXT(
   8520     ResourceTracker* resourceTracker,
   8521     VkDescriptorSetLayoutBindingFlagsCreateInfoEXT* toTransform)
   8522 {
   8523     (void)resourceTracker;
   8524     (void)toTransform;
   8525     if (toTransform->pNext)
   8526     {
   8527         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8528     }
   8529 }
   8530 
   8531 void transform_tohost_VkPhysicalDeviceDescriptorIndexingFeaturesEXT(
   8532     ResourceTracker* resourceTracker,
   8533     VkPhysicalDeviceDescriptorIndexingFeaturesEXT* toTransform)
   8534 {
   8535     (void)resourceTracker;
   8536     (void)toTransform;
   8537     if (toTransform->pNext)
   8538     {
   8539         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8540     }
   8541 }
   8542 
   8543 void transform_fromhost_VkPhysicalDeviceDescriptorIndexingFeaturesEXT(
   8544     ResourceTracker* resourceTracker,
   8545     VkPhysicalDeviceDescriptorIndexingFeaturesEXT* toTransform)
   8546 {
   8547     (void)resourceTracker;
   8548     (void)toTransform;
   8549     if (toTransform->pNext)
   8550     {
   8551         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8552     }
   8553 }
   8554 
   8555 void transform_tohost_VkPhysicalDeviceDescriptorIndexingPropertiesEXT(
   8556     ResourceTracker* resourceTracker,
   8557     VkPhysicalDeviceDescriptorIndexingPropertiesEXT* toTransform)
   8558 {
   8559     (void)resourceTracker;
   8560     (void)toTransform;
   8561     if (toTransform->pNext)
   8562     {
   8563         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8564     }
   8565 }
   8566 
   8567 void transform_fromhost_VkPhysicalDeviceDescriptorIndexingPropertiesEXT(
   8568     ResourceTracker* resourceTracker,
   8569     VkPhysicalDeviceDescriptorIndexingPropertiesEXT* toTransform)
   8570 {
   8571     (void)resourceTracker;
   8572     (void)toTransform;
   8573     if (toTransform->pNext)
   8574     {
   8575         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8576     }
   8577 }
   8578 
   8579 void transform_tohost_VkDescriptorSetVariableDescriptorCountAllocateInfoEXT(
   8580     ResourceTracker* resourceTracker,
   8581     VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* toTransform)
   8582 {
   8583     (void)resourceTracker;
   8584     (void)toTransform;
   8585     if (toTransform->pNext)
   8586     {
   8587         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8588     }
   8589 }
   8590 
   8591 void transform_fromhost_VkDescriptorSetVariableDescriptorCountAllocateInfoEXT(
   8592     ResourceTracker* resourceTracker,
   8593     VkDescriptorSetVariableDescriptorCountAllocateInfoEXT* toTransform)
   8594 {
   8595     (void)resourceTracker;
   8596     (void)toTransform;
   8597     if (toTransform->pNext)
   8598     {
   8599         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8600     }
   8601 }
   8602 
   8603 void transform_tohost_VkDescriptorSetVariableDescriptorCountLayoutSupportEXT(
   8604     ResourceTracker* resourceTracker,
   8605     VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* toTransform)
   8606 {
   8607     (void)resourceTracker;
   8608     (void)toTransform;
   8609     if (toTransform->pNext)
   8610     {
   8611         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8612     }
   8613 }
   8614 
   8615 void transform_fromhost_VkDescriptorSetVariableDescriptorCountLayoutSupportEXT(
   8616     ResourceTracker* resourceTracker,
   8617     VkDescriptorSetVariableDescriptorCountLayoutSupportEXT* toTransform)
   8618 {
   8619     (void)resourceTracker;
   8620     (void)toTransform;
   8621     if (toTransform->pNext)
   8622     {
   8623         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8624     }
   8625 }
   8626 
   8627 #endif
   8628 #ifdef VK_EXT_shader_viewport_index_layer
   8629 #endif
   8630 #ifdef VK_EXT_global_priority
   8631 void transform_tohost_VkDeviceQueueGlobalPriorityCreateInfoEXT(
   8632     ResourceTracker* resourceTracker,
   8633     VkDeviceQueueGlobalPriorityCreateInfoEXT* toTransform)
   8634 {
   8635     (void)resourceTracker;
   8636     (void)toTransform;
   8637     if (toTransform->pNext)
   8638     {
   8639         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8640     }
   8641 }
   8642 
   8643 void transform_fromhost_VkDeviceQueueGlobalPriorityCreateInfoEXT(
   8644     ResourceTracker* resourceTracker,
   8645     VkDeviceQueueGlobalPriorityCreateInfoEXT* toTransform)
   8646 {
   8647     (void)resourceTracker;
   8648     (void)toTransform;
   8649     if (toTransform->pNext)
   8650     {
   8651         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8652     }
   8653 }
   8654 
   8655 #endif
   8656 #ifdef VK_EXT_external_memory_host
   8657 void transform_tohost_VkImportMemoryHostPointerInfoEXT(
   8658     ResourceTracker* resourceTracker,
   8659     VkImportMemoryHostPointerInfoEXT* toTransform)
   8660 {
   8661     (void)resourceTracker;
   8662     (void)toTransform;
   8663     if (toTransform->pNext)
   8664     {
   8665         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8666     }
   8667 }
   8668 
   8669 void transform_fromhost_VkImportMemoryHostPointerInfoEXT(
   8670     ResourceTracker* resourceTracker,
   8671     VkImportMemoryHostPointerInfoEXT* toTransform)
   8672 {
   8673     (void)resourceTracker;
   8674     (void)toTransform;
   8675     if (toTransform->pNext)
   8676     {
   8677         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8678     }
   8679 }
   8680 
   8681 void transform_tohost_VkMemoryHostPointerPropertiesEXT(
   8682     ResourceTracker* resourceTracker,
   8683     VkMemoryHostPointerPropertiesEXT* toTransform)
   8684 {
   8685     (void)resourceTracker;
   8686     (void)toTransform;
   8687     resourceTracker->deviceMemoryTransform_tohost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   8688     if (toTransform->pNext)
   8689     {
   8690         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8691     }
   8692 }
   8693 
   8694 void transform_fromhost_VkMemoryHostPointerPropertiesEXT(
   8695     ResourceTracker* resourceTracker,
   8696     VkMemoryHostPointerPropertiesEXT* toTransform)
   8697 {
   8698     (void)resourceTracker;
   8699     (void)toTransform;
   8700     resourceTracker->deviceMemoryTransform_fromhost((VkDeviceMemory*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (VkDeviceSize*)nullptr, 0, (uint32_t*)nullptr, 0, (uint32_t*)&toTransform->memoryTypeBits, 1);
   8701     if (toTransform->pNext)
   8702     {
   8703         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8704     }
   8705 }
   8706 
   8707 void transform_tohost_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(
   8708     ResourceTracker* resourceTracker,
   8709     VkPhysicalDeviceExternalMemoryHostPropertiesEXT* toTransform)
   8710 {
   8711     (void)resourceTracker;
   8712     (void)toTransform;
   8713     if (toTransform->pNext)
   8714     {
   8715         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8716     }
   8717 }
   8718 
   8719 void transform_fromhost_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(
   8720     ResourceTracker* resourceTracker,
   8721     VkPhysicalDeviceExternalMemoryHostPropertiesEXT* toTransform)
   8722 {
   8723     (void)resourceTracker;
   8724     (void)toTransform;
   8725     if (toTransform->pNext)
   8726     {
   8727         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8728     }
   8729 }
   8730 
   8731 #endif
   8732 #ifdef VK_AMD_buffer_marker
   8733 #endif
   8734 #ifdef VK_AMD_shader_core_properties
   8735 void transform_tohost_VkPhysicalDeviceShaderCorePropertiesAMD(
   8736     ResourceTracker* resourceTracker,
   8737     VkPhysicalDeviceShaderCorePropertiesAMD* toTransform)
   8738 {
   8739     (void)resourceTracker;
   8740     (void)toTransform;
   8741     if (toTransform->pNext)
   8742     {
   8743         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8744     }
   8745 }
   8746 
   8747 void transform_fromhost_VkPhysicalDeviceShaderCorePropertiesAMD(
   8748     ResourceTracker* resourceTracker,
   8749     VkPhysicalDeviceShaderCorePropertiesAMD* toTransform)
   8750 {
   8751     (void)resourceTracker;
   8752     (void)toTransform;
   8753     if (toTransform->pNext)
   8754     {
   8755         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8756     }
   8757 }
   8758 
   8759 #endif
   8760 #ifdef VK_EXT_vertex_attribute_divisor
   8761 void transform_tohost_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
   8762     ResourceTracker* resourceTracker,
   8763     VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* toTransform)
   8764 {
   8765     (void)resourceTracker;
   8766     (void)toTransform;
   8767     if (toTransform->pNext)
   8768     {
   8769         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8770     }
   8771 }
   8772 
   8773 void transform_fromhost_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(
   8774     ResourceTracker* resourceTracker,
   8775     VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT* toTransform)
   8776 {
   8777     (void)resourceTracker;
   8778     (void)toTransform;
   8779     if (toTransform->pNext)
   8780     {
   8781         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8782     }
   8783 }
   8784 
   8785 void transform_tohost_VkVertexInputBindingDivisorDescriptionEXT(
   8786     ResourceTracker* resourceTracker,
   8787     VkVertexInputBindingDivisorDescriptionEXT* toTransform)
   8788 {
   8789     (void)resourceTracker;
   8790     (void)toTransform;
   8791 }
   8792 
   8793 void transform_fromhost_VkVertexInputBindingDivisorDescriptionEXT(
   8794     ResourceTracker* resourceTracker,
   8795     VkVertexInputBindingDivisorDescriptionEXT* toTransform)
   8796 {
   8797     (void)resourceTracker;
   8798     (void)toTransform;
   8799 }
   8800 
   8801 void transform_tohost_VkPipelineVertexInputDivisorStateCreateInfoEXT(
   8802     ResourceTracker* resourceTracker,
   8803     VkPipelineVertexInputDivisorStateCreateInfoEXT* toTransform)
   8804 {
   8805     (void)resourceTracker;
   8806     (void)toTransform;
   8807     if (toTransform->pNext)
   8808     {
   8809         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8810     }
   8811     if (toTransform->pVertexBindingDivisors)
   8812     {
   8813         for (uint32_t i = 0; i < (uint32_t)toTransform->vertexBindingDivisorCount; ++i)
   8814         {
   8815             transform_tohost_VkVertexInputBindingDivisorDescriptionEXT(resourceTracker, (VkVertexInputBindingDivisorDescriptionEXT*)(toTransform->pVertexBindingDivisors + i));
   8816         }
   8817     }
   8818 }
   8819 
   8820 void transform_fromhost_VkPipelineVertexInputDivisorStateCreateInfoEXT(
   8821     ResourceTracker* resourceTracker,
   8822     VkPipelineVertexInputDivisorStateCreateInfoEXT* toTransform)
   8823 {
   8824     (void)resourceTracker;
   8825     (void)toTransform;
   8826     if (toTransform->pNext)
   8827     {
   8828         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8829     }
   8830     if (toTransform->pVertexBindingDivisors)
   8831     {
   8832         for (uint32_t i = 0; i < (uint32_t)toTransform->vertexBindingDivisorCount; ++i)
   8833         {
   8834             transform_fromhost_VkVertexInputBindingDivisorDescriptionEXT(resourceTracker, (VkVertexInputBindingDivisorDescriptionEXT*)(toTransform->pVertexBindingDivisors + i));
   8835         }
   8836     }
   8837 }
   8838 
   8839 #endif
   8840 #ifdef VK_NV_shader_subgroup_partitioned
   8841 #endif
   8842 #ifdef VK_NV_device_diagnostic_checkpoints
   8843 void transform_tohost_VkQueueFamilyCheckpointPropertiesNV(
   8844     ResourceTracker* resourceTracker,
   8845     VkQueueFamilyCheckpointPropertiesNV* toTransform)
   8846 {
   8847     (void)resourceTracker;
   8848     (void)toTransform;
   8849     if (toTransform->pNext)
   8850     {
   8851         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8852     }
   8853 }
   8854 
   8855 void transform_fromhost_VkQueueFamilyCheckpointPropertiesNV(
   8856     ResourceTracker* resourceTracker,
   8857     VkQueueFamilyCheckpointPropertiesNV* toTransform)
   8858 {
   8859     (void)resourceTracker;
   8860     (void)toTransform;
   8861     if (toTransform->pNext)
   8862     {
   8863         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8864     }
   8865 }
   8866 
   8867 void transform_tohost_VkCheckpointDataNV(
   8868     ResourceTracker* resourceTracker,
   8869     VkCheckpointDataNV* toTransform)
   8870 {
   8871     (void)resourceTracker;
   8872     (void)toTransform;
   8873     if (toTransform->pNext)
   8874     {
   8875         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8876     }
   8877 }
   8878 
   8879 void transform_fromhost_VkCheckpointDataNV(
   8880     ResourceTracker* resourceTracker,
   8881     VkCheckpointDataNV* toTransform)
   8882 {
   8883     (void)resourceTracker;
   8884     (void)toTransform;
   8885     if (toTransform->pNext)
   8886     {
   8887         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8888     }
   8889 }
   8890 
   8891 #endif
   8892 #ifdef VK_GOOGLE_address_space
   8893 #endif
   8894 #ifdef VK_GOOGLE_color_buffer
   8895 void transform_tohost_VkImportColorBufferGOOGLE(
   8896     ResourceTracker* resourceTracker,
   8897     VkImportColorBufferGOOGLE* toTransform)
   8898 {
   8899     (void)resourceTracker;
   8900     (void)toTransform;
   8901     if (toTransform->pNext)
   8902     {
   8903         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8904     }
   8905 }
   8906 
   8907 void transform_fromhost_VkImportColorBufferGOOGLE(
   8908     ResourceTracker* resourceTracker,
   8909     VkImportColorBufferGOOGLE* toTransform)
   8910 {
   8911     (void)resourceTracker;
   8912     (void)toTransform;
   8913     if (toTransform->pNext)
   8914     {
   8915         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8916     }
   8917 }
   8918 
   8919 void transform_tohost_VkImportPhysicalAddressGOOGLE(
   8920     ResourceTracker* resourceTracker,
   8921     VkImportPhysicalAddressGOOGLE* toTransform)
   8922 {
   8923     (void)resourceTracker;
   8924     (void)toTransform;
   8925     if (toTransform->pNext)
   8926     {
   8927         transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8928     }
   8929 }
   8930 
   8931 void transform_fromhost_VkImportPhysicalAddressGOOGLE(
   8932     ResourceTracker* resourceTracker,
   8933     VkImportPhysicalAddressGOOGLE* toTransform)
   8934 {
   8935     (void)resourceTracker;
   8936     (void)toTransform;
   8937     if (toTransform->pNext)
   8938     {
   8939         transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
   8940     }
   8941 }
   8942 
   8943 #endif
   8944 #ifdef VK_GOOGLE_sized_descriptor_update_template
   8945 #endif
   8946 #ifdef VK_GOOGLE_async_command_buffers
   8947 #endif
   8948 void transform_tohost_extension_struct(
   8949     ResourceTracker* resourceTracker,
   8950     void* structExtension_out)
   8951 {
   8952     if (!structExtension_out)
   8953     {
   8954         return;
   8955     }
   8956     uint32_t structType = (uint32_t)goldfish_vk_struct_type(structExtension_out);
   8957     switch(structType)
   8958     {
   8959 #ifdef VK_VERSION_1_1
   8960         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:
   8961         {
   8962             transform_tohost_VkPhysicalDeviceSubgroupProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceSubgroupProperties*>(structExtension_out));
   8963             break;
   8964         }
   8965         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:
   8966         {
   8967             transform_tohost_VkPhysicalDevice16BitStorageFeatures(resourceTracker, reinterpret_cast<VkPhysicalDevice16BitStorageFeatures*>(structExtension_out));
   8968             break;
   8969         }
   8970         case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:
   8971         {
   8972             transform_tohost_VkMemoryDedicatedRequirements(resourceTracker, reinterpret_cast<VkMemoryDedicatedRequirements*>(structExtension_out));
   8973             break;
   8974         }
   8975         case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:
   8976         {
   8977             transform_tohost_VkMemoryDedicatedAllocateInfo(resourceTracker, reinterpret_cast<VkMemoryDedicatedAllocateInfo*>(structExtension_out));
   8978             break;
   8979         }
   8980         case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:
   8981         {
   8982             transform_tohost_VkMemoryAllocateFlagsInfo(resourceTracker, reinterpret_cast<VkMemoryAllocateFlagsInfo*>(structExtension_out));
   8983             break;
   8984         }
   8985         case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:
   8986         {
   8987             transform_tohost_VkDeviceGroupRenderPassBeginInfo(resourceTracker, reinterpret_cast<VkDeviceGroupRenderPassBeginInfo*>(structExtension_out));
   8988             break;
   8989         }
   8990         case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:
   8991         {
   8992             transform_tohost_VkDeviceGroupCommandBufferBeginInfo(resourceTracker, reinterpret_cast<VkDeviceGroupCommandBufferBeginInfo*>(structExtension_out));
   8993             break;
   8994         }
   8995         case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:
   8996         {
   8997             transform_tohost_VkDeviceGroupSubmitInfo(resourceTracker, reinterpret_cast<VkDeviceGroupSubmitInfo*>(structExtension_out));
   8998             break;
   8999         }
   9000         case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO:
   9001         {
   9002             transform_tohost_VkDeviceGroupBindSparseInfo(resourceTracker, reinterpret_cast<VkDeviceGroupBindSparseInfo*>(structExtension_out));
   9003             break;
   9004         }
   9005         case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:
   9006         {
   9007             transform_tohost_VkBindBufferMemoryDeviceGroupInfo(resourceTracker, reinterpret_cast<VkBindBufferMemoryDeviceGroupInfo*>(structExtension_out));
   9008             break;
   9009         }
   9010         case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:
   9011         {
   9012             transform_tohost_VkBindImageMemoryDeviceGroupInfo(resourceTracker, reinterpret_cast<VkBindImageMemoryDeviceGroupInfo*>(structExtension_out));
   9013             break;
   9014         }
   9015         case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:
   9016         {
   9017             transform_tohost_VkDeviceGroupDeviceCreateInfo(resourceTracker, reinterpret_cast<VkDeviceGroupDeviceCreateInfo*>(structExtension_out));
   9018             break;
   9019         }
   9020         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
   9021         {
   9022             transform_tohost_VkPhysicalDeviceFeatures2(resourceTracker, reinterpret_cast<VkPhysicalDeviceFeatures2*>(structExtension_out));
   9023             break;
   9024         }
   9025         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:
   9026         {
   9027             transform_tohost_VkPhysicalDevicePointClippingProperties(resourceTracker, reinterpret_cast<VkPhysicalDevicePointClippingProperties*>(structExtension_out));
   9028             break;
   9029         }
   9030         case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:
   9031         {
   9032             transform_tohost_VkRenderPassInputAttachmentAspectCreateInfo(resourceTracker, reinterpret_cast<VkRenderPassInputAttachmentAspectCreateInfo*>(structExtension_out));
   9033             break;
   9034         }
   9035         case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:
   9036         {
   9037             transform_tohost_VkImageViewUsageCreateInfo(resourceTracker, reinterpret_cast<VkImageViewUsageCreateInfo*>(structExtension_out));
   9038             break;
   9039         }
   9040         case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:
   9041         {
   9042             transform_tohost_VkPipelineTessellationDomainOriginStateCreateInfo(resourceTracker, reinterpret_cast<VkPipelineTessellationDomainOriginStateCreateInfo*>(structExtension_out));
   9043             break;
   9044         }
   9045         case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:
   9046         {
   9047             transform_tohost_VkRenderPassMultiviewCreateInfo(resourceTracker, reinterpret_cast<VkRenderPassMultiviewCreateInfo*>(structExtension_out));
   9048             break;
   9049         }
   9050         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:
   9051         {
   9052             transform_tohost_VkPhysicalDeviceMultiviewFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiviewFeatures*>(structExtension_out));
   9053             break;
   9054         }
   9055         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:
   9056         {
   9057             transform_tohost_VkPhysicalDeviceMultiviewProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiviewProperties*>(structExtension_out));
   9058             break;
   9059         }
   9060         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES:
   9061         {
   9062             transform_tohost_VkPhysicalDeviceVariablePointerFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceVariablePointerFeatures*>(structExtension_out));
   9063             break;
   9064         }
   9065         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:
   9066         {
   9067             transform_tohost_VkPhysicalDeviceProtectedMemoryFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension_out));
   9068             break;
   9069         }
   9070         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:
   9071         {
   9072             transform_tohost_VkPhysicalDeviceProtectedMemoryProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceProtectedMemoryProperties*>(structExtension_out));
   9073             break;
   9074         }
   9075         case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:
   9076         {
   9077             transform_tohost_VkProtectedSubmitInfo(resourceTracker, reinterpret_cast<VkProtectedSubmitInfo*>(structExtension_out));
   9078             break;
   9079         }
   9080         case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:
   9081         {
   9082             transform_tohost_VkSamplerYcbcrConversionInfo(resourceTracker, reinterpret_cast<VkSamplerYcbcrConversionInfo*>(structExtension_out));
   9083             break;
   9084         }
   9085         case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:
   9086         {
   9087             transform_tohost_VkBindImagePlaneMemoryInfo(resourceTracker, reinterpret_cast<VkBindImagePlaneMemoryInfo*>(structExtension_out));
   9088             break;
   9089         }
   9090         case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:
   9091         {
   9092             transform_tohost_VkImagePlaneMemoryRequirementsInfo(resourceTracker, reinterpret_cast<VkImagePlaneMemoryRequirementsInfo*>(structExtension_out));
   9093             break;
   9094         }
   9095         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:
   9096         {
   9097             transform_tohost_VkPhysicalDeviceSamplerYcbcrConversionFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceSamplerYcbcrConversionFeatures*>(structExtension_out));
   9098             break;
   9099         }
   9100         case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:
   9101         {
   9102             transform_tohost_VkSamplerYcbcrConversionImageFormatProperties(resourceTracker, reinterpret_cast<VkSamplerYcbcrConversionImageFormatProperties*>(structExtension_out));
   9103             break;
   9104         }
   9105         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:
   9106         {
   9107             resourceTracker->transformImpl_VkPhysicalDeviceExternalImageFormatInfo_tohost(reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo*>(structExtension_out), 1);
   9108             transform_tohost_VkPhysicalDeviceExternalImageFormatInfo(resourceTracker, reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo*>(structExtension_out));
   9109             break;
   9110         }
   9111         case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:
   9112         {
   9113             resourceTracker->transformImpl_VkExternalImageFormatProperties_tohost(reinterpret_cast<VkExternalImageFormatProperties*>(structExtension_out), 1);
   9114             transform_tohost_VkExternalImageFormatProperties(resourceTracker, reinterpret_cast<VkExternalImageFormatProperties*>(structExtension_out));
   9115             break;
   9116         }
   9117         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:
   9118         {
   9119             transform_tohost_VkPhysicalDeviceIDProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceIDProperties*>(structExtension_out));
   9120             break;
   9121         }
   9122         case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:
   9123         {
   9124             resourceTracker->transformImpl_VkExternalMemoryImageCreateInfo_tohost(reinterpret_cast<VkExternalMemoryImageCreateInfo*>(structExtension_out), 1);
   9125             transform_tohost_VkExternalMemoryImageCreateInfo(resourceTracker, reinterpret_cast<VkExternalMemoryImageCreateInfo*>(structExtension_out));
   9126             break;
   9127         }
   9128         case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
   9129         {
   9130             resourceTracker->transformImpl_VkExternalMemoryBufferCreateInfo_tohost(reinterpret_cast<VkExternalMemoryBufferCreateInfo*>(structExtension_out), 1);
   9131             transform_tohost_VkExternalMemoryBufferCreateInfo(resourceTracker, reinterpret_cast<VkExternalMemoryBufferCreateInfo*>(structExtension_out));
   9132             break;
   9133         }
   9134         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:
   9135         {
   9136             resourceTracker->transformImpl_VkExportMemoryAllocateInfo_tohost(reinterpret_cast<VkExportMemoryAllocateInfo*>(structExtension_out), 1);
   9137             transform_tohost_VkExportMemoryAllocateInfo(resourceTracker, reinterpret_cast<VkExportMemoryAllocateInfo*>(structExtension_out));
   9138             break;
   9139         }
   9140         case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:
   9141         {
   9142             transform_tohost_VkExportFenceCreateInfo(resourceTracker, reinterpret_cast<VkExportFenceCreateInfo*>(structExtension_out));
   9143             break;
   9144         }
   9145         case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:
   9146         {
   9147             transform_tohost_VkExportSemaphoreCreateInfo(resourceTracker, reinterpret_cast<VkExportSemaphoreCreateInfo*>(structExtension_out));
   9148             break;
   9149         }
   9150         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:
   9151         {
   9152             transform_tohost_VkPhysicalDeviceMaintenance3Properties(resourceTracker, reinterpret_cast<VkPhysicalDeviceMaintenance3Properties*>(structExtension_out));
   9153             break;
   9154         }
   9155         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES:
   9156         {
   9157             transform_tohost_VkPhysicalDeviceShaderDrawParameterFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderDrawParameterFeatures*>(structExtension_out));
   9158             break;
   9159         }
   9160 #endif
   9161 #ifdef VK_KHR_swapchain
   9162         case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:
   9163         {
   9164             transform_tohost_VkImageSwapchainCreateInfoKHR(resourceTracker, reinterpret_cast<VkImageSwapchainCreateInfoKHR*>(structExtension_out));
   9165             break;
   9166         }
   9167         case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:
   9168         {
   9169             transform_tohost_VkBindImageMemorySwapchainInfoKHR(resourceTracker, reinterpret_cast<VkBindImageMemorySwapchainInfoKHR*>(structExtension_out));
   9170             break;
   9171         }
   9172         case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:
   9173         {
   9174             transform_tohost_VkDeviceGroupPresentInfoKHR(resourceTracker, reinterpret_cast<VkDeviceGroupPresentInfoKHR*>(structExtension_out));
   9175             break;
   9176         }
   9177         case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:
   9178         {
   9179             transform_tohost_VkDeviceGroupSwapchainCreateInfoKHR(resourceTracker, reinterpret_cast<VkDeviceGroupSwapchainCreateInfoKHR*>(structExtension_out));
   9180             break;
   9181         }
   9182 #endif
   9183 #ifdef VK_KHR_display_swapchain
   9184         case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:
   9185         {
   9186             transform_tohost_VkDisplayPresentInfoKHR(resourceTracker, reinterpret_cast<VkDisplayPresentInfoKHR*>(structExtension_out));
   9187             break;
   9188         }
   9189 #endif
   9190 #ifdef VK_KHR_external_memory_win32
   9191         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
   9192         {
   9193             transform_tohost_VkImportMemoryWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkImportMemoryWin32HandleInfoKHR*>(structExtension_out));
   9194             break;
   9195         }
   9196         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
   9197         {
   9198             transform_tohost_VkExportMemoryWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkExportMemoryWin32HandleInfoKHR*>(structExtension_out));
   9199             break;
   9200         }
   9201 #endif
   9202 #ifdef VK_KHR_external_memory_fd
   9203         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:
   9204         {
   9205             transform_tohost_VkImportMemoryFdInfoKHR(resourceTracker, reinterpret_cast<VkImportMemoryFdInfoKHR*>(structExtension_out));
   9206             break;
   9207         }
   9208 #endif
   9209 #ifdef VK_KHR_win32_keyed_mutex
   9210         case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR:
   9211         {
   9212             transform_tohost_VkWin32KeyedMutexAcquireReleaseInfoKHR(resourceTracker, reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoKHR*>(structExtension_out));
   9213             break;
   9214         }
   9215 #endif
   9216 #ifdef VK_KHR_external_semaphore_win32
   9217         case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
   9218         {
   9219             transform_tohost_VkExportSemaphoreWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkExportSemaphoreWin32HandleInfoKHR*>(structExtension_out));
   9220             break;
   9221         }
   9222         case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR:
   9223         {
   9224             transform_tohost_VkD3D12FenceSubmitInfoKHR(resourceTracker, reinterpret_cast<VkD3D12FenceSubmitInfoKHR*>(structExtension_out));
   9225             break;
   9226         }
   9227 #endif
   9228 #ifdef VK_KHR_push_descriptor
   9229         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:
   9230         {
   9231             transform_tohost_VkPhysicalDevicePushDescriptorPropertiesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevicePushDescriptorPropertiesKHR*>(structExtension_out));
   9232             break;
   9233         }
   9234 #endif
   9235 #ifdef VK_KHR_incremental_present
   9236         case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:
   9237         {
   9238             transform_tohost_VkPresentRegionsKHR(resourceTracker, reinterpret_cast<VkPresentRegionsKHR*>(structExtension_out));
   9239             break;
   9240         }
   9241 #endif
   9242 #ifdef VK_KHR_shared_presentable_image
   9243         case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:
   9244         {
   9245             transform_tohost_VkSharedPresentSurfaceCapabilitiesKHR(resourceTracker, reinterpret_cast<VkSharedPresentSurfaceCapabilitiesKHR*>(structExtension_out));
   9246             break;
   9247         }
   9248 #endif
   9249 #ifdef VK_KHR_external_fence_win32
   9250         case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR:
   9251         {
   9252             transform_tohost_VkExportFenceWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkExportFenceWin32HandleInfoKHR*>(structExtension_out));
   9253             break;
   9254         }
   9255 #endif
   9256 #ifdef VK_KHR_image_format_list
   9257         case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR:
   9258         {
   9259             transform_tohost_VkImageFormatListCreateInfoKHR(resourceTracker, reinterpret_cast<VkImageFormatListCreateInfoKHR*>(structExtension_out));
   9260             break;
   9261         }
   9262 #endif
   9263 #ifdef VK_KHR_8bit_storage
   9264         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR:
   9265         {
   9266             transform_tohost_VkPhysicalDevice8BitStorageFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevice8BitStorageFeaturesKHR*>(structExtension_out));
   9267             break;
   9268         }
   9269 #endif
   9270 #ifdef VK_ANDROID_native_buffer
   9271         case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
   9272         {
   9273             transform_tohost_VkNativeBufferANDROID(resourceTracker, reinterpret_cast<VkNativeBufferANDROID*>(structExtension_out));
   9274             break;
   9275         }
   9276 #endif
   9277 #ifdef VK_EXT_debug_report
   9278         case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:
   9279         {
   9280             transform_tohost_VkDebugReportCallbackCreateInfoEXT(resourceTracker, reinterpret_cast<VkDebugReportCallbackCreateInfoEXT*>(structExtension_out));
   9281             break;
   9282         }
   9283 #endif
   9284 #ifdef VK_AMD_rasterization_order
   9285         case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:
   9286         {
   9287             transform_tohost_VkPipelineRasterizationStateRasterizationOrderAMD(resourceTracker, reinterpret_cast<VkPipelineRasterizationStateRasterizationOrderAMD*>(structExtension_out));
   9288             break;
   9289         }
   9290 #endif
   9291 #ifdef VK_NV_dedicated_allocation
   9292         case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV:
   9293         {
   9294             transform_tohost_VkDedicatedAllocationImageCreateInfoNV(resourceTracker, reinterpret_cast<VkDedicatedAllocationImageCreateInfoNV*>(structExtension_out));
   9295             break;
   9296         }
   9297         case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV:
   9298         {
   9299             transform_tohost_VkDedicatedAllocationBufferCreateInfoNV(resourceTracker, reinterpret_cast<VkDedicatedAllocationBufferCreateInfoNV*>(structExtension_out));
   9300             break;
   9301         }
   9302         case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:
   9303         {
   9304             transform_tohost_VkDedicatedAllocationMemoryAllocateInfoNV(resourceTracker, reinterpret_cast<VkDedicatedAllocationMemoryAllocateInfoNV*>(structExtension_out));
   9305             break;
   9306         }
   9307 #endif
   9308 #ifdef VK_AMD_texture_gather_bias_lod
   9309         case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
   9310         {
   9311             transform_tohost_VkTextureLODGatherFormatPropertiesAMD(resourceTracker, reinterpret_cast<VkTextureLODGatherFormatPropertiesAMD*>(structExtension_out));
   9312             break;
   9313         }
   9314 #endif
   9315 #ifdef VK_NV_external_memory
   9316         case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV:
   9317         {
   9318             transform_tohost_VkExternalMemoryImageCreateInfoNV(resourceTracker, reinterpret_cast<VkExternalMemoryImageCreateInfoNV*>(structExtension_out));
   9319             break;
   9320         }
   9321         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV:
   9322         {
   9323             transform_tohost_VkExportMemoryAllocateInfoNV(resourceTracker, reinterpret_cast<VkExportMemoryAllocateInfoNV*>(structExtension_out));
   9324             break;
   9325         }
   9326 #endif
   9327 #ifdef VK_NV_external_memory_win32
   9328         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:
   9329         {
   9330             transform_tohost_VkImportMemoryWin32HandleInfoNV(resourceTracker, reinterpret_cast<VkImportMemoryWin32HandleInfoNV*>(structExtension_out));
   9331             break;
   9332         }
   9333         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV:
   9334         {
   9335             transform_tohost_VkExportMemoryWin32HandleInfoNV(resourceTracker, reinterpret_cast<VkExportMemoryWin32HandleInfoNV*>(structExtension_out));
   9336             break;
   9337         }
   9338 #endif
   9339 #ifdef VK_NV_win32_keyed_mutex
   9340         case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV:
   9341         {
   9342             transform_tohost_VkWin32KeyedMutexAcquireReleaseInfoNV(resourceTracker, reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoNV*>(structExtension_out));
   9343             break;
   9344         }
   9345 #endif
   9346 #ifdef VK_EXT_validation_flags
   9347         case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:
   9348         {
   9349             transform_tohost_VkValidationFlagsEXT(resourceTracker, reinterpret_cast<VkValidationFlagsEXT*>(structExtension_out));
   9350             break;
   9351         }
   9352 #endif
   9353 #ifdef VK_EXT_conditional_rendering
   9354         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:
   9355         {
   9356             transform_tohost_VkPhysicalDeviceConditionalRenderingFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceConditionalRenderingFeaturesEXT*>(structExtension_out));
   9357             break;
   9358         }
   9359         case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT:
   9360         {
   9361             transform_tohost_VkCommandBufferInheritanceConditionalRenderingInfoEXT(resourceTracker, reinterpret_cast<VkCommandBufferInheritanceConditionalRenderingInfoEXT*>(structExtension_out));
   9362             break;
   9363         }
   9364 #endif
   9365 #ifdef VK_NV_clip_space_w_scaling
   9366         case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV:
   9367         {
   9368             transform_tohost_VkPipelineViewportWScalingStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineViewportWScalingStateCreateInfoNV*>(structExtension_out));
   9369             break;
   9370         }
   9371 #endif
   9372 #ifdef VK_EXT_display_control
   9373         case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:
   9374         {
   9375             transform_tohost_VkSwapchainCounterCreateInfoEXT(resourceTracker, reinterpret_cast<VkSwapchainCounterCreateInfoEXT*>(structExtension_out));
   9376             break;
   9377         }
   9378 #endif
   9379 #ifdef VK_GOOGLE_display_timing
   9380         case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:
   9381         {
   9382             transform_tohost_VkPresentTimesInfoGOOGLE(resourceTracker, reinterpret_cast<VkPresentTimesInfoGOOGLE*>(structExtension_out));
   9383             break;
   9384         }
   9385 #endif
   9386 #ifdef VK_NVX_multiview_per_view_attributes
   9387         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX:
   9388         {
   9389             transform_tohost_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*>(structExtension_out));
   9390             break;
   9391         }
   9392 #endif
   9393 #ifdef VK_NV_viewport_swizzle
   9394         case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV:
   9395         {
   9396             transform_tohost_VkPipelineViewportSwizzleStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineViewportSwizzleStateCreateInfoNV*>(structExtension_out));
   9397             break;
   9398         }
   9399 #endif
   9400 #ifdef VK_EXT_discard_rectangles
   9401         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:
   9402         {
   9403             transform_tohost_VkPhysicalDeviceDiscardRectanglePropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDiscardRectanglePropertiesEXT*>(structExtension_out));
   9404             break;
   9405         }
   9406         case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:
   9407         {
   9408             transform_tohost_VkPipelineDiscardRectangleStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineDiscardRectangleStateCreateInfoEXT*>(structExtension_out));
   9409             break;
   9410         }
   9411 #endif
   9412 #ifdef VK_EXT_conservative_rasterization
   9413         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:
   9414         {
   9415             transform_tohost_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceConservativeRasterizationPropertiesEXT*>(structExtension_out));
   9416             break;
   9417         }
   9418         case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:
   9419         {
   9420             transform_tohost_VkPipelineRasterizationConservativeStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineRasterizationConservativeStateCreateInfoEXT*>(structExtension_out));
   9421             break;
   9422         }
   9423 #endif
   9424 #ifdef VK_EXT_debug_utils
   9425         case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
   9426         {
   9427             transform_tohost_VkDebugUtilsMessengerCreateInfoEXT(resourceTracker, reinterpret_cast<VkDebugUtilsMessengerCreateInfoEXT*>(structExtension_out));
   9428             break;
   9429         }
   9430 #endif
   9431 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
   9432         case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID:
   9433         {
   9434             transform_tohost_VkAndroidHardwareBufferUsageANDROID(resourceTracker, reinterpret_cast<VkAndroidHardwareBufferUsageANDROID*>(structExtension_out));
   9435             break;
   9436         }
   9437         case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID:
   9438         {
   9439             transform_tohost_VkAndroidHardwareBufferFormatPropertiesANDROID(resourceTracker, reinterpret_cast<VkAndroidHardwareBufferFormatPropertiesANDROID*>(structExtension_out));
   9440             break;
   9441         }
   9442         case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
   9443         {
   9444             transform_tohost_VkImportAndroidHardwareBufferInfoANDROID(resourceTracker, reinterpret_cast<VkImportAndroidHardwareBufferInfoANDROID*>(structExtension_out));
   9445             break;
   9446         }
   9447         case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID:
   9448         {
   9449             transform_tohost_VkExternalFormatANDROID(resourceTracker, reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
   9450             break;
   9451         }
   9452 #endif
   9453 #ifdef VK_EXT_sampler_filter_minmax
   9454         case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT:
   9455         {
   9456             transform_tohost_VkSamplerReductionModeCreateInfoEXT(resourceTracker, reinterpret_cast<VkSamplerReductionModeCreateInfoEXT*>(structExtension_out));
   9457             break;
   9458         }
   9459         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT:
   9460         {
   9461             transform_tohost_VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT*>(structExtension_out));
   9462             break;
   9463         }
   9464 #endif
   9465 #ifdef VK_EXT_sample_locations
   9466         case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:
   9467         {
   9468             transform_tohost_VkSampleLocationsInfoEXT(resourceTracker, reinterpret_cast<VkSampleLocationsInfoEXT*>(structExtension_out));
   9469             break;
   9470         }
   9471         case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:
   9472         {
   9473             transform_tohost_VkRenderPassSampleLocationsBeginInfoEXT(resourceTracker, reinterpret_cast<VkRenderPassSampleLocationsBeginInfoEXT*>(structExtension_out));
   9474             break;
   9475         }
   9476         case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:
   9477         {
   9478             transform_tohost_VkPipelineSampleLocationsStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineSampleLocationsStateCreateInfoEXT*>(structExtension_out));
   9479             break;
   9480         }
   9481         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:
   9482         {
   9483             transform_tohost_VkPhysicalDeviceSampleLocationsPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceSampleLocationsPropertiesEXT*>(structExtension_out));
   9484             break;
   9485         }
   9486 #endif
   9487 #ifdef VK_EXT_blend_operation_advanced
   9488         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:
   9489         {
   9490             transform_tohost_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*>(structExtension_out));
   9491             break;
   9492         }
   9493         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:
   9494         {
   9495             transform_tohost_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*>(structExtension_out));
   9496             break;
   9497         }
   9498         case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:
   9499         {
   9500             transform_tohost_VkPipelineColorBlendAdvancedStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineColorBlendAdvancedStateCreateInfoEXT*>(structExtension_out));
   9501             break;
   9502         }
   9503 #endif
   9504 #ifdef VK_NV_fragment_coverage_to_color
   9505         case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV:
   9506         {
   9507             transform_tohost_VkPipelineCoverageToColorStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineCoverageToColorStateCreateInfoNV*>(structExtension_out));
   9508             break;
   9509         }
   9510 #endif
   9511 #ifdef VK_NV_framebuffer_mixed_samples
   9512         case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:
   9513         {
   9514             transform_tohost_VkPipelineCoverageModulationStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineCoverageModulationStateCreateInfoNV*>(structExtension_out));
   9515             break;
   9516         }
   9517 #endif
   9518 #ifdef VK_EXT_validation_cache
   9519         case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
   9520         {
   9521             transform_tohost_VkShaderModuleValidationCacheCreateInfoEXT(resourceTracker, reinterpret_cast<VkShaderModuleValidationCacheCreateInfoEXT*>(structExtension_out));
   9522             break;
   9523         }
   9524 #endif
   9525 #ifdef VK_EXT_descriptor_indexing
   9526         case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT:
   9527         {
   9528             transform_tohost_VkDescriptorSetLayoutBindingFlagsCreateInfoEXT(resourceTracker, reinterpret_cast<VkDescriptorSetLayoutBindingFlagsCreateInfoEXT*>(structExtension_out));
   9529             break;
   9530         }
   9531         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT:
   9532         {
   9533             transform_tohost_VkPhysicalDeviceDescriptorIndexingFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDescriptorIndexingFeaturesEXT*>(structExtension_out));
   9534             break;
   9535         }
   9536         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT:
   9537         {
   9538             transform_tohost_VkPhysicalDeviceDescriptorIndexingPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDescriptorIndexingPropertiesEXT*>(structExtension_out));
   9539             break;
   9540         }
   9541         case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT:
   9542         {
   9543             transform_tohost_VkDescriptorSetVariableDescriptorCountAllocateInfoEXT(resourceTracker, reinterpret_cast<VkDescriptorSetVariableDescriptorCountAllocateInfoEXT*>(structExtension_out));
   9544             break;
   9545         }
   9546         case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT:
   9547         {
   9548             transform_tohost_VkDescriptorSetVariableDescriptorCountLayoutSupportEXT(resourceTracker, reinterpret_cast<VkDescriptorSetVariableDescriptorCountLayoutSupportEXT*>(structExtension_out));
   9549             break;
   9550         }
   9551 #endif
   9552 #ifdef VK_EXT_global_priority
   9553         case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT:
   9554         {
   9555             transform_tohost_VkDeviceQueueGlobalPriorityCreateInfoEXT(resourceTracker, reinterpret_cast<VkDeviceQueueGlobalPriorityCreateInfoEXT*>(structExtension_out));
   9556             break;
   9557         }
   9558 #endif
   9559 #ifdef VK_EXT_external_memory_host
   9560         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:
   9561         {
   9562             transform_tohost_VkImportMemoryHostPointerInfoEXT(resourceTracker, reinterpret_cast<VkImportMemoryHostPointerInfoEXT*>(structExtension_out));
   9563             break;
   9564         }
   9565         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:
   9566         {
   9567             transform_tohost_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceExternalMemoryHostPropertiesEXT*>(structExtension_out));
   9568             break;
   9569         }
   9570 #endif
   9571 #ifdef VK_AMD_shader_core_properties
   9572         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD:
   9573         {
   9574             transform_tohost_VkPhysicalDeviceShaderCorePropertiesAMD(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderCorePropertiesAMD*>(structExtension_out));
   9575             break;
   9576         }
   9577 #endif
   9578 #ifdef VK_EXT_vertex_attribute_divisor
   9579         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:
   9580         {
   9581             transform_tohost_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>(structExtension_out));
   9582             break;
   9583         }
   9584         case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:
   9585         {
   9586             transform_tohost_VkPipelineVertexInputDivisorStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineVertexInputDivisorStateCreateInfoEXT*>(structExtension_out));
   9587             break;
   9588         }
   9589 #endif
   9590 #ifdef VK_NV_device_diagnostic_checkpoints
   9591         case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV:
   9592         {
   9593             transform_tohost_VkQueueFamilyCheckpointPropertiesNV(resourceTracker, reinterpret_cast<VkQueueFamilyCheckpointPropertiesNV*>(structExtension_out));
   9594             break;
   9595         }
   9596 #endif
   9597 #ifdef VK_GOOGLE_color_buffer
   9598         case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
   9599         {
   9600             transform_tohost_VkImportColorBufferGOOGLE(resourceTracker, reinterpret_cast<VkImportColorBufferGOOGLE*>(structExtension_out));
   9601             break;
   9602         }
   9603         case VK_STRUCTURE_TYPE_IMPORT_PHYSICAL_ADDRESS_GOOGLE:
   9604         {
   9605             transform_tohost_VkImportPhysicalAddressGOOGLE(resourceTracker, reinterpret_cast<VkImportPhysicalAddressGOOGLE*>(structExtension_out));
   9606             break;
   9607         }
   9608 #endif
   9609         default:
   9610         {
   9611             return;
   9612         }
   9613     }
   9614 }
   9615 
   9616 void transform_fromhost_extension_struct(
   9617     ResourceTracker* resourceTracker,
   9618     void* structExtension_out)
   9619 {
   9620     if (!structExtension_out)
   9621     {
   9622         return;
   9623     }
   9624     uint32_t structType = (uint32_t)goldfish_vk_struct_type(structExtension_out);
   9625     switch(structType)
   9626     {
   9627 #ifdef VK_VERSION_1_1
   9628         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES:
   9629         {
   9630             transform_fromhost_VkPhysicalDeviceSubgroupProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceSubgroupProperties*>(structExtension_out));
   9631             break;
   9632         }
   9633         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES:
   9634         {
   9635             transform_fromhost_VkPhysicalDevice16BitStorageFeatures(resourceTracker, reinterpret_cast<VkPhysicalDevice16BitStorageFeatures*>(structExtension_out));
   9636             break;
   9637         }
   9638         case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS:
   9639         {
   9640             transform_fromhost_VkMemoryDedicatedRequirements(resourceTracker, reinterpret_cast<VkMemoryDedicatedRequirements*>(structExtension_out));
   9641             break;
   9642         }
   9643         case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO:
   9644         {
   9645             transform_fromhost_VkMemoryDedicatedAllocateInfo(resourceTracker, reinterpret_cast<VkMemoryDedicatedAllocateInfo*>(structExtension_out));
   9646             break;
   9647         }
   9648         case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO:
   9649         {
   9650             transform_fromhost_VkMemoryAllocateFlagsInfo(resourceTracker, reinterpret_cast<VkMemoryAllocateFlagsInfo*>(structExtension_out));
   9651             break;
   9652         }
   9653         case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO:
   9654         {
   9655             transform_fromhost_VkDeviceGroupRenderPassBeginInfo(resourceTracker, reinterpret_cast<VkDeviceGroupRenderPassBeginInfo*>(structExtension_out));
   9656             break;
   9657         }
   9658         case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO:
   9659         {
   9660             transform_fromhost_VkDeviceGroupCommandBufferBeginInfo(resourceTracker, reinterpret_cast<VkDeviceGroupCommandBufferBeginInfo*>(structExtension_out));
   9661             break;
   9662         }
   9663         case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO:
   9664         {
   9665             transform_fromhost_VkDeviceGroupSubmitInfo(resourceTracker, reinterpret_cast<VkDeviceGroupSubmitInfo*>(structExtension_out));
   9666             break;
   9667         }
   9668         case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO:
   9669         {
   9670             transform_fromhost_VkDeviceGroupBindSparseInfo(resourceTracker, reinterpret_cast<VkDeviceGroupBindSparseInfo*>(structExtension_out));
   9671             break;
   9672         }
   9673         case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO:
   9674         {
   9675             transform_fromhost_VkBindBufferMemoryDeviceGroupInfo(resourceTracker, reinterpret_cast<VkBindBufferMemoryDeviceGroupInfo*>(structExtension_out));
   9676             break;
   9677         }
   9678         case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO:
   9679         {
   9680             transform_fromhost_VkBindImageMemoryDeviceGroupInfo(resourceTracker, reinterpret_cast<VkBindImageMemoryDeviceGroupInfo*>(structExtension_out));
   9681             break;
   9682         }
   9683         case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO:
   9684         {
   9685             transform_fromhost_VkDeviceGroupDeviceCreateInfo(resourceTracker, reinterpret_cast<VkDeviceGroupDeviceCreateInfo*>(structExtension_out));
   9686             break;
   9687         }
   9688         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2:
   9689         {
   9690             transform_fromhost_VkPhysicalDeviceFeatures2(resourceTracker, reinterpret_cast<VkPhysicalDeviceFeatures2*>(structExtension_out));
   9691             break;
   9692         }
   9693         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES:
   9694         {
   9695             transform_fromhost_VkPhysicalDevicePointClippingProperties(resourceTracker, reinterpret_cast<VkPhysicalDevicePointClippingProperties*>(structExtension_out));
   9696             break;
   9697         }
   9698         case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO:
   9699         {
   9700             transform_fromhost_VkRenderPassInputAttachmentAspectCreateInfo(resourceTracker, reinterpret_cast<VkRenderPassInputAttachmentAspectCreateInfo*>(structExtension_out));
   9701             break;
   9702         }
   9703         case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO:
   9704         {
   9705             transform_fromhost_VkImageViewUsageCreateInfo(resourceTracker, reinterpret_cast<VkImageViewUsageCreateInfo*>(structExtension_out));
   9706             break;
   9707         }
   9708         case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO:
   9709         {
   9710             transform_fromhost_VkPipelineTessellationDomainOriginStateCreateInfo(resourceTracker, reinterpret_cast<VkPipelineTessellationDomainOriginStateCreateInfo*>(structExtension_out));
   9711             break;
   9712         }
   9713         case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO:
   9714         {
   9715             transform_fromhost_VkRenderPassMultiviewCreateInfo(resourceTracker, reinterpret_cast<VkRenderPassMultiviewCreateInfo*>(structExtension_out));
   9716             break;
   9717         }
   9718         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES:
   9719         {
   9720             transform_fromhost_VkPhysicalDeviceMultiviewFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiviewFeatures*>(structExtension_out));
   9721             break;
   9722         }
   9723         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES:
   9724         {
   9725             transform_fromhost_VkPhysicalDeviceMultiviewProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiviewProperties*>(structExtension_out));
   9726             break;
   9727         }
   9728         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES:
   9729         {
   9730             transform_fromhost_VkPhysicalDeviceVariablePointerFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceVariablePointerFeatures*>(structExtension_out));
   9731             break;
   9732         }
   9733         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES:
   9734         {
   9735             transform_fromhost_VkPhysicalDeviceProtectedMemoryFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceProtectedMemoryFeatures*>(structExtension_out));
   9736             break;
   9737         }
   9738         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES:
   9739         {
   9740             transform_fromhost_VkPhysicalDeviceProtectedMemoryProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceProtectedMemoryProperties*>(structExtension_out));
   9741             break;
   9742         }
   9743         case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO:
   9744         {
   9745             transform_fromhost_VkProtectedSubmitInfo(resourceTracker, reinterpret_cast<VkProtectedSubmitInfo*>(structExtension_out));
   9746             break;
   9747         }
   9748         case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO:
   9749         {
   9750             transform_fromhost_VkSamplerYcbcrConversionInfo(resourceTracker, reinterpret_cast<VkSamplerYcbcrConversionInfo*>(structExtension_out));
   9751             break;
   9752         }
   9753         case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO:
   9754         {
   9755             transform_fromhost_VkBindImagePlaneMemoryInfo(resourceTracker, reinterpret_cast<VkBindImagePlaneMemoryInfo*>(structExtension_out));
   9756             break;
   9757         }
   9758         case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO:
   9759         {
   9760             transform_fromhost_VkImagePlaneMemoryRequirementsInfo(resourceTracker, reinterpret_cast<VkImagePlaneMemoryRequirementsInfo*>(structExtension_out));
   9761             break;
   9762         }
   9763         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES:
   9764         {
   9765             transform_fromhost_VkPhysicalDeviceSamplerYcbcrConversionFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceSamplerYcbcrConversionFeatures*>(structExtension_out));
   9766             break;
   9767         }
   9768         case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES:
   9769         {
   9770             transform_fromhost_VkSamplerYcbcrConversionImageFormatProperties(resourceTracker, reinterpret_cast<VkSamplerYcbcrConversionImageFormatProperties*>(structExtension_out));
   9771             break;
   9772         }
   9773         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO:
   9774         {
   9775             resourceTracker->transformImpl_VkPhysicalDeviceExternalImageFormatInfo_fromhost(reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo*>(structExtension_out), 1);
   9776             transform_fromhost_VkPhysicalDeviceExternalImageFormatInfo(resourceTracker, reinterpret_cast<VkPhysicalDeviceExternalImageFormatInfo*>(structExtension_out));
   9777             break;
   9778         }
   9779         case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES:
   9780         {
   9781             resourceTracker->transformImpl_VkExternalImageFormatProperties_fromhost(reinterpret_cast<VkExternalImageFormatProperties*>(structExtension_out), 1);
   9782             transform_fromhost_VkExternalImageFormatProperties(resourceTracker, reinterpret_cast<VkExternalImageFormatProperties*>(structExtension_out));
   9783             break;
   9784         }
   9785         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES:
   9786         {
   9787             transform_fromhost_VkPhysicalDeviceIDProperties(resourceTracker, reinterpret_cast<VkPhysicalDeviceIDProperties*>(structExtension_out));
   9788             break;
   9789         }
   9790         case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO:
   9791         {
   9792             resourceTracker->transformImpl_VkExternalMemoryImageCreateInfo_fromhost(reinterpret_cast<VkExternalMemoryImageCreateInfo*>(structExtension_out), 1);
   9793             transform_fromhost_VkExternalMemoryImageCreateInfo(resourceTracker, reinterpret_cast<VkExternalMemoryImageCreateInfo*>(structExtension_out));
   9794             break;
   9795         }
   9796         case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO:
   9797         {
   9798             resourceTracker->transformImpl_VkExternalMemoryBufferCreateInfo_fromhost(reinterpret_cast<VkExternalMemoryBufferCreateInfo*>(structExtension_out), 1);
   9799             transform_fromhost_VkExternalMemoryBufferCreateInfo(resourceTracker, reinterpret_cast<VkExternalMemoryBufferCreateInfo*>(structExtension_out));
   9800             break;
   9801         }
   9802         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO:
   9803         {
   9804             resourceTracker->transformImpl_VkExportMemoryAllocateInfo_fromhost(reinterpret_cast<VkExportMemoryAllocateInfo*>(structExtension_out), 1);
   9805             transform_fromhost_VkExportMemoryAllocateInfo(resourceTracker, reinterpret_cast<VkExportMemoryAllocateInfo*>(structExtension_out));
   9806             break;
   9807         }
   9808         case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO:
   9809         {
   9810             transform_fromhost_VkExportFenceCreateInfo(resourceTracker, reinterpret_cast<VkExportFenceCreateInfo*>(structExtension_out));
   9811             break;
   9812         }
   9813         case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO:
   9814         {
   9815             transform_fromhost_VkExportSemaphoreCreateInfo(resourceTracker, reinterpret_cast<VkExportSemaphoreCreateInfo*>(structExtension_out));
   9816             break;
   9817         }
   9818         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES:
   9819         {
   9820             transform_fromhost_VkPhysicalDeviceMaintenance3Properties(resourceTracker, reinterpret_cast<VkPhysicalDeviceMaintenance3Properties*>(structExtension_out));
   9821             break;
   9822         }
   9823         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES:
   9824         {
   9825             transform_fromhost_VkPhysicalDeviceShaderDrawParameterFeatures(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderDrawParameterFeatures*>(structExtension_out));
   9826             break;
   9827         }
   9828 #endif
   9829 #ifdef VK_KHR_swapchain
   9830         case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR:
   9831         {
   9832             transform_fromhost_VkImageSwapchainCreateInfoKHR(resourceTracker, reinterpret_cast<VkImageSwapchainCreateInfoKHR*>(structExtension_out));
   9833             break;
   9834         }
   9835         case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR:
   9836         {
   9837             transform_fromhost_VkBindImageMemorySwapchainInfoKHR(resourceTracker, reinterpret_cast<VkBindImageMemorySwapchainInfoKHR*>(structExtension_out));
   9838             break;
   9839         }
   9840         case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR:
   9841         {
   9842             transform_fromhost_VkDeviceGroupPresentInfoKHR(resourceTracker, reinterpret_cast<VkDeviceGroupPresentInfoKHR*>(structExtension_out));
   9843             break;
   9844         }
   9845         case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR:
   9846         {
   9847             transform_fromhost_VkDeviceGroupSwapchainCreateInfoKHR(resourceTracker, reinterpret_cast<VkDeviceGroupSwapchainCreateInfoKHR*>(structExtension_out));
   9848             break;
   9849         }
   9850 #endif
   9851 #ifdef VK_KHR_display_swapchain
   9852         case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR:
   9853         {
   9854             transform_fromhost_VkDisplayPresentInfoKHR(resourceTracker, reinterpret_cast<VkDisplayPresentInfoKHR*>(structExtension_out));
   9855             break;
   9856         }
   9857 #endif
   9858 #ifdef VK_KHR_external_memory_win32
   9859         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
   9860         {
   9861             transform_fromhost_VkImportMemoryWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkImportMemoryWin32HandleInfoKHR*>(structExtension_out));
   9862             break;
   9863         }
   9864         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
   9865         {
   9866             transform_fromhost_VkExportMemoryWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkExportMemoryWin32HandleInfoKHR*>(structExtension_out));
   9867             break;
   9868         }
   9869 #endif
   9870 #ifdef VK_KHR_external_memory_fd
   9871         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR:
   9872         {
   9873             transform_fromhost_VkImportMemoryFdInfoKHR(resourceTracker, reinterpret_cast<VkImportMemoryFdInfoKHR*>(structExtension_out));
   9874             break;
   9875         }
   9876 #endif
   9877 #ifdef VK_KHR_win32_keyed_mutex
   9878         case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR:
   9879         {
   9880             transform_fromhost_VkWin32KeyedMutexAcquireReleaseInfoKHR(resourceTracker, reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoKHR*>(structExtension_out));
   9881             break;
   9882         }
   9883 #endif
   9884 #ifdef VK_KHR_external_semaphore_win32
   9885         case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR:
   9886         {
   9887             transform_fromhost_VkExportSemaphoreWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkExportSemaphoreWin32HandleInfoKHR*>(structExtension_out));
   9888             break;
   9889         }
   9890         case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR:
   9891         {
   9892             transform_fromhost_VkD3D12FenceSubmitInfoKHR(resourceTracker, reinterpret_cast<VkD3D12FenceSubmitInfoKHR*>(structExtension_out));
   9893             break;
   9894         }
   9895 #endif
   9896 #ifdef VK_KHR_push_descriptor
   9897         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR:
   9898         {
   9899             transform_fromhost_VkPhysicalDevicePushDescriptorPropertiesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevicePushDescriptorPropertiesKHR*>(structExtension_out));
   9900             break;
   9901         }
   9902 #endif
   9903 #ifdef VK_KHR_incremental_present
   9904         case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR:
   9905         {
   9906             transform_fromhost_VkPresentRegionsKHR(resourceTracker, reinterpret_cast<VkPresentRegionsKHR*>(structExtension_out));
   9907             break;
   9908         }
   9909 #endif
   9910 #ifdef VK_KHR_shared_presentable_image
   9911         case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR:
   9912         {
   9913             transform_fromhost_VkSharedPresentSurfaceCapabilitiesKHR(resourceTracker, reinterpret_cast<VkSharedPresentSurfaceCapabilitiesKHR*>(structExtension_out));
   9914             break;
   9915         }
   9916 #endif
   9917 #ifdef VK_KHR_external_fence_win32
   9918         case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR:
   9919         {
   9920             transform_fromhost_VkExportFenceWin32HandleInfoKHR(resourceTracker, reinterpret_cast<VkExportFenceWin32HandleInfoKHR*>(structExtension_out));
   9921             break;
   9922         }
   9923 #endif
   9924 #ifdef VK_KHR_image_format_list
   9925         case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR:
   9926         {
   9927             transform_fromhost_VkImageFormatListCreateInfoKHR(resourceTracker, reinterpret_cast<VkImageFormatListCreateInfoKHR*>(structExtension_out));
   9928             break;
   9929         }
   9930 #endif
   9931 #ifdef VK_KHR_8bit_storage
   9932         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR:
   9933         {
   9934             transform_fromhost_VkPhysicalDevice8BitStorageFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevice8BitStorageFeaturesKHR*>(structExtension_out));
   9935             break;
   9936         }
   9937 #endif
   9938 #ifdef VK_ANDROID_native_buffer
   9939         case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
   9940         {
   9941             transform_fromhost_VkNativeBufferANDROID(resourceTracker, reinterpret_cast<VkNativeBufferANDROID*>(structExtension_out));
   9942             break;
   9943         }
   9944 #endif
   9945 #ifdef VK_EXT_debug_report
   9946         case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT:
   9947         {
   9948             transform_fromhost_VkDebugReportCallbackCreateInfoEXT(resourceTracker, reinterpret_cast<VkDebugReportCallbackCreateInfoEXT*>(structExtension_out));
   9949             break;
   9950         }
   9951 #endif
   9952 #ifdef VK_AMD_rasterization_order
   9953         case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD:
   9954         {
   9955             transform_fromhost_VkPipelineRasterizationStateRasterizationOrderAMD(resourceTracker, reinterpret_cast<VkPipelineRasterizationStateRasterizationOrderAMD*>(structExtension_out));
   9956             break;
   9957         }
   9958 #endif
   9959 #ifdef VK_NV_dedicated_allocation
   9960         case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV:
   9961         {
   9962             transform_fromhost_VkDedicatedAllocationImageCreateInfoNV(resourceTracker, reinterpret_cast<VkDedicatedAllocationImageCreateInfoNV*>(structExtension_out));
   9963             break;
   9964         }
   9965         case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV:
   9966         {
   9967             transform_fromhost_VkDedicatedAllocationBufferCreateInfoNV(resourceTracker, reinterpret_cast<VkDedicatedAllocationBufferCreateInfoNV*>(structExtension_out));
   9968             break;
   9969         }
   9970         case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV:
   9971         {
   9972             transform_fromhost_VkDedicatedAllocationMemoryAllocateInfoNV(resourceTracker, reinterpret_cast<VkDedicatedAllocationMemoryAllocateInfoNV*>(structExtension_out));
   9973             break;
   9974         }
   9975 #endif
   9976 #ifdef VK_AMD_texture_gather_bias_lod
   9977         case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
   9978         {
   9979             transform_fromhost_VkTextureLODGatherFormatPropertiesAMD(resourceTracker, reinterpret_cast<VkTextureLODGatherFormatPropertiesAMD*>(structExtension_out));
   9980             break;
   9981         }
   9982 #endif
   9983 #ifdef VK_NV_external_memory
   9984         case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV:
   9985         {
   9986             transform_fromhost_VkExternalMemoryImageCreateInfoNV(resourceTracker, reinterpret_cast<VkExternalMemoryImageCreateInfoNV*>(structExtension_out));
   9987             break;
   9988         }
   9989         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV:
   9990         {
   9991             transform_fromhost_VkExportMemoryAllocateInfoNV(resourceTracker, reinterpret_cast<VkExportMemoryAllocateInfoNV*>(structExtension_out));
   9992             break;
   9993         }
   9994 #endif
   9995 #ifdef VK_NV_external_memory_win32
   9996         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV:
   9997         {
   9998             transform_fromhost_VkImportMemoryWin32HandleInfoNV(resourceTracker, reinterpret_cast<VkImportMemoryWin32HandleInfoNV*>(structExtension_out));
   9999             break;
   10000         }
   10001         case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV:
   10002         {
   10003             transform_fromhost_VkExportMemoryWin32HandleInfoNV(resourceTracker, reinterpret_cast<VkExportMemoryWin32HandleInfoNV*>(structExtension_out));
   10004             break;
   10005         }
   10006 #endif
   10007 #ifdef VK_NV_win32_keyed_mutex
   10008         case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV:
   10009         {
   10010             transform_fromhost_VkWin32KeyedMutexAcquireReleaseInfoNV(resourceTracker, reinterpret_cast<VkWin32KeyedMutexAcquireReleaseInfoNV*>(structExtension_out));
   10011             break;
   10012         }
   10013 #endif
   10014 #ifdef VK_EXT_validation_flags
   10015         case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT:
   10016         {
   10017             transform_fromhost_VkValidationFlagsEXT(resourceTracker, reinterpret_cast<VkValidationFlagsEXT*>(structExtension_out));
   10018             break;
   10019         }
   10020 #endif
   10021 #ifdef VK_EXT_conditional_rendering
   10022         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT:
   10023         {
   10024             transform_fromhost_VkPhysicalDeviceConditionalRenderingFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceConditionalRenderingFeaturesEXT*>(structExtension_out));
   10025             break;
   10026         }
   10027         case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT:
   10028         {
   10029             transform_fromhost_VkCommandBufferInheritanceConditionalRenderingInfoEXT(resourceTracker, reinterpret_cast<VkCommandBufferInheritanceConditionalRenderingInfoEXT*>(structExtension_out));
   10030             break;
   10031         }
   10032 #endif
   10033 #ifdef VK_NV_clip_space_w_scaling
   10034         case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV:
   10035         {
   10036             transform_fromhost_VkPipelineViewportWScalingStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineViewportWScalingStateCreateInfoNV*>(structExtension_out));
   10037             break;
   10038         }
   10039 #endif
   10040 #ifdef VK_EXT_display_control
   10041         case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT:
   10042         {
   10043             transform_fromhost_VkSwapchainCounterCreateInfoEXT(resourceTracker, reinterpret_cast<VkSwapchainCounterCreateInfoEXT*>(structExtension_out));
   10044             break;
   10045         }
   10046 #endif
   10047 #ifdef VK_GOOGLE_display_timing
   10048         case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE:
   10049         {
   10050             transform_fromhost_VkPresentTimesInfoGOOGLE(resourceTracker, reinterpret_cast<VkPresentTimesInfoGOOGLE*>(structExtension_out));
   10051             break;
   10052         }
   10053 #endif
   10054 #ifdef VK_NVX_multiview_per_view_attributes
   10055         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX:
   10056         {
   10057             transform_fromhost_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX*>(structExtension_out));
   10058             break;
   10059         }
   10060 #endif
   10061 #ifdef VK_NV_viewport_swizzle
   10062         case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV:
   10063         {
   10064             transform_fromhost_VkPipelineViewportSwizzleStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineViewportSwizzleStateCreateInfoNV*>(structExtension_out));
   10065             break;
   10066         }
   10067 #endif
   10068 #ifdef VK_EXT_discard_rectangles
   10069         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT:
   10070         {
   10071             transform_fromhost_VkPhysicalDeviceDiscardRectanglePropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDiscardRectanglePropertiesEXT*>(structExtension_out));
   10072             break;
   10073         }
   10074         case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT:
   10075         {
   10076             transform_fromhost_VkPipelineDiscardRectangleStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineDiscardRectangleStateCreateInfoEXT*>(structExtension_out));
   10077             break;
   10078         }
   10079 #endif
   10080 #ifdef VK_EXT_conservative_rasterization
   10081         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT:
   10082         {
   10083             transform_fromhost_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceConservativeRasterizationPropertiesEXT*>(structExtension_out));
   10084             break;
   10085         }
   10086         case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT:
   10087         {
   10088             transform_fromhost_VkPipelineRasterizationConservativeStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineRasterizationConservativeStateCreateInfoEXT*>(structExtension_out));
   10089             break;
   10090         }
   10091 #endif
   10092 #ifdef VK_EXT_debug_utils
   10093         case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT:
   10094         {
   10095             transform_fromhost_VkDebugUtilsMessengerCreateInfoEXT(resourceTracker, reinterpret_cast<VkDebugUtilsMessengerCreateInfoEXT*>(structExtension_out));
   10096             break;
   10097         }
   10098 #endif
   10099 #ifdef VK_ANDROID_external_memory_android_hardware_buffer
   10100         case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID:
   10101         {
   10102             transform_fromhost_VkAndroidHardwareBufferUsageANDROID(resourceTracker, reinterpret_cast<VkAndroidHardwareBufferUsageANDROID*>(structExtension_out));
   10103             break;
   10104         }
   10105         case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID:
   10106         {
   10107             transform_fromhost_VkAndroidHardwareBufferFormatPropertiesANDROID(resourceTracker, reinterpret_cast<VkAndroidHardwareBufferFormatPropertiesANDROID*>(structExtension_out));
   10108             break;
   10109         }
   10110         case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID:
   10111         {
   10112             transform_fromhost_VkImportAndroidHardwareBufferInfoANDROID(resourceTracker, reinterpret_cast<VkImportAndroidHardwareBufferInfoANDROID*>(structExtension_out));
   10113             break;
   10114         }
   10115         case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID:
   10116         {
   10117             transform_fromhost_VkExternalFormatANDROID(resourceTracker, reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
   10118             break;
   10119         }
   10120 #endif
   10121 #ifdef VK_EXT_sampler_filter_minmax
   10122         case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT:
   10123         {
   10124             transform_fromhost_VkSamplerReductionModeCreateInfoEXT(resourceTracker, reinterpret_cast<VkSamplerReductionModeCreateInfoEXT*>(structExtension_out));
   10125             break;
   10126         }
   10127         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT:
   10128         {
   10129             transform_fromhost_VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT*>(structExtension_out));
   10130             break;
   10131         }
   10132 #endif
   10133 #ifdef VK_EXT_sample_locations
   10134         case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT:
   10135         {
   10136             transform_fromhost_VkSampleLocationsInfoEXT(resourceTracker, reinterpret_cast<VkSampleLocationsInfoEXT*>(structExtension_out));
   10137             break;
   10138         }
   10139         case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT:
   10140         {
   10141             transform_fromhost_VkRenderPassSampleLocationsBeginInfoEXT(resourceTracker, reinterpret_cast<VkRenderPassSampleLocationsBeginInfoEXT*>(structExtension_out));
   10142             break;
   10143         }
   10144         case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT:
   10145         {
   10146             transform_fromhost_VkPipelineSampleLocationsStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineSampleLocationsStateCreateInfoEXT*>(structExtension_out));
   10147             break;
   10148         }
   10149         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT:
   10150         {
   10151             transform_fromhost_VkPhysicalDeviceSampleLocationsPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceSampleLocationsPropertiesEXT*>(structExtension_out));
   10152             break;
   10153         }
   10154 #endif
   10155 #ifdef VK_EXT_blend_operation_advanced
   10156         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT:
   10157         {
   10158             transform_fromhost_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT*>(structExtension_out));
   10159             break;
   10160         }
   10161         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT:
   10162         {
   10163             transform_fromhost_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT*>(structExtension_out));
   10164             break;
   10165         }
   10166         case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT:
   10167         {
   10168             transform_fromhost_VkPipelineColorBlendAdvancedStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineColorBlendAdvancedStateCreateInfoEXT*>(structExtension_out));
   10169             break;
   10170         }
   10171 #endif
   10172 #ifdef VK_NV_fragment_coverage_to_color
   10173         case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV:
   10174         {
   10175             transform_fromhost_VkPipelineCoverageToColorStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineCoverageToColorStateCreateInfoNV*>(structExtension_out));
   10176             break;
   10177         }
   10178 #endif
   10179 #ifdef VK_NV_framebuffer_mixed_samples
   10180         case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV:
   10181         {
   10182             transform_fromhost_VkPipelineCoverageModulationStateCreateInfoNV(resourceTracker, reinterpret_cast<VkPipelineCoverageModulationStateCreateInfoNV*>(structExtension_out));
   10183             break;
   10184         }
   10185 #endif
   10186 #ifdef VK_EXT_validation_cache
   10187         case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
   10188         {
   10189             transform_fromhost_VkShaderModuleValidationCacheCreateInfoEXT(resourceTracker, reinterpret_cast<VkShaderModuleValidationCacheCreateInfoEXT*>(structExtension_out));
   10190             break;
   10191         }
   10192 #endif
   10193 #ifdef VK_EXT_descriptor_indexing
   10194         case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT:
   10195         {
   10196             transform_fromhost_VkDescriptorSetLayoutBindingFlagsCreateInfoEXT(resourceTracker, reinterpret_cast<VkDescriptorSetLayoutBindingFlagsCreateInfoEXT*>(structExtension_out));
   10197             break;
   10198         }
   10199         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT:
   10200         {
   10201             transform_fromhost_VkPhysicalDeviceDescriptorIndexingFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDescriptorIndexingFeaturesEXT*>(structExtension_out));
   10202             break;
   10203         }
   10204         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT:
   10205         {
   10206             transform_fromhost_VkPhysicalDeviceDescriptorIndexingPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDescriptorIndexingPropertiesEXT*>(structExtension_out));
   10207             break;
   10208         }
   10209         case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT:
   10210         {
   10211             transform_fromhost_VkDescriptorSetVariableDescriptorCountAllocateInfoEXT(resourceTracker, reinterpret_cast<VkDescriptorSetVariableDescriptorCountAllocateInfoEXT*>(structExtension_out));
   10212             break;
   10213         }
   10214         case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT:
   10215         {
   10216             transform_fromhost_VkDescriptorSetVariableDescriptorCountLayoutSupportEXT(resourceTracker, reinterpret_cast<VkDescriptorSetVariableDescriptorCountLayoutSupportEXT*>(structExtension_out));
   10217             break;
   10218         }
   10219 #endif
   10220 #ifdef VK_EXT_global_priority
   10221         case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT:
   10222         {
   10223             transform_fromhost_VkDeviceQueueGlobalPriorityCreateInfoEXT(resourceTracker, reinterpret_cast<VkDeviceQueueGlobalPriorityCreateInfoEXT*>(structExtension_out));
   10224             break;
   10225         }
   10226 #endif
   10227 #ifdef VK_EXT_external_memory_host
   10228         case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT:
   10229         {
   10230             transform_fromhost_VkImportMemoryHostPointerInfoEXT(resourceTracker, reinterpret_cast<VkImportMemoryHostPointerInfoEXT*>(structExtension_out));
   10231             break;
   10232         }
   10233         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT:
   10234         {
   10235             transform_fromhost_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceExternalMemoryHostPropertiesEXT*>(structExtension_out));
   10236             break;
   10237         }
   10238 #endif
   10239 #ifdef VK_AMD_shader_core_properties
   10240         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD:
   10241         {
   10242             transform_fromhost_VkPhysicalDeviceShaderCorePropertiesAMD(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderCorePropertiesAMD*>(structExtension_out));
   10243             break;
   10244         }
   10245 #endif
   10246 #ifdef VK_EXT_vertex_attribute_divisor
   10247         case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT:
   10248         {
   10249             transform_fromhost_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT*>(structExtension_out));
   10250             break;
   10251         }
   10252         case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT:
   10253         {
   10254             transform_fromhost_VkPipelineVertexInputDivisorStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineVertexInputDivisorStateCreateInfoEXT*>(structExtension_out));
   10255             break;
   10256         }
   10257 #endif
   10258 #ifdef VK_NV_device_diagnostic_checkpoints
   10259         case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV:
   10260         {
   10261             transform_fromhost_VkQueueFamilyCheckpointPropertiesNV(resourceTracker, reinterpret_cast<VkQueueFamilyCheckpointPropertiesNV*>(structExtension_out));
   10262             break;
   10263         }
   10264 #endif
   10265 #ifdef VK_GOOGLE_color_buffer
   10266         case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
   10267         {
   10268             transform_fromhost_VkImportColorBufferGOOGLE(resourceTracker, reinterpret_cast<VkImportColorBufferGOOGLE*>(structExtension_out));
   10269             break;
   10270         }
   10271         case VK_STRUCTURE_TYPE_IMPORT_PHYSICAL_ADDRESS_GOOGLE:
   10272         {
   10273             transform_fromhost_VkImportPhysicalAddressGOOGLE(resourceTracker, reinterpret_cast<VkImportPhysicalAddressGOOGLE*>(structExtension_out));
   10274             break;
   10275         }
   10276 #endif
   10277         default:
   10278         {
   10279             return;
   10280         }
   10281     }
   10282 }
   10283 
   10284 
   10285 } // namespace goldfish_vk
   10286