vulkan-198[G3]: guest codegen
Bug: 187216205
Change-Id: I26eff7a390f3fcce0d1c80e83c331173611bb50c
diff --git a/system/vulkan_enc/ResourceTracker.cpp b/system/vulkan_enc/ResourceTracker.cpp
index fcc4c42..cc7b71d 100644
--- a/system/vulkan_enc/ResourceTracker.cpp
+++ b/system/vulkan_enc/ResourceTracker.cpp
@@ -8288,7 +8288,9 @@
void ResourceTracker::transformImpl_VkExternalMemoryProperties_tohost(
VkExternalMemoryProperties*, uint32_t) {}
-void ResourceTracker::transformImpl_VkImageCreateInfo_tohost(VkImageCreateInfo*,
+void ResourceTracker::transformImpl_VkImageCreateInfo_fromhost(const VkImageCreateInfo*,
+ uint32_t) {}
+void ResourceTracker::transformImpl_VkImageCreateInfo_tohost(const VkImageCreateInfo*,
uint32_t) {}
#define DEFINE_TRANSFORMED_TYPE_IMPL(type) \
diff --git a/system/vulkan_enc/ResourceTracker.h b/system/vulkan_enc/ResourceTracker.h
index af1c265..38a5800 100644
--- a/system/vulkan_enc/ResourceTracker.h
+++ b/system/vulkan_enc/ResourceTracker.h
@@ -641,7 +641,8 @@
void transformImpl_VkExternalMemoryProperties_tohost(
VkExternalMemoryProperties* pProperties,
uint32_t);
- void transformImpl_VkImageCreateInfo_tohost(VkImageCreateInfo*, uint32_t);
+ void transformImpl_VkImageCreateInfo_fromhost(const VkImageCreateInfo*, uint32_t);
+ void transformImpl_VkImageCreateInfo_tohost(const VkImageCreateInfo*, uint32_t);
#define DEFINE_TRANSFORMED_TYPE_PROTOTYPE(type) \
void transformImpl_##type##_tohost(type*, uint32_t); \
diff --git a/system/vulkan_enc/VkEncoder.cpp b/system/vulkan_enc/VkEncoder.cpp
index 91a9708..bae084d 100644
--- a/system/vulkan_enc/VkEncoder.cpp
+++ b/system/vulkan_enc/VkEncoder.cpp
@@ -9460,7 +9460,12 @@
uint64_t cgen_var_1;
*countPtr += 1 * 8;
*countPtr += sizeof(VkImageLayout);
- count_VkClearColorValue(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkClearColorValue*)(local_pColor), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pColor)
+ {
+ count_VkClearColorValue(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkClearColorValue*)(local_pColor), countPtr);
+ }
*countPtr += sizeof(uint32_t);
for (uint32_t i = 0; i < (uint32_t)((rangeCount)); ++i)
{
@@ -9487,7 +9492,15 @@
*streamPtrPtr += 1 * 8;
memcpy(*streamPtrPtr, (VkImageLayout*)&local_imageLayout, sizeof(VkImageLayout));
*streamPtrPtr += sizeof(VkImageLayout);
- reservedmarshal_VkClearColorValue(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkClearColorValue*)(local_pColor), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pColor;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pColor)
+ {
+ reservedmarshal_VkClearColorValue(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkClearColorValue*)(local_pColor), streamPtrPtr);
+ }
memcpy(*streamPtrPtr, (uint32_t*)&local_rangeCount, sizeof(uint32_t));
*streamPtrPtr += sizeof(uint32_t);
for (uint32_t i = 0; i < (uint32_t)((rangeCount)); ++i)
@@ -16523,6 +16536,1123 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+VkResult VkEncoder::vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkVideoProfileKHR* pVideoProfile,
+ VkVideoCapabilitiesKHR* pCapabilities,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ VkVideoProfileKHR* local_pVideoProfile;
+ local_physicalDevice = physicalDevice;
+ local_pVideoProfile = nullptr;
+ if (pVideoProfile)
+ {
+ local_pVideoProfile = (VkVideoProfileKHR*)pool->alloc(sizeof(const VkVideoProfileKHR));
+ deepcopy_VkVideoProfileKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pVideoProfile, (VkVideoProfileKHR*)(local_pVideoProfile));
+ }
+ if (local_pVideoProfile)
+ {
+ transform_tohost_VkVideoProfileKHR(sResourceTracker, (VkVideoProfileKHR*)(local_pVideoProfile));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoProfileKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoProfileKHR*)(local_pVideoProfile), countPtr);
+ count_VkVideoCapabilitiesKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoCapabilitiesKHR*)(pCapabilities), countPtr);
+ }
+ uint32_t packetSize_vkGetPhysicalDeviceVideoCapabilitiesKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetPhysicalDeviceVideoCapabilitiesKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetPhysicalDeviceVideoCapabilitiesKHR = OP_vkGetPhysicalDeviceVideoCapabilitiesKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetPhysicalDeviceVideoCapabilitiesKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetPhysicalDeviceVideoCapabilitiesKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkVideoProfileKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoProfileKHR*)(local_pVideoProfile), streamPtrPtr);
+ reservedmarshal_VkVideoCapabilitiesKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoCapabilitiesKHR*)(pCapabilities), streamPtrPtr);
+ unmarshal_VkVideoCapabilitiesKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoCapabilitiesKHR*)(pCapabilities));
+ if (pCapabilities)
+ {
+ transform_fromhost_VkVideoCapabilitiesKHR(sResourceTracker, (VkVideoCapabilitiesKHR*)(pCapabilities));
+ }
+ VkResult vkGetPhysicalDeviceVideoCapabilitiesKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkGetPhysicalDeviceVideoCapabilitiesKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetPhysicalDeviceVideoCapabilitiesKHR_VkResult_return;
+}
+
+VkResult VkEncoder::vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo,
+ uint32_t* pVideoFormatPropertyCount,
+ VkVideoFormatPropertiesKHR* pVideoFormatProperties,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ VkPhysicalDeviceVideoFormatInfoKHR* local_pVideoFormatInfo;
+ local_physicalDevice = physicalDevice;
+ local_pVideoFormatInfo = nullptr;
+ if (pVideoFormatInfo)
+ {
+ local_pVideoFormatInfo = (VkPhysicalDeviceVideoFormatInfoKHR*)pool->alloc(sizeof(const VkPhysicalDeviceVideoFormatInfoKHR));
+ deepcopy_VkPhysicalDeviceVideoFormatInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pVideoFormatInfo, (VkPhysicalDeviceVideoFormatInfoKHR*)(local_pVideoFormatInfo));
+ }
+ if (local_pVideoFormatInfo)
+ {
+ transform_tohost_VkPhysicalDeviceVideoFormatInfoKHR(sResourceTracker, (VkPhysicalDeviceVideoFormatInfoKHR*)(local_pVideoFormatInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkPhysicalDeviceVideoFormatInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkPhysicalDeviceVideoFormatInfoKHR*)(local_pVideoFormatInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pVideoFormatPropertyCount)
+ {
+ *countPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pVideoFormatProperties)
+ {
+ if (pVideoFormatPropertyCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoFormatPropertyCount)); ++i)
+ {
+ count_VkVideoFormatPropertiesKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoFormatPropertiesKHR*)(pVideoFormatProperties + i), countPtr);
+ }
+ }
+ }
+ }
+ uint32_t packetSize_vkGetPhysicalDeviceVideoFormatPropertiesKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetPhysicalDeviceVideoFormatPropertiesKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetPhysicalDeviceVideoFormatPropertiesKHR = OP_vkGetPhysicalDeviceVideoFormatPropertiesKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetPhysicalDeviceVideoFormatPropertiesKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetPhysicalDeviceVideoFormatPropertiesKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkPhysicalDeviceVideoFormatInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkPhysicalDeviceVideoFormatInfoKHR*)(local_pVideoFormatInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)pVideoFormatPropertyCount;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pVideoFormatPropertyCount)
+ {
+ memcpy(*streamPtrPtr, (uint32_t*)pVideoFormatPropertyCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)pVideoFormatProperties;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pVideoFormatProperties)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoFormatPropertyCount)); ++i)
+ {
+ reservedmarshal_VkVideoFormatPropertiesKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoFormatPropertiesKHR*)(pVideoFormatProperties + i), streamPtrPtr);
+ }
+ }
+ // WARNING PTR CHECK
+ uint32_t* check_pVideoFormatPropertyCount;
+ check_pVideoFormatPropertyCount = (uint32_t*)(uintptr_t)stream->getBe64();
+ if (pVideoFormatPropertyCount)
+ {
+ if (!(check_pVideoFormatPropertyCount))
+ {
+ fprintf(stderr, "fatal: pVideoFormatPropertyCount inconsistent between guest and host\n");
+ }
+ stream->read((uint32_t*)pVideoFormatPropertyCount, sizeof(uint32_t));
+ }
+ // WARNING PTR CHECK
+ VkVideoFormatPropertiesKHR* check_pVideoFormatProperties;
+ check_pVideoFormatProperties = (VkVideoFormatPropertiesKHR*)(uintptr_t)stream->getBe64();
+ if (pVideoFormatProperties)
+ {
+ if (!(check_pVideoFormatProperties))
+ {
+ fprintf(stderr, "fatal: pVideoFormatProperties inconsistent between guest and host\n");
+ }
+ if (pVideoFormatPropertyCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoFormatPropertyCount)); ++i)
+ {
+ unmarshal_VkVideoFormatPropertiesKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoFormatPropertiesKHR*)(pVideoFormatProperties + i));
+ }
+ }
+ }
+ if (pVideoFormatPropertyCount)
+ {
+ if (pVideoFormatProperties)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoFormatPropertyCount)); ++i)
+ {
+ transform_fromhost_VkVideoFormatPropertiesKHR(sResourceTracker, (VkVideoFormatPropertiesKHR*)(pVideoFormatProperties + i));
+ }
+ }
+ }
+ VkResult vkGetPhysicalDeviceVideoFormatPropertiesKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkGetPhysicalDeviceVideoFormatPropertiesKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetPhysicalDeviceVideoFormatPropertiesKHR_VkResult_return;
+}
+
+VkResult VkEncoder::vkCreateVideoSessionKHR(
+ VkDevice device,
+ const VkVideoSessionCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionKHR* pVideoSession,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionCreateInfoKHR* local_pCreateInfo;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_pCreateInfo = nullptr;
+ if (pCreateInfo)
+ {
+ local_pCreateInfo = (VkVideoSessionCreateInfoKHR*)pool->alloc(sizeof(const VkVideoSessionCreateInfoKHR));
+ deepcopy_VkVideoSessionCreateInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCreateInfo, (VkVideoSessionCreateInfoKHR*)(local_pCreateInfo));
+ }
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pCreateInfo)
+ {
+ transform_tohost_VkVideoSessionCreateInfoKHR(sResourceTracker, (VkVideoSessionCreateInfoKHR*)(local_pCreateInfo));
+ }
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoSessionCreateInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoSessionCreateInfoKHR*)(local_pCreateInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkCreateVideoSessionKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCreateVideoSessionKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCreateVideoSessionKHR = OP_vkCreateVideoSessionKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkCreateVideoSessionKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCreateVideoSessionKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkVideoSessionCreateInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoSessionCreateInfoKHR*)(local_pCreateInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ uint64_t cgen_var_2 = (uint64_t)(*pVideoSession);
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ (*pVideoSession) = (VkVideoSessionKHR)stream->getBe64();
+ VkResult vkCreateVideoSessionKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkCreateVideoSessionKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkCreateVideoSessionKHR_VkResult_return;
+}
+
+void VkEncoder::vkDestroyVideoSessionKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionKHR local_videoSession;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_videoSession = videoSession;
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ }
+ uint32_t packetSize_vkDestroyVideoSessionKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkDestroyVideoSessionKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkDestroyVideoSessionKHR = OP_vkDestroyVideoSessionKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkDestroyVideoSessionKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkDestroyVideoSessionKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_videoSession;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ stream->flush();
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+VkResult VkEncoder::vkGetVideoSessionMemoryRequirementsKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t* pVideoSessionMemoryRequirementsCount,
+ VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionKHR local_videoSession;
+ local_device = device;
+ local_videoSession = videoSession;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pVideoSessionMemoryRequirementsCount)
+ {
+ *countPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pVideoSessionMemoryRequirements)
+ {
+ if (pVideoSessionMemoryRequirementsCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoSessionMemoryRequirementsCount)); ++i)
+ {
+ count_VkVideoGetMemoryPropertiesKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoGetMemoryPropertiesKHR*)(pVideoSessionMemoryRequirements + i), countPtr);
+ }
+ }
+ }
+ }
+ uint32_t packetSize_vkGetVideoSessionMemoryRequirementsKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetVideoSessionMemoryRequirementsKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetVideoSessionMemoryRequirementsKHR = OP_vkGetVideoSessionMemoryRequirementsKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetVideoSessionMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetVideoSessionMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_videoSession;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)pVideoSessionMemoryRequirementsCount;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pVideoSessionMemoryRequirementsCount)
+ {
+ memcpy(*streamPtrPtr, (uint32_t*)pVideoSessionMemoryRequirementsCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_3 = (uint64_t)(uintptr_t)pVideoSessionMemoryRequirements;
+ memcpy((*streamPtrPtr), &cgen_var_3, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pVideoSessionMemoryRequirements)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoSessionMemoryRequirementsCount)); ++i)
+ {
+ reservedmarshal_VkVideoGetMemoryPropertiesKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoGetMemoryPropertiesKHR*)(pVideoSessionMemoryRequirements + i), streamPtrPtr);
+ }
+ }
+ // WARNING PTR CHECK
+ uint32_t* check_pVideoSessionMemoryRequirementsCount;
+ check_pVideoSessionMemoryRequirementsCount = (uint32_t*)(uintptr_t)stream->getBe64();
+ if (pVideoSessionMemoryRequirementsCount)
+ {
+ if (!(check_pVideoSessionMemoryRequirementsCount))
+ {
+ fprintf(stderr, "fatal: pVideoSessionMemoryRequirementsCount inconsistent between guest and host\n");
+ }
+ stream->read((uint32_t*)pVideoSessionMemoryRequirementsCount, sizeof(uint32_t));
+ }
+ // WARNING PTR CHECK
+ VkVideoGetMemoryPropertiesKHR* check_pVideoSessionMemoryRequirements;
+ check_pVideoSessionMemoryRequirements = (VkVideoGetMemoryPropertiesKHR*)(uintptr_t)stream->getBe64();
+ if (pVideoSessionMemoryRequirements)
+ {
+ if (!(check_pVideoSessionMemoryRequirements))
+ {
+ fprintf(stderr, "fatal: pVideoSessionMemoryRequirements inconsistent between guest and host\n");
+ }
+ if (pVideoSessionMemoryRequirementsCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoSessionMemoryRequirementsCount)); ++i)
+ {
+ unmarshal_VkVideoGetMemoryPropertiesKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoGetMemoryPropertiesKHR*)(pVideoSessionMemoryRequirements + i));
+ }
+ }
+ }
+ if (pVideoSessionMemoryRequirementsCount)
+ {
+ if (pVideoSessionMemoryRequirements)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pVideoSessionMemoryRequirementsCount)); ++i)
+ {
+ transform_fromhost_VkVideoGetMemoryPropertiesKHR(sResourceTracker, (VkVideoGetMemoryPropertiesKHR*)(pVideoSessionMemoryRequirements + i));
+ }
+ }
+ }
+ VkResult vkGetVideoSessionMemoryRequirementsKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkGetVideoSessionMemoryRequirementsKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetVideoSessionMemoryRequirementsKHR_VkResult_return;
+}
+
+VkResult VkEncoder::vkBindVideoSessionMemoryKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VkVideoBindMemoryKHR* pVideoSessionBindMemories,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionKHR local_videoSession;
+ uint32_t local_videoSessionBindMemoryCount;
+ VkVideoBindMemoryKHR* local_pVideoSessionBindMemories;
+ local_device = device;
+ local_videoSession = videoSession;
+ local_videoSessionBindMemoryCount = videoSessionBindMemoryCount;
+ local_pVideoSessionBindMemories = nullptr;
+ if (pVideoSessionBindMemories)
+ {
+ local_pVideoSessionBindMemories = (VkVideoBindMemoryKHR*)pool->alloc(((videoSessionBindMemoryCount)) * sizeof(const VkVideoBindMemoryKHR));
+ for (uint32_t i = 0; i < (uint32_t)((videoSessionBindMemoryCount)); ++i)
+ {
+ deepcopy_VkVideoBindMemoryKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pVideoSessionBindMemories + i, (VkVideoBindMemoryKHR*)(local_pVideoSessionBindMemories + i));
+ }
+ }
+ if (local_pVideoSessionBindMemories)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((videoSessionBindMemoryCount)); ++i)
+ {
+ transform_tohost_VkVideoBindMemoryKHR(sResourceTracker, (VkVideoBindMemoryKHR*)(local_pVideoSessionBindMemories + i));
+ }
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ *countPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((videoSessionBindMemoryCount)); ++i)
+ {
+ count_VkVideoBindMemoryKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoBindMemoryKHR*)(local_pVideoSessionBindMemories + i), countPtr);
+ }
+ }
+ uint32_t packetSize_vkBindVideoSessionMemoryKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkBindVideoSessionMemoryKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkBindVideoSessionMemoryKHR = OP_vkBindVideoSessionMemoryKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkBindVideoSessionMemoryKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkBindVideoSessionMemoryKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_videoSession;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ memcpy(*streamPtrPtr, (uint32_t*)&local_videoSessionBindMemoryCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((videoSessionBindMemoryCount)); ++i)
+ {
+ reservedmarshal_VkVideoBindMemoryKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoBindMemoryKHR*)(local_pVideoSessionBindMemories + i), streamPtrPtr);
+ }
+ VkResult vkBindVideoSessionMemoryKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkBindVideoSessionMemoryKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkBindVideoSessionMemoryKHR_VkResult_return;
+}
+
+VkResult VkEncoder::vkCreateVideoSessionParametersKHR(
+ VkDevice device,
+ const VkVideoSessionParametersCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionParametersKHR* pVideoSessionParameters,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionParametersCreateInfoKHR* local_pCreateInfo;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_pCreateInfo = nullptr;
+ if (pCreateInfo)
+ {
+ local_pCreateInfo = (VkVideoSessionParametersCreateInfoKHR*)pool->alloc(sizeof(const VkVideoSessionParametersCreateInfoKHR));
+ deepcopy_VkVideoSessionParametersCreateInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCreateInfo, (VkVideoSessionParametersCreateInfoKHR*)(local_pCreateInfo));
+ }
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pCreateInfo)
+ {
+ transform_tohost_VkVideoSessionParametersCreateInfoKHR(sResourceTracker, (VkVideoSessionParametersCreateInfoKHR*)(local_pCreateInfo));
+ }
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoSessionParametersCreateInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoSessionParametersCreateInfoKHR*)(local_pCreateInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkCreateVideoSessionParametersKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCreateVideoSessionParametersKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCreateVideoSessionParametersKHR = OP_vkCreateVideoSessionParametersKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkCreateVideoSessionParametersKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCreateVideoSessionParametersKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkVideoSessionParametersCreateInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoSessionParametersCreateInfoKHR*)(local_pCreateInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ uint64_t cgen_var_2 = (uint64_t)(*pVideoSessionParameters);
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ (*pVideoSessionParameters) = (VkVideoSessionParametersKHR)stream->getBe64();
+ VkResult vkCreateVideoSessionParametersKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkCreateVideoSessionParametersKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkCreateVideoSessionParametersKHR_VkResult_return;
+}
+
+VkResult VkEncoder::vkUpdateVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionParametersKHR local_videoSessionParameters;
+ VkVideoSessionParametersUpdateInfoKHR* local_pUpdateInfo;
+ local_device = device;
+ local_videoSessionParameters = videoSessionParameters;
+ local_pUpdateInfo = nullptr;
+ if (pUpdateInfo)
+ {
+ local_pUpdateInfo = (VkVideoSessionParametersUpdateInfoKHR*)pool->alloc(sizeof(const VkVideoSessionParametersUpdateInfoKHR));
+ deepcopy_VkVideoSessionParametersUpdateInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pUpdateInfo, (VkVideoSessionParametersUpdateInfoKHR*)(local_pUpdateInfo));
+ }
+ if (local_pUpdateInfo)
+ {
+ transform_tohost_VkVideoSessionParametersUpdateInfoKHR(sResourceTracker, (VkVideoSessionParametersUpdateInfoKHR*)(local_pUpdateInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ count_VkVideoSessionParametersUpdateInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoSessionParametersUpdateInfoKHR*)(local_pUpdateInfo), countPtr);
+ }
+ uint32_t packetSize_vkUpdateVideoSessionParametersKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkUpdateVideoSessionParametersKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkUpdateVideoSessionParametersKHR = OP_vkUpdateVideoSessionParametersKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkUpdateVideoSessionParametersKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkUpdateVideoSessionParametersKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_videoSessionParameters;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ reservedmarshal_VkVideoSessionParametersUpdateInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoSessionParametersUpdateInfoKHR*)(local_pUpdateInfo), streamPtrPtr);
+ VkResult vkUpdateVideoSessionParametersKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkUpdateVideoSessionParametersKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkUpdateVideoSessionParametersKHR_VkResult_return;
+}
+
+void VkEncoder::vkDestroyVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkVideoSessionParametersKHR local_videoSessionParameters;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_videoSessionParameters = videoSessionParameters;
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ }
+ uint32_t packetSize_vkDestroyVideoSessionParametersKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkDestroyVideoSessionParametersKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkDestroyVideoSessionParametersKHR = OP_vkDestroyVideoSessionParametersKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkDestroyVideoSessionParametersKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkDestroyVideoSessionParametersKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_videoSessionParameters;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ stream->flush();
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdBeginVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoBeginCodingInfoKHR* pBeginInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkVideoBeginCodingInfoKHR* local_pBeginInfo;
+ local_commandBuffer = commandBuffer;
+ local_pBeginInfo = nullptr;
+ if (pBeginInfo)
+ {
+ local_pBeginInfo = (VkVideoBeginCodingInfoKHR*)pool->alloc(sizeof(const VkVideoBeginCodingInfoKHR));
+ deepcopy_VkVideoBeginCodingInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pBeginInfo, (VkVideoBeginCodingInfoKHR*)(local_pBeginInfo));
+ }
+ if (local_pBeginInfo)
+ {
+ transform_tohost_VkVideoBeginCodingInfoKHR(sResourceTracker, (VkVideoBeginCodingInfoKHR*)(local_pBeginInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoBeginCodingInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoBeginCodingInfoKHR*)(local_pBeginInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdBeginVideoCodingKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdBeginVideoCodingKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdBeginVideoCodingKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdBeginVideoCodingKHR = OP_vkCmdBeginVideoCodingKHR;
+ memcpy(streamPtr, &opcode_vkCmdBeginVideoCodingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdBeginVideoCodingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkVideoBeginCodingInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoBeginCodingInfoKHR*)(local_pBeginInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdEndVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEndCodingInfoKHR* pEndCodingInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkVideoEndCodingInfoKHR* local_pEndCodingInfo;
+ local_commandBuffer = commandBuffer;
+ local_pEndCodingInfo = nullptr;
+ if (pEndCodingInfo)
+ {
+ local_pEndCodingInfo = (VkVideoEndCodingInfoKHR*)pool->alloc(sizeof(const VkVideoEndCodingInfoKHR));
+ deepcopy_VkVideoEndCodingInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pEndCodingInfo, (VkVideoEndCodingInfoKHR*)(local_pEndCodingInfo));
+ }
+ if (local_pEndCodingInfo)
+ {
+ transform_tohost_VkVideoEndCodingInfoKHR(sResourceTracker, (VkVideoEndCodingInfoKHR*)(local_pEndCodingInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoEndCodingInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoEndCodingInfoKHR*)(local_pEndCodingInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdEndVideoCodingKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdEndVideoCodingKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdEndVideoCodingKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdEndVideoCodingKHR = OP_vkCmdEndVideoCodingKHR;
+ memcpy(streamPtr, &opcode_vkCmdEndVideoCodingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdEndVideoCodingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkVideoEndCodingInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoEndCodingInfoKHR*)(local_pEndCodingInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdControlVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoCodingControlInfoKHR* pCodingControlInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkVideoCodingControlInfoKHR* local_pCodingControlInfo;
+ local_commandBuffer = commandBuffer;
+ local_pCodingControlInfo = nullptr;
+ if (pCodingControlInfo)
+ {
+ local_pCodingControlInfo = (VkVideoCodingControlInfoKHR*)pool->alloc(sizeof(const VkVideoCodingControlInfoKHR));
+ deepcopy_VkVideoCodingControlInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCodingControlInfo, (VkVideoCodingControlInfoKHR*)(local_pCodingControlInfo));
+ }
+ if (local_pCodingControlInfo)
+ {
+ transform_tohost_VkVideoCodingControlInfoKHR(sResourceTracker, (VkVideoCodingControlInfoKHR*)(local_pCodingControlInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoCodingControlInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoCodingControlInfoKHR*)(local_pCodingControlInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdControlVideoCodingKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdControlVideoCodingKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdControlVideoCodingKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdControlVideoCodingKHR = OP_vkCmdControlVideoCodingKHR;
+ memcpy(streamPtr, &opcode_vkCmdControlVideoCodingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdControlVideoCodingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkVideoCodingControlInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoCodingControlInfoKHR*)(local_pCodingControlInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void VkEncoder::vkCmdDecodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoDecodeInfoKHR* pFrameInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkVideoDecodeInfoKHR* local_pFrameInfo;
+ local_commandBuffer = commandBuffer;
+ local_pFrameInfo = nullptr;
+ if (pFrameInfo)
+ {
+ local_pFrameInfo = (VkVideoDecodeInfoKHR*)pool->alloc(sizeof(const VkVideoDecodeInfoKHR));
+ deepcopy_VkVideoDecodeInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pFrameInfo, (VkVideoDecodeInfoKHR*)(local_pFrameInfo));
+ }
+ if (local_pFrameInfo)
+ {
+ transform_tohost_VkVideoDecodeInfoKHR(sResourceTracker, (VkVideoDecodeInfoKHR*)(local_pFrameInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoDecodeInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoDecodeInfoKHR*)(local_pFrameInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdDecodeVideoKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdDecodeVideoKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdDecodeVideoKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdDecodeVideoKHR = OP_vkCmdDecodeVideoKHR;
+ memcpy(streamPtr, &opcode_vkCmdDecodeVideoKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdDecodeVideoKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkVideoDecodeInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoDecodeInfoKHR*)(local_pFrameInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void VkEncoder::vkCmdBeginRenderingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkRenderingInfoKHR* pRenderingInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkRenderingInfoKHR* local_pRenderingInfo;
+ local_commandBuffer = commandBuffer;
+ local_pRenderingInfo = nullptr;
+ if (pRenderingInfo)
+ {
+ local_pRenderingInfo = (VkRenderingInfoKHR*)pool->alloc(sizeof(const VkRenderingInfoKHR));
+ deepcopy_VkRenderingInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pRenderingInfo, (VkRenderingInfoKHR*)(local_pRenderingInfo));
+ }
+ if (local_pRenderingInfo)
+ {
+ transform_tohost_VkRenderingInfoKHR(sResourceTracker, (VkRenderingInfoKHR*)(local_pRenderingInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkRenderingInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkRenderingInfoKHR*)(local_pRenderingInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdBeginRenderingKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdBeginRenderingKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdBeginRenderingKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdBeginRenderingKHR = OP_vkCmdBeginRenderingKHR;
+ memcpy(streamPtr, &opcode_vkCmdBeginRenderingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdBeginRenderingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkRenderingInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkRenderingInfoKHR*)(local_pRenderingInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdEndRenderingKHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ local_commandBuffer = commandBuffer;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ }
+ uint32_t packetSize_vkCmdEndRenderingKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdEndRenderingKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdEndRenderingKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdEndRenderingKHR = OP_vkCmdEndRenderingKHR;
+ memcpy(streamPtr, &opcode_vkCmdEndRenderingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdEndRenderingKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -21260,6 +22390,70 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+VkResult VkEncoder::vkWaitForPresentKHR(
+ VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint64_t presentId,
+ uint64_t timeout,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkSwapchainKHR local_swapchain;
+ uint64_t local_presentId;
+ uint64_t local_timeout;
+ local_device = device;
+ local_swapchain = swapchain;
+ local_presentId = presentId;
+ local_timeout = timeout;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint64_t);
+ *countPtr += sizeof(uint64_t);
+ }
+ uint32_t packetSize_vkWaitForPresentKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkWaitForPresentKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkWaitForPresentKHR = OP_vkWaitForPresentKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkWaitForPresentKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkWaitForPresentKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkSwapchainKHR((*&local_swapchain));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (uint64_t*)&local_presentId, sizeof(uint64_t));
+ *streamPtrPtr += sizeof(uint64_t);
+ memcpy(*streamPtrPtr, (uint64_t*)&local_timeout, sizeof(uint64_t));
+ *streamPtrPtr += sizeof(uint64_t);
+ VkResult vkWaitForPresentKHR_VkResult_return = (VkResult)0;
+ stream->read(&vkWaitForPresentKHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkWaitForPresentKHR_VkResult_return;
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -22136,10 +23330,668 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+#endif
#ifdef VK_KHR_pipeline_library
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+#endif
+#ifdef VK_KHR_video_encode_queue
+void VkEncoder::vkCmdEncodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEncodeInfoKHR* pEncodeInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkVideoEncodeInfoKHR* local_pEncodeInfo;
+ local_commandBuffer = commandBuffer;
+ local_pEncodeInfo = nullptr;
+ if (pEncodeInfo)
+ {
+ local_pEncodeInfo = (VkVideoEncodeInfoKHR*)pool->alloc(sizeof(const VkVideoEncodeInfoKHR));
+ deepcopy_VkVideoEncodeInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pEncodeInfo, (VkVideoEncodeInfoKHR*)(local_pEncodeInfo));
+ }
+ if (local_pEncodeInfo)
+ {
+ transform_tohost_VkVideoEncodeInfoKHR(sResourceTracker, (VkVideoEncodeInfoKHR*)(local_pEncodeInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkVideoEncodeInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoEncodeInfoKHR*)(local_pEncodeInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdEncodeVideoKHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdEncodeVideoKHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdEncodeVideoKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdEncodeVideoKHR = OP_vkCmdEncodeVideoKHR;
+ memcpy(streamPtr, &opcode_vkCmdEncodeVideoKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdEncodeVideoKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkVideoEncodeInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVideoEncodeInfoKHR*)(local_pEncodeInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void VkEncoder::vkCmdSetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ const VkDependencyInfoKHR* pDependencyInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkEvent local_event;
+ VkDependencyInfoKHR* local_pDependencyInfo;
+ local_commandBuffer = commandBuffer;
+ local_event = event;
+ local_pDependencyInfo = nullptr;
+ if (pDependencyInfo)
+ {
+ local_pDependencyInfo = (VkDependencyInfoKHR*)pool->alloc(sizeof(const VkDependencyInfoKHR));
+ deepcopy_VkDependencyInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pDependencyInfo, (VkDependencyInfoKHR*)(local_pDependencyInfo));
+ }
+ if (local_pDependencyInfo)
+ {
+ transform_tohost_VkDependencyInfoKHR(sResourceTracker, (VkDependencyInfoKHR*)(local_pDependencyInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ count_VkDependencyInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDependencyInfoKHR*)(local_pDependencyInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdSetEvent2KHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetEvent2KHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetEvent2KHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetEvent2KHR = OP_vkCmdSetEvent2KHR;
+ memcpy(streamPtr, &opcode_vkCmdSetEvent2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetEvent2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkEvent((*&local_event));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkDependencyInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDependencyInfoKHR*)(local_pDependencyInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdResetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags2KHR stageMask,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkEvent local_event;
+ VkPipelineStageFlags2KHR local_stageMask;
+ local_commandBuffer = commandBuffer;
+ local_event = event;
+ local_stageMask = stageMask;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkPipelineStageFlags2KHR);
+ }
+ uint32_t packetSize_vkCmdResetEvent2KHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdResetEvent2KHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdResetEvent2KHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdResetEvent2KHR = OP_vkCmdResetEvent2KHR;
+ memcpy(streamPtr, &opcode_vkCmdResetEvent2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdResetEvent2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkEvent((*&local_event));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (VkPipelineStageFlags2KHR*)&local_stageMask, sizeof(VkPipelineStageFlags2KHR));
+ *streamPtrPtr += sizeof(VkPipelineStageFlags2KHR);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdWaitEvents2KHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t eventCount,
+ const VkEvent* pEvents,
+ const VkDependencyInfoKHR* pDependencyInfos,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ uint32_t local_eventCount;
+ VkEvent* local_pEvents;
+ VkDependencyInfoKHR* local_pDependencyInfos;
+ local_commandBuffer = commandBuffer;
+ local_eventCount = eventCount;
+ // Avoiding deepcopy for pEvents
+ local_pEvents = (VkEvent*)pEvents;
+ local_pDependencyInfos = nullptr;
+ if (pDependencyInfos)
+ {
+ local_pDependencyInfos = (VkDependencyInfoKHR*)pool->alloc(((eventCount)) * sizeof(const VkDependencyInfoKHR));
+ for (uint32_t i = 0; i < (uint32_t)((eventCount)); ++i)
+ {
+ deepcopy_VkDependencyInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pDependencyInfos + i, (VkDependencyInfoKHR*)(local_pDependencyInfos + i));
+ }
+ }
+ if (local_pDependencyInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((eventCount)); ++i)
+ {
+ transform_tohost_VkDependencyInfoKHR(sResourceTracker, (VkDependencyInfoKHR*)(local_pDependencyInfos + i));
+ }
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ if (((eventCount)))
+ {
+ *countPtr += ((eventCount)) * 8;
+ }
+ for (uint32_t i = 0; i < (uint32_t)((eventCount)); ++i)
+ {
+ count_VkDependencyInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDependencyInfoKHR*)(local_pDependencyInfos + i), countPtr);
+ }
+ }
+ uint32_t packetSize_vkCmdWaitEvents2KHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdWaitEvents2KHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdWaitEvents2KHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdWaitEvents2KHR = OP_vkCmdWaitEvents2KHR;
+ memcpy(streamPtr, &opcode_vkCmdWaitEvents2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdWaitEvents2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_eventCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ if (((eventCount)))
+ {
+ uint8_t* cgen_var_0_ptr = (uint8_t*)(*streamPtrPtr);
+ for (uint32_t k = 0; k < ((eventCount)); ++k)
+ {
+ uint64_t tmpval = get_host_u64_VkEvent(local_pEvents[k]);
+ memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
+ }
+ *streamPtrPtr += 8 * ((eventCount));
+ }
+ for (uint32_t i = 0; i < (uint32_t)((eventCount)); ++i)
+ {
+ reservedmarshal_VkDependencyInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDependencyInfoKHR*)(local_pDependencyInfos + i), streamPtrPtr);
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdPipelineBarrier2KHR(
+ VkCommandBuffer commandBuffer,
+ const VkDependencyInfoKHR* pDependencyInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkDependencyInfoKHR* local_pDependencyInfo;
+ local_commandBuffer = commandBuffer;
+ local_pDependencyInfo = nullptr;
+ if (pDependencyInfo)
+ {
+ local_pDependencyInfo = (VkDependencyInfoKHR*)pool->alloc(sizeof(const VkDependencyInfoKHR));
+ deepcopy_VkDependencyInfoKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pDependencyInfo, (VkDependencyInfoKHR*)(local_pDependencyInfo));
+ }
+ if (local_pDependencyInfo)
+ {
+ transform_tohost_VkDependencyInfoKHR(sResourceTracker, (VkDependencyInfoKHR*)(local_pDependencyInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkDependencyInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDependencyInfoKHR*)(local_pDependencyInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdPipelineBarrier2KHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdPipelineBarrier2KHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdPipelineBarrier2KHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdPipelineBarrier2KHR = OP_vkCmdPipelineBarrier2KHR;
+ memcpy(streamPtr, &opcode_vkCmdPipelineBarrier2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdPipelineBarrier2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkDependencyInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDependencyInfoKHR*)(local_pDependencyInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdWriteTimestamp2KHR(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkQueryPool queryPool,
+ uint32_t query,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkPipelineStageFlags2KHR local_stage;
+ VkQueryPool local_queryPool;
+ uint32_t local_query;
+ local_commandBuffer = commandBuffer;
+ local_stage = stage;
+ local_queryPool = queryPool;
+ local_query = query;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkPipelineStageFlags2KHR);
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ }
+ uint32_t packetSize_vkCmdWriteTimestamp2KHR = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdWriteTimestamp2KHR -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdWriteTimestamp2KHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdWriteTimestamp2KHR = OP_vkCmdWriteTimestamp2KHR;
+ memcpy(streamPtr, &opcode_vkCmdWriteTimestamp2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdWriteTimestamp2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (VkPipelineStageFlags2KHR*)&local_stage, sizeof(VkPipelineStageFlags2KHR));
+ *streamPtrPtr += sizeof(VkPipelineStageFlags2KHR);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkQueryPool((*&local_queryPool));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (uint32_t*)&local_query, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+VkResult VkEncoder::vkQueueSubmit2KHR(
+ VkQueue queue,
+ uint32_t submitCount,
+ const VkSubmitInfo2KHR* pSubmits,
+ VkFence fence,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkQueue local_queue;
+ uint32_t local_submitCount;
+ VkSubmitInfo2KHR* local_pSubmits;
+ VkFence local_fence;
+ local_queue = queue;
+ local_submitCount = submitCount;
+ local_pSubmits = nullptr;
+ if (pSubmits)
+ {
+ local_pSubmits = (VkSubmitInfo2KHR*)pool->alloc(((submitCount)) * sizeof(const VkSubmitInfo2KHR));
+ for (uint32_t i = 0; i < (uint32_t)((submitCount)); ++i)
+ {
+ deepcopy_VkSubmitInfo2KHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pSubmits + i, (VkSubmitInfo2KHR*)(local_pSubmits + i));
+ }
+ }
+ local_fence = fence;
+ if (local_pSubmits)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((submitCount)); ++i)
+ {
+ transform_tohost_VkSubmitInfo2KHR(sResourceTracker, (VkSubmitInfo2KHR*)(local_pSubmits + i));
+ }
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((submitCount)); ++i)
+ {
+ count_VkSubmitInfo2KHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSubmitInfo2KHR*)(local_pSubmits + i), countPtr);
+ }
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ }
+ uint32_t packetSize_vkQueueSubmit2KHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkQueueSubmit2KHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkQueueSubmit2KHR = OP_vkQueueSubmit2KHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkQueueSubmit2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkQueueSubmit2KHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkQueue((*&local_queue));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (uint32_t*)&local_submitCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((submitCount)); ++i)
+ {
+ reservedmarshal_VkSubmitInfo2KHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSubmitInfo2KHR*)(local_pSubmits + i), streamPtrPtr);
+ }
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkFence((*&local_fence));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ VkResult vkQueueSubmit2KHR_VkResult_return = (VkResult)0;
+ stream->read(&vkQueueSubmit2KHR_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkQueueSubmit2KHR_VkResult_return;
+}
+
+void VkEncoder::vkCmdWriteBufferMarker2AMD(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ uint32_t marker,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkPipelineStageFlags2KHR local_stage;
+ VkBuffer local_dstBuffer;
+ VkDeviceSize local_dstOffset;
+ uint32_t local_marker;
+ local_commandBuffer = commandBuffer;
+ local_stage = stage;
+ local_dstBuffer = dstBuffer;
+ local_dstOffset = dstOffset;
+ local_marker = marker;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkPipelineStageFlags2KHR);
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkDeviceSize);
+ *countPtr += sizeof(uint32_t);
+ }
+ uint32_t packetSize_vkCmdWriteBufferMarker2AMD = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdWriteBufferMarker2AMD -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdWriteBufferMarker2AMD);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdWriteBufferMarker2AMD = OP_vkCmdWriteBufferMarker2AMD;
+ memcpy(streamPtr, &opcode_vkCmdWriteBufferMarker2AMD, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdWriteBufferMarker2AMD, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (VkPipelineStageFlags2KHR*)&local_stage, sizeof(VkPipelineStageFlags2KHR));
+ *streamPtrPtr += sizeof(VkPipelineStageFlags2KHR);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkBuffer((*&local_dstBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (VkDeviceSize*)&local_dstOffset, sizeof(VkDeviceSize));
+ *streamPtrPtr += sizeof(VkDeviceSize);
+ memcpy(*streamPtrPtr, (uint32_t*)&local_marker, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkGetQueueCheckpointData2NV(
+ VkQueue queue,
+ uint32_t* pCheckpointDataCount,
+ VkCheckpointData2NV* pCheckpointData,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkQueue local_queue;
+ local_queue = queue;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pCheckpointDataCount)
+ {
+ *countPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pCheckpointData)
+ {
+ if (pCheckpointDataCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pCheckpointDataCount)); ++i)
+ {
+ count_VkCheckpointData2NV(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCheckpointData2NV*)(pCheckpointData + i), countPtr);
+ }
+ }
+ }
+ }
+ uint32_t packetSize_vkGetQueueCheckpointData2NV = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetQueueCheckpointData2NV);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetQueueCheckpointData2NV = OP_vkGetQueueCheckpointData2NV;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetQueueCheckpointData2NV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetQueueCheckpointData2NV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkQueue((*&local_queue));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)pCheckpointDataCount;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pCheckpointDataCount)
+ {
+ memcpy(*streamPtrPtr, (uint32_t*)pCheckpointDataCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)pCheckpointData;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pCheckpointData)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pCheckpointDataCount)); ++i)
+ {
+ reservedmarshal_VkCheckpointData2NV(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCheckpointData2NV*)(pCheckpointData + i), streamPtrPtr);
+ }
+ }
+ // WARNING PTR CHECK
+ uint32_t* check_pCheckpointDataCount;
+ check_pCheckpointDataCount = (uint32_t*)(uintptr_t)stream->getBe64();
+ if (pCheckpointDataCount)
+ {
+ if (!(check_pCheckpointDataCount))
+ {
+ fprintf(stderr, "fatal: pCheckpointDataCount inconsistent between guest and host\n");
+ }
+ stream->read((uint32_t*)pCheckpointDataCount, sizeof(uint32_t));
+ }
+ // WARNING PTR CHECK
+ VkCheckpointData2NV* check_pCheckpointData;
+ check_pCheckpointData = (VkCheckpointData2NV*)(uintptr_t)stream->getBe64();
+ if (pCheckpointData)
+ {
+ if (!(check_pCheckpointData))
+ {
+ fprintf(stderr, "fatal: pCheckpointData inconsistent between guest and host\n");
+ }
+ if (pCheckpointDataCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pCheckpointDataCount)); ++i)
+ {
+ unmarshal_VkCheckpointData2NV(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCheckpointData2NV*)(pCheckpointData + i));
+ }
+ }
+ }
+ if (pCheckpointDataCount)
+ {
+ if (pCheckpointData)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pCheckpointDataCount)); ++i)
+ {
+ transform_fromhost_VkCheckpointData2NV(sResourceTracker, (VkCheckpointData2NV*)(pCheckpointData + i));
+ }
+ }
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+#endif
#ifdef VK_KHR_copy_commands2
void VkEncoder::vkCmdCopyBuffer2KHR(
VkCommandBuffer commandBuffer,
@@ -22466,6 +24318,262 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+#endif
+#ifdef VK_KHR_maintenance4
+void VkEncoder::vkGetDeviceBufferMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceBufferMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkDeviceBufferMemoryRequirementsKHR* local_pInfo;
+ local_device = device;
+ local_pInfo = nullptr;
+ if (pInfo)
+ {
+ local_pInfo = (VkDeviceBufferMemoryRequirementsKHR*)pool->alloc(sizeof(const VkDeviceBufferMemoryRequirementsKHR));
+ deepcopy_VkDeviceBufferMemoryRequirementsKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pInfo, (VkDeviceBufferMemoryRequirementsKHR*)(local_pInfo));
+ }
+ if (local_pInfo)
+ {
+ transform_tohost_VkDeviceBufferMemoryRequirementsKHR(sResourceTracker, (VkDeviceBufferMemoryRequirementsKHR*)(local_pInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkDeviceBufferMemoryRequirementsKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDeviceBufferMemoryRequirementsKHR*)(local_pInfo), countPtr);
+ count_VkMemoryRequirements2(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryRequirements2*)(pMemoryRequirements), countPtr);
+ }
+ uint32_t packetSize_vkGetDeviceBufferMemoryRequirementsKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetDeviceBufferMemoryRequirementsKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetDeviceBufferMemoryRequirementsKHR = OP_vkGetDeviceBufferMemoryRequirementsKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetDeviceBufferMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetDeviceBufferMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkDeviceBufferMemoryRequirementsKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDeviceBufferMemoryRequirementsKHR*)(local_pInfo), streamPtrPtr);
+ reservedmarshal_VkMemoryRequirements2(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryRequirements2*)(pMemoryRequirements), streamPtrPtr);
+ unmarshal_VkMemoryRequirements2(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryRequirements2*)(pMemoryRequirements));
+ if (pMemoryRequirements)
+ {
+ transform_fromhost_VkMemoryRequirements2(sResourceTracker, (VkMemoryRequirements2*)(pMemoryRequirements));
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkGetDeviceImageMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkDeviceImageMemoryRequirementsKHR* local_pInfo;
+ local_device = device;
+ local_pInfo = nullptr;
+ if (pInfo)
+ {
+ local_pInfo = (VkDeviceImageMemoryRequirementsKHR*)pool->alloc(sizeof(const VkDeviceImageMemoryRequirementsKHR));
+ deepcopy_VkDeviceImageMemoryRequirementsKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pInfo, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo));
+ }
+ if (local_pInfo)
+ {
+ transform_tohost_VkDeviceImageMemoryRequirementsKHR(sResourceTracker, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkDeviceImageMemoryRequirementsKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo), countPtr);
+ count_VkMemoryRequirements2(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryRequirements2*)(pMemoryRequirements), countPtr);
+ }
+ uint32_t packetSize_vkGetDeviceImageMemoryRequirementsKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetDeviceImageMemoryRequirementsKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetDeviceImageMemoryRequirementsKHR = OP_vkGetDeviceImageMemoryRequirementsKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetDeviceImageMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetDeviceImageMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkDeviceImageMemoryRequirementsKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo), streamPtrPtr);
+ reservedmarshal_VkMemoryRequirements2(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryRequirements2*)(pMemoryRequirements), streamPtrPtr);
+ unmarshal_VkMemoryRequirements2(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryRequirements2*)(pMemoryRequirements));
+ if (pMemoryRequirements)
+ {
+ transform_fromhost_VkMemoryRequirements2(sResourceTracker, (VkMemoryRequirements2*)(pMemoryRequirements));
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkGetDeviceImageSparseMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ uint32_t* pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2* pSparseMemoryRequirements,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkDeviceImageMemoryRequirementsKHR* local_pInfo;
+ local_device = device;
+ local_pInfo = nullptr;
+ if (pInfo)
+ {
+ local_pInfo = (VkDeviceImageMemoryRequirementsKHR*)pool->alloc(sizeof(const VkDeviceImageMemoryRequirementsKHR));
+ deepcopy_VkDeviceImageMemoryRequirementsKHR(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pInfo, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo));
+ }
+ if (local_pInfo)
+ {
+ transform_tohost_VkDeviceImageMemoryRequirementsKHR(sResourceTracker, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkDeviceImageMemoryRequirementsKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pSparseMemoryRequirementCount)
+ {
+ *countPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (pSparseMemoryRequirements)
+ {
+ if (pSparseMemoryRequirementCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pSparseMemoryRequirementCount)); ++i)
+ {
+ count_VkSparseImageMemoryRequirements2(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSparseImageMemoryRequirements2*)(pSparseMemoryRequirements + i), countPtr);
+ }
+ }
+ }
+ }
+ uint32_t packetSize_vkGetDeviceImageSparseMemoryRequirementsKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetDeviceImageSparseMemoryRequirementsKHR);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetDeviceImageSparseMemoryRequirementsKHR = OP_vkGetDeviceImageSparseMemoryRequirementsKHR;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetDeviceImageSparseMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetDeviceImageSparseMemoryRequirementsKHR, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkDeviceImageMemoryRequirementsKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkDeviceImageMemoryRequirementsKHR*)(local_pInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)pSparseMemoryRequirementCount;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pSparseMemoryRequirementCount)
+ {
+ memcpy(*streamPtrPtr, (uint32_t*)pSparseMemoryRequirementCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)pSparseMemoryRequirements;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (pSparseMemoryRequirements)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pSparseMemoryRequirementCount)); ++i)
+ {
+ reservedmarshal_VkSparseImageMemoryRequirements2(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSparseImageMemoryRequirements2*)(pSparseMemoryRequirements + i), streamPtrPtr);
+ }
+ }
+ // WARNING PTR CHECK
+ uint32_t* check_pSparseMemoryRequirementCount;
+ check_pSparseMemoryRequirementCount = (uint32_t*)(uintptr_t)stream->getBe64();
+ if (pSparseMemoryRequirementCount)
+ {
+ if (!(check_pSparseMemoryRequirementCount))
+ {
+ fprintf(stderr, "fatal: pSparseMemoryRequirementCount inconsistent between guest and host\n");
+ }
+ stream->read((uint32_t*)pSparseMemoryRequirementCount, sizeof(uint32_t));
+ }
+ // WARNING PTR CHECK
+ VkSparseImageMemoryRequirements2* check_pSparseMemoryRequirements;
+ check_pSparseMemoryRequirements = (VkSparseImageMemoryRequirements2*)(uintptr_t)stream->getBe64();
+ if (pSparseMemoryRequirements)
+ {
+ if (!(check_pSparseMemoryRequirements))
+ {
+ fprintf(stderr, "fatal: pSparseMemoryRequirements inconsistent between guest and host\n");
+ }
+ if (pSparseMemoryRequirementCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pSparseMemoryRequirementCount)); ++i)
+ {
+ unmarshal_VkSparseImageMemoryRequirements2(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSparseImageMemoryRequirements2*)(pSparseMemoryRequirements + i));
+ }
+ }
+ }
+ if (pSparseMemoryRequirementCount)
+ {
+ if (pSparseMemoryRequirements)
+ {
+ for (uint32_t i = 0; i < (uint32_t)(*(pSparseMemoryRequirementCount)); ++i)
+ {
+ transform_fromhost_VkSparseImageMemoryRequirements2(sResourceTracker, (VkSparseImageMemoryRequirements2*)(pSparseMemoryRequirements + i));
+ }
+ }
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
VkResult VkEncoder::vkGetSwapchainGrallocUsageANDROID(
VkDevice device,
@@ -23755,6 +25863,392 @@
}
#endif
+#ifdef VK_NVX_binary_import
+VkResult VkEncoder::vkCreateCuModuleNVX(
+ VkDevice device,
+ const VkCuModuleCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuModuleNVX* pModule,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkCuModuleCreateInfoNVX* local_pCreateInfo;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_pCreateInfo = nullptr;
+ if (pCreateInfo)
+ {
+ local_pCreateInfo = (VkCuModuleCreateInfoNVX*)pool->alloc(sizeof(const VkCuModuleCreateInfoNVX));
+ deepcopy_VkCuModuleCreateInfoNVX(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCreateInfo, (VkCuModuleCreateInfoNVX*)(local_pCreateInfo));
+ }
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pCreateInfo)
+ {
+ transform_tohost_VkCuModuleCreateInfoNVX(sResourceTracker, (VkCuModuleCreateInfoNVX*)(local_pCreateInfo));
+ }
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkCuModuleCreateInfoNVX(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCuModuleCreateInfoNVX*)(local_pCreateInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkCreateCuModuleNVX = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCreateCuModuleNVX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCreateCuModuleNVX = OP_vkCreateCuModuleNVX;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkCreateCuModuleNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCreateCuModuleNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkCuModuleCreateInfoNVX(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCuModuleCreateInfoNVX*)(local_pCreateInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ uint64_t cgen_var_2 = (uint64_t)(*pModule);
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ (*pModule) = (VkCuModuleNVX)stream->getBe64();
+ VkResult vkCreateCuModuleNVX_VkResult_return = (VkResult)0;
+ stream->read(&vkCreateCuModuleNVX_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkCreateCuModuleNVX_VkResult_return;
+}
+
+VkResult VkEncoder::vkCreateCuFunctionNVX(
+ VkDevice device,
+ const VkCuFunctionCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuFunctionNVX* pFunction,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkCuFunctionCreateInfoNVX* local_pCreateInfo;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_pCreateInfo = nullptr;
+ if (pCreateInfo)
+ {
+ local_pCreateInfo = (VkCuFunctionCreateInfoNVX*)pool->alloc(sizeof(const VkCuFunctionCreateInfoNVX));
+ deepcopy_VkCuFunctionCreateInfoNVX(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCreateInfo, (VkCuFunctionCreateInfoNVX*)(local_pCreateInfo));
+ }
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pCreateInfo)
+ {
+ transform_tohost_VkCuFunctionCreateInfoNVX(sResourceTracker, (VkCuFunctionCreateInfoNVX*)(local_pCreateInfo));
+ }
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkCuFunctionCreateInfoNVX(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCuFunctionCreateInfoNVX*)(local_pCreateInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkCreateCuFunctionNVX = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCreateCuFunctionNVX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCreateCuFunctionNVX = OP_vkCreateCuFunctionNVX;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkCreateCuFunctionNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCreateCuFunctionNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkCuFunctionCreateInfoNVX(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCuFunctionCreateInfoNVX*)(local_pCreateInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ uint64_t cgen_var_2 = (uint64_t)(*pFunction);
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ (*pFunction) = (VkCuFunctionNVX)stream->getBe64();
+ VkResult vkCreateCuFunctionNVX_VkResult_return = (VkResult)0;
+ stream->read(&vkCreateCuFunctionNVX_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkCreateCuFunctionNVX_VkResult_return;
+}
+
+void VkEncoder::vkDestroyCuModuleNVX(
+ VkDevice device,
+ VkCuModuleNVX module,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkCuModuleNVX local_module;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_module = module;
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ }
+ uint32_t packetSize_vkDestroyCuModuleNVX = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkDestroyCuModuleNVX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkDestroyCuModuleNVX = OP_vkDestroyCuModuleNVX;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkDestroyCuModuleNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkDestroyCuModuleNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_module;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ stream->flush();
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkDestroyCuFunctionNVX(
+ VkDevice device,
+ VkCuFunctionNVX function,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkCuFunctionNVX local_function;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_function = function;
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ }
+ uint32_t packetSize_vkDestroyCuFunctionNVX = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkDestroyCuFunctionNVX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkDestroyCuFunctionNVX = OP_vkDestroyCuFunctionNVX;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkDestroyCuFunctionNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkDestroyCuFunctionNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_function;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ stream->flush();
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdCuLaunchKernelNVX(
+ VkCommandBuffer commandBuffer,
+ const VkCuLaunchInfoNVX* pLaunchInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkCuLaunchInfoNVX* local_pLaunchInfo;
+ local_commandBuffer = commandBuffer;
+ local_pLaunchInfo = nullptr;
+ if (pLaunchInfo)
+ {
+ local_pLaunchInfo = (VkCuLaunchInfoNVX*)pool->alloc(sizeof(const VkCuLaunchInfoNVX));
+ deepcopy_VkCuLaunchInfoNVX(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pLaunchInfo, (VkCuLaunchInfoNVX*)(local_pLaunchInfo));
+ }
+ if (local_pLaunchInfo)
+ {
+ transform_tohost_VkCuLaunchInfoNVX(sResourceTracker, (VkCuLaunchInfoNVX*)(local_pLaunchInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkCuLaunchInfoNVX(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCuLaunchInfoNVX*)(local_pLaunchInfo), countPtr);
+ }
+ uint32_t packetSize_vkCmdCuLaunchKernelNVX = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdCuLaunchKernelNVX -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdCuLaunchKernelNVX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdCuLaunchKernelNVX = OP_vkCmdCuLaunchKernelNVX;
+ memcpy(streamPtr, &opcode_vkCmdCuLaunchKernelNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdCuLaunchKernelNVX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ reservedmarshal_VkCuLaunchInfoNVX(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkCuLaunchInfoNVX*)(local_pLaunchInfo), streamPtrPtr);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
uint32_t VkEncoder::vkGetImageViewHandleNVX(
VkDevice device,
@@ -24042,6 +26536,12 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+#endif
+#ifdef VK_EXT_video_encode_h265
+#endif
+#ifdef VK_EXT_video_decode_h264
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
#endif
#ifdef VK_AMD_shader_info
@@ -29090,6 +31590,8 @@
#endif
#ifdef VK_AMD_shader_core_properties
#endif
+#ifdef VK_EXT_video_decode_h265
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
#endif
#ifdef VK_EXT_vertex_attribute_divisor
@@ -30761,6 +33263,8 @@
#endif
#ifdef VK_EXT_ycbcr_image_arrays
#endif
+#ifdef VK_EXT_provoking_vertex
+#endif
#ifdef VK_EXT_full_screen_exclusive
VkResult VkEncoder::vkGetPhysicalDeviceSurfacePresentModes2EXT(
VkPhysicalDevice physicalDevice,
@@ -31600,9 +34104,14 @@
*countPtr += 1 * 8;
*countPtr += sizeof(uint32_t);
*countPtr += sizeof(uint32_t);
- if (((bindingCount)))
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pBuffers)
{
- *countPtr += ((bindingCount)) * 8;
+ if (((bindingCount)))
+ {
+ *countPtr += ((bindingCount)) * 8;
+ }
}
*countPtr += ((bindingCount)) * sizeof(VkDeviceSize);
// WARNING PTR CHECK
@@ -31636,15 +34145,23 @@
*streamPtrPtr += sizeof(uint32_t);
memcpy(*streamPtrPtr, (uint32_t*)&local_bindingCount, sizeof(uint32_t));
*streamPtrPtr += sizeof(uint32_t);
- if (((bindingCount)))
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)local_pBuffers;
+ memcpy((*streamPtrPtr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pBuffers)
{
- uint8_t* cgen_var_0_ptr = (uint8_t*)(*streamPtrPtr);
- for (uint32_t k = 0; k < ((bindingCount)); ++k)
+ if (((bindingCount)))
{
- uint64_t tmpval = get_host_u64_VkBuffer(local_pBuffers[k]);
- memcpy(cgen_var_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
+ uint8_t* cgen_var_0_0_ptr = (uint8_t*)(*streamPtrPtr);
+ for (uint32_t k = 0; k < ((bindingCount)); ++k)
+ {
+ uint64_t tmpval = get_host_u64_VkBuffer(local_pBuffers[k]);
+ memcpy(cgen_var_0_0_ptr + k * 8, &tmpval, sizeof(uint64_t));
+ }
+ *streamPtrPtr += 8 * ((bindingCount));
}
- *streamPtrPtr += 8 * ((bindingCount));
}
memcpy(*streamPtrPtr, (VkDeviceSize*)local_pOffsets, ((bindingCount)) * sizeof(VkDeviceSize));
*streamPtrPtr += ((bindingCount)) * sizeof(VkDeviceSize);
@@ -31978,6 +34495,8 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
#endif
#ifdef VK_NV_device_generated_commands
@@ -32391,12 +34910,137 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+#endif
#ifdef VK_EXT_texel_buffer_alignment
#endif
#ifdef VK_QCOM_render_pass_transform
#endif
#ifdef VK_EXT_device_memory_report
#endif
+#ifdef VK_EXT_acquire_drm_display
+VkResult VkEncoder::vkAcquireDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ VkDisplayKHR display,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ int32_t local_drmFd;
+ VkDisplayKHR local_display;
+ local_physicalDevice = physicalDevice;
+ local_drmFd = drmFd;
+ local_display = display;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(int32_t);
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ }
+ uint32_t packetSize_vkAcquireDrmDisplayEXT = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkAcquireDrmDisplayEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkAcquireDrmDisplayEXT = OP_vkAcquireDrmDisplayEXT;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkAcquireDrmDisplayEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkAcquireDrmDisplayEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (int32_t*)&local_drmFd, sizeof(int32_t));
+ *streamPtrPtr += sizeof(int32_t);
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkDisplayKHR((*&local_display));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ VkResult vkAcquireDrmDisplayEXT_VkResult_return = (VkResult)0;
+ stream->read(&vkAcquireDrmDisplayEXT_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkAcquireDrmDisplayEXT_VkResult_return;
+}
+
+VkResult VkEncoder::vkGetDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ uint32_t connectorId,
+ VkDisplayKHR* display,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ int32_t local_drmFd;
+ uint32_t local_connectorId;
+ local_physicalDevice = physicalDevice;
+ local_drmFd = drmFd;
+ local_connectorId = connectorId;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(int32_t);
+ *countPtr += sizeof(uint32_t);
+ uint64_t cgen_var_1;
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkGetDrmDisplayEXT = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetDrmDisplayEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetDrmDisplayEXT = OP_vkGetDrmDisplayEXT;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetDrmDisplayEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetDrmDisplayEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (int32_t*)&local_drmFd, sizeof(int32_t));
+ *streamPtrPtr += sizeof(int32_t);
+ memcpy(*streamPtrPtr, (uint32_t*)&local_connectorId, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ /* is handle, possibly out */;
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = (uint64_t)((*display));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 8);
+ *streamPtrPtr += 8;
+ /* is handle, possibly out */;
+ uint64_t cgen_var_2;
+ stream->read((uint64_t*)&cgen_var_2, 8);
+ stream->handleMapping()->mapHandles_u64_VkDisplayKHR(&cgen_var_2, (VkDisplayKHR*)display, 1);
+ VkResult vkGetDrmDisplayEXT_VkResult_return = (VkResult)0;
+ stream->read(&vkGetDrmDisplayEXT_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetDrmDisplayEXT_VkResult_return;
+}
+
+#endif
#ifdef VK_EXT_robustness2
#endif
#ifdef VK_EXT_custom_border_color
@@ -32760,6 +35404,10 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+#endif
#ifdef VK_EXT_fragment_density_map2
#endif
#ifdef VK_QCOM_rotated_copy_commands
@@ -32768,6 +35416,119 @@
#endif
#ifdef VK_EXT_4444_formats
#endif
+#ifdef VK_EXT_rgba10x6_formats
+#endif
+#ifdef VK_NV_acquire_winrt_display
+VkResult VkEncoder::vkAcquireWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ VkDisplayKHR local_display;
+ local_physicalDevice = physicalDevice;
+ local_display = display;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ }
+ uint32_t packetSize_vkAcquireWinrtDisplayNV = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkAcquireWinrtDisplayNV);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkAcquireWinrtDisplayNV = OP_vkAcquireWinrtDisplayNV;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkAcquireWinrtDisplayNV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkAcquireWinrtDisplayNV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkDisplayKHR((*&local_display));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ VkResult vkAcquireWinrtDisplayNV_VkResult_return = (VkResult)0;
+ stream->read(&vkAcquireWinrtDisplayNV_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkAcquireWinrtDisplayNV_VkResult_return;
+}
+
+VkResult VkEncoder::vkGetWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ uint32_t deviceRelativeId,
+ VkDisplayKHR* pDisplay,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ uint32_t local_deviceRelativeId;
+ local_physicalDevice = physicalDevice;
+ local_deviceRelativeId = deviceRelativeId;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ uint64_t cgen_var_1;
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkGetWinrtDisplayNV = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetWinrtDisplayNV);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetWinrtDisplayNV = OP_vkGetWinrtDisplayNV;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetWinrtDisplayNV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetWinrtDisplayNV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (uint32_t*)&local_deviceRelativeId, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ /* is handle, possibly out */;
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = (uint64_t)((*pDisplay));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 8);
+ *streamPtrPtr += 8;
+ /* is handle, possibly out */;
+ uint64_t cgen_var_2;
+ stream->read((uint64_t*)&cgen_var_2, 8);
+ stream->handleMapping()->mapHandles_u64_VkDisplayKHR(&cgen_var_2, (VkDisplayKHR*)pDisplay, 1);
+ VkResult vkGetWinrtDisplayNV_VkResult_return = (VkResult)0;
+ stream->read(&vkGetWinrtDisplayNV_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetWinrtDisplayNV_VkResult_return;
+}
+
+#endif
#ifdef VK_EXT_directfb_surface
VkResult VkEncoder::vkCreateDirectFBSurfaceEXT(
VkInstance instance,
@@ -32917,6 +35678,1363 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void VkEncoder::vkCmdSetVertexInputEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t vertexBindingDescriptionCount,
+ const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ uint32_t local_vertexBindingDescriptionCount;
+ VkVertexInputBindingDescription2EXT* local_pVertexBindingDescriptions;
+ uint32_t local_vertexAttributeDescriptionCount;
+ VkVertexInputAttributeDescription2EXT* local_pVertexAttributeDescriptions;
+ local_commandBuffer = commandBuffer;
+ local_vertexBindingDescriptionCount = vertexBindingDescriptionCount;
+ local_pVertexBindingDescriptions = nullptr;
+ if (pVertexBindingDescriptions)
+ {
+ local_pVertexBindingDescriptions = (VkVertexInputBindingDescription2EXT*)pool->alloc(((vertexBindingDescriptionCount)) * sizeof(const VkVertexInputBindingDescription2EXT));
+ for (uint32_t i = 0; i < (uint32_t)((vertexBindingDescriptionCount)); ++i)
+ {
+ deepcopy_VkVertexInputBindingDescription2EXT(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pVertexBindingDescriptions + i, (VkVertexInputBindingDescription2EXT*)(local_pVertexBindingDescriptions + i));
+ }
+ }
+ local_vertexAttributeDescriptionCount = vertexAttributeDescriptionCount;
+ local_pVertexAttributeDescriptions = nullptr;
+ if (pVertexAttributeDescriptions)
+ {
+ local_pVertexAttributeDescriptions = (VkVertexInputAttributeDescription2EXT*)pool->alloc(((vertexAttributeDescriptionCount)) * sizeof(const VkVertexInputAttributeDescription2EXT));
+ for (uint32_t i = 0; i < (uint32_t)((vertexAttributeDescriptionCount)); ++i)
+ {
+ deepcopy_VkVertexInputAttributeDescription2EXT(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pVertexAttributeDescriptions + i, (VkVertexInputAttributeDescription2EXT*)(local_pVertexAttributeDescriptions + i));
+ }
+ }
+ if (local_pVertexBindingDescriptions)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((vertexBindingDescriptionCount)); ++i)
+ {
+ transform_tohost_VkVertexInputBindingDescription2EXT(sResourceTracker, (VkVertexInputBindingDescription2EXT*)(local_pVertexBindingDescriptions + i));
+ }
+ }
+ if (local_pVertexAttributeDescriptions)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((vertexAttributeDescriptionCount)); ++i)
+ {
+ transform_tohost_VkVertexInputAttributeDescription2EXT(sResourceTracker, (VkVertexInputAttributeDescription2EXT*)(local_pVertexAttributeDescriptions + i));
+ }
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((vertexBindingDescriptionCount)); ++i)
+ {
+ count_VkVertexInputBindingDescription2EXT(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVertexInputBindingDescription2EXT*)(local_pVertexBindingDescriptions + i), countPtr);
+ }
+ *countPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((vertexAttributeDescriptionCount)); ++i)
+ {
+ count_VkVertexInputAttributeDescription2EXT(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVertexInputAttributeDescription2EXT*)(local_pVertexAttributeDescriptions + i), countPtr);
+ }
+ }
+ uint32_t packetSize_vkCmdSetVertexInputEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetVertexInputEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetVertexInputEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetVertexInputEXT = OP_vkCmdSetVertexInputEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetVertexInputEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetVertexInputEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_vertexBindingDescriptionCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((vertexBindingDescriptionCount)); ++i)
+ {
+ reservedmarshal_VkVertexInputBindingDescription2EXT(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVertexInputBindingDescription2EXT*)(local_pVertexBindingDescriptions + i), streamPtrPtr);
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_vertexAttributeDescriptionCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)((vertexAttributeDescriptionCount)); ++i)
+ {
+ reservedmarshal_VkVertexInputAttributeDescription2EXT(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkVertexInputAttributeDescription2EXT*)(local_pVertexAttributeDescriptions + i), streamPtrPtr);
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+#endif
+#ifdef VK_FUCHSIA_external_memory
+VkResult VkEncoder::vkGetMemoryZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkMemoryGetZirconHandleInfoFUCHSIA* local_pGetZirconHandleInfo;
+ local_device = device;
+ local_pGetZirconHandleInfo = nullptr;
+ if (pGetZirconHandleInfo)
+ {
+ local_pGetZirconHandleInfo = (VkMemoryGetZirconHandleInfoFUCHSIA*)pool->alloc(sizeof(const VkMemoryGetZirconHandleInfoFUCHSIA));
+ deepcopy_VkMemoryGetZirconHandleInfoFUCHSIA(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pGetZirconHandleInfo, (VkMemoryGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo));
+ }
+ if (local_pGetZirconHandleInfo)
+ {
+ transform_tohost_VkMemoryGetZirconHandleInfoFUCHSIA(sResourceTracker, (VkMemoryGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkMemoryGetZirconHandleInfoFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo), countPtr);
+ *countPtr += sizeof(zx_handle_t);
+ }
+ uint32_t packetSize_vkGetMemoryZirconHandleFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetMemoryZirconHandleFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetMemoryZirconHandleFUCHSIA = OP_vkGetMemoryZirconHandleFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetMemoryZirconHandleFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetMemoryZirconHandleFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkMemoryGetZirconHandleInfoFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo), streamPtrPtr);
+ memcpy(*streamPtrPtr, (zx_handle_t*)pZirconHandle, sizeof(zx_handle_t));
+ *streamPtrPtr += sizeof(zx_handle_t);
+ stream->read((zx_handle_t*)pZirconHandle, sizeof(zx_handle_t));
+ VkResult vkGetMemoryZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkGetMemoryZirconHandleFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetMemoryZirconHandleFUCHSIA_VkResult_return;
+}
+
+VkResult VkEncoder::vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkExternalMemoryHandleTypeFlagBits local_handleType;
+ zx_handle_t local_zirconHandle;
+ local_device = device;
+ local_handleType = handleType;
+ local_zirconHandle = zirconHandle;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkExternalMemoryHandleTypeFlagBits);
+ *countPtr += sizeof(zx_handle_t);
+ count_VkMemoryZirconHandlePropertiesFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryZirconHandlePropertiesFUCHSIA*)(pMemoryZirconHandleProperties), countPtr);
+ }
+ uint32_t packetSize_vkGetMemoryZirconHandlePropertiesFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetMemoryZirconHandlePropertiesFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetMemoryZirconHandlePropertiesFUCHSIA = OP_vkGetMemoryZirconHandlePropertiesFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetMemoryZirconHandlePropertiesFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetMemoryZirconHandlePropertiesFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (VkExternalMemoryHandleTypeFlagBits*)&local_handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+ *streamPtrPtr += sizeof(VkExternalMemoryHandleTypeFlagBits);
+ memcpy(*streamPtrPtr, (zx_handle_t*)&local_zirconHandle, sizeof(zx_handle_t));
+ *streamPtrPtr += sizeof(zx_handle_t);
+ reservedmarshal_VkMemoryZirconHandlePropertiesFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryZirconHandlePropertiesFUCHSIA*)(pMemoryZirconHandleProperties), streamPtrPtr);
+ unmarshal_VkMemoryZirconHandlePropertiesFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryZirconHandlePropertiesFUCHSIA*)(pMemoryZirconHandleProperties));
+ if (pMemoryZirconHandleProperties)
+ {
+ transform_fromhost_VkMemoryZirconHandlePropertiesFUCHSIA(sResourceTracker, (VkMemoryZirconHandlePropertiesFUCHSIA*)(pMemoryZirconHandleProperties));
+ }
+ VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return;
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+VkResult VkEncoder::vkImportSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* local_pImportSemaphoreZirconHandleInfo;
+ local_device = device;
+ local_pImportSemaphoreZirconHandleInfo = nullptr;
+ if (pImportSemaphoreZirconHandleInfo)
+ {
+ local_pImportSemaphoreZirconHandleInfo = (VkImportSemaphoreZirconHandleInfoFUCHSIA*)pool->alloc(sizeof(const VkImportSemaphoreZirconHandleInfoFUCHSIA));
+ deepcopy_VkImportSemaphoreZirconHandleInfoFUCHSIA(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pImportSemaphoreZirconHandleInfo, (VkImportSemaphoreZirconHandleInfoFUCHSIA*)(local_pImportSemaphoreZirconHandleInfo));
+ }
+ if (local_pImportSemaphoreZirconHandleInfo)
+ {
+ transform_tohost_VkImportSemaphoreZirconHandleInfoFUCHSIA(sResourceTracker, (VkImportSemaphoreZirconHandleInfoFUCHSIA*)(local_pImportSemaphoreZirconHandleInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkImportSemaphoreZirconHandleInfoFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkImportSemaphoreZirconHandleInfoFUCHSIA*)(local_pImportSemaphoreZirconHandleInfo), countPtr);
+ }
+ uint32_t packetSize_vkImportSemaphoreZirconHandleFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkImportSemaphoreZirconHandleFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkImportSemaphoreZirconHandleFUCHSIA = OP_vkImportSemaphoreZirconHandleFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkImportSemaphoreZirconHandleFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkImportSemaphoreZirconHandleFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkImportSemaphoreZirconHandleInfoFUCHSIA*)(local_pImportSemaphoreZirconHandleInfo), streamPtrPtr);
+ VkResult vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return;
+}
+
+VkResult VkEncoder::vkGetSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* local_pGetZirconHandleInfo;
+ local_device = device;
+ local_pGetZirconHandleInfo = nullptr;
+ if (pGetZirconHandleInfo)
+ {
+ local_pGetZirconHandleInfo = (VkSemaphoreGetZirconHandleInfoFUCHSIA*)pool->alloc(sizeof(const VkSemaphoreGetZirconHandleInfoFUCHSIA));
+ deepcopy_VkSemaphoreGetZirconHandleInfoFUCHSIA(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pGetZirconHandleInfo, (VkSemaphoreGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo));
+ }
+ if (local_pGetZirconHandleInfo)
+ {
+ transform_tohost_VkSemaphoreGetZirconHandleInfoFUCHSIA(sResourceTracker, (VkSemaphoreGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkSemaphoreGetZirconHandleInfoFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSemaphoreGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo), countPtr);
+ *countPtr += sizeof(zx_handle_t);
+ }
+ uint32_t packetSize_vkGetSemaphoreZirconHandleFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetSemaphoreZirconHandleFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetSemaphoreZirconHandleFUCHSIA = OP_vkGetSemaphoreZirconHandleFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetSemaphoreZirconHandleFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetSemaphoreZirconHandleFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkSemaphoreGetZirconHandleInfoFUCHSIA*)(local_pGetZirconHandleInfo), streamPtrPtr);
+ memcpy(*streamPtrPtr, (zx_handle_t*)pZirconHandle, sizeof(zx_handle_t));
+ *streamPtrPtr += sizeof(zx_handle_t);
+ stream->read((zx_handle_t*)pZirconHandle, sizeof(zx_handle_t));
+ VkResult vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return;
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+VkResult VkEncoder::vkCreateBufferCollectionFUCHSIA(
+ VkDevice device,
+ const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkBufferCollectionFUCHSIA* pCollection,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkBufferCollectionCreateInfoFUCHSIA* local_pCreateInfo;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_pCreateInfo = nullptr;
+ if (pCreateInfo)
+ {
+ local_pCreateInfo = (VkBufferCollectionCreateInfoFUCHSIA*)pool->alloc(sizeof(const VkBufferCollectionCreateInfoFUCHSIA));
+ deepcopy_VkBufferCollectionCreateInfoFUCHSIA(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCreateInfo, (VkBufferCollectionCreateInfoFUCHSIA*)(local_pCreateInfo));
+ }
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pCreateInfo)
+ {
+ transform_tohost_VkBufferCollectionCreateInfoFUCHSIA(sResourceTracker, (VkBufferCollectionCreateInfoFUCHSIA*)(local_pCreateInfo));
+ }
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkBufferCollectionCreateInfoFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferCollectionCreateInfoFUCHSIA*)(local_pCreateInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkCreateBufferCollectionFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCreateBufferCollectionFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCreateBufferCollectionFUCHSIA = OP_vkCreateBufferCollectionFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkCreateBufferCollectionFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCreateBufferCollectionFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkBufferCollectionCreateInfoFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferCollectionCreateInfoFUCHSIA*)(local_pCreateInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ uint64_t cgen_var_2 = (uint64_t)(*pCollection);
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ (*pCollection) = (VkBufferCollectionFUCHSIA)stream->getBe64();
+ VkResult vkCreateBufferCollectionFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkCreateBufferCollectionFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkCreateBufferCollectionFUCHSIA_VkResult_return;
+}
+
+VkResult VkEncoder::vkSetBufferCollectionImageConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkBufferCollectionFUCHSIA local_collection;
+ VkImageConstraintsInfoFUCHSIA* local_pImageConstraintsInfo;
+ local_device = device;
+ local_collection = collection;
+ local_pImageConstraintsInfo = nullptr;
+ if (pImageConstraintsInfo)
+ {
+ local_pImageConstraintsInfo = (VkImageConstraintsInfoFUCHSIA*)pool->alloc(sizeof(const VkImageConstraintsInfoFUCHSIA));
+ deepcopy_VkImageConstraintsInfoFUCHSIA(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pImageConstraintsInfo, (VkImageConstraintsInfoFUCHSIA*)(local_pImageConstraintsInfo));
+ }
+ if (local_pImageConstraintsInfo)
+ {
+ transform_tohost_VkImageConstraintsInfoFUCHSIA(sResourceTracker, (VkImageConstraintsInfoFUCHSIA*)(local_pImageConstraintsInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ count_VkImageConstraintsInfoFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkImageConstraintsInfoFUCHSIA*)(local_pImageConstraintsInfo), countPtr);
+ }
+ uint32_t packetSize_vkSetBufferCollectionImageConstraintsFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkSetBufferCollectionImageConstraintsFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkSetBufferCollectionImageConstraintsFUCHSIA = OP_vkSetBufferCollectionImageConstraintsFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkSetBufferCollectionImageConstraintsFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkSetBufferCollectionImageConstraintsFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_collection;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ reservedmarshal_VkImageConstraintsInfoFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkImageConstraintsInfoFUCHSIA*)(local_pImageConstraintsInfo), streamPtrPtr);
+ VkResult vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return;
+}
+
+VkResult VkEncoder::vkSetBufferCollectionBufferConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkBufferCollectionFUCHSIA local_collection;
+ VkBufferConstraintsInfoFUCHSIA* local_pBufferConstraintsInfo;
+ local_device = device;
+ local_collection = collection;
+ local_pBufferConstraintsInfo = nullptr;
+ if (pBufferConstraintsInfo)
+ {
+ local_pBufferConstraintsInfo = (VkBufferConstraintsInfoFUCHSIA*)pool->alloc(sizeof(const VkBufferConstraintsInfoFUCHSIA));
+ deepcopy_VkBufferConstraintsInfoFUCHSIA(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pBufferConstraintsInfo, (VkBufferConstraintsInfoFUCHSIA*)(local_pBufferConstraintsInfo));
+ }
+ if (local_pBufferConstraintsInfo)
+ {
+ transform_tohost_VkBufferConstraintsInfoFUCHSIA(sResourceTracker, (VkBufferConstraintsInfoFUCHSIA*)(local_pBufferConstraintsInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ count_VkBufferConstraintsInfoFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferConstraintsInfoFUCHSIA*)(local_pBufferConstraintsInfo), countPtr);
+ }
+ uint32_t packetSize_vkSetBufferCollectionBufferConstraintsFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkSetBufferCollectionBufferConstraintsFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkSetBufferCollectionBufferConstraintsFUCHSIA = OP_vkSetBufferCollectionBufferConstraintsFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkSetBufferCollectionBufferConstraintsFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkSetBufferCollectionBufferConstraintsFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_collection;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ reservedmarshal_VkBufferConstraintsInfoFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferConstraintsInfoFUCHSIA*)(local_pBufferConstraintsInfo), streamPtrPtr);
+ VkResult vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return;
+}
+
+void VkEncoder::vkDestroyBufferCollectionFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkBufferCollectionFUCHSIA local_collection;
+ VkAllocationCallbacks* local_pAllocator;
+ local_device = device;
+ local_collection = collection;
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ }
+ uint32_t packetSize_vkDestroyBufferCollectionFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkDestroyBufferCollectionFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkDestroyBufferCollectionFUCHSIA = OP_vkDestroyBufferCollectionFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkDestroyBufferCollectionFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkDestroyBufferCollectionFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_collection;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ stream->flush();
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+VkResult VkEncoder::vkGetBufferCollectionPropertiesFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ VkBufferCollectionPropertiesFUCHSIA* pProperties,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkBufferCollectionFUCHSIA local_collection;
+ local_device = device;
+ local_collection = collection;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += 8;
+ count_VkBufferCollectionPropertiesFUCHSIA(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferCollectionPropertiesFUCHSIA*)(pProperties), countPtr);
+ }
+ uint32_t packetSize_vkGetBufferCollectionPropertiesFUCHSIA = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetBufferCollectionPropertiesFUCHSIA);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetBufferCollectionPropertiesFUCHSIA = OP_vkGetBufferCollectionPropertiesFUCHSIA;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetBufferCollectionPropertiesFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetBufferCollectionPropertiesFUCHSIA, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1 = (uint64_t)local_collection;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ reservedmarshal_VkBufferCollectionPropertiesFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferCollectionPropertiesFUCHSIA*)(pProperties), streamPtrPtr);
+ unmarshal_VkBufferCollectionPropertiesFUCHSIA(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkBufferCollectionPropertiesFUCHSIA*)(pProperties));
+ if (pProperties)
+ {
+ transform_fromhost_VkBufferCollectionPropertiesFUCHSIA(sResourceTracker, (VkBufferCollectionPropertiesFUCHSIA*)(pProperties));
+ }
+ VkResult vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return = (VkResult)0;
+ stream->read(&vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return;
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+VkResult VkEncoder::vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VkDevice device,
+ VkRenderPass renderpass,
+ VkExtent2D* pMaxWorkgroupSize,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkRenderPass local_renderpass;
+ local_device = device;
+ local_renderpass = renderpass;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ count_VkExtent2D(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkExtent2D*)(pMaxWorkgroupSize), countPtr);
+ }
+ uint32_t packetSize_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = OP_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkRenderPass((*&local_renderpass));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkExtent2D(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkExtent2D*)(pMaxWorkgroupSize), streamPtrPtr);
+ unmarshal_VkExtent2D(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkExtent2D*)(pMaxWorkgroupSize));
+ if (pMaxWorkgroupSize)
+ {
+ transform_fromhost_VkExtent2D(sResourceTracker, (VkExtent2D*)(pMaxWorkgroupSize));
+ }
+ VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return = (VkResult)0;
+ stream->read(&vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return;
+}
+
+void VkEncoder::vkCmdSubpassShadingHUAWEI(
+ VkCommandBuffer commandBuffer,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ local_commandBuffer = commandBuffer;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ }
+ uint32_t packetSize_vkCmdSubpassShadingHUAWEI = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSubpassShadingHUAWEI -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSubpassShadingHUAWEI);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSubpassShadingHUAWEI = OP_vkCmdSubpassShadingHUAWEI;
+ memcpy(streamPtr, &opcode_vkCmdSubpassShadingHUAWEI, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSubpassShadingHUAWEI, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void VkEncoder::vkCmdBindInvocationMaskHUAWEI(
+ VkCommandBuffer commandBuffer,
+ VkImageView imageView,
+ VkImageLayout imageLayout,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkImageView local_imageView;
+ VkImageLayout local_imageLayout;
+ local_commandBuffer = commandBuffer;
+ local_imageView = imageView;
+ local_imageLayout = imageLayout;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkImageLayout);
+ }
+ uint32_t packetSize_vkCmdBindInvocationMaskHUAWEI = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdBindInvocationMaskHUAWEI -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdBindInvocationMaskHUAWEI);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdBindInvocationMaskHUAWEI = OP_vkCmdBindInvocationMaskHUAWEI;
+ memcpy(streamPtr, &opcode_vkCmdBindInvocationMaskHUAWEI, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdBindInvocationMaskHUAWEI, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkImageView((*&local_imageView));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (VkImageLayout*)&local_imageLayout, sizeof(VkImageLayout));
+ *streamPtrPtr += sizeof(VkImageLayout);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+VkResult VkEncoder::vkGetMemoryRemoteAddressNV(
+ VkDevice device,
+ const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo,
+ VkRemoteAddressNV* pAddress,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkMemoryGetRemoteAddressInfoNV* local_pMemoryGetRemoteAddressInfo;
+ local_device = device;
+ local_pMemoryGetRemoteAddressInfo = nullptr;
+ if (pMemoryGetRemoteAddressInfo)
+ {
+ local_pMemoryGetRemoteAddressInfo = (VkMemoryGetRemoteAddressInfoNV*)pool->alloc(sizeof(const VkMemoryGetRemoteAddressInfoNV));
+ deepcopy_VkMemoryGetRemoteAddressInfoNV(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pMemoryGetRemoteAddressInfo, (VkMemoryGetRemoteAddressInfoNV*)(local_pMemoryGetRemoteAddressInfo));
+ }
+ if (local_pMemoryGetRemoteAddressInfo)
+ {
+ transform_tohost_VkMemoryGetRemoteAddressInfoNV(sResourceTracker, (VkMemoryGetRemoteAddressInfoNV*)(local_pMemoryGetRemoteAddressInfo));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkMemoryGetRemoteAddressInfoNV(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryGetRemoteAddressInfoNV*)(local_pMemoryGetRemoteAddressInfo), countPtr);
+ *countPtr += sizeof(VkRemoteAddressNV);
+ }
+ uint32_t packetSize_vkGetMemoryRemoteAddressNV = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetMemoryRemoteAddressNV);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetMemoryRemoteAddressNV = OP_vkGetMemoryRemoteAddressNV;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetMemoryRemoteAddressNV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetMemoryRemoteAddressNV, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkMemoryGetRemoteAddressInfoNV(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMemoryGetRemoteAddressInfoNV*)(local_pMemoryGetRemoteAddressInfo), streamPtrPtr);
+ memcpy(*streamPtrPtr, (VkRemoteAddressNV*)pAddress, sizeof(VkRemoteAddressNV));
+ *streamPtrPtr += sizeof(VkRemoteAddressNV);
+ stream->read((VkRemoteAddressNV*)pAddress, sizeof(VkRemoteAddressNV));
+ VkResult vkGetMemoryRemoteAddressNV_VkResult_return = (VkResult)0;
+ stream->read(&vkGetMemoryRemoteAddressNV_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetMemoryRemoteAddressNV_VkResult_return;
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void VkEncoder::vkCmdSetPatchControlPointsEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t patchControlPoints,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ uint32_t local_patchControlPoints;
+ local_commandBuffer = commandBuffer;
+ local_patchControlPoints = patchControlPoints;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ }
+ uint32_t packetSize_vkCmdSetPatchControlPointsEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetPatchControlPointsEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetPatchControlPointsEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetPatchControlPointsEXT = OP_vkCmdSetPatchControlPointsEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetPatchControlPointsEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetPatchControlPointsEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_patchControlPoints, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdSetRasterizerDiscardEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 rasterizerDiscardEnable,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkBool32 local_rasterizerDiscardEnable;
+ local_commandBuffer = commandBuffer;
+ local_rasterizerDiscardEnable = rasterizerDiscardEnable;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkBool32);
+ }
+ uint32_t packetSize_vkCmdSetRasterizerDiscardEnableEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetRasterizerDiscardEnableEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetRasterizerDiscardEnableEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetRasterizerDiscardEnableEXT = OP_vkCmdSetRasterizerDiscardEnableEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetRasterizerDiscardEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetRasterizerDiscardEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (VkBool32*)&local_rasterizerDiscardEnable, sizeof(VkBool32));
+ *streamPtrPtr += sizeof(VkBool32);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdSetDepthBiasEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 depthBiasEnable,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkBool32 local_depthBiasEnable;
+ local_commandBuffer = commandBuffer;
+ local_depthBiasEnable = depthBiasEnable;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkBool32);
+ }
+ uint32_t packetSize_vkCmdSetDepthBiasEnableEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetDepthBiasEnableEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetDepthBiasEnableEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetDepthBiasEnableEXT = OP_vkCmdSetDepthBiasEnableEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetDepthBiasEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetDepthBiasEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (VkBool32*)&local_depthBiasEnable, sizeof(VkBool32));
+ *streamPtrPtr += sizeof(VkBool32);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdSetLogicOpEXT(
+ VkCommandBuffer commandBuffer,
+ VkLogicOp logicOp,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkLogicOp local_logicOp;
+ local_commandBuffer = commandBuffer;
+ local_logicOp = logicOp;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkLogicOp);
+ }
+ uint32_t packetSize_vkCmdSetLogicOpEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetLogicOpEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetLogicOpEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetLogicOpEXT = OP_vkCmdSetLogicOpEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetLogicOpEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetLogicOpEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (VkLogicOp*)&local_logicOp, sizeof(VkLogicOp));
+ *streamPtrPtr += sizeof(VkLogicOp);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdSetPrimitiveRestartEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 primitiveRestartEnable,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ VkBool32 local_primitiveRestartEnable;
+ local_commandBuffer = commandBuffer;
+ local_primitiveRestartEnable = primitiveRestartEnable;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(VkBool32);
+ }
+ uint32_t packetSize_vkCmdSetPrimitiveRestartEnableEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetPrimitiveRestartEnableEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetPrimitiveRestartEnableEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetPrimitiveRestartEnableEXT = OP_vkCmdSetPrimitiveRestartEnableEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetPrimitiveRestartEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetPrimitiveRestartEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (VkBool32*)&local_primitiveRestartEnable, sizeof(VkBool32));
+ *streamPtrPtr += sizeof(VkBool32);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+VkResult VkEncoder::vkCreateScreenSurfaceQNX(
+ VkInstance instance,
+ const VkScreenSurfaceCreateInfoQNX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkSurfaceKHR* pSurface,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkInstance local_instance;
+ VkScreenSurfaceCreateInfoQNX* local_pCreateInfo;
+ VkAllocationCallbacks* local_pAllocator;
+ local_instance = instance;
+ local_pCreateInfo = nullptr;
+ if (pCreateInfo)
+ {
+ local_pCreateInfo = (VkScreenSurfaceCreateInfoQNX*)pool->alloc(sizeof(const VkScreenSurfaceCreateInfoQNX));
+ deepcopy_VkScreenSurfaceCreateInfoQNX(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pCreateInfo, (VkScreenSurfaceCreateInfoQNX*)(local_pCreateInfo));
+ }
+ local_pAllocator = nullptr;
+ if (pAllocator)
+ {
+ local_pAllocator = (VkAllocationCallbacks*)pool->alloc(sizeof(const VkAllocationCallbacks));
+ deepcopy_VkAllocationCallbacks(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pAllocator, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ local_pAllocator = nullptr;
+ if (local_pCreateInfo)
+ {
+ transform_tohost_VkScreenSurfaceCreateInfoQNX(sResourceTracker, (VkScreenSurfaceCreateInfoQNX*)(local_pCreateInfo));
+ }
+ if (local_pAllocator)
+ {
+ transform_tohost_VkAllocationCallbacks(sResourceTracker, (VkAllocationCallbacks*)(local_pAllocator));
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ count_VkScreenSurfaceCreateInfoQNX(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkScreenSurfaceCreateInfoQNX*)(local_pCreateInfo), countPtr);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pAllocator)
+ {
+ count_VkAllocationCallbacks(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), countPtr);
+ }
+ uint64_t cgen_var_1;
+ *countPtr += 8;
+ }
+ uint32_t packetSize_vkCreateScreenSurfaceQNX = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCreateScreenSurfaceQNX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCreateScreenSurfaceQNX = OP_vkCreateScreenSurfaceQNX;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkCreateScreenSurfaceQNX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCreateScreenSurfaceQNX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkInstance((*&local_instance));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ reservedmarshal_VkScreenSurfaceCreateInfoQNX(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkScreenSurfaceCreateInfoQNX*)(local_pCreateInfo), streamPtrPtr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pAllocator;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pAllocator)
+ {
+ reservedmarshal_VkAllocationCallbacks(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAllocationCallbacks*)(local_pAllocator), streamPtrPtr);
+ }
+ /* is handle, possibly out */;
+ uint64_t cgen_var_2;
+ *&cgen_var_2 = (uint64_t)((*pSurface));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_2, 8);
+ *streamPtrPtr += 8;
+ /* is handle, possibly out */;
+ uint64_t cgen_var_3;
+ stream->read((uint64_t*)&cgen_var_3, 8);
+ stream->handleMapping()->mapHandles_u64_VkSurfaceKHR(&cgen_var_3, (VkSurfaceKHR*)pSurface, 1);
+ VkResult vkCreateScreenSurfaceQNX_VkResult_return = (VkResult)0;
+ stream->read(&vkCreateScreenSurfaceQNX_VkResult_return, sizeof(VkResult));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkCreateScreenSurfaceQNX_VkResult_return;
+}
+
+VkBool32 VkEncoder::vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ _screen_window* window,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkPhysicalDevice local_physicalDevice;
+ uint32_t local_queueFamilyIndex;
+ local_physicalDevice = physicalDevice;
+ local_queueFamilyIndex = queueFamilyIndex;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ *countPtr += sizeof(_screen_window);
+ }
+ uint32_t packetSize_vkGetPhysicalDeviceScreenPresentationSupportQNX = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkGetPhysicalDeviceScreenPresentationSupportQNX);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkGetPhysicalDeviceScreenPresentationSupportQNX = OP_vkGetPhysicalDeviceScreenPresentationSupportQNX;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkGetPhysicalDeviceScreenPresentationSupportQNX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkGetPhysicalDeviceScreenPresentationSupportQNX, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkPhysicalDevice((*&local_physicalDevice));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (uint32_t*)&local_queueFamilyIndex, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ memcpy(*streamPtrPtr, (_screen_window*)window, sizeof(_screen_window));
+ *streamPtrPtr += sizeof(_screen_window);
+ stream->read((_screen_window*)window, sizeof(_screen_window));
+ VkBool32 vkGetPhysicalDeviceScreenPresentationSupportQNX_VkBool32_return = (VkBool32)0;
+ stream->read(&vkGetPhysicalDeviceScreenPresentationSupportQNX_VkBool32_return, sizeof(VkBool32));
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+ return vkGetPhysicalDeviceScreenPresentationSupportQNX_VkBool32_return;
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void VkEncoder::vkCmdSetColorWriteEnableEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t attachmentCount,
+ const VkBool32* pColorWriteEnables,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ uint32_t local_attachmentCount;
+ VkBool32* local_pColorWriteEnables;
+ local_commandBuffer = commandBuffer;
+ local_attachmentCount = attachmentCount;
+ // Avoiding deepcopy for pColorWriteEnables
+ local_pColorWriteEnables = (VkBool32*)pColorWriteEnables;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ *countPtr += ((attachmentCount)) * sizeof(VkBool32);
+ }
+ uint32_t packetSize_vkCmdSetColorWriteEnableEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdSetColorWriteEnableEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdSetColorWriteEnableEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdSetColorWriteEnableEXT = OP_vkCmdSetColorWriteEnableEXT;
+ memcpy(streamPtr, &opcode_vkCmdSetColorWriteEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdSetColorWriteEnableEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_attachmentCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ memcpy(*streamPtrPtr, (VkBool32*)local_pColorWriteEnables, ((attachmentCount)) * sizeof(VkBool32));
+ *streamPtrPtr += ((attachmentCount)) * sizeof(VkBool32);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
VkResult VkEncoder::vkRegisterImageColorBufferGOOGLE(
VkDevice device,
@@ -34601,6 +38719,296 @@
}
#endif
+#ifdef VK_EXT_global_priority_query
+#endif
+#ifdef VK_EXT_multi_draw
+void VkEncoder::vkCmdDrawMultiEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawInfoEXT* pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ uint32_t local_drawCount;
+ VkMultiDrawInfoEXT* local_pVertexInfo;
+ uint32_t local_instanceCount;
+ uint32_t local_firstInstance;
+ uint32_t local_stride;
+ local_commandBuffer = commandBuffer;
+ local_drawCount = drawCount;
+ local_pVertexInfo = nullptr;
+ if (pVertexInfo)
+ {
+ local_pVertexInfo = (VkMultiDrawInfoEXT*)pool->alloc(((drawCount)) * sizeof(const VkMultiDrawInfoEXT));
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ deepcopy_VkMultiDrawInfoEXT(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pVertexInfo + i, (VkMultiDrawInfoEXT*)(local_pVertexInfo + i));
+ }
+ }
+ local_instanceCount = instanceCount;
+ local_firstInstance = firstInstance;
+ local_stride = stride;
+ if (local_pVertexInfo)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ transform_tohost_VkMultiDrawInfoEXT(sResourceTracker, (VkMultiDrawInfoEXT*)(local_pVertexInfo + i));
+ }
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pVertexInfo)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ count_VkMultiDrawInfoEXT(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMultiDrawInfoEXT*)(local_pVertexInfo + i), countPtr);
+ }
+ }
+ *countPtr += sizeof(uint32_t);
+ *countPtr += sizeof(uint32_t);
+ *countPtr += sizeof(uint32_t);
+ }
+ uint32_t packetSize_vkCmdDrawMultiEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdDrawMultiEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdDrawMultiEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdDrawMultiEXT = OP_vkCmdDrawMultiEXT;
+ memcpy(streamPtr, &opcode_vkCmdDrawMultiEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdDrawMultiEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_drawCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)local_pVertexInfo;
+ memcpy((*streamPtrPtr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pVertexInfo)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ reservedmarshal_VkMultiDrawInfoEXT(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMultiDrawInfoEXT*)(local_pVertexInfo + i), streamPtrPtr);
+ }
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_instanceCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ memcpy(*streamPtrPtr, (uint32_t*)&local_firstInstance, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ memcpy(*streamPtrPtr, (uint32_t*)&local_stride, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+void VkEncoder::vkCmdDrawMultiIndexedEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawIndexedInfoEXT* pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t* pVertexOffset,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkCommandBuffer local_commandBuffer;
+ uint32_t local_drawCount;
+ VkMultiDrawIndexedInfoEXT* local_pIndexInfo;
+ uint32_t local_instanceCount;
+ uint32_t local_firstInstance;
+ uint32_t local_stride;
+ int32_t* local_pVertexOffset;
+ local_commandBuffer = commandBuffer;
+ local_drawCount = drawCount;
+ local_pIndexInfo = nullptr;
+ if (pIndexInfo)
+ {
+ local_pIndexInfo = (VkMultiDrawIndexedInfoEXT*)pool->alloc(((drawCount)) * sizeof(const VkMultiDrawIndexedInfoEXT));
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ deepcopy_VkMultiDrawIndexedInfoEXT(pool, VK_STRUCTURE_TYPE_MAX_ENUM, pIndexInfo + i, (VkMultiDrawIndexedInfoEXT*)(local_pIndexInfo + i));
+ }
+ }
+ local_instanceCount = instanceCount;
+ local_firstInstance = firstInstance;
+ local_stride = stride;
+ // Avoiding deepcopy for pVertexOffset
+ local_pVertexOffset = (int32_t*)pVertexOffset;
+ if (local_pIndexInfo)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ transform_tohost_VkMultiDrawIndexedInfoEXT(sResourceTracker, (VkMultiDrawIndexedInfoEXT*)(local_pIndexInfo + i));
+ }
+ }
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pIndexInfo)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ count_VkMultiDrawIndexedInfoEXT(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMultiDrawIndexedInfoEXT*)(local_pIndexInfo + i), countPtr);
+ }
+ }
+ *countPtr += sizeof(uint32_t);
+ *countPtr += sizeof(uint32_t);
+ *countPtr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pVertexOffset)
+ {
+ *countPtr += sizeof(int32_t);
+ }
+ }
+ uint32_t packetSize_vkCmdDrawMultiIndexedEXT = 4 + 4 + count;
+ if (queueSubmitWithCommandsEnabled) packetSize_vkCmdDrawMultiIndexedEXT -= 8;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkCmdDrawMultiIndexedEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkCmdDrawMultiIndexedEXT = OP_vkCmdDrawMultiIndexedEXT;
+ memcpy(streamPtr, &opcode_vkCmdDrawMultiIndexedEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkCmdDrawMultiIndexedEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (!queueSubmitWithCommandsEnabled)
+ {
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&local_commandBuffer));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_drawCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)local_pIndexInfo;
+ memcpy((*streamPtrPtr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pIndexInfo)
+ {
+ for (uint32_t i = 0; i < (uint32_t)((drawCount)); ++i)
+ {
+ reservedmarshal_VkMultiDrawIndexedInfoEXT(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkMultiDrawIndexedInfoEXT*)(local_pIndexInfo + i), streamPtrPtr);
+ }
+ }
+ memcpy(*streamPtrPtr, (uint32_t*)&local_instanceCount, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ memcpy(*streamPtrPtr, (uint32_t*)&local_firstInstance, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ memcpy(*streamPtrPtr, (uint32_t*)&local_stride, sizeof(uint32_t));
+ *streamPtrPtr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pVertexOffset;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pVertexOffset)
+ {
+ memcpy(*streamPtrPtr, (int32_t*)local_pVertexOffset, sizeof(int32_t));
+ *streamPtrPtr += sizeof(int32_t);
+ }
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void VkEncoder::vkSetDeviceMemoryPriorityEXT(
+ VkDevice device,
+ VkDeviceMemory memory,
+ float priority,
+ uint32_t doLock)
+{
+ (void)doLock;
+ bool queueSubmitWithCommandsEnabled = sFeatureBits & VULKAN_STREAM_FEATURE_QUEUE_SUBMIT_WITH_COMMANDS_BIT;
+ if (!queueSubmitWithCommandsEnabled && doLock) this->lock();
+ auto stream = mImpl->stream();
+ auto pool = mImpl->pool();
+ VkDevice local_device;
+ VkDeviceMemory local_memory;
+ float local_priority;
+ local_device = device;
+ local_memory = memory;
+ local_priority = priority;
+ size_t count = 0;
+ size_t* countPtr = &count;
+ {
+ uint64_t cgen_var_0;
+ *countPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *countPtr += 1 * 8;
+ *countPtr += sizeof(float);
+ }
+ uint32_t packetSize_vkSetDeviceMemoryPriorityEXT = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
+ uint8_t* streamPtr = stream->reserve(packetSize_vkSetDeviceMemoryPriorityEXT);
+ uint8_t** streamPtrPtr = &streamPtr;
+ uint32_t opcode_vkSetDeviceMemoryPriorityEXT = OP_vkSetDeviceMemoryPriorityEXT;
+ uint32_t seqno; if (queueSubmitWithCommandsEnabled) seqno = ResourceTracker::nextSeqno();
+ memcpy(streamPtr, &opcode_vkSetDeviceMemoryPriorityEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ memcpy(streamPtr, &packetSize_vkSetDeviceMemoryPriorityEXT, sizeof(uint32_t)); streamPtr += sizeof(uint32_t);
+ if (queueSubmitWithCommandsEnabled) { memcpy(streamPtr, &seqno, sizeof(uint32_t)); streamPtr += sizeof(uint32_t); }
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDevice((*&local_device));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkDeviceMemory((*&local_memory));
+ memcpy(*streamPtrPtr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *streamPtrPtr += 1 * 8;
+ memcpy(*streamPtrPtr, (float*)&local_priority, sizeof(float));
+ *streamPtrPtr += sizeof(float);
+ stream->flush();
+ ++encodeCount;;
+ if (0 == encodeCount % POOL_CLEAR_INTERVAL)
+ {
+ pool->freeAll();
+ stream->clearPool();
+ }
+ if (!queueSubmitWithCommandsEnabled && doLock) this->unlock();
+}
+
+#endif
#ifdef VK_KHR_acceleration_structure
VkResult VkEncoder::vkCreateAccelerationStructureKHR(
VkDevice device,
@@ -35711,7 +40119,12 @@
*countPtr += 1 * 8;
*countPtr += sizeof(VkAccelerationStructureBuildTypeKHR);
count_VkAccelerationStructureBuildGeometryInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAccelerationStructureBuildGeometryInfoKHR*)(local_pBuildInfo), countPtr);
- *countPtr += pBuildInfo->geometryCount * sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *countPtr += 8;
+ if (local_pMaxPrimitiveCounts)
+ {
+ *countPtr += pBuildInfo->geometryCount * sizeof(uint32_t);
+ }
count_VkAccelerationStructureBuildSizesInfoKHR(sFeatureBits, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAccelerationStructureBuildSizesInfoKHR*)(pSizeInfo), countPtr);
}
uint32_t packetSize_vkGetAccelerationStructureBuildSizesKHR = 4 + 4 + (queueSubmitWithCommandsEnabled ? 4 : 0) + count;
@@ -35729,8 +40142,16 @@
memcpy(*streamPtrPtr, (VkAccelerationStructureBuildTypeKHR*)&local_buildType, sizeof(VkAccelerationStructureBuildTypeKHR));
*streamPtrPtr += sizeof(VkAccelerationStructureBuildTypeKHR);
reservedmarshal_VkAccelerationStructureBuildGeometryInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAccelerationStructureBuildGeometryInfoKHR*)(local_pBuildInfo), streamPtrPtr);
- memcpy(*streamPtrPtr, (uint32_t*)local_pMaxPrimitiveCounts, pBuildInfo->geometryCount * sizeof(uint32_t));
- *streamPtrPtr += pBuildInfo->geometryCount * sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)local_pMaxPrimitiveCounts;
+ memcpy((*streamPtrPtr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*streamPtrPtr));
+ *streamPtrPtr += 8;
+ if (local_pMaxPrimitiveCounts)
+ {
+ memcpy(*streamPtrPtr, (uint32_t*)local_pMaxPrimitiveCounts, pBuildInfo->geometryCount * sizeof(uint32_t));
+ *streamPtrPtr += pBuildInfo->geometryCount * sizeof(uint32_t);
+ }
reservedmarshal_VkAccelerationStructureBuildSizesInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAccelerationStructureBuildSizesInfoKHR*)(pSizeInfo), streamPtrPtr);
unmarshal_VkAccelerationStructureBuildSizesInfoKHR(stream, VK_STRUCTURE_TYPE_MAX_ENUM, (VkAccelerationStructureBuildSizesInfoKHR*)(pSizeInfo));
if (pSizeInfo)
diff --git a/system/vulkan_enc/VkEncoder.h b/system/vulkan_enc/VkEncoder.h
index 91554c2..06dcbfb 100644
--- a/system/vulkan_enc/VkEncoder.h
+++ b/system/vulkan_enc/VkEncoder.h
@@ -1255,6 +1255,85 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+ VkResult vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkVideoProfileKHR* pVideoProfile,
+ VkVideoCapabilitiesKHR* pCapabilities,
+ uint32_t doLock);
+ VkResult vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo,
+ uint32_t* pVideoFormatPropertyCount,
+ VkVideoFormatPropertiesKHR* pVideoFormatProperties,
+ uint32_t doLock);
+ VkResult vkCreateVideoSessionKHR(
+ VkDevice device,
+ const VkVideoSessionCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionKHR* pVideoSession,
+ uint32_t doLock);
+ void vkDestroyVideoSessionKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock);
+ VkResult vkGetVideoSessionMemoryRequirementsKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t* pVideoSessionMemoryRequirementsCount,
+ VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements,
+ uint32_t doLock);
+ VkResult vkBindVideoSessionMemoryKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VkVideoBindMemoryKHR* pVideoSessionBindMemories,
+ uint32_t doLock);
+ VkResult vkCreateVideoSessionParametersKHR(
+ VkDevice device,
+ const VkVideoSessionParametersCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionParametersKHR* pVideoSessionParameters,
+ uint32_t doLock);
+ VkResult vkUpdateVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo,
+ uint32_t doLock);
+ void vkDestroyVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock);
+ void vkCmdBeginVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoBeginCodingInfoKHR* pBeginInfo,
+ uint32_t doLock);
+ void vkCmdEndVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEndCodingInfoKHR* pEndCodingInfo,
+ uint32_t doLock);
+ void vkCmdControlVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoCodingControlInfoKHR* pCodingControlInfo,
+ uint32_t doLock);
+#endif
+#ifdef VK_KHR_video_decode_queue
+ void vkCmdDecodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoDecodeInfoKHR* pFrameInfo,
+ uint32_t doLock);
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ void vkCmdBeginRenderingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkRenderingInfoKHR* pRenderingInfo,
+ uint32_t doLock);
+ void vkCmdEndRenderingKHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t doLock);
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -1696,6 +1775,14 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+ VkResult vkWaitForPresentKHR(
+ VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint64_t presentId,
+ uint64_t timeout,
+ uint32_t doLock);
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -1756,10 +1843,72 @@
VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations,
uint32_t doLock);
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+#endif
#ifdef VK_KHR_pipeline_library
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+#endif
+#ifdef VK_KHR_video_encode_queue
+ void vkCmdEncodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEncodeInfoKHR* pEncodeInfo,
+ uint32_t doLock);
+#endif
+#ifdef VK_KHR_synchronization2
+ void vkCmdSetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ const VkDependencyInfoKHR* pDependencyInfo,
+ uint32_t doLock);
+ void vkCmdResetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags2KHR stageMask,
+ uint32_t doLock);
+ void vkCmdWaitEvents2KHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t eventCount,
+ const VkEvent* pEvents,
+ const VkDependencyInfoKHR* pDependencyInfos,
+ uint32_t doLock);
+ void vkCmdPipelineBarrier2KHR(
+ VkCommandBuffer commandBuffer,
+ const VkDependencyInfoKHR* pDependencyInfo,
+ uint32_t doLock);
+ void vkCmdWriteTimestamp2KHR(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkQueryPool queryPool,
+ uint32_t query,
+ uint32_t doLock);
+ VkResult vkQueueSubmit2KHR(
+ VkQueue queue,
+ uint32_t submitCount,
+ const VkSubmitInfo2KHR* pSubmits,
+ VkFence fence,
+ uint32_t doLock);
+ void vkCmdWriteBufferMarker2AMD(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ uint32_t marker,
+ uint32_t doLock);
+ void vkGetQueueCheckpointData2NV(
+ VkQueue queue,
+ uint32_t* pCheckpointDataCount,
+ VkCheckpointData2NV* pCheckpointData,
+ uint32_t doLock);
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+#endif
#ifdef VK_KHR_copy_commands2
void vkCmdCopyBuffer2KHR(
VkCommandBuffer commandBuffer,
@@ -1786,6 +1935,26 @@
const VkResolveImageInfo2KHR* pResolveImageInfo,
uint32_t doLock);
#endif
+#ifdef VK_KHR_format_feature_flags2
+#endif
+#ifdef VK_KHR_maintenance4
+ void vkGetDeviceBufferMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceBufferMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements,
+ uint32_t doLock);
+ void vkGetDeviceImageMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements,
+ uint32_t doLock);
+ void vkGetDeviceImageSparseMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ uint32_t* pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2* pSparseMemoryRequirements,
+ uint32_t doLock);
+#endif
#ifdef VK_ANDROID_native_buffer
VkResult vkGetSwapchainGrallocUsageANDROID(
VkDevice device,
@@ -1914,6 +2083,34 @@
uint32_t vertexStride,
uint32_t doLock);
#endif
+#ifdef VK_NVX_binary_import
+ VkResult vkCreateCuModuleNVX(
+ VkDevice device,
+ const VkCuModuleCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuModuleNVX* pModule,
+ uint32_t doLock);
+ VkResult vkCreateCuFunctionNVX(
+ VkDevice device,
+ const VkCuFunctionCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuFunctionNVX* pFunction,
+ uint32_t doLock);
+ void vkDestroyCuModuleNVX(
+ VkDevice device,
+ VkCuModuleNVX module,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock);
+ void vkDestroyCuFunctionNVX(
+ VkDevice device,
+ VkCuFunctionNVX function,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock);
+ void vkCmdCuLaunchKernelNVX(
+ VkCommandBuffer commandBuffer,
+ const VkCuLaunchInfoNVX* pLaunchInfo,
+ uint32_t doLock);
+#endif
#ifdef VK_NVX_image_view_handle
uint32_t vkGetImageViewHandleNVX(
VkDevice device,
@@ -1951,6 +2148,12 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+#endif
+#ifdef VK_EXT_video_encode_h265
+#endif
+#ifdef VK_EXT_video_decode_h264
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
#endif
#ifdef VK_AMD_shader_info
@@ -2473,6 +2676,8 @@
#endif
#ifdef VK_AMD_shader_core_properties
#endif
+#ifdef VK_EXT_video_decode_h265
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
#endif
#ifdef VK_EXT_vertex_attribute_divisor
@@ -2654,6 +2859,8 @@
#endif
#ifdef VK_EXT_ycbcr_image_arrays
#endif
+#ifdef VK_EXT_provoking_vertex
+#endif
#ifdef VK_EXT_full_screen_exclusive
VkResult vkGetPhysicalDeviceSurfacePresentModes2EXT(
VkPhysicalDevice physicalDevice,
@@ -2763,6 +2970,8 @@
VkCompareOp compareOp,
uint32_t doLock);
#endif
+#ifdef VK_EXT_shader_atomic_float2
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
#endif
#ifdef VK_NV_device_generated_commands
@@ -2798,12 +3007,27 @@
const VkAllocationCallbacks* pAllocator,
uint32_t doLock);
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+#endif
#ifdef VK_EXT_texel_buffer_alignment
#endif
#ifdef VK_QCOM_render_pass_transform
#endif
#ifdef VK_EXT_device_memory_report
#endif
+#ifdef VK_EXT_acquire_drm_display
+ VkResult vkAcquireDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ VkDisplayKHR display,
+ uint32_t doLock);
+ VkResult vkGetDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ uint32_t connectorId,
+ VkDisplayKHR* display,
+ uint32_t doLock);
+#endif
#ifdef VK_EXT_robustness2
#endif
#ifdef VK_EXT_custom_border_color
@@ -2850,6 +3074,10 @@
const VkFragmentShadingRateCombinerOpKHR combinerOps[2],
uint32_t doLock);
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+#endif
#ifdef VK_EXT_fragment_density_map2
#endif
#ifdef VK_QCOM_rotated_copy_commands
@@ -2858,6 +3086,19 @@
#endif
#ifdef VK_EXT_4444_formats
#endif
+#ifdef VK_EXT_rgba10x6_formats
+#endif
+#ifdef VK_NV_acquire_winrt_display
+ VkResult vkAcquireWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display,
+ uint32_t doLock);
+ VkResult vkGetWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ uint32_t deviceRelativeId,
+ VkDisplayKHR* pDisplay,
+ uint32_t doLock);
+#endif
#ifdef VK_EXT_directfb_surface
VkResult vkCreateDirectFBSurfaceEXT(
VkInstance instance,
@@ -2871,6 +3112,139 @@
IDirectFB* dfb,
uint32_t doLock);
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ void vkCmdSetVertexInputEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t vertexBindingDescriptionCount,
+ const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions,
+ uint32_t doLock);
+#endif
+#ifdef VK_EXT_physical_device_drm
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ VkResult vkGetMemoryZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle,
+ uint32_t doLock);
+ VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties,
+ uint32_t doLock);
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+ VkResult vkImportSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo,
+ uint32_t doLock);
+ VkResult vkGetSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle,
+ uint32_t doLock);
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ VkResult vkCreateBufferCollectionFUCHSIA(
+ VkDevice device,
+ const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkBufferCollectionFUCHSIA* pCollection,
+ uint32_t doLock);
+ VkResult vkSetBufferCollectionImageConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo,
+ uint32_t doLock);
+ VkResult vkSetBufferCollectionBufferConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo,
+ uint32_t doLock);
+ void vkDestroyBufferCollectionFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkAllocationCallbacks* pAllocator,
+ uint32_t doLock);
+ VkResult vkGetBufferCollectionPropertiesFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ VkBufferCollectionPropertiesFUCHSIA* pProperties,
+ uint32_t doLock);
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VkDevice device,
+ VkRenderPass renderpass,
+ VkExtent2D* pMaxWorkgroupSize,
+ uint32_t doLock);
+ void vkCmdSubpassShadingHUAWEI(
+ VkCommandBuffer commandBuffer,
+ uint32_t doLock);
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ void vkCmdBindInvocationMaskHUAWEI(
+ VkCommandBuffer commandBuffer,
+ VkImageView imageView,
+ VkImageLayout imageLayout,
+ uint32_t doLock);
+#endif
+#ifdef VK_NV_external_memory_rdma
+ VkResult vkGetMemoryRemoteAddressNV(
+ VkDevice device,
+ const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo,
+ VkRemoteAddressNV* pAddress,
+ uint32_t doLock);
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ void vkCmdSetPatchControlPointsEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t patchControlPoints,
+ uint32_t doLock);
+ void vkCmdSetRasterizerDiscardEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 rasterizerDiscardEnable,
+ uint32_t doLock);
+ void vkCmdSetDepthBiasEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 depthBiasEnable,
+ uint32_t doLock);
+ void vkCmdSetLogicOpEXT(
+ VkCommandBuffer commandBuffer,
+ VkLogicOp logicOp,
+ uint32_t doLock);
+ void vkCmdSetPrimitiveRestartEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 primitiveRestartEnable,
+ uint32_t doLock);
+#endif
+#ifdef VK_QNX_screen_surface
+ VkResult vkCreateScreenSurfaceQNX(
+ VkInstance instance,
+ const VkScreenSurfaceCreateInfoQNX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkSurfaceKHR* pSurface,
+ uint32_t doLock);
+ VkBool32 vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ _screen_window* window,
+ uint32_t doLock);
+#endif
+#ifdef VK_EXT_color_write_enable
+ void vkCmdSetColorWriteEnableEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t attachmentCount,
+ const VkBool32* pColorWriteEnables,
+ uint32_t doLock);
+#endif
#ifdef VK_GOOGLE_gfxstream
VkResult vkRegisterImageColorBufferGOOGLE(
VkDevice device,
@@ -3001,6 +3375,38 @@
VkImage image,
uint32_t doLock);
#endif
+#ifdef VK_EXT_global_priority_query
+#endif
+#ifdef VK_EXT_multi_draw
+ void vkCmdDrawMultiEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawInfoEXT* pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ uint32_t doLock);
+ void vkCmdDrawMultiIndexedEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawIndexedInfoEXT* pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t* pVertexOffset,
+ uint32_t doLock);
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ void vkSetDeviceMemoryPriorityEXT(
+ VkDevice device,
+ VkDeviceMemory memory,
+ float priority,
+ uint32_t doLock);
+#endif
#ifdef VK_KHR_acceleration_structure
VkResult vkCreateAccelerationStructureKHR(
VkDevice device,
diff --git a/system/vulkan_enc/func_table.cpp b/system/vulkan_enc/func_table.cpp
index a27e40f..d19f969 100644
--- a/system/vulkan_enc/func_table.cpp
+++ b/system/vulkan_enc/func_table.cpp
@@ -2812,6 +2812,271 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+static VkResult entry_vkGetPhysicalDeviceVideoCapabilitiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkVideoProfileKHR* pVideoProfile,
+ VkVideoCapabilitiesKHR* pCapabilities)
+{
+ AEMU_SCOPED_TRACE("vkGetPhysicalDeviceVideoCapabilitiesKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetPhysicalDeviceVideoCapabilitiesKHR_VkResult_return = (VkResult)0;
+ vkGetPhysicalDeviceVideoCapabilitiesKHR_VkResult_return = vkEnc->vkGetPhysicalDeviceVideoCapabilitiesKHR(physicalDevice, pVideoProfile, pCapabilities, true /* do lock */);
+ return vkGetPhysicalDeviceVideoCapabilitiesKHR_VkResult_return;
+}
+static VkResult entry_vkGetPhysicalDeviceVideoFormatPropertiesKHR(
+ VkPhysicalDevice physicalDevice,
+ const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo,
+ uint32_t* pVideoFormatPropertyCount,
+ VkVideoFormatPropertiesKHR* pVideoFormatProperties)
+{
+ AEMU_SCOPED_TRACE("vkGetPhysicalDeviceVideoFormatPropertiesKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetPhysicalDeviceVideoFormatPropertiesKHR_VkResult_return = (VkResult)0;
+ vkGetPhysicalDeviceVideoFormatPropertiesKHR_VkResult_return = vkEnc->vkGetPhysicalDeviceVideoFormatPropertiesKHR(physicalDevice, pVideoFormatInfo, pVideoFormatPropertyCount, pVideoFormatProperties, true /* do lock */);
+ return vkGetPhysicalDeviceVideoFormatPropertiesKHR_VkResult_return;
+}
+static VkResult entry_vkCreateVideoSessionKHR(
+ VkDevice device,
+ const VkVideoSessionCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionKHR* pVideoSession)
+{
+ AEMU_SCOPED_TRACE("vkCreateVideoSessionKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateVideoSessionKHR_VkResult_return = (VkResult)0;
+ vkCreateVideoSessionKHR_VkResult_return = vkEnc->vkCreateVideoSessionKHR(device, pCreateInfo, pAllocator, pVideoSession, true /* do lock */);
+ return vkCreateVideoSessionKHR_VkResult_return;
+}
+static VkResult dynCheck_entry_vkCreateVideoSessionKHR(
+ VkDevice device,
+ const VkVideoSessionCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionKHR* pVideoSession)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkCreateVideoSessionKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkCreateVideoSessionKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateVideoSessionKHR_VkResult_return = (VkResult)0;
+ vkCreateVideoSessionKHR_VkResult_return = vkEnc->vkCreateVideoSessionKHR(device, pCreateInfo, pAllocator, pVideoSession, true /* do lock */);
+ return vkCreateVideoSessionKHR_VkResult_return;
+}
+static void entry_vkDestroyVideoSessionKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ const VkAllocationCallbacks* pAllocator)
+{
+ AEMU_SCOPED_TRACE("vkDestroyVideoSessionKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyVideoSessionKHR(device, videoSession, pAllocator, true /* do lock */);
+}
+static void dynCheck_entry_vkDestroyVideoSessionKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ const VkAllocationCallbacks* pAllocator)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkDestroyVideoSessionKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkDestroyVideoSessionKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyVideoSessionKHR(device, videoSession, pAllocator, true /* do lock */);
+}
+static VkResult entry_vkGetVideoSessionMemoryRequirementsKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t* pVideoSessionMemoryRequirementsCount,
+ VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements)
+{
+ AEMU_SCOPED_TRACE("vkGetVideoSessionMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetVideoSessionMemoryRequirementsKHR_VkResult_return = (VkResult)0;
+ vkGetVideoSessionMemoryRequirementsKHR_VkResult_return = vkEnc->vkGetVideoSessionMemoryRequirementsKHR(device, videoSession, pVideoSessionMemoryRequirementsCount, pVideoSessionMemoryRequirements, true /* do lock */);
+ return vkGetVideoSessionMemoryRequirementsKHR_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetVideoSessionMemoryRequirementsKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t* pVideoSessionMemoryRequirementsCount,
+ VkVideoGetMemoryPropertiesKHR* pVideoSessionMemoryRequirements)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetVideoSessionMemoryRequirementsKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkGetVideoSessionMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetVideoSessionMemoryRequirementsKHR_VkResult_return = (VkResult)0;
+ vkGetVideoSessionMemoryRequirementsKHR_VkResult_return = vkEnc->vkGetVideoSessionMemoryRequirementsKHR(device, videoSession, pVideoSessionMemoryRequirementsCount, pVideoSessionMemoryRequirements, true /* do lock */);
+ return vkGetVideoSessionMemoryRequirementsKHR_VkResult_return;
+}
+static VkResult entry_vkBindVideoSessionMemoryKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VkVideoBindMemoryKHR* pVideoSessionBindMemories)
+{
+ AEMU_SCOPED_TRACE("vkBindVideoSessionMemoryKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkBindVideoSessionMemoryKHR_VkResult_return = (VkResult)0;
+ vkBindVideoSessionMemoryKHR_VkResult_return = vkEnc->vkBindVideoSessionMemoryKHR(device, videoSession, videoSessionBindMemoryCount, pVideoSessionBindMemories, true /* do lock */);
+ return vkBindVideoSessionMemoryKHR_VkResult_return;
+}
+static VkResult dynCheck_entry_vkBindVideoSessionMemoryKHR(
+ VkDevice device,
+ VkVideoSessionKHR videoSession,
+ uint32_t videoSessionBindMemoryCount,
+ const VkVideoBindMemoryKHR* pVideoSessionBindMemories)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkBindVideoSessionMemoryKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkBindVideoSessionMemoryKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkBindVideoSessionMemoryKHR_VkResult_return = (VkResult)0;
+ vkBindVideoSessionMemoryKHR_VkResult_return = vkEnc->vkBindVideoSessionMemoryKHR(device, videoSession, videoSessionBindMemoryCount, pVideoSessionBindMemories, true /* do lock */);
+ return vkBindVideoSessionMemoryKHR_VkResult_return;
+}
+static VkResult entry_vkCreateVideoSessionParametersKHR(
+ VkDevice device,
+ const VkVideoSessionParametersCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionParametersKHR* pVideoSessionParameters)
+{
+ AEMU_SCOPED_TRACE("vkCreateVideoSessionParametersKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateVideoSessionParametersKHR_VkResult_return = (VkResult)0;
+ vkCreateVideoSessionParametersKHR_VkResult_return = vkEnc->vkCreateVideoSessionParametersKHR(device, pCreateInfo, pAllocator, pVideoSessionParameters, true /* do lock */);
+ return vkCreateVideoSessionParametersKHR_VkResult_return;
+}
+static VkResult dynCheck_entry_vkCreateVideoSessionParametersKHR(
+ VkDevice device,
+ const VkVideoSessionParametersCreateInfoKHR* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkVideoSessionParametersKHR* pVideoSessionParameters)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkCreateVideoSessionParametersKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkCreateVideoSessionParametersKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateVideoSessionParametersKHR_VkResult_return = (VkResult)0;
+ vkCreateVideoSessionParametersKHR_VkResult_return = vkEnc->vkCreateVideoSessionParametersKHR(device, pCreateInfo, pAllocator, pVideoSessionParameters, true /* do lock */);
+ return vkCreateVideoSessionParametersKHR_VkResult_return;
+}
+static VkResult entry_vkUpdateVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo)
+{
+ AEMU_SCOPED_TRACE("vkUpdateVideoSessionParametersKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkUpdateVideoSessionParametersKHR_VkResult_return = (VkResult)0;
+ vkUpdateVideoSessionParametersKHR_VkResult_return = vkEnc->vkUpdateVideoSessionParametersKHR(device, videoSessionParameters, pUpdateInfo, true /* do lock */);
+ return vkUpdateVideoSessionParametersKHR_VkResult_return;
+}
+static VkResult dynCheck_entry_vkUpdateVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkVideoSessionParametersUpdateInfoKHR* pUpdateInfo)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkUpdateVideoSessionParametersKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkUpdateVideoSessionParametersKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkUpdateVideoSessionParametersKHR_VkResult_return = (VkResult)0;
+ vkUpdateVideoSessionParametersKHR_VkResult_return = vkEnc->vkUpdateVideoSessionParametersKHR(device, videoSessionParameters, pUpdateInfo, true /* do lock */);
+ return vkUpdateVideoSessionParametersKHR_VkResult_return;
+}
+static void entry_vkDestroyVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkAllocationCallbacks* pAllocator)
+{
+ AEMU_SCOPED_TRACE("vkDestroyVideoSessionParametersKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyVideoSessionParametersKHR(device, videoSessionParameters, pAllocator, true /* do lock */);
+}
+static void dynCheck_entry_vkDestroyVideoSessionParametersKHR(
+ VkDevice device,
+ VkVideoSessionParametersKHR videoSessionParameters,
+ const VkAllocationCallbacks* pAllocator)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_video_queue"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkDestroyVideoSessionParametersKHR", "VK_KHR_video_queue");
+ }
+ AEMU_SCOPED_TRACE("vkDestroyVideoSessionParametersKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyVideoSessionParametersKHR(device, videoSessionParameters, pAllocator, true /* do lock */);
+}
+static void entry_vkCmdBeginVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoBeginCodingInfoKHR* pBeginInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdBeginVideoCodingKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdBeginVideoCodingKHR(commandBuffer, pBeginInfo, true /* do lock */);
+}
+static void entry_vkCmdEndVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEndCodingInfoKHR* pEndCodingInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdEndVideoCodingKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdEndVideoCodingKHR(commandBuffer, pEndCodingInfo, true /* do lock */);
+}
+static void entry_vkCmdControlVideoCodingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoCodingControlInfoKHR* pCodingControlInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdControlVideoCodingKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdControlVideoCodingKHR(commandBuffer, pCodingControlInfo, true /* do lock */);
+}
+#endif
+#ifdef VK_KHR_video_decode_queue
+static void entry_vkCmdDecodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoDecodeInfoKHR* pFrameInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdDecodeVideoKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdDecodeVideoKHR(commandBuffer, pFrameInfo, true /* do lock */);
+}
+#endif
+#ifdef VK_KHR_dynamic_rendering
+static void entry_vkCmdBeginRenderingKHR(
+ VkCommandBuffer commandBuffer,
+ const VkRenderingInfoKHR* pRenderingInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdBeginRenderingKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdBeginRenderingKHR(commandBuffer, pRenderingInfo, true /* do lock */);
+}
+static void entry_vkCmdEndRenderingKHR(
+ VkCommandBuffer commandBuffer)
+{
+ AEMU_SCOPED_TRACE("vkCmdEndRenderingKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdEndRenderingKHR(commandBuffer, true /* do lock */);
+}
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -4069,6 +4334,37 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+static VkResult entry_vkWaitForPresentKHR(
+ VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint64_t presentId,
+ uint64_t timeout)
+{
+ AEMU_SCOPED_TRACE("vkWaitForPresentKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkWaitForPresentKHR_VkResult_return = (VkResult)0;
+ vkWaitForPresentKHR_VkResult_return = vkEnc->vkWaitForPresentKHR(device, swapchain, presentId, timeout, true /* do lock */);
+ return vkWaitForPresentKHR_VkResult_return;
+}
+static VkResult dynCheck_entry_vkWaitForPresentKHR(
+ VkDevice device,
+ VkSwapchainKHR swapchain,
+ uint64_t presentId,
+ uint64_t timeout)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_present_wait"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkWaitForPresentKHR", "VK_KHR_present_wait");
+ }
+ AEMU_SCOPED_TRACE("vkWaitForPresentKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkWaitForPresentKHR_VkResult_return = (VkResult)0;
+ vkWaitForPresentKHR_VkResult_return = vkEnc->vkWaitForPresentKHR(device, swapchain, presentId, timeout, true /* do lock */);
+ return vkWaitForPresentKHR_VkResult_return;
+}
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -4364,10 +4660,110 @@
return vkGetPipelineExecutableInternalRepresentationsKHR_VkResult_return;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+#endif
#ifdef VK_KHR_pipeline_library
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+#endif
+#ifdef VK_KHR_video_encode_queue
+static void entry_vkCmdEncodeVideoKHR(
+ VkCommandBuffer commandBuffer,
+ const VkVideoEncodeInfoKHR* pEncodeInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdEncodeVideoKHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdEncodeVideoKHR(commandBuffer, pEncodeInfo, true /* do lock */);
+}
+#endif
+#ifdef VK_KHR_synchronization2
+static void entry_vkCmdSetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ const VkDependencyInfoKHR* pDependencyInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetEvent2KHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetEvent2KHR(commandBuffer, event, pDependencyInfo, true /* do lock */);
+}
+static void entry_vkCmdResetEvent2KHR(
+ VkCommandBuffer commandBuffer,
+ VkEvent event,
+ VkPipelineStageFlags2KHR stageMask)
+{
+ AEMU_SCOPED_TRACE("vkCmdResetEvent2KHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdResetEvent2KHR(commandBuffer, event, stageMask, true /* do lock */);
+}
+static void entry_vkCmdWaitEvents2KHR(
+ VkCommandBuffer commandBuffer,
+ uint32_t eventCount,
+ const VkEvent* pEvents,
+ const VkDependencyInfoKHR* pDependencyInfos)
+{
+ AEMU_SCOPED_TRACE("vkCmdWaitEvents2KHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdWaitEvents2KHR(commandBuffer, eventCount, pEvents, pDependencyInfos, true /* do lock */);
+}
+static void entry_vkCmdPipelineBarrier2KHR(
+ VkCommandBuffer commandBuffer,
+ const VkDependencyInfoKHR* pDependencyInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdPipelineBarrier2KHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdPipelineBarrier2KHR(commandBuffer, pDependencyInfo, true /* do lock */);
+}
+static void entry_vkCmdWriteTimestamp2KHR(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkQueryPool queryPool,
+ uint32_t query)
+{
+ AEMU_SCOPED_TRACE("vkCmdWriteTimestamp2KHR");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdWriteTimestamp2KHR(commandBuffer, stage, queryPool, query, true /* do lock */);
+}
+static VkResult entry_vkQueueSubmit2KHR(
+ VkQueue queue,
+ uint32_t submitCount,
+ const VkSubmitInfo2KHR* pSubmits,
+ VkFence fence)
+{
+ AEMU_SCOPED_TRACE("vkQueueSubmit2KHR");
+ auto vkEnc = ResourceTracker::getQueueEncoder(queue);
+ VkResult vkQueueSubmit2KHR_VkResult_return = (VkResult)0;
+ vkQueueSubmit2KHR_VkResult_return = vkEnc->vkQueueSubmit2KHR(queue, submitCount, pSubmits, fence, true /* do lock */);
+ return vkQueueSubmit2KHR_VkResult_return;
+}
+static void entry_vkCmdWriteBufferMarker2AMD(
+ VkCommandBuffer commandBuffer,
+ VkPipelineStageFlags2KHR stage,
+ VkBuffer dstBuffer,
+ VkDeviceSize dstOffset,
+ uint32_t marker)
+{
+ AEMU_SCOPED_TRACE("vkCmdWriteBufferMarker2AMD");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdWriteBufferMarker2AMD(commandBuffer, stage, dstBuffer, dstOffset, marker, true /* do lock */);
+}
+static void entry_vkGetQueueCheckpointData2NV(
+ VkQueue queue,
+ uint32_t* pCheckpointDataCount,
+ VkCheckpointData2NV* pCheckpointData)
+{
+ AEMU_SCOPED_TRACE("vkGetQueueCheckpointData2NV");
+ auto vkEnc = ResourceTracker::getQueueEncoder(queue);
+ vkEnc->vkGetQueueCheckpointData2NV(queue, pCheckpointDataCount, pCheckpointData, true /* do lock */);
+}
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+#endif
#ifdef VK_KHR_copy_commands2
static void entry_vkCmdCopyBuffer2KHR(
VkCommandBuffer commandBuffer,
@@ -4418,6 +4814,81 @@
vkEnc->vkCmdResolveImage2KHR(commandBuffer, pResolveImageInfo, true /* do lock */);
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+#endif
+#ifdef VK_KHR_maintenance4
+static void entry_vkGetDeviceBufferMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceBufferMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements)
+{
+ AEMU_SCOPED_TRACE("vkGetDeviceBufferMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkGetDeviceBufferMemoryRequirementsKHR(device, pInfo, pMemoryRequirements, true /* do lock */);
+}
+static void dynCheck_entry_vkGetDeviceBufferMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceBufferMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_maintenance4"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetDeviceBufferMemoryRequirementsKHR", "VK_KHR_maintenance4");
+ }
+ AEMU_SCOPED_TRACE("vkGetDeviceBufferMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkGetDeviceBufferMemoryRequirementsKHR(device, pInfo, pMemoryRequirements, true /* do lock */);
+}
+static void entry_vkGetDeviceImageMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements)
+{
+ AEMU_SCOPED_TRACE("vkGetDeviceImageMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkGetDeviceImageMemoryRequirementsKHR(device, pInfo, pMemoryRequirements, true /* do lock */);
+}
+static void dynCheck_entry_vkGetDeviceImageMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ VkMemoryRequirements2* pMemoryRequirements)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_maintenance4"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetDeviceImageMemoryRequirementsKHR", "VK_KHR_maintenance4");
+ }
+ AEMU_SCOPED_TRACE("vkGetDeviceImageMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkGetDeviceImageMemoryRequirementsKHR(device, pInfo, pMemoryRequirements, true /* do lock */);
+}
+static void entry_vkGetDeviceImageSparseMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ uint32_t* pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2* pSparseMemoryRequirements)
+{
+ AEMU_SCOPED_TRACE("vkGetDeviceImageSparseMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkGetDeviceImageSparseMemoryRequirementsKHR(device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements, true /* do lock */);
+}
+static void dynCheck_entry_vkGetDeviceImageSparseMemoryRequirementsKHR(
+ VkDevice device,
+ const VkDeviceImageMemoryRequirementsKHR* pInfo,
+ uint32_t* pSparseMemoryRequirementCount,
+ VkSparseImageMemoryRequirements2* pSparseMemoryRequirements)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_KHR_maintenance4"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetDeviceImageSparseMemoryRequirementsKHR", "VK_KHR_maintenance4");
+ }
+ AEMU_SCOPED_TRACE("vkGetDeviceImageSparseMemoryRequirementsKHR");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkGetDeviceImageSparseMemoryRequirementsKHR(device, pInfo, pSparseMemoryRequirementCount, pSparseMemoryRequirements, true /* do lock */);
+}
+#endif
#ifdef VK_ANDROID_native_buffer
static VkResult entry_vkGetSwapchainGrallocUsageANDROID(
VkDevice device,
@@ -4692,6 +5163,120 @@
vkEnc->vkCmdDrawIndirectByteCountEXT(commandBuffer, instanceCount, firstInstance, counterBuffer, counterBufferOffset, counterOffset, vertexStride, true /* do lock */);
}
#endif
+#ifdef VK_NVX_binary_import
+static VkResult entry_vkCreateCuModuleNVX(
+ VkDevice device,
+ const VkCuModuleCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuModuleNVX* pModule)
+{
+ AEMU_SCOPED_TRACE("vkCreateCuModuleNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateCuModuleNVX_VkResult_return = (VkResult)0;
+ vkCreateCuModuleNVX_VkResult_return = vkEnc->vkCreateCuModuleNVX(device, pCreateInfo, pAllocator, pModule, true /* do lock */);
+ return vkCreateCuModuleNVX_VkResult_return;
+}
+static VkResult dynCheck_entry_vkCreateCuModuleNVX(
+ VkDevice device,
+ const VkCuModuleCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuModuleNVX* pModule)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_NVX_binary_import"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkCreateCuModuleNVX", "VK_NVX_binary_import");
+ }
+ AEMU_SCOPED_TRACE("vkCreateCuModuleNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateCuModuleNVX_VkResult_return = (VkResult)0;
+ vkCreateCuModuleNVX_VkResult_return = vkEnc->vkCreateCuModuleNVX(device, pCreateInfo, pAllocator, pModule, true /* do lock */);
+ return vkCreateCuModuleNVX_VkResult_return;
+}
+static VkResult entry_vkCreateCuFunctionNVX(
+ VkDevice device,
+ const VkCuFunctionCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuFunctionNVX* pFunction)
+{
+ AEMU_SCOPED_TRACE("vkCreateCuFunctionNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateCuFunctionNVX_VkResult_return = (VkResult)0;
+ vkCreateCuFunctionNVX_VkResult_return = vkEnc->vkCreateCuFunctionNVX(device, pCreateInfo, pAllocator, pFunction, true /* do lock */);
+ return vkCreateCuFunctionNVX_VkResult_return;
+}
+static VkResult dynCheck_entry_vkCreateCuFunctionNVX(
+ VkDevice device,
+ const VkCuFunctionCreateInfoNVX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkCuFunctionNVX* pFunction)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_NVX_binary_import"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkCreateCuFunctionNVX", "VK_NVX_binary_import");
+ }
+ AEMU_SCOPED_TRACE("vkCreateCuFunctionNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateCuFunctionNVX_VkResult_return = (VkResult)0;
+ vkCreateCuFunctionNVX_VkResult_return = vkEnc->vkCreateCuFunctionNVX(device, pCreateInfo, pAllocator, pFunction, true /* do lock */);
+ return vkCreateCuFunctionNVX_VkResult_return;
+}
+static void entry_vkDestroyCuModuleNVX(
+ VkDevice device,
+ VkCuModuleNVX module,
+ const VkAllocationCallbacks* pAllocator)
+{
+ AEMU_SCOPED_TRACE("vkDestroyCuModuleNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyCuModuleNVX(device, module, pAllocator, true /* do lock */);
+}
+static void dynCheck_entry_vkDestroyCuModuleNVX(
+ VkDevice device,
+ VkCuModuleNVX module,
+ const VkAllocationCallbacks* pAllocator)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_NVX_binary_import"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkDestroyCuModuleNVX", "VK_NVX_binary_import");
+ }
+ AEMU_SCOPED_TRACE("vkDestroyCuModuleNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyCuModuleNVX(device, module, pAllocator, true /* do lock */);
+}
+static void entry_vkDestroyCuFunctionNVX(
+ VkDevice device,
+ VkCuFunctionNVX function,
+ const VkAllocationCallbacks* pAllocator)
+{
+ AEMU_SCOPED_TRACE("vkDestroyCuFunctionNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyCuFunctionNVX(device, function, pAllocator, true /* do lock */);
+}
+static void dynCheck_entry_vkDestroyCuFunctionNVX(
+ VkDevice device,
+ VkCuFunctionNVX function,
+ const VkAllocationCallbacks* pAllocator)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_NVX_binary_import"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkDestroyCuFunctionNVX", "VK_NVX_binary_import");
+ }
+ AEMU_SCOPED_TRACE("vkDestroyCuFunctionNVX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyCuFunctionNVX(device, function, pAllocator, true /* do lock */);
+}
+static void entry_vkCmdCuLaunchKernelNVX(
+ VkCommandBuffer commandBuffer,
+ const VkCuLaunchInfoNVX* pLaunchInfo)
+{
+ AEMU_SCOPED_TRACE("vkCmdCuLaunchKernelNVX");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdCuLaunchKernelNVX(commandBuffer, pLaunchInfo, true /* do lock */);
+}
+#endif
#ifdef VK_NVX_image_view_handle
static uint32_t entry_vkGetImageViewHandleNVX(
VkDevice device,
@@ -4780,6 +5365,12 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+#endif
+#ifdef VK_EXT_video_encode_h265
+#endif
+#ifdef VK_EXT_video_decode_h264
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
#endif
#ifdef VK_AMD_shader_info
@@ -6133,6 +6724,8 @@
#endif
#ifdef VK_AMD_shader_core_properties
#endif
+#ifdef VK_EXT_video_decode_h265
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
#endif
#ifdef VK_EXT_vertex_attribute_divisor
@@ -6533,6 +7126,8 @@
#endif
#ifdef VK_EXT_ycbcr_image_arrays
#endif
+#ifdef VK_EXT_provoking_vertex
+#endif
#ifdef VK_EXT_full_screen_exclusive
static VkResult entry_vkGetPhysicalDeviceSurfacePresentModes2EXT(
VkPhysicalDevice physicalDevice,
@@ -6789,6 +7384,8 @@
vkEnc->vkCmdSetStencilOpEXT(commandBuffer, faceMask, failOp, passOp, depthFailOp, compareOp, true /* do lock */);
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
#endif
#ifdef VK_NV_device_generated_commands
@@ -6895,12 +7492,39 @@
vkEnc->vkDestroyIndirectCommandsLayoutNV(device, indirectCommandsLayout, pAllocator, true /* do lock */);
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+#endif
#ifdef VK_EXT_texel_buffer_alignment
#endif
#ifdef VK_QCOM_render_pass_transform
#endif
#ifdef VK_EXT_device_memory_report
#endif
+#ifdef VK_EXT_acquire_drm_display
+static VkResult entry_vkAcquireDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ VkDisplayKHR display)
+{
+ AEMU_SCOPED_TRACE("vkAcquireDrmDisplayEXT");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkAcquireDrmDisplayEXT_VkResult_return = (VkResult)0;
+ vkAcquireDrmDisplayEXT_VkResult_return = vkEnc->vkAcquireDrmDisplayEXT(physicalDevice, drmFd, display, true /* do lock */);
+ return vkAcquireDrmDisplayEXT_VkResult_return;
+}
+static VkResult entry_vkGetDrmDisplayEXT(
+ VkPhysicalDevice physicalDevice,
+ int32_t drmFd,
+ uint32_t connectorId,
+ VkDisplayKHR* display)
+{
+ AEMU_SCOPED_TRACE("vkGetDrmDisplayEXT");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetDrmDisplayEXT_VkResult_return = (VkResult)0;
+ vkGetDrmDisplayEXT_VkResult_return = vkEnc->vkGetDrmDisplayEXT(physicalDevice, drmFd, connectorId, display, true /* do lock */);
+ return vkGetDrmDisplayEXT_VkResult_return;
+}
+#endif
#ifdef VK_EXT_robustness2
#endif
#ifdef VK_EXT_custom_border_color
@@ -7036,6 +7660,10 @@
vkEnc->vkCmdSetFragmentShadingRateEnumNV(commandBuffer, shadingRate, combinerOps, true /* do lock */);
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+#endif
#ifdef VK_EXT_fragment_density_map2
#endif
#ifdef VK_QCOM_rotated_copy_commands
@@ -7044,6 +7672,31 @@
#endif
#ifdef VK_EXT_4444_formats
#endif
+#ifdef VK_EXT_rgba10x6_formats
+#endif
+#ifdef VK_NV_acquire_winrt_display
+static VkResult entry_vkAcquireWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ VkDisplayKHR display)
+{
+ AEMU_SCOPED_TRACE("vkAcquireWinrtDisplayNV");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkAcquireWinrtDisplayNV_VkResult_return = (VkResult)0;
+ vkAcquireWinrtDisplayNV_VkResult_return = vkEnc->vkAcquireWinrtDisplayNV(physicalDevice, display, true /* do lock */);
+ return vkAcquireWinrtDisplayNV_VkResult_return;
+}
+static VkResult entry_vkGetWinrtDisplayNV(
+ VkPhysicalDevice physicalDevice,
+ uint32_t deviceRelativeId,
+ VkDisplayKHR* pDisplay)
+{
+ AEMU_SCOPED_TRACE("vkGetWinrtDisplayNV");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetWinrtDisplayNV_VkResult_return = (VkResult)0;
+ vkGetWinrtDisplayNV_VkResult_return = vkEnc->vkGetWinrtDisplayNV(physicalDevice, deviceRelativeId, pDisplay, true /* do lock */);
+ return vkGetWinrtDisplayNV_VkResult_return;
+}
+#endif
#ifdef VK_EXT_directfb_surface
static VkResult entry_vkCreateDirectFBSurfaceEXT(
VkInstance instance,
@@ -7069,6 +7722,426 @@
return vkGetPhysicalDeviceDirectFBPresentationSupportEXT_VkBool32_return;
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+static void entry_vkCmdSetVertexInputEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t vertexBindingDescriptionCount,
+ const VkVertexInputBindingDescription2EXT* pVertexBindingDescriptions,
+ uint32_t vertexAttributeDescriptionCount,
+ const VkVertexInputAttributeDescription2EXT* pVertexAttributeDescriptions)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetVertexInputEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetVertexInputEXT(commandBuffer, vertexBindingDescriptionCount, pVertexBindingDescriptions, vertexAttributeDescriptionCount, pVertexAttributeDescriptions, true /* do lock */);
+}
+#endif
+#ifdef VK_EXT_physical_device_drm
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+#endif
+#ifdef VK_FUCHSIA_external_memory
+static VkResult entry_vkGetMemoryZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle)
+{
+ AEMU_SCOPED_TRACE("vkGetMemoryZirconHandleFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetMemoryZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetMemoryZirconHandleFUCHSIA_VkResult_return = vkEnc->vkGetMemoryZirconHandleFUCHSIA(device, pGetZirconHandleInfo, pZirconHandle, true /* do lock */);
+ return vkGetMemoryZirconHandleFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetMemoryZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_external_memory"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetMemoryZirconHandleFUCHSIA", "VK_FUCHSIA_external_memory");
+ }
+ AEMU_SCOPED_TRACE("vkGetMemoryZirconHandleFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetMemoryZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetMemoryZirconHandleFUCHSIA_VkResult_return = vkEnc->vkGetMemoryZirconHandleFUCHSIA(device, pGetZirconHandleInfo, pZirconHandle, true /* do lock */);
+ return vkGetMemoryZirconHandleFUCHSIA_VkResult_return;
+}
+static VkResult entry_vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties)
+{
+ AEMU_SCOPED_TRACE("vkGetMemoryZirconHandlePropertiesFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return = vkEnc->vkGetMemoryZirconHandlePropertiesFUCHSIA(device, handleType, zirconHandle, pMemoryZirconHandleProperties, true /* do lock */);
+ return vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetMemoryZirconHandlePropertiesFUCHSIA(
+ VkDevice device,
+ VkExternalMemoryHandleTypeFlagBits handleType,
+ zx_handle_t zirconHandle,
+ VkMemoryZirconHandlePropertiesFUCHSIA* pMemoryZirconHandleProperties)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_external_memory"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetMemoryZirconHandlePropertiesFUCHSIA", "VK_FUCHSIA_external_memory");
+ }
+ AEMU_SCOPED_TRACE("vkGetMemoryZirconHandlePropertiesFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return = vkEnc->vkGetMemoryZirconHandlePropertiesFUCHSIA(device, handleType, zirconHandle, pMemoryZirconHandleProperties, true /* do lock */);
+ return vkGetMemoryZirconHandlePropertiesFUCHSIA_VkResult_return;
+}
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+static VkResult entry_vkImportSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo)
+{
+ AEMU_SCOPED_TRACE("vkImportSemaphoreZirconHandleFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return = vkEnc->vkImportSemaphoreZirconHandleFUCHSIA(device, pImportSemaphoreZirconHandleInfo, true /* do lock */);
+ return vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkImportSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* pImportSemaphoreZirconHandleInfo)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_external_semaphore"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkImportSemaphoreZirconHandleFUCHSIA", "VK_FUCHSIA_external_semaphore");
+ }
+ AEMU_SCOPED_TRACE("vkImportSemaphoreZirconHandleFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return = vkEnc->vkImportSemaphoreZirconHandleFUCHSIA(device, pImportSemaphoreZirconHandleInfo, true /* do lock */);
+ return vkImportSemaphoreZirconHandleFUCHSIA_VkResult_return;
+}
+static VkResult entry_vkGetSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle)
+{
+ AEMU_SCOPED_TRACE("vkGetSemaphoreZirconHandleFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return = vkEnc->vkGetSemaphoreZirconHandleFUCHSIA(device, pGetZirconHandleInfo, pZirconHandle, true /* do lock */);
+ return vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetSemaphoreZirconHandleFUCHSIA(
+ VkDevice device,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* pGetZirconHandleInfo,
+ zx_handle_t* pZirconHandle)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_external_semaphore"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetSemaphoreZirconHandleFUCHSIA", "VK_FUCHSIA_external_semaphore");
+ }
+ AEMU_SCOPED_TRACE("vkGetSemaphoreZirconHandleFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return = vkEnc->vkGetSemaphoreZirconHandleFUCHSIA(device, pGetZirconHandleInfo, pZirconHandle, true /* do lock */);
+ return vkGetSemaphoreZirconHandleFUCHSIA_VkResult_return;
+}
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+static VkResult entry_vkCreateBufferCollectionFUCHSIA(
+ VkDevice device,
+ const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkBufferCollectionFUCHSIA* pCollection)
+{
+ AEMU_SCOPED_TRACE("vkCreateBufferCollectionFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateBufferCollectionFUCHSIA_VkResult_return = (VkResult)0;
+ vkCreateBufferCollectionFUCHSIA_VkResult_return = vkEnc->vkCreateBufferCollectionFUCHSIA(device, pCreateInfo, pAllocator, pCollection, true /* do lock */);
+ return vkCreateBufferCollectionFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkCreateBufferCollectionFUCHSIA(
+ VkDevice device,
+ const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkBufferCollectionFUCHSIA* pCollection)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkCreateBufferCollectionFUCHSIA", "VK_FUCHSIA_buffer_collection");
+ }
+ AEMU_SCOPED_TRACE("vkCreateBufferCollectionFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateBufferCollectionFUCHSIA_VkResult_return = (VkResult)0;
+ vkCreateBufferCollectionFUCHSIA_VkResult_return = vkEnc->vkCreateBufferCollectionFUCHSIA(device, pCreateInfo, pAllocator, pCollection, true /* do lock */);
+ return vkCreateBufferCollectionFUCHSIA_VkResult_return;
+}
+static VkResult entry_vkSetBufferCollectionImageConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo)
+{
+ AEMU_SCOPED_TRACE("vkSetBufferCollectionImageConstraintsFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return = (VkResult)0;
+ vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return = vkEnc->vkSetBufferCollectionImageConstraintsFUCHSIA(device, collection, pImageConstraintsInfo, true /* do lock */);
+ return vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkSetBufferCollectionImageConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkImageConstraintsInfoFUCHSIA* pImageConstraintsInfo)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkSetBufferCollectionImageConstraintsFUCHSIA", "VK_FUCHSIA_buffer_collection");
+ }
+ AEMU_SCOPED_TRACE("vkSetBufferCollectionImageConstraintsFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return = (VkResult)0;
+ vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return = vkEnc->vkSetBufferCollectionImageConstraintsFUCHSIA(device, collection, pImageConstraintsInfo, true /* do lock */);
+ return vkSetBufferCollectionImageConstraintsFUCHSIA_VkResult_return;
+}
+static VkResult entry_vkSetBufferCollectionBufferConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo)
+{
+ AEMU_SCOPED_TRACE("vkSetBufferCollectionBufferConstraintsFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return = (VkResult)0;
+ vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return = vkEnc->vkSetBufferCollectionBufferConstraintsFUCHSIA(device, collection, pBufferConstraintsInfo, true /* do lock */);
+ return vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkSetBufferCollectionBufferConstraintsFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkBufferConstraintsInfoFUCHSIA* pBufferConstraintsInfo)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkSetBufferCollectionBufferConstraintsFUCHSIA", "VK_FUCHSIA_buffer_collection");
+ }
+ AEMU_SCOPED_TRACE("vkSetBufferCollectionBufferConstraintsFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return = (VkResult)0;
+ vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return = vkEnc->vkSetBufferCollectionBufferConstraintsFUCHSIA(device, collection, pBufferConstraintsInfo, true /* do lock */);
+ return vkSetBufferCollectionBufferConstraintsFUCHSIA_VkResult_return;
+}
+static void entry_vkDestroyBufferCollectionFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkAllocationCallbacks* pAllocator)
+{
+ AEMU_SCOPED_TRACE("vkDestroyBufferCollectionFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyBufferCollectionFUCHSIA(device, collection, pAllocator, true /* do lock */);
+}
+static void dynCheck_entry_vkDestroyBufferCollectionFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ const VkAllocationCallbacks* pAllocator)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkDestroyBufferCollectionFUCHSIA", "VK_FUCHSIA_buffer_collection");
+ }
+ AEMU_SCOPED_TRACE("vkDestroyBufferCollectionFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkDestroyBufferCollectionFUCHSIA(device, collection, pAllocator, true /* do lock */);
+}
+static VkResult entry_vkGetBufferCollectionPropertiesFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ VkBufferCollectionPropertiesFUCHSIA* pProperties)
+{
+ AEMU_SCOPED_TRACE("vkGetBufferCollectionPropertiesFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return = vkEnc->vkGetBufferCollectionPropertiesFUCHSIA(device, collection, pProperties, true /* do lock */);
+ return vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetBufferCollectionPropertiesFUCHSIA(
+ VkDevice device,
+ VkBufferCollectionFUCHSIA collection,
+ VkBufferCollectionPropertiesFUCHSIA* pProperties)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetBufferCollectionPropertiesFUCHSIA", "VK_FUCHSIA_buffer_collection");
+ }
+ AEMU_SCOPED_TRACE("vkGetBufferCollectionPropertiesFUCHSIA");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return = (VkResult)0;
+ vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return = vkEnc->vkGetBufferCollectionPropertiesFUCHSIA(device, collection, pProperties, true /* do lock */);
+ return vkGetBufferCollectionPropertiesFUCHSIA_VkResult_return;
+}
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+static VkResult entry_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VkDevice device,
+ VkRenderPass renderpass,
+ VkExtent2D* pMaxWorkgroupSize)
+{
+ AEMU_SCOPED_TRACE("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return = (VkResult)0;
+ vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return = vkEnc->vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(device, renderpass, pMaxWorkgroupSize, true /* do lock */);
+ return vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(
+ VkDevice device,
+ VkRenderPass renderpass,
+ VkExtent2D* pMaxWorkgroupSize)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_HUAWEI_subpass_shading"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI", "VK_HUAWEI_subpass_shading");
+ }
+ AEMU_SCOPED_TRACE("vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return = (VkResult)0;
+ vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return = vkEnc->vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI(device, renderpass, pMaxWorkgroupSize, true /* do lock */);
+ return vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI_VkResult_return;
+}
+static void entry_vkCmdSubpassShadingHUAWEI(
+ VkCommandBuffer commandBuffer)
+{
+ AEMU_SCOPED_TRACE("vkCmdSubpassShadingHUAWEI");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSubpassShadingHUAWEI(commandBuffer, true /* do lock */);
+}
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+static void entry_vkCmdBindInvocationMaskHUAWEI(
+ VkCommandBuffer commandBuffer,
+ VkImageView imageView,
+ VkImageLayout imageLayout)
+{
+ AEMU_SCOPED_TRACE("vkCmdBindInvocationMaskHUAWEI");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdBindInvocationMaskHUAWEI(commandBuffer, imageView, imageLayout, true /* do lock */);
+}
+#endif
+#ifdef VK_NV_external_memory_rdma
+static VkResult entry_vkGetMemoryRemoteAddressNV(
+ VkDevice device,
+ const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo,
+ VkRemoteAddressNV* pAddress)
+{
+ AEMU_SCOPED_TRACE("vkGetMemoryRemoteAddressNV");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetMemoryRemoteAddressNV_VkResult_return = (VkResult)0;
+ vkGetMemoryRemoteAddressNV_VkResult_return = vkEnc->vkGetMemoryRemoteAddressNV(device, pMemoryGetRemoteAddressInfo, pAddress, true /* do lock */);
+ return vkGetMemoryRemoteAddressNV_VkResult_return;
+}
+static VkResult dynCheck_entry_vkGetMemoryRemoteAddressNV(
+ VkDevice device,
+ const VkMemoryGetRemoteAddressInfoNV* pMemoryGetRemoteAddressInfo,
+ VkRemoteAddressNV* pAddress)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_NV_external_memory_rdma"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkGetMemoryRemoteAddressNV", "VK_NV_external_memory_rdma");
+ }
+ AEMU_SCOPED_TRACE("vkGetMemoryRemoteAddressNV");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkGetMemoryRemoteAddressNV_VkResult_return = (VkResult)0;
+ vkGetMemoryRemoteAddressNV_VkResult_return = vkEnc->vkGetMemoryRemoteAddressNV(device, pMemoryGetRemoteAddressInfo, pAddress, true /* do lock */);
+ return vkGetMemoryRemoteAddressNV_VkResult_return;
+}
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+static void entry_vkCmdSetPatchControlPointsEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t patchControlPoints)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetPatchControlPointsEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetPatchControlPointsEXT(commandBuffer, patchControlPoints, true /* do lock */);
+}
+static void entry_vkCmdSetRasterizerDiscardEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 rasterizerDiscardEnable)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetRasterizerDiscardEnableEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetRasterizerDiscardEnableEXT(commandBuffer, rasterizerDiscardEnable, true /* do lock */);
+}
+static void entry_vkCmdSetDepthBiasEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 depthBiasEnable)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetDepthBiasEnableEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetDepthBiasEnableEXT(commandBuffer, depthBiasEnable, true /* do lock */);
+}
+static void entry_vkCmdSetLogicOpEXT(
+ VkCommandBuffer commandBuffer,
+ VkLogicOp logicOp)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetLogicOpEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetLogicOpEXT(commandBuffer, logicOp, true /* do lock */);
+}
+static void entry_vkCmdSetPrimitiveRestartEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 primitiveRestartEnable)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetPrimitiveRestartEnableEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetPrimitiveRestartEnableEXT(commandBuffer, primitiveRestartEnable, true /* do lock */);
+}
+#endif
+#ifdef VK_QNX_screen_surface
+static VkResult entry_vkCreateScreenSurfaceQNX(
+ VkInstance instance,
+ const VkScreenSurfaceCreateInfoQNX* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkSurfaceKHR* pSurface)
+{
+ AEMU_SCOPED_TRACE("vkCreateScreenSurfaceQNX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkResult vkCreateScreenSurfaceQNX_VkResult_return = (VkResult)0;
+ vkCreateScreenSurfaceQNX_VkResult_return = vkEnc->vkCreateScreenSurfaceQNX(instance, pCreateInfo, pAllocator, pSurface, true /* do lock */);
+ return vkCreateScreenSurfaceQNX_VkResult_return;
+}
+static VkBool32 entry_vkGetPhysicalDeviceScreenPresentationSupportQNX(
+ VkPhysicalDevice physicalDevice,
+ uint32_t queueFamilyIndex,
+ _screen_window* window)
+{
+ AEMU_SCOPED_TRACE("vkGetPhysicalDeviceScreenPresentationSupportQNX");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ VkBool32 vkGetPhysicalDeviceScreenPresentationSupportQNX_VkBool32_return = (VkBool32)0;
+ vkGetPhysicalDeviceScreenPresentationSupportQNX_VkBool32_return = vkEnc->vkGetPhysicalDeviceScreenPresentationSupportQNX(physicalDevice, queueFamilyIndex, window, true /* do lock */);
+ return vkGetPhysicalDeviceScreenPresentationSupportQNX_VkBool32_return;
+}
+#endif
+#ifdef VK_EXT_color_write_enable
+static void entry_vkCmdSetColorWriteEnableEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t attachmentCount,
+ const VkBool32* pColorWriteEnables)
+{
+ AEMU_SCOPED_TRACE("vkCmdSetColorWriteEnableEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdSetColorWriteEnableEXT(commandBuffer, attachmentCount, pColorWriteEnables, true /* do lock */);
+}
+#endif
#ifdef VK_GOOGLE_gfxstream
static VkResult entry_vkRegisterImageColorBufferGOOGLE(
VkDevice device,
@@ -7468,6 +8541,64 @@
vkEnc->vkQueueSignalReleaseImageANDROIDAsyncGOOGLE(queue, waitSemaphoreCount, pWaitSemaphores, image, true /* do lock */);
}
#endif
+#ifdef VK_EXT_global_priority_query
+#endif
+#ifdef VK_EXT_multi_draw
+static void entry_vkCmdDrawMultiEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawInfoEXT* pVertexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride)
+{
+ AEMU_SCOPED_TRACE("vkCmdDrawMultiEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdDrawMultiEXT(commandBuffer, drawCount, pVertexInfo, instanceCount, firstInstance, stride, true /* do lock */);
+}
+static void entry_vkCmdDrawMultiIndexedEXT(
+ VkCommandBuffer commandBuffer,
+ uint32_t drawCount,
+ const VkMultiDrawIndexedInfoEXT* pIndexInfo,
+ uint32_t instanceCount,
+ uint32_t firstInstance,
+ uint32_t stride,
+ const int32_t* pVertexOffset)
+{
+ AEMU_SCOPED_TRACE("vkCmdDrawMultiIndexedEXT");
+ auto vkEnc = ResourceTracker::getCommandBufferEncoder(commandBuffer);
+ vkEnc->vkCmdDrawMultiIndexedEXT(commandBuffer, drawCount, pIndexInfo, instanceCount, firstInstance, stride, pVertexOffset, true /* do lock */);
+}
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+static void entry_vkSetDeviceMemoryPriorityEXT(
+ VkDevice device,
+ VkDeviceMemory memory,
+ float priority)
+{
+ AEMU_SCOPED_TRACE("vkSetDeviceMemoryPriorityEXT");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkSetDeviceMemoryPriorityEXT(device, memory, priority, true /* do lock */);
+}
+static void dynCheck_entry_vkSetDeviceMemoryPriorityEXT(
+ VkDevice device,
+ VkDeviceMemory memory,
+ float priority)
+{
+ auto resources = ResourceTracker::get();
+ if (!resources->hasDeviceExtension(device, "VK_EXT_pageable_device_local_memory"))
+ {
+ sOnInvalidDynamicallyCheckedCall("vkSetDeviceMemoryPriorityEXT", "VK_EXT_pageable_device_local_memory");
+ }
+ AEMU_SCOPED_TRACE("vkSetDeviceMemoryPriorityEXT");
+ auto vkEnc = ResourceTracker::getThreadLocalEncoder();
+ vkEnc->vkSetDeviceMemoryPriorityEXT(device, memory, priority, true /* do lock */);
+}
+#endif
#ifdef VK_KHR_acceleration_structure
static VkResult entry_vkCreateAccelerationStructureKHR(
VkDevice device,
@@ -8798,6 +9929,72 @@
return nullptr;
}
#endif
+#ifdef VK_KHR_video_queue
+ if (!strcmp(name, "vkGetPhysicalDeviceVideoCapabilitiesKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetPhysicalDeviceVideoFormatPropertiesKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCreateVideoSessionKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkDestroyVideoSessionKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetVideoSessionMemoryRequirementsKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkBindVideoSessionMemoryKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCreateVideoSessionParametersKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkUpdateVideoSessionParametersKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkDestroyVideoSessionParametersKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdBeginVideoCodingKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdEndVideoCodingKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdControlVideoCodingKHR"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_KHR_video_decode_queue
+ if (!strcmp(name, "vkCmdDecodeVideoKHR"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ if (!strcmp(name, "vkCmdBeginRenderingKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdEndRenderingKHR"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_KHR_get_physical_device_properties2
if (!strcmp(name, "vkGetPhysicalDeviceFeatures2KHR"))
{
@@ -9100,6 +10297,12 @@
return nullptr;
}
#endif
+#ifdef VK_KHR_present_wait
+ if (!strcmp(name, "vkWaitForPresentKHR"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_KHR_buffer_device_address
if (!strcmp(name, "vkGetBufferDeviceAddressKHR"))
{
@@ -9150,6 +10353,46 @@
return nullptr;
}
#endif
+#ifdef VK_KHR_video_encode_queue
+ if (!strcmp(name, "vkCmdEncodeVideoKHR"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ if (!strcmp(name, "vkCmdSetEvent2KHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdResetEvent2KHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdWaitEvents2KHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdPipelineBarrier2KHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdWriteTimestamp2KHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkQueueSubmit2KHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdWriteBufferMarker2AMD"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetQueueCheckpointData2NV"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_KHR_copy_commands2
if (!strcmp(name, "vkCmdCopyBuffer2KHR"))
{
@@ -9176,6 +10419,20 @@
return nullptr;
}
#endif
+#ifdef VK_KHR_maintenance4
+ if (!strcmp(name, "vkGetDeviceBufferMemoryRequirementsKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetDeviceImageMemoryRequirementsKHR"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetDeviceImageSparseMemoryRequirementsKHR"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
if (!strcmp(name, "vkGetSwapchainGrallocUsageANDROID"))
{
@@ -9252,6 +10509,28 @@
return nullptr;
}
#endif
+#ifdef VK_NVX_binary_import
+ if (!strcmp(name, "vkCreateCuModuleNVX"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCreateCuFunctionNVX"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkDestroyCuModuleNVX"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkDestroyCuFunctionNVX"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdCuLaunchKernelNVX"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_NVX_image_view_handle
if (!strcmp(name, "vkGetImageViewHandleNVX"))
{
@@ -9820,6 +11099,16 @@
return nullptr;
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+ if (!strcmp(name, "vkAcquireDrmDisplayEXT"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetDrmDisplayEXT"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_EXT_private_data
if (!strcmp(name, "vkCreatePrivateDataSlotEXT"))
{
@@ -9844,6 +11133,16 @@
return nullptr;
}
#endif
+#ifdef VK_NV_acquire_winrt_display
+ if (!strcmp(name, "vkAcquireWinrtDisplayNV"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetWinrtDisplayNV"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_EXT_directfb_surface
if (!strcmp(name, "vkCreateDirectFBSurfaceEXT"))
{
@@ -9854,6 +11153,114 @@
return nullptr;
}
#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ if (!strcmp(name, "vkCmdSetVertexInputEXT"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ if (!strcmp(name, "vkGetMemoryZirconHandleFUCHSIA"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetMemoryZirconHandlePropertiesFUCHSIA"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+ if (!strcmp(name, "vkImportSemaphoreZirconHandleFUCHSIA"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetSemaphoreZirconHandleFUCHSIA"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ if (!strcmp(name, "vkCreateBufferCollectionFUCHSIA"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkSetBufferCollectionImageConstraintsFUCHSIA"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkSetBufferCollectionBufferConstraintsFUCHSIA"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkDestroyBufferCollectionFUCHSIA"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetBufferCollectionPropertiesFUCHSIA"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ if (!strcmp(name, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdSubpassShadingHUAWEI"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ if (!strcmp(name, "vkCmdBindInvocationMaskHUAWEI"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ if (!strcmp(name, "vkGetMemoryRemoteAddressNV"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ if (!strcmp(name, "vkCmdSetPatchControlPointsEXT"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetRasterizerDiscardEnableEXT"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetDepthBiasEnableEXT"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetLogicOpEXT"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetPrimitiveRestartEnableEXT"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_QNX_screen_surface
+ if (!strcmp(name, "vkCreateScreenSurfaceQNX"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkGetPhysicalDeviceScreenPresentationSupportQNX"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ if (!strcmp(name, "vkCmdSetColorWriteEnableEXT"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
if (!strcmp(name, "vkRegisterImageColorBufferGOOGLE"))
{
@@ -9940,6 +11347,22 @@
return nullptr;
}
#endif
+#ifdef VK_EXT_multi_draw
+ if (!strcmp(name, "vkCmdDrawMultiEXT"))
+ {
+ return nullptr;
+ }
+ if (!strcmp(name, "vkCmdDrawMultiIndexedEXT"))
+ {
+ return nullptr;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ if (!strcmp(name, "vkSetDeviceMemoryPriorityEXT"))
+ {
+ return nullptr;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
if (!strcmp(name, "vkCreateAccelerationStructureKHR"))
{
@@ -10925,6 +12348,80 @@
return hasExt ? (void*)entry_vkGetPhysicalDeviceWin32PresentationSupportKHR : nullptr;
}
#endif
+#ifdef VK_KHR_video_queue
+ if (!strcmp(name, "vkGetPhysicalDeviceVideoCapabilitiesKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkGetPhysicalDeviceVideoCapabilitiesKHR : nullptr;
+ }
+ if (!strcmp(name, "vkGetPhysicalDeviceVideoFormatPropertiesKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkGetPhysicalDeviceVideoFormatPropertiesKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCreateVideoSessionKHR"))
+ {
+ return (void*)dynCheck_entry_vkCreateVideoSessionKHR;
+ }
+ if (!strcmp(name, "vkDestroyVideoSessionKHR"))
+ {
+ return (void*)dynCheck_entry_vkDestroyVideoSessionKHR;
+ }
+ if (!strcmp(name, "vkGetVideoSessionMemoryRequirementsKHR"))
+ {
+ return (void*)dynCheck_entry_vkGetVideoSessionMemoryRequirementsKHR;
+ }
+ if (!strcmp(name, "vkBindVideoSessionMemoryKHR"))
+ {
+ return (void*)dynCheck_entry_vkBindVideoSessionMemoryKHR;
+ }
+ if (!strcmp(name, "vkCreateVideoSessionParametersKHR"))
+ {
+ return (void*)dynCheck_entry_vkCreateVideoSessionParametersKHR;
+ }
+ if (!strcmp(name, "vkUpdateVideoSessionParametersKHR"))
+ {
+ return (void*)dynCheck_entry_vkUpdateVideoSessionParametersKHR;
+ }
+ if (!strcmp(name, "vkDestroyVideoSessionParametersKHR"))
+ {
+ return (void*)dynCheck_entry_vkDestroyVideoSessionParametersKHR;
+ }
+ if (!strcmp(name, "vkCmdBeginVideoCodingKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCmdBeginVideoCodingKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdEndVideoCodingKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCmdEndVideoCodingKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdControlVideoCodingKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCmdControlVideoCodingKHR : nullptr;
+ }
+#endif
+#ifdef VK_KHR_video_decode_queue
+ if (!strcmp(name, "vkCmdDecodeVideoKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_decode_queue");
+ return hasExt ? (void*)entry_vkCmdDecodeVideoKHR : nullptr;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ if (!strcmp(name, "vkCmdBeginRenderingKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_dynamic_rendering");
+ return hasExt ? (void*)entry_vkCmdBeginRenderingKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdEndRenderingKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_dynamic_rendering");
+ return hasExt ? (void*)entry_vkCmdEndRenderingKHR : nullptr;
+ }
+#endif
#ifdef VK_KHR_get_physical_device_properties2
if (!strcmp(name, "vkGetPhysicalDeviceFeatures2KHR"))
{
@@ -11257,6 +12754,12 @@
return hasExt ? (void*)entry_vkCmdSetFragmentShadingRateKHR : nullptr;
}
#endif
+#ifdef VK_KHR_present_wait
+ if (!strcmp(name, "vkWaitForPresentKHR"))
+ {
+ return (void*)dynCheck_entry_vkWaitForPresentKHR;
+ }
+#endif
#ifdef VK_KHR_buffer_device_address
if (!strcmp(name, "vkGetBufferDeviceAddressKHR"))
{
@@ -11307,6 +12810,55 @@
return (void*)dynCheck_entry_vkGetPipelineExecutableInternalRepresentationsKHR;
}
#endif
+#ifdef VK_KHR_video_encode_queue
+ if (!strcmp(name, "vkCmdEncodeVideoKHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_video_encode_queue");
+ return hasExt ? (void*)entry_vkCmdEncodeVideoKHR : nullptr;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ if (!strcmp(name, "vkCmdSetEvent2KHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdSetEvent2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdResetEvent2KHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdResetEvent2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdWaitEvents2KHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdWaitEvents2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdPipelineBarrier2KHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdPipelineBarrier2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdWriteTimestamp2KHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdWriteTimestamp2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkQueueSubmit2KHR"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkQueueSubmit2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdWriteBufferMarker2AMD"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdWriteBufferMarker2AMD : nullptr;
+ }
+ if (!strcmp(name, "vkGetQueueCheckpointData2NV"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkGetQueueCheckpointData2NV : nullptr;
+ }
+#endif
#ifdef VK_KHR_copy_commands2
if (!strcmp(name, "vkCmdCopyBuffer2KHR"))
{
@@ -11339,6 +12891,20 @@
return hasExt ? (void*)entry_vkCmdResolveImage2KHR : nullptr;
}
#endif
+#ifdef VK_KHR_maintenance4
+ if (!strcmp(name, "vkGetDeviceBufferMemoryRequirementsKHR"))
+ {
+ return (void*)dynCheck_entry_vkGetDeviceBufferMemoryRequirementsKHR;
+ }
+ if (!strcmp(name, "vkGetDeviceImageMemoryRequirementsKHR"))
+ {
+ return (void*)dynCheck_entry_vkGetDeviceImageMemoryRequirementsKHR;
+ }
+ if (!strcmp(name, "vkGetDeviceImageSparseMemoryRequirementsKHR"))
+ {
+ return (void*)dynCheck_entry_vkGetDeviceImageSparseMemoryRequirementsKHR;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
if (!strcmp(name, "vkGetSwapchainGrallocUsageANDROID"))
{
@@ -11428,6 +12994,29 @@
return hasExt ? (void*)entry_vkCmdDrawIndirectByteCountEXT : nullptr;
}
#endif
+#ifdef VK_NVX_binary_import
+ if (!strcmp(name, "vkCreateCuModuleNVX"))
+ {
+ return (void*)dynCheck_entry_vkCreateCuModuleNVX;
+ }
+ if (!strcmp(name, "vkCreateCuFunctionNVX"))
+ {
+ return (void*)dynCheck_entry_vkCreateCuFunctionNVX;
+ }
+ if (!strcmp(name, "vkDestroyCuModuleNVX"))
+ {
+ return (void*)dynCheck_entry_vkDestroyCuModuleNVX;
+ }
+ if (!strcmp(name, "vkDestroyCuFunctionNVX"))
+ {
+ return (void*)dynCheck_entry_vkDestroyCuFunctionNVX;
+ }
+ if (!strcmp(name, "vkCmdCuLaunchKernelNVX"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_NVX_binary_import");
+ return hasExt ? (void*)entry_vkCmdCuLaunchKernelNVX : nullptr;
+ }
+#endif
#ifdef VK_NVX_image_view_handle
if (!strcmp(name, "vkGetImageViewHandleNVX"))
{
@@ -12070,6 +13659,18 @@
return (void*)dynCheck_entry_vkDestroyIndirectCommandsLayoutNV;
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+ if (!strcmp(name, "vkAcquireDrmDisplayEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_acquire_drm_display");
+ return hasExt ? (void*)entry_vkAcquireDrmDisplayEXT : nullptr;
+ }
+ if (!strcmp(name, "vkGetDrmDisplayEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_acquire_drm_display");
+ return hasExt ? (void*)entry_vkGetDrmDisplayEXT : nullptr;
+ }
+#endif
#ifdef VK_EXT_private_data
if (!strcmp(name, "vkCreatePrivateDataSlotEXT"))
{
@@ -12095,6 +13696,18 @@
return hasExt ? (void*)entry_vkCmdSetFragmentShadingRateEnumNV : nullptr;
}
#endif
+#ifdef VK_NV_acquire_winrt_display
+ if (!strcmp(name, "vkAcquireWinrtDisplayNV"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_NV_acquire_winrt_display");
+ return hasExt ? (void*)entry_vkAcquireWinrtDisplayNV : nullptr;
+ }
+ if (!strcmp(name, "vkGetWinrtDisplayNV"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_NV_acquire_winrt_display");
+ return hasExt ? (void*)entry_vkGetWinrtDisplayNV : nullptr;
+ }
+#endif
#ifdef VK_EXT_directfb_surface
if (!strcmp(name, "vkCreateDirectFBSurfaceEXT"))
{
@@ -12107,6 +13720,125 @@
return hasExt ? (void*)entry_vkGetPhysicalDeviceDirectFBPresentationSupportEXT : nullptr;
}
#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ if (!strcmp(name, "vkCmdSetVertexInputEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_vertex_input_dynamic_state");
+ return hasExt ? (void*)entry_vkCmdSetVertexInputEXT : nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ if (!strcmp(name, "vkGetMemoryZirconHandleFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkGetMemoryZirconHandleFUCHSIA;
+ }
+ if (!strcmp(name, "vkGetMemoryZirconHandlePropertiesFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkGetMemoryZirconHandlePropertiesFUCHSIA;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+ if (!strcmp(name, "vkImportSemaphoreZirconHandleFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkImportSemaphoreZirconHandleFUCHSIA;
+ }
+ if (!strcmp(name, "vkGetSemaphoreZirconHandleFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkGetSemaphoreZirconHandleFUCHSIA;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ if (!strcmp(name, "vkCreateBufferCollectionFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkCreateBufferCollectionFUCHSIA;
+ }
+ if (!strcmp(name, "vkSetBufferCollectionImageConstraintsFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkSetBufferCollectionImageConstraintsFUCHSIA;
+ }
+ if (!strcmp(name, "vkSetBufferCollectionBufferConstraintsFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkSetBufferCollectionBufferConstraintsFUCHSIA;
+ }
+ if (!strcmp(name, "vkDestroyBufferCollectionFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkDestroyBufferCollectionFUCHSIA;
+ }
+ if (!strcmp(name, "vkGetBufferCollectionPropertiesFUCHSIA"))
+ {
+ return (void*)dynCheck_entry_vkGetBufferCollectionPropertiesFUCHSIA;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ if (!strcmp(name, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI"))
+ {
+ return (void*)dynCheck_entry_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
+ }
+ if (!strcmp(name, "vkCmdSubpassShadingHUAWEI"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_HUAWEI_subpass_shading");
+ return hasExt ? (void*)entry_vkCmdSubpassShadingHUAWEI : nullptr;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ if (!strcmp(name, "vkCmdBindInvocationMaskHUAWEI"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_HUAWEI_invocation_mask");
+ return hasExt ? (void*)entry_vkCmdBindInvocationMaskHUAWEI : nullptr;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ if (!strcmp(name, "vkGetMemoryRemoteAddressNV"))
+ {
+ return (void*)dynCheck_entry_vkGetMemoryRemoteAddressNV;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ if (!strcmp(name, "vkCmdSetPatchControlPointsEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetPatchControlPointsEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetRasterizerDiscardEnableEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetRasterizerDiscardEnableEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetDepthBiasEnableEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetDepthBiasEnableEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetLogicOpEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetLogicOpEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetPrimitiveRestartEnableEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetPrimitiveRestartEnableEXT : nullptr;
+ }
+#endif
+#ifdef VK_QNX_screen_surface
+ if (!strcmp(name, "vkCreateScreenSurfaceQNX"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_QNX_screen_surface");
+ return hasExt ? (void*)entry_vkCreateScreenSurfaceQNX : nullptr;
+ }
+ if (!strcmp(name, "vkGetPhysicalDeviceScreenPresentationSupportQNX"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_QNX_screen_surface");
+ return hasExt ? (void*)entry_vkGetPhysicalDeviceScreenPresentationSupportQNX : nullptr;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ if (!strcmp(name, "vkCmdSetColorWriteEnableEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_color_write_enable");
+ return hasExt ? (void*)entry_vkCmdSetColorWriteEnableEXT : nullptr;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
if (!strcmp(name, "vkRegisterImageColorBufferGOOGLE"))
{
@@ -12204,6 +13936,24 @@
return hasExt ? (void*)entry_vkQueueSignalReleaseImageANDROIDAsyncGOOGLE : nullptr;
}
#endif
+#ifdef VK_EXT_multi_draw
+ if (!strcmp(name, "vkCmdDrawMultiEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_multi_draw");
+ return hasExt ? (void*)entry_vkCmdDrawMultiEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdDrawMultiIndexedEXT"))
+ {
+ bool hasExt = resources->hasInstanceExtension(instance, "VK_EXT_multi_draw");
+ return hasExt ? (void*)entry_vkCmdDrawMultiIndexedEXT : nullptr;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ if (!strcmp(name, "vkSetDeviceMemoryPriorityEXT"))
+ {
+ return (void*)dynCheck_entry_vkSetDeviceMemoryPriorityEXT;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
if (!strcmp(name, "vkCreateAccelerationStructureKHR"))
{
@@ -13214,6 +14964,87 @@
return hasExt ? (void*)entry_vkGetPhysicalDeviceWin32PresentationSupportKHR : nullptr;
}
#endif
+#ifdef VK_KHR_video_queue
+ if (!strcmp(name, "vkGetPhysicalDeviceVideoCapabilitiesKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkGetPhysicalDeviceVideoCapabilitiesKHR : nullptr;
+ }
+ if (!strcmp(name, "vkGetPhysicalDeviceVideoFormatPropertiesKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkGetPhysicalDeviceVideoFormatPropertiesKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCreateVideoSessionKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCreateVideoSessionKHR : nullptr;
+ }
+ if (!strcmp(name, "vkDestroyVideoSessionKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkDestroyVideoSessionKHR : nullptr;
+ }
+ if (!strcmp(name, "vkGetVideoSessionMemoryRequirementsKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkGetVideoSessionMemoryRequirementsKHR : nullptr;
+ }
+ if (!strcmp(name, "vkBindVideoSessionMemoryKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkBindVideoSessionMemoryKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCreateVideoSessionParametersKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCreateVideoSessionParametersKHR : nullptr;
+ }
+ if (!strcmp(name, "vkUpdateVideoSessionParametersKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkUpdateVideoSessionParametersKHR : nullptr;
+ }
+ if (!strcmp(name, "vkDestroyVideoSessionParametersKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkDestroyVideoSessionParametersKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdBeginVideoCodingKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCmdBeginVideoCodingKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdEndVideoCodingKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCmdEndVideoCodingKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdControlVideoCodingKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_queue");
+ return hasExt ? (void*)entry_vkCmdControlVideoCodingKHR : nullptr;
+ }
+#endif
+#ifdef VK_KHR_video_decode_queue
+ if (!strcmp(name, "vkCmdDecodeVideoKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_decode_queue");
+ return hasExt ? (void*)entry_vkCmdDecodeVideoKHR : nullptr;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ if (!strcmp(name, "vkCmdBeginRenderingKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_dynamic_rendering");
+ return hasExt ? (void*)entry_vkCmdBeginRenderingKHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdEndRenderingKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_dynamic_rendering");
+ return hasExt ? (void*)entry_vkCmdEndRenderingKHR : nullptr;
+ }
+#endif
#ifdef VK_KHR_get_physical_device_properties2
if (!strcmp(name, "vkGetPhysicalDeviceFeatures2KHR"))
{
@@ -13578,6 +15409,13 @@
return hasExt ? (void*)entry_vkCmdSetFragmentShadingRateKHR : nullptr;
}
#endif
+#ifdef VK_KHR_present_wait
+ if (!strcmp(name, "vkWaitForPresentKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_present_wait");
+ return hasExt ? (void*)entry_vkWaitForPresentKHR : nullptr;
+ }
+#endif
#ifdef VK_KHR_buffer_device_address
if (!strcmp(name, "vkGetBufferDeviceAddressKHR"))
{
@@ -13639,6 +15477,55 @@
return hasExt ? (void*)entry_vkGetPipelineExecutableInternalRepresentationsKHR : nullptr;
}
#endif
+#ifdef VK_KHR_video_encode_queue
+ if (!strcmp(name, "vkCmdEncodeVideoKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_video_encode_queue");
+ return hasExt ? (void*)entry_vkCmdEncodeVideoKHR : nullptr;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ if (!strcmp(name, "vkCmdSetEvent2KHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdSetEvent2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdResetEvent2KHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdResetEvent2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdWaitEvents2KHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdWaitEvents2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdPipelineBarrier2KHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdPipelineBarrier2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdWriteTimestamp2KHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdWriteTimestamp2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkQueueSubmit2KHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkQueueSubmit2KHR : nullptr;
+ }
+ if (!strcmp(name, "vkCmdWriteBufferMarker2AMD"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkCmdWriteBufferMarker2AMD : nullptr;
+ }
+ if (!strcmp(name, "vkGetQueueCheckpointData2NV"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_synchronization2");
+ return hasExt ? (void*)entry_vkGetQueueCheckpointData2NV : nullptr;
+ }
+#endif
#ifdef VK_KHR_copy_commands2
if (!strcmp(name, "vkCmdCopyBuffer2KHR"))
{
@@ -13671,6 +15558,23 @@
return hasExt ? (void*)entry_vkCmdResolveImage2KHR : nullptr;
}
#endif
+#ifdef VK_KHR_maintenance4
+ if (!strcmp(name, "vkGetDeviceBufferMemoryRequirementsKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_maintenance4");
+ return hasExt ? (void*)entry_vkGetDeviceBufferMemoryRequirementsKHR : nullptr;
+ }
+ if (!strcmp(name, "vkGetDeviceImageMemoryRequirementsKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_maintenance4");
+ return hasExt ? (void*)entry_vkGetDeviceImageMemoryRequirementsKHR : nullptr;
+ }
+ if (!strcmp(name, "vkGetDeviceImageSparseMemoryRequirementsKHR"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_KHR_maintenance4");
+ return hasExt ? (void*)entry_vkGetDeviceImageSparseMemoryRequirementsKHR : nullptr;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
if (!strcmp(name, "vkGetSwapchainGrallocUsageANDROID"))
{
@@ -13764,6 +15668,33 @@
return hasExt ? (void*)entry_vkCmdDrawIndirectByteCountEXT : nullptr;
}
#endif
+#ifdef VK_NVX_binary_import
+ if (!strcmp(name, "vkCreateCuModuleNVX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NVX_binary_import");
+ return hasExt ? (void*)entry_vkCreateCuModuleNVX : nullptr;
+ }
+ if (!strcmp(name, "vkCreateCuFunctionNVX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NVX_binary_import");
+ return hasExt ? (void*)entry_vkCreateCuFunctionNVX : nullptr;
+ }
+ if (!strcmp(name, "vkDestroyCuModuleNVX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NVX_binary_import");
+ return hasExt ? (void*)entry_vkDestroyCuModuleNVX : nullptr;
+ }
+ if (!strcmp(name, "vkDestroyCuFunctionNVX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NVX_binary_import");
+ return hasExt ? (void*)entry_vkDestroyCuFunctionNVX : nullptr;
+ }
+ if (!strcmp(name, "vkCmdCuLaunchKernelNVX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NVX_binary_import");
+ return hasExt ? (void*)entry_vkCmdCuLaunchKernelNVX : nullptr;
+ }
+#endif
#ifdef VK_NVX_image_view_handle
if (!strcmp(name, "vkGetImageViewHandleNVX"))
{
@@ -14451,6 +16382,18 @@
return hasExt ? (void*)entry_vkDestroyIndirectCommandsLayoutNV : nullptr;
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+ if (!strcmp(name, "vkAcquireDrmDisplayEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_acquire_drm_display");
+ return hasExt ? (void*)entry_vkAcquireDrmDisplayEXT : nullptr;
+ }
+ if (!strcmp(name, "vkGetDrmDisplayEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_acquire_drm_display");
+ return hasExt ? (void*)entry_vkGetDrmDisplayEXT : nullptr;
+ }
+#endif
#ifdef VK_EXT_private_data
if (!strcmp(name, "vkCreatePrivateDataSlotEXT"))
{
@@ -14480,6 +16423,18 @@
return hasExt ? (void*)entry_vkCmdSetFragmentShadingRateEnumNV : nullptr;
}
#endif
+#ifdef VK_NV_acquire_winrt_display
+ if (!strcmp(name, "vkAcquireWinrtDisplayNV"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NV_acquire_winrt_display");
+ return hasExt ? (void*)entry_vkAcquireWinrtDisplayNV : nullptr;
+ }
+ if (!strcmp(name, "vkGetWinrtDisplayNV"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NV_acquire_winrt_display");
+ return hasExt ? (void*)entry_vkGetWinrtDisplayNV : nullptr;
+ }
+#endif
#ifdef VK_EXT_directfb_surface
if (!strcmp(name, "vkCreateDirectFBSurfaceEXT"))
{
@@ -14492,6 +16447,136 @@
return hasExt ? (void*)entry_vkGetPhysicalDeviceDirectFBPresentationSupportEXT : nullptr;
}
#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ if (!strcmp(name, "vkCmdSetVertexInputEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_vertex_input_dynamic_state");
+ return hasExt ? (void*)entry_vkCmdSetVertexInputEXT : nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ if (!strcmp(name, "vkGetMemoryZirconHandleFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_external_memory");
+ return hasExt ? (void*)entry_vkGetMemoryZirconHandleFUCHSIA : nullptr;
+ }
+ if (!strcmp(name, "vkGetMemoryZirconHandlePropertiesFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_external_memory");
+ return hasExt ? (void*)entry_vkGetMemoryZirconHandlePropertiesFUCHSIA : nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+ if (!strcmp(name, "vkImportSemaphoreZirconHandleFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_external_semaphore");
+ return hasExt ? (void*)entry_vkImportSemaphoreZirconHandleFUCHSIA : nullptr;
+ }
+ if (!strcmp(name, "vkGetSemaphoreZirconHandleFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_external_semaphore");
+ return hasExt ? (void*)entry_vkGetSemaphoreZirconHandleFUCHSIA : nullptr;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ if (!strcmp(name, "vkCreateBufferCollectionFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection");
+ return hasExt ? (void*)entry_vkCreateBufferCollectionFUCHSIA : nullptr;
+ }
+ if (!strcmp(name, "vkSetBufferCollectionImageConstraintsFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection");
+ return hasExt ? (void*)entry_vkSetBufferCollectionImageConstraintsFUCHSIA : nullptr;
+ }
+ if (!strcmp(name, "vkSetBufferCollectionBufferConstraintsFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection");
+ return hasExt ? (void*)entry_vkSetBufferCollectionBufferConstraintsFUCHSIA : nullptr;
+ }
+ if (!strcmp(name, "vkDestroyBufferCollectionFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection");
+ return hasExt ? (void*)entry_vkDestroyBufferCollectionFUCHSIA : nullptr;
+ }
+ if (!strcmp(name, "vkGetBufferCollectionPropertiesFUCHSIA"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_FUCHSIA_buffer_collection");
+ return hasExt ? (void*)entry_vkGetBufferCollectionPropertiesFUCHSIA : nullptr;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ if (!strcmp(name, "vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_HUAWEI_subpass_shading");
+ return hasExt ? (void*)entry_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSubpassShadingHUAWEI"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_HUAWEI_subpass_shading");
+ return hasExt ? (void*)entry_vkCmdSubpassShadingHUAWEI : nullptr;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ if (!strcmp(name, "vkCmdBindInvocationMaskHUAWEI"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_HUAWEI_invocation_mask");
+ return hasExt ? (void*)entry_vkCmdBindInvocationMaskHUAWEI : nullptr;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ if (!strcmp(name, "vkGetMemoryRemoteAddressNV"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_NV_external_memory_rdma");
+ return hasExt ? (void*)entry_vkGetMemoryRemoteAddressNV : nullptr;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ if (!strcmp(name, "vkCmdSetPatchControlPointsEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetPatchControlPointsEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetRasterizerDiscardEnableEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetRasterizerDiscardEnableEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetDepthBiasEnableEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetDepthBiasEnableEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetLogicOpEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetLogicOpEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdSetPrimitiveRestartEnableEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_extended_dynamic_state2");
+ return hasExt ? (void*)entry_vkCmdSetPrimitiveRestartEnableEXT : nullptr;
+ }
+#endif
+#ifdef VK_QNX_screen_surface
+ if (!strcmp(name, "vkCreateScreenSurfaceQNX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_QNX_screen_surface");
+ return hasExt ? (void*)entry_vkCreateScreenSurfaceQNX : nullptr;
+ }
+ if (!strcmp(name, "vkGetPhysicalDeviceScreenPresentationSupportQNX"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_QNX_screen_surface");
+ return hasExt ? (void*)entry_vkGetPhysicalDeviceScreenPresentationSupportQNX : nullptr;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ if (!strcmp(name, "vkCmdSetColorWriteEnableEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_color_write_enable");
+ return hasExt ? (void*)entry_vkCmdSetColorWriteEnableEXT : nullptr;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
if (!strcmp(name, "vkRegisterImageColorBufferGOOGLE"))
{
@@ -14599,6 +16684,25 @@
return hasExt ? (void*)entry_vkQueueSignalReleaseImageANDROIDAsyncGOOGLE : nullptr;
}
#endif
+#ifdef VK_EXT_multi_draw
+ if (!strcmp(name, "vkCmdDrawMultiEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_multi_draw");
+ return hasExt ? (void*)entry_vkCmdDrawMultiEXT : nullptr;
+ }
+ if (!strcmp(name, "vkCmdDrawMultiIndexedEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_multi_draw");
+ return hasExt ? (void*)entry_vkCmdDrawMultiIndexedEXT : nullptr;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ if (!strcmp(name, "vkSetDeviceMemoryPriorityEXT"))
+ {
+ bool hasExt = resources->hasDeviceExtension(device, "VK_EXT_pageable_device_local_memory");
+ return hasExt ? (void*)entry_vkSetDeviceMemoryPriorityEXT : nullptr;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
if (!strcmp(name, "vkCreateAccelerationStructureKHR"))
{
diff --git a/system/vulkan_enc/func_table.h b/system/vulkan_enc/func_table.h
index 3c12410..34816ea 100644
--- a/system/vulkan_enc/func_table.h
+++ b/system/vulkan_enc/func_table.h
@@ -56,6 +56,12 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+#endif
+#ifdef VK_KHR_video_decode_queue
+#endif
+#ifdef VK_KHR_dynamic_rendering
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -170,6 +176,8 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -178,12 +186,30 @@
#endif
#ifdef VK_KHR_pipeline_executable_properties
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+#endif
#ifdef VK_KHR_pipeline_library
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+#endif
+#ifdef VK_KHR_video_encode_queue
+#endif
+#ifdef VK_KHR_synchronization2
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+#endif
#ifdef VK_KHR_copy_commands2
#endif
+#ifdef VK_KHR_format_feature_flags2
+#endif
+#ifdef VK_KHR_maintenance4
+#endif
#ifdef VK_ANDROID_native_buffer
#endif
#ifdef VK_EXT_debug_report
@@ -208,6 +234,8 @@
#endif
#ifdef VK_EXT_transform_feedback
#endif
+#ifdef VK_NVX_binary_import
+#endif
#ifdef VK_NVX_image_view_handle
#endif
#ifdef VK_AMD_draw_indirect_count
@@ -218,6 +246,12 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+#endif
+#ifdef VK_EXT_video_encode_h265
+#endif
+#ifdef VK_EXT_video_decode_h264
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
#endif
#ifdef VK_AMD_shader_info
@@ -354,6 +388,8 @@
#endif
#ifdef VK_AMD_shader_core_properties
#endif
+#ifdef VK_EXT_video_decode_h265
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
#endif
#ifdef VK_EXT_vertex_attribute_divisor
@@ -426,6 +462,8 @@
#endif
#ifdef VK_EXT_ycbcr_image_arrays
#endif
+#ifdef VK_EXT_provoking_vertex
+#endif
#ifdef VK_EXT_full_screen_exclusive
#endif
#ifdef VK_EXT_headless_surface
@@ -440,16 +478,22 @@
#endif
#ifdef VK_EXT_extended_dynamic_state
#endif
+#ifdef VK_EXT_shader_atomic_float2
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
#endif
#ifdef VK_NV_device_generated_commands
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+#endif
#ifdef VK_EXT_texel_buffer_alignment
#endif
#ifdef VK_QCOM_render_pass_transform
#endif
#ifdef VK_EXT_device_memory_report
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
#endif
#ifdef VK_EXT_custom_border_color
@@ -466,6 +510,10 @@
#endif
#ifdef VK_NV_fragment_shading_rate_enums
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+#endif
#ifdef VK_EXT_fragment_density_map2
#endif
#ifdef VK_QCOM_rotated_copy_commands
@@ -474,10 +522,50 @@
#endif
#ifdef VK_EXT_4444_formats
#endif
+#ifdef VK_EXT_rgba10x6_formats
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+#endif
+#ifdef VK_EXT_physical_device_drm
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+#endif
+#ifdef VK_FUCHSIA_external_memory
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+#endif
+#ifdef VK_NV_external_memory_rdma
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+#endif
+#ifdef VK_QNX_screen_surface
+#endif
+#ifdef VK_EXT_color_write_enable
+#endif
#ifdef VK_GOOGLE_gfxstream
#endif
+#ifdef VK_EXT_global_priority_query
+#endif
+#ifdef VK_EXT_multi_draw
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+#endif
#ifdef VK_KHR_acceleration_structure
#endif
#ifdef VK_KHR_ray_tracing_pipeline
diff --git a/system/vulkan_enc/goldfish_vk_counting_guest.cpp b/system/vulkan_enc/goldfish_vk_counting_guest.cpp
index 4e42832..517a0ac 100644
--- a/system/vulkan_enc/goldfish_vk_counting_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_counting_guest.cpp
@@ -284,6 +284,23 @@
*count += sizeof(VkAccessFlags);
}
+void count_VkPipelineCacheHeaderVersionOne(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkPipelineCacheHeaderVersion);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += VK_UUID_SIZE * sizeof(uint8_t);
+}
+
void count_VkAllocationCallbacks(
uint32_t featureBits,
VkStructureType rootType,
@@ -6086,6 +6103,627 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void count_VkVideoQueueFamilyProperties2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoCodecOperationFlagsKHR);
+}
+
+void count_VkVideoProfileKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoCodecOperationFlagBitsKHR);
+ *count += sizeof(VkVideoChromaSubsamplingFlagsKHR);
+ *count += sizeof(VkVideoComponentBitDepthFlagsKHR);
+ *count += sizeof(VkVideoComponentBitDepthFlagsKHR);
+}
+
+void count_VkVideoProfilesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ count_VkVideoProfileKHR(featureBits, rootType, (const VkVideoProfileKHR*)(toCount->pProfiles), count);
+}
+
+void count_VkVideoCapabilitiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoCapabilityFlagsKHR);
+ *count += sizeof(VkDeviceSize);
+ *count += sizeof(VkDeviceSize);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->videoPictureExtentGranularity), count);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->minExtent), count);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->maxExtent), count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkPhysicalDeviceVideoFormatInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkImageUsageFlags);
+ count_VkVideoProfilesKHR(featureBits, rootType, (const VkVideoProfilesKHR*)(toCount->pVideoProfiles), count);
+}
+
+void count_VkVideoFormatPropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkFormat);
+}
+
+void count_VkVideoPictureResourceKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkOffset2D(featureBits, rootType, (VkOffset2D*)(&toCount->codedOffset), count);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->codedExtent), count);
+ *count += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+}
+
+void count_VkVideoReferenceSlotKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(int8_t);
+ count_VkVideoPictureResourceKHR(featureBits, rootType, (const VkVideoPictureResourceKHR*)(toCount->pPictureResource), count);
+}
+
+void count_VkVideoGetMemoryPropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ count_VkMemoryRequirements2(featureBits, rootType, (VkMemoryRequirements2*)(toCount->pMemoryRequirements), count);
+}
+
+void count_VkVideoBindMemoryKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkDeviceSize);
+ *count += sizeof(VkDeviceSize);
+}
+
+void count_VkVideoSessionCreateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkVideoSessionCreateFlagsKHR);
+ count_VkVideoProfileKHR(featureBits, rootType, (const VkVideoProfileKHR*)(toCount->pVideoProfile), count);
+ *count += sizeof(VkFormat);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->maxCodedExtent), count);
+ *count += sizeof(VkFormat);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkVideoSessionParametersCreateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ *count += 8;
+}
+
+void count_VkVideoSessionParametersUpdateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkVideoBeginCodingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoBeginCodingFlagsKHR);
+ *count += sizeof(VkVideoCodingQualityPresetFlagsKHR);
+ *count += 8;
+ *count += 8;
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->referenceSlotCount; ++i)
+ {
+ count_VkVideoReferenceSlotKHR(featureBits, rootType, (const VkVideoReferenceSlotKHR*)(toCount->pReferenceSlots + i), count);
+ }
+ }
+}
+
+void count_VkVideoEndCodingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEndCodingFlagsKHR);
+}
+
+void count_VkVideoCodingControlInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoCodingControlFlagsKHR);
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void count_VkVideoDecodeInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoDecodeFlagsKHR);
+ count_VkOffset2D(featureBits, rootType, (VkOffset2D*)(&toCount->codedOffset), count);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->codedExtent), count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkDeviceSize);
+ *count += sizeof(VkDeviceSize);
+ count_VkVideoPictureResourceKHR(featureBits, rootType, (VkVideoPictureResourceKHR*)(&toCount->dstPictureResource), count);
+ count_VkVideoReferenceSlotKHR(featureBits, rootType, (const VkVideoReferenceSlotKHR*)(toCount->pSetupReferenceSlot), count);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->referenceSlotCount; ++i)
+ {
+ count_VkVideoReferenceSlotKHR(featureBits, rootType, (const VkVideoReferenceSlotKHR*)(toCount->pReferenceSlots + i), count);
+ }
+ }
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void count_VkRenderingAttachmentInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkImageLayout);
+ *count += sizeof(VkResolveModeFlagBits);
+ uint64_t cgen_var_1;
+ *count += 1 * 8;
+ *count += sizeof(VkImageLayout);
+ *count += sizeof(VkAttachmentLoadOp);
+ *count += sizeof(VkAttachmentStoreOp);
+ count_VkClearValue(featureBits, rootType, (VkClearValue*)(&toCount->clearValue), count);
+}
+
+void count_VkRenderingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkRenderingFlagsKHR);
+ count_VkRect2D(featureBits, rootType, (VkRect2D*)(&toCount->renderArea), count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->colorAttachmentCount; ++i)
+ {
+ count_VkRenderingAttachmentInfoKHR(featureBits, rootType, (const VkRenderingAttachmentInfoKHR*)(toCount->pColorAttachments + i), count);
+ }
+ }
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pDepthAttachment)
+ {
+ count_VkRenderingAttachmentInfoKHR(featureBits, rootType, (const VkRenderingAttachmentInfoKHR*)(toCount->pDepthAttachment), count);
+ }
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pStencilAttachment)
+ {
+ count_VkRenderingAttachmentInfoKHR(featureBits, rootType, (const VkRenderingAttachmentInfoKHR*)(toCount->pStencilAttachment), count);
+ }
+}
+
+void count_VkPipelineRenderingCreateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->colorAttachmentCount * sizeof(const VkFormat);
+ }
+ *count += sizeof(VkFormat);
+ *count += sizeof(VkFormat);
+}
+
+void count_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkCommandBufferInheritanceRenderingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkRenderingFlagsKHR);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->colorAttachmentCount * sizeof(const VkFormat);
+ }
+ *count += sizeof(VkFormat);
+ *count += sizeof(VkFormat);
+ *count += sizeof(VkSampleCountFlagBits);
+}
+
+void count_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkImageLayout);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->shadingRateAttachmentTexelSize), count);
+}
+
+void count_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkImageLayout);
+}
+
+void count_VkAttachmentSampleCountInfoAMD(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pColorAttachmentSamples)
+ {
+ if (toCount)
+ {
+ *count += toCount->colorAttachmentCount * sizeof(const VkSampleCountFlagBits);
+ }
+ }
+ *count += sizeof(VkSampleCountFlagBits);
+}
+
+void count_VkMultiviewPerViewAttributesInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -7178,7 +7816,12 @@
rootType = toCount->sType;
}
count_extension_struct(featureBits, rootType, toCount->pNext, count);
- count_VkAttachmentReference2(featureBits, rootType, (const VkAttachmentReference2*)(toCount->pFragmentShadingRateAttachment), count);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pFragmentShadingRateAttachment)
+ {
+ count_VkAttachmentReference2(featureBits, rootType, (const VkAttachmentReference2*)(toCount->pFragmentShadingRateAttachment), count);
+ }
count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->shadingRateAttachmentTexelSize), count);
}
@@ -7304,6 +7947,27 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+void count_VkPhysicalDevicePresentWaitFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -7460,6 +8124,75 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void count_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_pipeline_library
void count_VkPipelineLibraryCreateInfoKHR(
uint32_t featureBits,
@@ -7487,6 +8220,457 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void count_VkPresentIdKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPresentIdKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pPresentIds)
+ {
+ if (toCount)
+ {
+ *count += toCount->swapchainCount * sizeof(const uint64_t);
+ }
+ }
+}
+
+void count_VkPhysicalDevicePresentIdFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void count_VkVideoEncodeInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEncodeFlagsKHR);
+ *count += sizeof(uint32_t);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->codedExtent), count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkDeviceSize);
+ *count += sizeof(VkDeviceSize);
+ count_VkVideoPictureResourceKHR(featureBits, rootType, (VkVideoPictureResourceKHR*)(&toCount->srcPictureResource), count);
+ count_VkVideoReferenceSlotKHR(featureBits, rootType, (const VkVideoReferenceSlotKHR*)(toCount->pSetupReferenceSlot), count);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->referenceSlotCount; ++i)
+ {
+ count_VkVideoReferenceSlotKHR(featureBits, rootType, (const VkVideoReferenceSlotKHR*)(toCount->pReferenceSlots + i), count);
+ }
+ }
+}
+
+void count_VkVideoEncodeRateControlInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEncodeRateControlFlagsKHR);
+ *count += sizeof(VkVideoEncodeRateControlModeFlagBitsKHR);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint16_t);
+ *count += sizeof(uint16_t);
+ *count += sizeof(uint16_t);
+ *count += sizeof(uint32_t);
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void count_VkMemoryBarrier2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(VkAccessFlags2KHR);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(VkAccessFlags2KHR);
+}
+
+void count_VkBufferMemoryBarrier2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(VkAccessFlags2KHR);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(VkAccessFlags2KHR);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkDeviceSize);
+ *count += sizeof(VkDeviceSize);
+}
+
+void count_VkImageMemoryBarrier2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(VkAccessFlags2KHR);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(VkAccessFlags2KHR);
+ *count += sizeof(VkImageLayout);
+ *count += sizeof(VkImageLayout);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ count_VkImageSubresourceRange(featureBits, rootType, (VkImageSubresourceRange*)(&toCount->subresourceRange), count);
+}
+
+void count_VkDependencyInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkDependencyFlags);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->memoryBarrierCount; ++i)
+ {
+ count_VkMemoryBarrier2KHR(featureBits, rootType, (const VkMemoryBarrier2KHR*)(toCount->pMemoryBarriers + i), count);
+ }
+ }
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->bufferMemoryBarrierCount; ++i)
+ {
+ count_VkBufferMemoryBarrier2KHR(featureBits, rootType, (const VkBufferMemoryBarrier2KHR*)(toCount->pBufferMemoryBarriers + i), count);
+ }
+ }
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->imageMemoryBarrierCount; ++i)
+ {
+ count_VkImageMemoryBarrier2KHR(featureBits, rootType, (const VkImageMemoryBarrier2KHR*)(toCount->pImageMemoryBarriers + i), count);
+ }
+ }
+}
+
+void count_VkSemaphoreSubmitInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(uint64_t);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkCommandBufferSubmitInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(uint32_t);
+}
+
+void count_VkSubmitInfo2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkSubmitFlagsKHR);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->waitSemaphoreInfoCount; ++i)
+ {
+ count_VkSemaphoreSubmitInfoKHR(featureBits, rootType, (const VkSemaphoreSubmitInfoKHR*)(toCount->pWaitSemaphoreInfos + i), count);
+ }
+ }
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->commandBufferInfoCount; ++i)
+ {
+ count_VkCommandBufferSubmitInfoKHR(featureBits, rootType, (const VkCommandBufferSubmitInfoKHR*)(toCount->pCommandBufferInfos + i), count);
+ }
+ }
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->signalSemaphoreInfoCount; ++i)
+ {
+ count_VkSemaphoreSubmitInfoKHR(featureBits, rootType, (const VkSemaphoreSubmitInfoKHR*)(toCount->pSignalSemaphoreInfos + i), count);
+ }
+ }
+}
+
+void count_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkQueueFamilyCheckpointProperties2NV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+}
+
+void count_VkCheckpointData2NV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkPipelineStageFlags2KHR);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pCheckpointMarker)
+ {
+ *count += sizeof(uint8_t);
+ }
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void count_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void count_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void count_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_copy_commands2
void count_VkBufferCopy2KHR(
uint32_t featureBits,
@@ -7797,6 +8981,108 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+void count_VkFormatProperties3KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkFormatFeatureFlags2KHR);
+ *count += sizeof(VkFormatFeatureFlags2KHR);
+ *count += sizeof(VkFormatFeatureFlags2KHR);
+}
+
+#endif
+#ifdef VK_KHR_maintenance4
+void count_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkDeviceSize);
+}
+
+void count_VkDeviceBufferMemoryRequirementsKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkBufferCreateInfo(featureBits, rootType, (const VkBufferCreateInfo*)(toCount->pCreateInfo), count);
+}
+
+void count_VkDeviceImageMemoryRequirementsKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkImageCreateInfo(featureBits, rootType, (const VkImageCreateInfo*)(toCount->pCreateInfo), count);
+ *count += sizeof(VkImageAspectFlagBits);
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
void count_VkNativeBufferANDROID(
uint32_t featureBits,
@@ -8090,6 +9376,79 @@
}
#endif
+#ifdef VK_NVX_binary_import
+void count_VkCuModuleCreateInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ if (toCount)
+ {
+ *count += toCount->dataSize * sizeof(const uint8_t);
+ }
+}
+
+void count_VkCuFunctionCreateInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ *count += sizeof(uint32_t) + (toCount->pName ? strlen(toCount->pName) : 0);
+}
+
+void count_VkCuLaunchInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += 8;
+ *count += 8;
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
void count_VkImageViewHandleInfoNVX(
uint32_t featureBits,
@@ -8143,6 +9502,743 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void count_VkVideoEncodeH264CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEncodeH264CapabilityFlagsEXT);
+ *count += sizeof(VkVideoEncodeH264InputModeFlagsEXT);
+ *count += sizeof(VkVideoEncodeH264OutputModeFlagsEXT);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->minPictureSizeInMbs), count);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->maxPictureSizeInMbs), count);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->inputImageDataAlignment), count);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ count_VkExtensionProperties(featureBits, rootType, (VkExtensionProperties*)(&toCount->stdExtensionVersion), count);
+}
+
+void count_VkVideoEncodeH264SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEncodeH264CreateFlagsEXT);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->maxPictureSizeInMbs), count);
+ count_VkExtensionProperties(featureBits, rootType, (const VkExtensionProperties*)(toCount->pStdExtensionVersion), count);
+}
+
+void count_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pSpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet);
+ }
+ }
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pPpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet);
+ }
+ }
+}
+
+void count_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pParametersAddInfo)
+ {
+ count_VkVideoEncodeH264SessionParametersAddInfoEXT(featureBits, rootType, (const VkVideoEncodeH264SessionParametersAddInfoEXT*)(toCount->pParametersAddInfo), count);
+ }
+}
+
+void count_VkVideoEncodeH264DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(int8_t);
+ *count += sizeof(const StdVideoEncodeH264PictureInfo);
+}
+
+void count_VkVideoEncodeH264NaluSliceEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(const StdVideoEncodeH264SliceHeader);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint8_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->refFinalList0EntryCount; ++i)
+ {
+ count_VkVideoEncodeH264DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(toCount->pRefFinalList0Entries + i), count);
+ }
+ }
+ *count += sizeof(uint8_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->refFinalList1EntryCount; ++i)
+ {
+ count_VkVideoEncodeH264DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(toCount->pRefFinalList1Entries + i), count);
+ }
+ }
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+}
+
+void count_VkVideoEncodeH264VclFrameInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint8_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->refDefaultFinalList0EntryCount; ++i)
+ {
+ count_VkVideoEncodeH264DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(toCount->pRefDefaultFinalList0Entries + i), count);
+ }
+ }
+ *count += sizeof(uint8_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->refDefaultFinalList1EntryCount; ++i)
+ {
+ count_VkVideoEncodeH264DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(toCount->pRefDefaultFinalList1Entries + i), count);
+ }
+ }
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->naluSliceEntryCount; ++i)
+ {
+ count_VkVideoEncodeH264NaluSliceEXT(featureBits, rootType, (const VkVideoEncodeH264NaluSliceEXT*)(toCount->pNaluSliceEntries + i), count);
+ }
+ }
+ count_VkVideoEncodeH264DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(toCount->pCurrentPictureInfo), count);
+}
+
+void count_VkVideoEncodeH264EmitPictureParametersEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint8_t);
+ *count += sizeof(VkBool32);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->ppsIdEntryCount * sizeof(const uint8_t);
+ }
+}
+
+void count_VkVideoEncodeH264ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(StdVideoH264ProfileIdc);
+}
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void count_VkVideoEncodeH265CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEncodeH265CapabilityFlagsEXT);
+ *count += sizeof(VkVideoEncodeH265InputModeFlagsEXT);
+ *count += sizeof(VkVideoEncodeH265OutputModeFlagsEXT);
+ *count += sizeof(VkVideoEncodeH265CtbSizeFlagsEXT);
+ count_VkExtent2D(featureBits, rootType, (VkExtent2D*)(&toCount->inputImageDataAlignment), count);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ count_VkExtensionProperties(featureBits, rootType, (VkExtensionProperties*)(&toCount->stdExtensionVersion), count);
+}
+
+void count_VkVideoEncodeH265SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoEncodeH265CreateFlagsEXT);
+ count_VkExtensionProperties(featureBits, rootType, (const VkExtensionProperties*)(toCount->pStdExtensionVersion), count);
+}
+
+void count_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pVpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->vpsStdCount * sizeof(const StdVideoH265VideoParameterSet);
+ }
+ }
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pSpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet);
+ }
+ }
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pPpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet);
+ }
+ }
+}
+
+void count_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pParametersAddInfo)
+ {
+ count_VkVideoEncodeH265SessionParametersAddInfoEXT(featureBits, rootType, (const VkVideoEncodeH265SessionParametersAddInfoEXT*)(toCount->pParametersAddInfo), count);
+ }
+}
+
+void count_VkVideoEncodeH265DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(int8_t);
+ *count += sizeof(const StdVideoEncodeH265ReferenceInfo);
+}
+
+void count_VkVideoEncodeH265ReferenceListsEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint8_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->referenceList0EntryCount; ++i)
+ {
+ count_VkVideoEncodeH265DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH265DpbSlotInfoEXT*)(toCount->pReferenceList0Entries + i), count);
+ }
+ }
+ *count += sizeof(uint8_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->referenceList1EntryCount; ++i)
+ {
+ count_VkVideoEncodeH265DpbSlotInfoEXT(featureBits, rootType, (const VkVideoEncodeH265DpbSlotInfoEXT*)(toCount->pReferenceList1Entries + i), count);
+ }
+ }
+ *count += sizeof(const StdVideoEncodeH265ReferenceModifications);
+}
+
+void count_VkVideoEncodeH265NaluSliceEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pReferenceFinalLists)
+ {
+ count_VkVideoEncodeH265ReferenceListsEXT(featureBits, rootType, (const VkVideoEncodeH265ReferenceListsEXT*)(toCount->pReferenceFinalLists), count);
+ }
+ *count += sizeof(const StdVideoEncodeH265SliceHeader);
+}
+
+void count_VkVideoEncodeH265VclFrameInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pReferenceFinalLists)
+ {
+ count_VkVideoEncodeH265ReferenceListsEXT(featureBits, rootType, (const VkVideoEncodeH265ReferenceListsEXT*)(toCount->pReferenceFinalLists), count);
+ }
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->naluSliceEntryCount; ++i)
+ {
+ count_VkVideoEncodeH265NaluSliceEXT(featureBits, rootType, (const VkVideoEncodeH265NaluSliceEXT*)(toCount->pNaluSliceEntries + i), count);
+ }
+ }
+ *count += sizeof(const StdVideoEncodeH265PictureInfo);
+}
+
+void count_VkVideoEncodeH265EmitPictureParametersEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint8_t);
+ *count += sizeof(uint8_t);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->ppsIdEntryCount * sizeof(const uint8_t);
+ }
+}
+
+void count_VkVideoEncodeH265ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(StdVideoH265ProfileIdc);
+}
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void count_VkVideoDecodeH264ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(StdVideoH264ProfileIdc);
+ *count += sizeof(VkVideoDecodeH264PictureLayoutFlagsEXT);
+}
+
+void count_VkVideoDecodeH264CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ count_VkOffset2D(featureBits, rootType, (VkOffset2D*)(&toCount->fieldOffsetGranularity), count);
+ count_VkExtensionProperties(featureBits, rootType, (VkExtensionProperties*)(&toCount->stdExtensionVersion), count);
+}
+
+void count_VkVideoDecodeH264SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoDecodeH264CreateFlagsEXT);
+ count_VkExtensionProperties(featureBits, rootType, (const VkExtensionProperties*)(toCount->pStdExtensionVersion), count);
+}
+
+void count_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pSpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet);
+ }
+ }
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pPpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet);
+ }
+ }
+}
+
+void count_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pParametersAddInfo)
+ {
+ count_VkVideoDecodeH264SessionParametersAddInfoEXT(featureBits, rootType, (const VkVideoDecodeH264SessionParametersAddInfoEXT*)(toCount->pParametersAddInfo), count);
+ }
+}
+
+void count_VkVideoDecodeH264PictureInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(const StdVideoDecodeH264PictureInfo);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->slicesCount * sizeof(const uint32_t);
+ }
+}
+
+void count_VkVideoDecodeH264MvcEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(const StdVideoDecodeH264Mvc);
+}
+
+void count_VkVideoDecodeH264DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(const StdVideoDecodeH264ReferenceInfo);
+}
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void count_VkTextureLODGatherFormatPropertiesAMD(
uint32_t featureBits,
@@ -9446,6 +11542,32 @@
*count += sizeof(uint64_t);
}
+void count_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkFormat);
+ *count += sizeof(uint64_t);
+ *count += sizeof(VkFormatFeatureFlags2KHR);
+ count_VkComponentMapping(featureBits, rootType, (VkComponentMapping*)(&toCount->samplerYcbcrConversionComponents), count);
+ *count += sizeof(VkSamplerYcbcrModelConversion);
+ *count += sizeof(VkSamplerYcbcrRange);
+ *count += sizeof(VkChromaLocation);
+ *count += sizeof(VkChromaLocation);
+}
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
#endif
@@ -10025,6 +12147,52 @@
*count += sizeof(uint64_t);
}
+void count_VkDrmFormatModifierProperties2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(uint64_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkFormatFeatureFlags2KHR);
+}
+
+void count_VkDrmFormatModifierPropertiesList2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pDrmFormatModifierProperties)
+ {
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->drmFormatModifierCount; ++i)
+ {
+ count_VkDrmFormatModifierProperties2EXT(featureBits, rootType, (VkDrmFormatModifierProperties2EXT*)(toCount->pDrmFormatModifierProperties + i), count);
+ }
+ }
+ }
+}
+
#endif
#ifdef VK_EXT_validation_cache
void count_VkValidationCacheCreateInfoEXT(
@@ -10836,6 +13004,174 @@
}
#endif
+#ifdef VK_EXT_video_decode_h265
+void count_VkVideoDecodeH265ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(StdVideoH265ProfileIdc);
+}
+
+void count_VkVideoDecodeH265CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ count_VkExtensionProperties(featureBits, rootType, (VkExtensionProperties*)(&toCount->stdExtensionVersion), count);
+}
+
+void count_VkVideoDecodeH265SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkVideoDecodeH265CreateFlagsEXT);
+ count_VkExtensionProperties(featureBits, rootType, (const VkExtensionProperties*)(toCount->pStdExtensionVersion), count);
+}
+
+void count_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pSpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet);
+ }
+ }
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pPpsStd)
+ {
+ if (toCount)
+ {
+ *count += toCount->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet);
+ }
+ }
+}
+
+void count_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pParametersAddInfo)
+ {
+ count_VkVideoDecodeH265SessionParametersAddInfoEXT(featureBits, rootType, (const VkVideoDecodeH265SessionParametersAddInfoEXT*)(toCount->pParametersAddInfo), count);
+ }
+}
+
+void count_VkVideoDecodeH265PictureInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(StdVideoDecodeH265PictureInfo);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->slicesCount * sizeof(const uint32_t);
+ }
+}
+
+void count_VkVideoDecodeH265DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(const StdVideoDecodeH265ReferenceInfo);
+}
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void count_VkDeviceMemoryOverallocationCreateInfoAMD(
uint32_t featureBits,
@@ -12070,6 +14406,67 @@
}
#endif
+#ifdef VK_EXT_provoking_vertex
+void count_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkProvokingVertexModeEXT);
+}
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void count_VkSurfaceFullScreenExclusiveInfoEXT(
uint32_t featureBits,
@@ -12293,6 +14690,38 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void count_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void count_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
uint32_t featureBits,
@@ -12639,6 +15068,53 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void count_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkCommandBufferInheritanceViewportScissorInfoNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->pViewportDepths)
+ {
+ count_VkViewport(featureBits, rootType, (const VkViewport*)(toCount->pViewportDepths), count);
+ }
+}
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void count_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
uint32_t featureBits,
@@ -12790,6 +15266,8 @@
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void count_VkPhysicalDeviceRobustness2FeaturesEXT(
uint32_t featureBits,
@@ -13081,6 +15559,195 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void count_VkDeviceOrHostAddressConstKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkDeviceAddress);
+}
+
+void count_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkDeviceOrHostAddressConstKHR(featureBits, rootType, (VkDeviceOrHostAddressConstKHR*)(&toCount->vertexData), count);
+}
+
+void count_VkAccelerationStructureMotionInfoNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkAccelerationStructureMotionInfoFlagsNV);
+}
+
+void count_VkAccelerationStructureMatrixMotionInstanceNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ count_VkTransformMatrixKHR(featureBits, rootType, (VkTransformMatrixKHR*)(&toCount->transformT0), count);
+ count_VkTransformMatrixKHR(featureBits, rootType, (VkTransformMatrixKHR*)(&toCount->transformT1), count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkGeometryInstanceFlagsKHR);
+ *count += sizeof(uint64_t);
+}
+
+void count_VkSRTDataNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSRTDataNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+ *count += sizeof(float);
+}
+
+void count_VkAccelerationStructureSRTMotionInstanceNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ count_VkSRTDataNV(featureBits, rootType, (VkSRTDataNV*)(&toCount->transformT0), count);
+ count_VkSRTDataNV(featureBits, rootType, (VkSRTDataNV*)(&toCount->transformT1), count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkGeometryInstanceFlagsKHR);
+ *count += sizeof(uint64_t);
+}
+
+void count_VkAccelerationStructureMotionInstanceDataNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ count_VkAccelerationStructureInstanceKHR(featureBits, rootType, (VkAccelerationStructureInstanceKHR*)(&toCount->staticInstance), count);
+}
+
+void count_VkAccelerationStructureMotionInstanceNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkAccelerationStructureMotionInstanceTypeNV);
+ *count += sizeof(VkAccelerationStructureMotionInstanceFlagsNV);
+ count_VkAccelerationStructureMotionInstanceDataNV(featureBits, rootType, (VkAccelerationStructureMotionInstanceDataNV*)(&toCount->data), count);
+}
+
+void count_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void count_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void count_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
uint32_t featureBits,
@@ -13188,6 +15855,29 @@
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void count_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void count_VkDirectFBSurfaceCreateInfoEXT(
uint32_t featureBits,
@@ -13221,6 +15911,740 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void count_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkMutableDescriptorTypeListVALVE(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->descriptorTypeCount * sizeof(const VkDescriptorType);
+ }
+}
+
+void count_VkMutableDescriptorTypeCreateInfoVALVE(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->mutableDescriptorTypeListCount; ++i)
+ {
+ count_VkMutableDescriptorTypeListVALVE(featureBits, rootType, (const VkMutableDescriptorTypeListVALVE*)(toCount->pMutableDescriptorTypeLists + i), count);
+ }
+ }
+}
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void count_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkVertexInputBindingDescription2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkVertexInputRate);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkVertexInputAttributeDescription2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(VkFormat);
+ *count += sizeof(uint32_t);
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void count_VkPhysicalDeviceDrmPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(int64_t);
+ *count += sizeof(int64_t);
+ *count += sizeof(int64_t);
+ *count += sizeof(int64_t);
+}
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void count_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void count_VkImportMemoryZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkExternalMemoryHandleTypeFlagBits);
+ *count += sizeof(zx_handle_t);
+}
+
+void count_VkMemoryZirconHandlePropertiesFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkMemoryGetZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkExternalMemoryHandleTypeFlagBits);
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void count_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkSemaphoreImportFlags);
+ *count += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
+ *count += sizeof(zx_handle_t);
+}
+
+void count_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void count_VkBufferCollectionCreateInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(zx_handle_t);
+}
+
+void count_VkImportMemoryBufferCollectionFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ *count += sizeof(uint32_t);
+}
+
+void count_VkBufferCollectionImageCreateInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ *count += sizeof(uint32_t);
+}
+
+void count_VkBufferCollectionConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkBufferConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkBufferCreateInfo(featureBits, rootType, (VkBufferCreateInfo*)(&toCount->createInfo), count);
+ *count += sizeof(VkFormatFeatureFlags);
+ count_VkBufferCollectionConstraintsInfoFUCHSIA(featureBits, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toCount->bufferCollectionConstraints), count);
+}
+
+void count_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += 8;
+ *count += sizeof(uint32_t);
+}
+
+void count_VkSysmemColorSpaceFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkBufferCollectionPropertiesFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint64_t);
+ *count += sizeof(VkFormatFeatureFlags);
+ count_VkSysmemColorSpaceFUCHSIA(featureBits, rootType, (VkSysmemColorSpaceFUCHSIA*)(&toCount->sysmemColorSpaceIndex), count);
+ count_VkComponentMapping(featureBits, rootType, (VkComponentMapping*)(&toCount->samplerYcbcrConversionComponents), count);
+ *count += sizeof(VkSamplerYcbcrModelConversion);
+ *count += sizeof(VkSamplerYcbcrRange);
+ *count += sizeof(VkChromaLocation);
+ *count += sizeof(VkChromaLocation);
+}
+
+void count_VkImageFormatConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkImageCreateInfo(featureBits, rootType, (VkImageCreateInfo*)(&toCount->imageCreateInfo), count);
+ *count += sizeof(VkFormatFeatureFlags);
+ *count += sizeof(VkImageFormatConstraintsFlagsFUCHSIA);
+ *count += sizeof(uint64_t);
+ *count += sizeof(uint32_t);
+ count_VkSysmemColorSpaceFUCHSIA(featureBits, rootType, (const VkSysmemColorSpaceFUCHSIA*)(toCount->pColorSpaces), count);
+}
+
+void count_VkImageConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toCount->formatConstraintsCount; ++i)
+ {
+ count_VkImageFormatConstraintsInfoFUCHSIA(featureBits, rootType, (const VkImageFormatConstraintsInfoFUCHSIA*)(toCount->pFormatConstraints + i), count);
+ }
+ }
+ count_VkBufferCollectionConstraintsInfoFUCHSIA(featureBits, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toCount->bufferCollectionConstraints), count);
+ *count += sizeof(VkImageConstraintsInfoFlagsFUCHSIA);
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void count_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(uint32_t);
+}
+
+void count_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void count_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void count_VkMemoryGetRemoteAddressInfoNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ uint64_t cgen_var_0;
+ *count += 1 * 8;
+ *count += sizeof(VkExternalMemoryHandleTypeFlagBits);
+}
+
+void count_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void count_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+void count_VkScreenSurfaceCreateInfoQNX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkScreenSurfaceCreateFlagsQNX);
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->context)
+ {
+ *count += sizeof(_screen_context);
+ }
+ // WARNING PTR CHECK
+ *count += 8;
+ if (toCount->window)
+ {
+ *count += sizeof(_screen_window);
+ }
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void count_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPipelineColorWriteCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ if (toCount)
+ {
+ *count += toCount->attachmentCount * sizeof(const VkBool32);
+ }
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void count_VkImportColorBufferGOOGLE(
uint32_t featureBits,
@@ -13284,24 +16708,186 @@
}
#endif
-#ifdef VK_KHR_acceleration_structure
-void count_VkDeviceOrHostAddressKHR(
+#ifdef VK_EXT_global_priority_query
+void count_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
uint32_t featureBits,
VkStructureType rootType,
- const VkDeviceOrHostAddressKHR* toCount,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toCount,
size_t* count)
{
(void)featureBits;
(void)rootType;
(void)toCount;
(void)count;
- *count += sizeof(VkDeviceAddress);
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
}
-void count_VkDeviceOrHostAddressConstKHR(
+void count_VkQueueFamilyGlobalPriorityPropertiesEXT(
uint32_t featureBits,
VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* toCount,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+ *count += VK_MAX_GLOBAL_PRIORITY_SIZE_EXT * sizeof(VkQueueGlobalPriorityEXT);
+}
+
+#endif
+#ifdef VK_EXT_multi_draw
+void count_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkMultiDrawInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+}
+
+void count_VkMultiDrawIndexedInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(uint32_t);
+ *count += sizeof(uint32_t);
+ *count += sizeof(int32_t);
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void count_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+ *count += sizeof(VkBool32);
+}
+
+void count_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ count_VkComponentMapping(featureBits, rootType, (VkComponentMapping*)(&toCount->components), count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void count_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toCount,
+ size_t* count)
+{
+ (void)featureBits;
+ (void)rootType;
+ (void)toCount;
+ (void)count;
+ *count += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = toCount->sType;
+ }
+ count_extension_struct(featureBits, rootType, toCount->pNext, count);
+ *count += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_acceleration_structure
+void count_VkDeviceOrHostAddressKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressKHR* toCount,
size_t* count)
{
(void)featureBits;
@@ -14358,6 +17944,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ count_VkVideoQueueFamilyProperties2KHR(featureBits, rootType, reinterpret_cast<const VkVideoQueueFamilyProperties2KHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ count_VkVideoProfileKHR(featureBits, rootType, reinterpret_cast<const VkVideoProfileKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ count_VkVideoProfilesKHR(featureBits, rootType, reinterpret_cast<const VkVideoProfilesKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ count_VkPipelineRenderingCreateInfoKHR(featureBits, rootType, reinterpret_cast<const VkPipelineRenderingCreateInfoKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceDynamicRenderingFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ count_VkCommandBufferInheritanceRenderingInfoKHR(featureBits, rootType, reinterpret_cast<const VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ count_VkRenderingFragmentShadingRateAttachmentInfoKHR(featureBits, rootType, reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ count_VkRenderingFragmentDensityMapAttachmentInfoEXT(featureBits, rootType, reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ count_VkAttachmentSampleCountInfoAMD(featureBits, rootType, reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ count_VkMultiviewPerViewAttributesInfoNVX(featureBits, rootType, reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -14501,6 +18141,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ count_VkPhysicalDevicePresentWaitFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -14508,6 +18155,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ count_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ count_VkPresentIdKHR(featureBits, rootType, reinterpret_cast<const VkPresentIdKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ count_VkPhysicalDevicePresentIdFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ count_VkVideoEncodeRateControlInfoKHR(featureBits, rootType, reinterpret_cast<const VkVideoEncodeRateControlInfoKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ count_VkMemoryBarrier2KHR(featureBits, rootType, reinterpret_cast<const VkMemoryBarrier2KHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceSynchronization2FeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ count_VkQueueFamilyCheckpointProperties2NV(featureBits, rootType, reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ count_VkFormatProperties3KHR(featureBits, rootType, reinterpret_cast<const VkFormatProperties3KHR*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ count_VkPhysicalDeviceMaintenance4FeaturesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ count_VkPhysicalDeviceMaintenance4PropertiesKHR(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -14563,6 +18298,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ count_VkVideoEncodeH264CapabilitiesEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ count_VkVideoEncodeH264SessionCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ count_VkVideoEncodeH264SessionParametersAddInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ count_VkVideoEncodeH264SessionParametersCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ count_VkVideoEncodeH264VclFrameInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ count_VkVideoEncodeH264EmitPictureParametersEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ count_VkVideoEncodeH264ProfileEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH264ProfileEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ count_VkVideoEncodeH265CapabilitiesEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ count_VkVideoEncodeH265SessionCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ count_VkVideoEncodeH265SessionParametersAddInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ count_VkVideoEncodeH265SessionParametersCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ count_VkVideoEncodeH265VclFrameInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ count_VkVideoEncodeH265EmitPictureParametersEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ count_VkVideoEncodeH265ProfileEXT(featureBits, rootType, reinterpret_cast<const VkVideoEncodeH265ProfileEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ count_VkVideoDecodeH264ProfileEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264ProfileEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ count_VkVideoDecodeH264CapabilitiesEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264CapabilitiesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ count_VkVideoDecodeH264SessionCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ count_VkVideoDecodeH264SessionParametersAddInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ count_VkVideoDecodeH264SessionParametersCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ count_VkVideoDecodeH264PictureInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264PictureInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ count_VkVideoDecodeH264MvcEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264MvcEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ count_VkVideoDecodeH264DpbSlotInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -14745,6 +18596,11 @@
count_VkExternalFormatANDROID(featureBits, rootType, reinterpret_cast<const VkExternalFormatANDROID*>(structExtension), count);
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ count_VkAndroidHardwareBufferFormatProperties2ANDROID(featureBits, rootType, reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension), count);
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -14854,6 +18710,11 @@
count_VkImageDrmFormatModifierExplicitCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension), count);
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ count_VkDrmFormatModifierPropertiesList2EXT(featureBits, rootType, reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension), count);
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -14953,6 +18814,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ count_VkVideoDecodeH265ProfileEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265ProfileEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ count_VkVideoDecodeH265CapabilitiesEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265CapabilitiesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ count_VkVideoDecodeH265SessionCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ count_VkVideoDecodeH265SessionParametersAddInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ count_VkVideoDecodeH265SessionParametersCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ count_VkVideoDecodeH265PictureInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265PictureInfoEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ count_VkVideoDecodeH265DpbSlotInfoEXT(featureBits, rootType, reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -15275,6 +19173,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceProvokingVertexFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ count_VkPhysicalDeviceProvokingVertexPropertiesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ count_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -15330,6 +19245,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -15354,6 +19276,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ count_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ count_VkCommandBufferInheritanceViewportScissorInfoNV(featureBits, rootType, reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -15467,6 +19401,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ count_VkAccelerationStructureGeometryMotionTrianglesDataNV(featureBits, rootType, reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ count_VkAccelerationStructureMotionInfoNV(featureBits, rootType, reinterpret_cast<const VkAccelerationStructureMotionInfoNV*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ count_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -15500,6 +19458,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ count_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ count_VkMutableDescriptorTypeCreateInfoVALVE(featureBits, rootType, reinterpret_cast<const VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ count_VkPhysicalDeviceDrmPropertiesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ count_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ count_VkImportMemoryZirconHandleInfoFUCHSIA(featureBits, rootType, reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ count_VkImportMemoryBufferCollectionFUCHSIA(featureBits, rootType, reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ count_VkBufferCollectionImageCreateInfoFUCHSIA(featureBits, rootType, reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ count_VkBufferCollectionBufferCreateInfoFUCHSIA(featureBits, rootType, reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ count_VkSubpassShadingPipelineCreateInfoHUAWEI(featureBits, rootType, reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ count_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ count_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ count_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ count_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceColorWriteEnableFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ count_VkPipelineColorWriteCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -15517,6 +19589,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ count_VkQueueFamilyGlobalPriorityPropertiesEXT(featureBits, rootType, reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceMultiDrawFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ count_VkPhysicalDeviceMultiDrawPropertiesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ count_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension), count);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ count_VkSamplerBorderColorComponentMappingCreateInfoEXT(featureBits, rootType, reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension), count);
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ count_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(featureBits, rootType, reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension), count);
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
diff --git a/system/vulkan_enc/goldfish_vk_counting_guest.h b/system/vulkan_enc/goldfish_vk_counting_guest.h
index c2a4383..55ea7e6 100644
--- a/system/vulkan_enc/goldfish_vk_counting_guest.h
+++ b/system/vulkan_enc/goldfish_vk_counting_guest.h
@@ -118,6 +118,12 @@
const VkMemoryBarrier* toCount,
size_t* count);
+void count_VkPipelineCacheHeaderVersionOne(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* toCount,
+ size_t* count);
+
void count_VkAllocationCallbacks(
uint32_t featureBits,
VkStructureType rootType,
@@ -1569,6 +1575,170 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void count_VkVideoQueueFamilyProperties2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* toCount,
+ size_t* count);
+
+void count_VkVideoProfileKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* toCount,
+ size_t* count);
+
+void count_VkVideoProfilesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* toCount,
+ size_t* count);
+
+void count_VkVideoCapabilitiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceVideoFormatInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoFormatPropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* toCount,
+ size_t* count);
+
+void count_VkVideoPictureResourceKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* toCount,
+ size_t* count);
+
+void count_VkVideoReferenceSlotKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* toCount,
+ size_t* count);
+
+void count_VkVideoGetMemoryPropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* toCount,
+ size_t* count);
+
+void count_VkVideoBindMemoryKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* toCount,
+ size_t* count);
+
+void count_VkVideoSessionCreateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoSessionParametersCreateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoSessionParametersUpdateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoBeginCodingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoEndCodingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoCodingControlInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void count_VkVideoDecodeInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void count_VkRenderingAttachmentInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* toCount,
+ size_t* count);
+
+void count_VkRenderingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* toCount,
+ size_t* count);
+
+void count_VkPipelineRenderingCreateInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* toCount,
+ size_t* count);
+
+void count_VkCommandBufferInheritanceRenderingInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* toCount,
+ size_t* count);
+
+void count_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* toCount,
+ size_t* count);
+
+void count_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* toCount,
+ size_t* count);
+
+void count_VkAttachmentSampleCountInfoAMD(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* toCount,
+ size_t* count);
+
+DEFINE_ALIAS_FUNCTION(count_VkAttachmentSampleCountInfoAMD, count_VkAttachmentSampleCountInfoNV)
+
+void count_VkMultiviewPerViewAttributesInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(count_VkRenderPassMultiviewCreateInfo, count_VkRenderPassMultiviewCreateInfoKHR)
@@ -2173,6 +2343,14 @@
DEFINE_ALIAS_FUNCTION(count_VkAttachmentDescriptionStencilLayout, count_VkAttachmentDescriptionStencilLayoutKHR)
#endif
+#ifdef VK_KHR_present_wait
+void count_VkPhysicalDevicePresentWaitFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(count_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, count_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR)
@@ -2235,6 +2413,20 @@
size_t* count);
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void count_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_KHR_pipeline_library
void count_VkPipelineLibraryCreateInfoKHR(
uint32_t featureBits,
@@ -2245,6 +2437,120 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void count_VkPresentIdKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPresentIdKHR* toCount,
+ size_t* count);
+
+void count_VkPhysicalDevicePresentIdFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void count_VkVideoEncodeInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeRateControlInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_synchronization2
+void count_VkMemoryBarrier2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* toCount,
+ size_t* count);
+
+void count_VkBufferMemoryBarrier2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* toCount,
+ size_t* count);
+
+void count_VkImageMemoryBarrier2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* toCount,
+ size_t* count);
+
+void count_VkDependencyInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* toCount,
+ size_t* count);
+
+void count_VkSemaphoreSubmitInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* toCount,
+ size_t* count);
+
+void count_VkCommandBufferSubmitInfoKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* toCount,
+ size_t* count);
+
+void count_VkSubmitInfo2KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* toCount,
+ size_t* count);
+
+void count_VkQueueFamilyCheckpointProperties2NV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* toCount,
+ size_t* count);
+
+void count_VkCheckpointData2NV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void count_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void count_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void count_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_KHR_copy_commands2
void count_VkBufferCopy2KHR(
uint32_t featureBits,
@@ -2313,6 +2619,40 @@
size_t* count);
#endif
+#ifdef VK_KHR_format_feature_flags2
+void count_VkFormatProperties3KHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_KHR_maintenance4
+void count_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* toCount,
+ size_t* count);
+
+void count_VkDeviceBufferMemoryRequirementsKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* toCount,
+ size_t* count);
+
+void count_VkDeviceImageMemoryRequirementsKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_ANDROID_native_buffer
void count_VkNativeBufferANDROID(
uint32_t featureBits,
@@ -2409,6 +2749,26 @@
size_t* count);
#endif
+#ifdef VK_NVX_binary_import
+void count_VkCuModuleCreateInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* toCount,
+ size_t* count);
+
+void count_VkCuFunctionCreateInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* toCount,
+ size_t* count);
+
+void count_VkCuLaunchInfoNVX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_NVX_image_view_handle
void count_VkImageViewHandleInfoNVX(
uint32_t featureBits,
@@ -2431,6 +2791,174 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void count_VkVideoEncodeH264CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264NaluSliceEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264VclFrameInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264EmitPictureParametersEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH264ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void count_VkVideoEncodeH265CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265ReferenceListsEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265NaluSliceEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265VclFrameInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265EmitPictureParametersEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* toCount,
+ size_t* count);
+
+void count_VkVideoEncodeH265ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void count_VkVideoDecodeH264ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264PictureInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264MvcEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH264DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void count_VkTextureLODGatherFormatPropertiesAMD(
uint32_t featureBits,
@@ -2834,6 +3362,12 @@
const VkExternalFormatANDROID* toCount,
size_t* count);
+void count_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* toCount,
+ size_t* count);
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(count_VkSamplerReductionModeCreateInfo, count_VkSamplerReductionModeCreateInfoEXT)
@@ -3016,6 +3550,18 @@
const VkImageDrmFormatModifierPropertiesEXT* toCount,
size_t* count);
+void count_VkDrmFormatModifierProperties2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* toCount,
+ size_t* count);
+
+void count_VkDrmFormatModifierPropertiesList2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* toCount,
+ size_t* count);
+
#endif
#ifdef VK_EXT_validation_cache
void count_VkValidationCacheCreateInfoEXT(
@@ -3271,6 +3817,50 @@
size_t* count);
#endif
+#ifdef VK_EXT_video_decode_h265
+void count_VkVideoDecodeH265ProfileEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH265CapabilitiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH265SessionCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH265PictureInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* toCount,
+ size_t* count);
+
+void count_VkVideoDecodeH265DpbSlotInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void count_VkDeviceMemoryOverallocationCreateInfoAMD(
uint32_t featureBits,
@@ -3695,6 +4285,26 @@
size_t* count);
#endif
+#ifdef VK_EXT_provoking_vertex
+void count_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* toCount,
+ size_t* count);
+
+void count_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void count_VkSurfaceFullScreenExclusiveInfoEXT(
uint32_t featureBits,
@@ -3771,6 +4381,14 @@
size_t* count);
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void count_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void count_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
uint32_t featureBits,
@@ -3859,6 +4477,20 @@
size_t* count);
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void count_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toCount,
+ size_t* count);
+
+void count_VkCommandBufferInheritanceViewportScissorInfoNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void count_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
uint32_t featureBits,
@@ -3907,6 +4539,8 @@
size_t* count);
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void count_VkPhysicalDeviceRobustness2FeaturesEXT(
uint32_t featureBits,
@@ -4007,6 +4641,70 @@
size_t* count);
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void count_VkDeviceOrHostAddressConstKHR(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* toCount,
+ size_t* count);
+
+void count_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* toCount,
+ size_t* count);
+
+void count_VkAccelerationStructureMotionInfoNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* toCount,
+ size_t* count);
+
+void count_VkAccelerationStructureMatrixMotionInstanceNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* toCount,
+ size_t* count);
+
+void count_VkSRTDataNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSRTDataNV* toCount,
+ size_t* count);
+
+void count_VkAccelerationStructureSRTMotionInstanceNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* toCount,
+ size_t* count);
+
+void count_VkAccelerationStructureMotionInstanceDataNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* toCount,
+ size_t* count);
+
+void count_VkAccelerationStructureMotionInstanceNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void count_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void count_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
uint32_t featureBits,
@@ -4045,6 +4743,16 @@
size_t* count);
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void count_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void count_VkDirectFBSurfaceCreateInfoEXT(
uint32_t featureBits,
@@ -4053,6 +4761,230 @@
size_t* count);
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void count_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toCount,
+ size_t* count);
+
+void count_VkMutableDescriptorTypeListVALVE(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* toCount,
+ size_t* count);
+
+void count_VkMutableDescriptorTypeCreateInfoVALVE(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void count_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toCount,
+ size_t* count);
+
+void count_VkVertexInputBindingDescription2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* toCount,
+ size_t* count);
+
+void count_VkVertexInputAttributeDescription2EXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void count_VkPhysicalDeviceDrmPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void count_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void count_VkImportMemoryZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkMemoryZirconHandlePropertiesFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkMemoryGetZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void count_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void count_VkBufferCollectionCreateInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkImportMemoryBufferCollectionFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkBufferCollectionImageCreateInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkBufferCollectionConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkBufferConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkSysmemColorSpaceFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkBufferCollectionPropertiesFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkImageFormatConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* toCount,
+ size_t* count);
+
+void count_VkImageConstraintsInfoFUCHSIA(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void count_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void count_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void count_VkMemoryGetRemoteAddressInfoNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void count_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_QNX_screen_surface
+void count_VkScreenSurfaceCreateInfoQNX(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void count_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* toCount,
+ size_t* count);
+
+void count_VkPipelineColorWriteCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void count_VkImportColorBufferGOOGLE(
uint32_t featureBits,
@@ -4073,6 +5005,70 @@
size_t* count);
#endif
+#ifdef VK_EXT_global_priority_query
+void count_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toCount,
+ size_t* count);
+
+void count_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_multi_draw
+void count_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* toCount,
+ size_t* count);
+
+void count_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* toCount,
+ size_t* count);
+
+void count_VkMultiDrawInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* toCount,
+ size_t* count);
+
+void count_VkMultiDrawIndexedInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void count_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toCount,
+ size_t* count);
+
+void count_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* toCount,
+ size_t* count);
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void count_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ uint32_t featureBits,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toCount,
+ size_t* count);
+
+#endif
#ifdef VK_KHR_acceleration_structure
void count_VkDeviceOrHostAddressKHR(
uint32_t featureBits,
@@ -4080,12 +5076,6 @@
const VkDeviceOrHostAddressKHR* toCount,
size_t* count);
-void count_VkDeviceOrHostAddressConstKHR(
- uint32_t featureBits,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* toCount,
- size_t* count);
-
void count_VkAccelerationStructureBuildRangeInfoKHR(
uint32_t featureBits,
VkStructureType rootType,
diff --git a/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp b/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp
index f53163f..1d42aad 100644
--- a/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_deepcopy_guest.cpp
@@ -282,6 +282,18 @@
}
}
+void deepcopy_VkPipelineCacheHeaderVersionOne(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* from,
+ VkPipelineCacheHeaderVersionOne* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ memcpy(to->pipelineCacheUUID, from->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t));
+}
+
void deepcopy_VkAllocationCallbacks(
Allocator* alloc,
VkStructureType rootType,
@@ -6878,6 +6890,854 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void deepcopy_VkVideoQueueFamilyProperties2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* from,
+ VkVideoQueueFamilyProperties2KHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoProfileKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* from,
+ VkVideoProfileKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoProfilesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* from,
+ VkVideoProfilesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pProfiles = nullptr;
+ if (from->pProfiles)
+ {
+ to->pProfiles = (VkVideoProfileKHR*)alloc->alloc(sizeof(const VkVideoProfileKHR));
+ deepcopy_VkVideoProfileKHR(alloc, rootType, from->pProfiles, (VkVideoProfileKHR*)(to->pProfiles));
+ }
+}
+
+void deepcopy_VkVideoCapabilitiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* from,
+ VkVideoCapabilitiesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->videoPictureExtentGranularity, (VkExtent2D*)(&to->videoPictureExtentGranularity));
+ deepcopy_VkExtent2D(alloc, rootType, &from->minExtent, (VkExtent2D*)(&to->minExtent));
+ deepcopy_VkExtent2D(alloc, rootType, &from->maxExtent, (VkExtent2D*)(&to->maxExtent));
+}
+
+void deepcopy_VkPhysicalDeviceVideoFormatInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* from,
+ VkPhysicalDeviceVideoFormatInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pVideoProfiles = nullptr;
+ if (from->pVideoProfiles)
+ {
+ to->pVideoProfiles = (VkVideoProfilesKHR*)alloc->alloc(sizeof(const VkVideoProfilesKHR));
+ deepcopy_VkVideoProfilesKHR(alloc, rootType, from->pVideoProfiles, (VkVideoProfilesKHR*)(to->pVideoProfiles));
+ }
+}
+
+void deepcopy_VkVideoFormatPropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* from,
+ VkVideoFormatPropertiesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoPictureResourceKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* from,
+ VkVideoPictureResourceKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkOffset2D(alloc, rootType, &from->codedOffset, (VkOffset2D*)(&to->codedOffset));
+ deepcopy_VkExtent2D(alloc, rootType, &from->codedExtent, (VkExtent2D*)(&to->codedExtent));
+}
+
+void deepcopy_VkVideoReferenceSlotKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* from,
+ VkVideoReferenceSlotKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pPictureResource = nullptr;
+ if (from->pPictureResource)
+ {
+ to->pPictureResource = (VkVideoPictureResourceKHR*)alloc->alloc(sizeof(const VkVideoPictureResourceKHR));
+ deepcopy_VkVideoPictureResourceKHR(alloc, rootType, from->pPictureResource, (VkVideoPictureResourceKHR*)(to->pPictureResource));
+ }
+}
+
+void deepcopy_VkVideoGetMemoryPropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* from,
+ VkVideoGetMemoryPropertiesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pMemoryRequirements = nullptr;
+ if (from->pMemoryRequirements)
+ {
+ to->pMemoryRequirements = (VkMemoryRequirements2*)alloc->alloc(sizeof(VkMemoryRequirements2));
+ deepcopy_VkMemoryRequirements2(alloc, rootType, from->pMemoryRequirements, (VkMemoryRequirements2*)(to->pMemoryRequirements));
+ }
+}
+
+void deepcopy_VkVideoBindMemoryKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* from,
+ VkVideoBindMemoryKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoSessionCreateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* from,
+ VkVideoSessionCreateInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pVideoProfile = nullptr;
+ if (from->pVideoProfile)
+ {
+ to->pVideoProfile = (VkVideoProfileKHR*)alloc->alloc(sizeof(const VkVideoProfileKHR));
+ deepcopy_VkVideoProfileKHR(alloc, rootType, from->pVideoProfile, (VkVideoProfileKHR*)(to->pVideoProfile));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->maxCodedExtent, (VkExtent2D*)(&to->maxCodedExtent));
+}
+
+void deepcopy_VkVideoSessionParametersCreateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* from,
+ VkVideoSessionParametersCreateInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoSessionParametersUpdateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* from,
+ VkVideoSessionParametersUpdateInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoBeginCodingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* from,
+ VkVideoBeginCodingInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pReferenceSlots = nullptr;
+ if (from->pReferenceSlots)
+ {
+ to->pReferenceSlots = (VkVideoReferenceSlotKHR*)alloc->alloc(from->referenceSlotCount * sizeof(const VkVideoReferenceSlotKHR));
+ to->referenceSlotCount = from->referenceSlotCount;
+ for (uint32_t i = 0; i < (uint32_t)from->referenceSlotCount; ++i)
+ {
+ deepcopy_VkVideoReferenceSlotKHR(alloc, rootType, from->pReferenceSlots + i, (VkVideoReferenceSlotKHR*)(to->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void deepcopy_VkVideoEndCodingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* from,
+ VkVideoEndCodingInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoCodingControlInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* from,
+ VkVideoCodingControlInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void deepcopy_VkVideoDecodeInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* from,
+ VkVideoDecodeInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkOffset2D(alloc, rootType, &from->codedOffset, (VkOffset2D*)(&to->codedOffset));
+ deepcopy_VkExtent2D(alloc, rootType, &from->codedExtent, (VkExtent2D*)(&to->codedExtent));
+ deepcopy_VkVideoPictureResourceKHR(alloc, rootType, &from->dstPictureResource, (VkVideoPictureResourceKHR*)(&to->dstPictureResource));
+ to->pSetupReferenceSlot = nullptr;
+ if (from->pSetupReferenceSlot)
+ {
+ to->pSetupReferenceSlot = (VkVideoReferenceSlotKHR*)alloc->alloc(sizeof(const VkVideoReferenceSlotKHR));
+ deepcopy_VkVideoReferenceSlotKHR(alloc, rootType, from->pSetupReferenceSlot, (VkVideoReferenceSlotKHR*)(to->pSetupReferenceSlot));
+ }
+ if (from)
+ {
+ to->pReferenceSlots = nullptr;
+ if (from->pReferenceSlots)
+ {
+ to->pReferenceSlots = (VkVideoReferenceSlotKHR*)alloc->alloc(from->referenceSlotCount * sizeof(const VkVideoReferenceSlotKHR));
+ to->referenceSlotCount = from->referenceSlotCount;
+ for (uint32_t i = 0; i < (uint32_t)from->referenceSlotCount; ++i)
+ {
+ deepcopy_VkVideoReferenceSlotKHR(alloc, rootType, from->pReferenceSlots + i, (VkVideoReferenceSlotKHR*)(to->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void deepcopy_VkRenderingAttachmentInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* from,
+ VkRenderingAttachmentInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkClearValue(alloc, rootType, &from->clearValue, (VkClearValue*)(&to->clearValue));
+}
+
+void deepcopy_VkRenderingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* from,
+ VkRenderingInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkRect2D(alloc, rootType, &from->renderArea, (VkRect2D*)(&to->renderArea));
+ if (from)
+ {
+ to->pColorAttachments = nullptr;
+ if (from->pColorAttachments)
+ {
+ to->pColorAttachments = (VkRenderingAttachmentInfoKHR*)alloc->alloc(from->colorAttachmentCount * sizeof(const VkRenderingAttachmentInfoKHR));
+ to->colorAttachmentCount = from->colorAttachmentCount;
+ for (uint32_t i = 0; i < (uint32_t)from->colorAttachmentCount; ++i)
+ {
+ deepcopy_VkRenderingAttachmentInfoKHR(alloc, rootType, from->pColorAttachments + i, (VkRenderingAttachmentInfoKHR*)(to->pColorAttachments + i));
+ }
+ }
+ }
+ to->pDepthAttachment = nullptr;
+ if (from->pDepthAttachment)
+ {
+ to->pDepthAttachment = (VkRenderingAttachmentInfoKHR*)alloc->alloc(sizeof(const VkRenderingAttachmentInfoKHR));
+ deepcopy_VkRenderingAttachmentInfoKHR(alloc, rootType, from->pDepthAttachment, (VkRenderingAttachmentInfoKHR*)(to->pDepthAttachment));
+ }
+ to->pStencilAttachment = nullptr;
+ if (from->pStencilAttachment)
+ {
+ to->pStencilAttachment = (VkRenderingAttachmentInfoKHR*)alloc->alloc(sizeof(const VkRenderingAttachmentInfoKHR));
+ deepcopy_VkRenderingAttachmentInfoKHR(alloc, rootType, from->pStencilAttachment, (VkRenderingAttachmentInfoKHR*)(to->pStencilAttachment));
+ }
+}
+
+void deepcopy_VkPipelineRenderingCreateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* from,
+ VkPipelineRenderingCreateInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pColorAttachmentFormats = nullptr;
+ if (from->pColorAttachmentFormats)
+ {
+ to->pColorAttachmentFormats = (VkFormat*)alloc->dupArray(from->pColorAttachmentFormats, from->colorAttachmentCount * sizeof(const VkFormat));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* from,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkCommandBufferInheritanceRenderingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* from,
+ VkCommandBufferInheritanceRenderingInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pColorAttachmentFormats = nullptr;
+ if (from->pColorAttachmentFormats)
+ {
+ to->pColorAttachmentFormats = (VkFormat*)alloc->dupArray(from->pColorAttachmentFormats, from->colorAttachmentCount * sizeof(const VkFormat));
+ }
+}
+
+void deepcopy_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* from,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->shadingRateAttachmentTexelSize, (VkExtent2D*)(&to->shadingRateAttachmentTexelSize));
+}
+
+void deepcopy_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* from,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkAttachmentSampleCountInfoAMD(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* from,
+ VkAttachmentSampleCountInfoAMD* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pColorAttachmentSamples = nullptr;
+ if (from->pColorAttachmentSamples)
+ {
+ to->pColorAttachmentSamples = (VkSampleCountFlagBits*)alloc->dupArray(from->pColorAttachmentSamples, from->colorAttachmentCount * sizeof(const VkSampleCountFlagBits));
+ }
+}
+
+void deepcopy_VkMultiviewPerViewAttributesInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* from,
+ VkMultiviewPerViewAttributesInfoNVX* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -8447,6 +9307,36 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+void deepcopy_VkPhysicalDevicePresentWaitFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* from,
+ VkPhysicalDevicePresentWaitFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -8646,6 +9536,64 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void deepcopy_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* from,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* from,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_pipeline_library
void deepcopy_VkPipelineLibraryCreateInfoKHR(
Allocator* alloc,
@@ -8683,6 +9631,604 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void deepcopy_VkPresentIdKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPresentIdKHR* from,
+ VkPresentIdKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pPresentIds = nullptr;
+ if (from->pPresentIds)
+ {
+ to->pPresentIds = (uint64_t*)alloc->dupArray(from->pPresentIds, from->swapchainCount * sizeof(const uint64_t));
+ }
+}
+
+void deepcopy_VkPhysicalDevicePresentIdFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* from,
+ VkPhysicalDevicePresentIdFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void deepcopy_VkVideoEncodeInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* from,
+ VkVideoEncodeInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->codedExtent, (VkExtent2D*)(&to->codedExtent));
+ deepcopy_VkVideoPictureResourceKHR(alloc, rootType, &from->srcPictureResource, (VkVideoPictureResourceKHR*)(&to->srcPictureResource));
+ to->pSetupReferenceSlot = nullptr;
+ if (from->pSetupReferenceSlot)
+ {
+ to->pSetupReferenceSlot = (VkVideoReferenceSlotKHR*)alloc->alloc(sizeof(const VkVideoReferenceSlotKHR));
+ deepcopy_VkVideoReferenceSlotKHR(alloc, rootType, from->pSetupReferenceSlot, (VkVideoReferenceSlotKHR*)(to->pSetupReferenceSlot));
+ }
+ if (from)
+ {
+ to->pReferenceSlots = nullptr;
+ if (from->pReferenceSlots)
+ {
+ to->pReferenceSlots = (VkVideoReferenceSlotKHR*)alloc->alloc(from->referenceSlotCount * sizeof(const VkVideoReferenceSlotKHR));
+ to->referenceSlotCount = from->referenceSlotCount;
+ for (uint32_t i = 0; i < (uint32_t)from->referenceSlotCount; ++i)
+ {
+ deepcopy_VkVideoReferenceSlotKHR(alloc, rootType, from->pReferenceSlots + i, (VkVideoReferenceSlotKHR*)(to->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void deepcopy_VkVideoEncodeRateControlInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* from,
+ VkVideoEncodeRateControlInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void deepcopy_VkMemoryBarrier2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* from,
+ VkMemoryBarrier2KHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkBufferMemoryBarrier2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* from,
+ VkBufferMemoryBarrier2KHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkImageMemoryBarrier2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* from,
+ VkImageMemoryBarrier2KHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkImageSubresourceRange(alloc, rootType, &from->subresourceRange, (VkImageSubresourceRange*)(&to->subresourceRange));
+}
+
+void deepcopy_VkDependencyInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* from,
+ VkDependencyInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pMemoryBarriers = nullptr;
+ if (from->pMemoryBarriers)
+ {
+ to->pMemoryBarriers = (VkMemoryBarrier2KHR*)alloc->alloc(from->memoryBarrierCount * sizeof(const VkMemoryBarrier2KHR));
+ to->memoryBarrierCount = from->memoryBarrierCount;
+ for (uint32_t i = 0; i < (uint32_t)from->memoryBarrierCount; ++i)
+ {
+ deepcopy_VkMemoryBarrier2KHR(alloc, rootType, from->pMemoryBarriers + i, (VkMemoryBarrier2KHR*)(to->pMemoryBarriers + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pBufferMemoryBarriers = nullptr;
+ if (from->pBufferMemoryBarriers)
+ {
+ to->pBufferMemoryBarriers = (VkBufferMemoryBarrier2KHR*)alloc->alloc(from->bufferMemoryBarrierCount * sizeof(const VkBufferMemoryBarrier2KHR));
+ to->bufferMemoryBarrierCount = from->bufferMemoryBarrierCount;
+ for (uint32_t i = 0; i < (uint32_t)from->bufferMemoryBarrierCount; ++i)
+ {
+ deepcopy_VkBufferMemoryBarrier2KHR(alloc, rootType, from->pBufferMemoryBarriers + i, (VkBufferMemoryBarrier2KHR*)(to->pBufferMemoryBarriers + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pImageMemoryBarriers = nullptr;
+ if (from->pImageMemoryBarriers)
+ {
+ to->pImageMemoryBarriers = (VkImageMemoryBarrier2KHR*)alloc->alloc(from->imageMemoryBarrierCount * sizeof(const VkImageMemoryBarrier2KHR));
+ to->imageMemoryBarrierCount = from->imageMemoryBarrierCount;
+ for (uint32_t i = 0; i < (uint32_t)from->imageMemoryBarrierCount; ++i)
+ {
+ deepcopy_VkImageMemoryBarrier2KHR(alloc, rootType, from->pImageMemoryBarriers + i, (VkImageMemoryBarrier2KHR*)(to->pImageMemoryBarriers + i));
+ }
+ }
+ }
+}
+
+void deepcopy_VkSemaphoreSubmitInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* from,
+ VkSemaphoreSubmitInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkCommandBufferSubmitInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* from,
+ VkCommandBufferSubmitInfoKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkSubmitInfo2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* from,
+ VkSubmitInfo2KHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pWaitSemaphoreInfos = nullptr;
+ if (from->pWaitSemaphoreInfos)
+ {
+ to->pWaitSemaphoreInfos = (VkSemaphoreSubmitInfoKHR*)alloc->alloc(from->waitSemaphoreInfoCount * sizeof(const VkSemaphoreSubmitInfoKHR));
+ to->waitSemaphoreInfoCount = from->waitSemaphoreInfoCount;
+ for (uint32_t i = 0; i < (uint32_t)from->waitSemaphoreInfoCount; ++i)
+ {
+ deepcopy_VkSemaphoreSubmitInfoKHR(alloc, rootType, from->pWaitSemaphoreInfos + i, (VkSemaphoreSubmitInfoKHR*)(to->pWaitSemaphoreInfos + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pCommandBufferInfos = nullptr;
+ if (from->pCommandBufferInfos)
+ {
+ to->pCommandBufferInfos = (VkCommandBufferSubmitInfoKHR*)alloc->alloc(from->commandBufferInfoCount * sizeof(const VkCommandBufferSubmitInfoKHR));
+ to->commandBufferInfoCount = from->commandBufferInfoCount;
+ for (uint32_t i = 0; i < (uint32_t)from->commandBufferInfoCount; ++i)
+ {
+ deepcopy_VkCommandBufferSubmitInfoKHR(alloc, rootType, from->pCommandBufferInfos + i, (VkCommandBufferSubmitInfoKHR*)(to->pCommandBufferInfos + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pSignalSemaphoreInfos = nullptr;
+ if (from->pSignalSemaphoreInfos)
+ {
+ to->pSignalSemaphoreInfos = (VkSemaphoreSubmitInfoKHR*)alloc->alloc(from->signalSemaphoreInfoCount * sizeof(const VkSemaphoreSubmitInfoKHR));
+ to->signalSemaphoreInfoCount = from->signalSemaphoreInfoCount;
+ for (uint32_t i = 0; i < (uint32_t)from->signalSemaphoreInfoCount; ++i)
+ {
+ deepcopy_VkSemaphoreSubmitInfoKHR(alloc, rootType, from->pSignalSemaphoreInfos + i, (VkSemaphoreSubmitInfoKHR*)(to->pSignalSemaphoreInfos + i));
+ }
+ }
+ }
+}
+
+void deepcopy_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* from,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkQueueFamilyCheckpointProperties2NV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* from,
+ VkQueueFamilyCheckpointProperties2NV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkCheckpointData2NV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* from,
+ VkCheckpointData2NV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pCheckpointMarker = nullptr;
+ if (from->pCheckpointMarker)
+ {
+ to->pCheckpointMarker = (void*)alloc->dupArray(from->pCheckpointMarker, sizeof(uint8_t));
+ }
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void deepcopy_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* from,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void deepcopy_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* from,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void deepcopy_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* from,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_copy_commands2
void deepcopy_VkBufferCopy2KHR(
Allocator* alloc,
@@ -9094,6 +10640,162 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+void deepcopy_VkFormatProperties3KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* from,
+ VkFormatProperties3KHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_maintenance4
+void deepcopy_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* from,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* from,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkDeviceBufferMemoryRequirementsKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* from,
+ VkDeviceBufferMemoryRequirementsKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pCreateInfo = nullptr;
+ if (from->pCreateInfo)
+ {
+ to->pCreateInfo = (VkBufferCreateInfo*)alloc->alloc(sizeof(const VkBufferCreateInfo));
+ deepcopy_VkBufferCreateInfo(alloc, rootType, from->pCreateInfo, (VkBufferCreateInfo*)(to->pCreateInfo));
+ }
+}
+
+void deepcopy_VkDeviceImageMemoryRequirementsKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* from,
+ VkDeviceImageMemoryRequirementsKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pCreateInfo = nullptr;
+ if (from->pCreateInfo)
+ {
+ to->pCreateInfo = (VkImageCreateInfo*)alloc->alloc(sizeof(const VkImageCreateInfo));
+ deepcopy_VkImageCreateInfo(alloc, rootType, from->pCreateInfo, (VkImageCreateInfo*)(to->pCreateInfo));
+ }
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
void deepcopy_VkNativeBufferANDROID(
Allocator* alloc,
@@ -9480,6 +11182,102 @@
}
#endif
+#ifdef VK_NVX_binary_import
+void deepcopy_VkCuModuleCreateInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* from,
+ VkCuModuleCreateInfoNVX* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pData = nullptr;
+ if (from->pData)
+ {
+ to->pData = (void*)alloc->dupArray(from->pData, from->dataSize * sizeof(const uint8_t));
+ }
+}
+
+void deepcopy_VkCuFunctionCreateInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* from,
+ VkCuFunctionCreateInfoNVX* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pName = nullptr;
+ if (from->pName)
+ {
+ to->pName = alloc->strDup(from->pName);
+ }
+}
+
+void deepcopy_VkCuLaunchInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* from,
+ VkCuLaunchInfoNVX* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
void deepcopy_VkImageViewHandleInfoNVX(
Allocator* alloc,
@@ -9546,6 +11344,1030 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void deepcopy_VkVideoEncodeH264CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* from,
+ VkVideoEncodeH264CapabilitiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->minPictureSizeInMbs, (VkExtent2D*)(&to->minPictureSizeInMbs));
+ deepcopy_VkExtent2D(alloc, rootType, &from->maxPictureSizeInMbs, (VkExtent2D*)(&to->maxPictureSizeInMbs));
+ deepcopy_VkExtent2D(alloc, rootType, &from->inputImageDataAlignment, (VkExtent2D*)(&to->inputImageDataAlignment));
+ deepcopy_VkExtensionProperties(alloc, rootType, &from->stdExtensionVersion, (VkExtensionProperties*)(&to->stdExtensionVersion));
+}
+
+void deepcopy_VkVideoEncodeH264SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* from,
+ VkVideoEncodeH264SessionCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->maxPictureSizeInMbs, (VkExtent2D*)(&to->maxPictureSizeInMbs));
+ to->pStdExtensionVersion = nullptr;
+ if (from->pStdExtensionVersion)
+ {
+ to->pStdExtensionVersion = (VkExtensionProperties*)alloc->alloc(sizeof(const VkExtensionProperties));
+ deepcopy_VkExtensionProperties(alloc, rootType, from->pStdExtensionVersion, (VkExtensionProperties*)(to->pStdExtensionVersion));
+ }
+}
+
+void deepcopy_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* from,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pSpsStd = nullptr;
+ if (from->pSpsStd)
+ {
+ to->pSpsStd = (StdVideoH264SequenceParameterSet*)alloc->dupArray(from->pSpsStd, from->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ }
+ to->pPpsStd = nullptr;
+ if (from->pPpsStd)
+ {
+ to->pPpsStd = (StdVideoH264PictureParameterSet*)alloc->dupArray(from->pPpsStd, from->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ }
+}
+
+void deepcopy_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* from,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pParametersAddInfo = nullptr;
+ if (from->pParametersAddInfo)
+ {
+ to->pParametersAddInfo = (VkVideoEncodeH264SessionParametersAddInfoEXT*)alloc->alloc(sizeof(const VkVideoEncodeH264SessionParametersAddInfoEXT));
+ deepcopy_VkVideoEncodeH264SessionParametersAddInfoEXT(alloc, rootType, from->pParametersAddInfo, (VkVideoEncodeH264SessionParametersAddInfoEXT*)(to->pParametersAddInfo));
+ }
+}
+
+void deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* from,
+ VkVideoEncodeH264DpbSlotInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdPictureInfo = nullptr;
+ if (from->pStdPictureInfo)
+ {
+ to->pStdPictureInfo = (StdVideoEncodeH264PictureInfo*)alloc->dupArray(from->pStdPictureInfo, sizeof(const StdVideoEncodeH264PictureInfo));
+ }
+}
+
+void deepcopy_VkVideoEncodeH264NaluSliceEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* from,
+ VkVideoEncodeH264NaluSliceEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pSliceHeaderStd = nullptr;
+ if (from->pSliceHeaderStd)
+ {
+ to->pSliceHeaderStd = (StdVideoEncodeH264SliceHeader*)alloc->dupArray(from->pSliceHeaderStd, sizeof(const StdVideoEncodeH264SliceHeader));
+ }
+ if (from)
+ {
+ to->pRefFinalList0Entries = nullptr;
+ if (from->pRefFinalList0Entries)
+ {
+ to->pRefFinalList0Entries = (VkVideoEncodeH264DpbSlotInfoEXT*)alloc->alloc(from->refFinalList0EntryCount * sizeof(const VkVideoEncodeH264DpbSlotInfoEXT));
+ to->refFinalList0EntryCount = from->refFinalList0EntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->refFinalList0EntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(alloc, rootType, from->pRefFinalList0Entries + i, (VkVideoEncodeH264DpbSlotInfoEXT*)(to->pRefFinalList0Entries + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pRefFinalList1Entries = nullptr;
+ if (from->pRefFinalList1Entries)
+ {
+ to->pRefFinalList1Entries = (VkVideoEncodeH264DpbSlotInfoEXT*)alloc->alloc(from->refFinalList1EntryCount * sizeof(const VkVideoEncodeH264DpbSlotInfoEXT));
+ to->refFinalList1EntryCount = from->refFinalList1EntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->refFinalList1EntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(alloc, rootType, from->pRefFinalList1Entries + i, (VkVideoEncodeH264DpbSlotInfoEXT*)(to->pRefFinalList1Entries + i));
+ }
+ }
+ }
+}
+
+void deepcopy_VkVideoEncodeH264VclFrameInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* from,
+ VkVideoEncodeH264VclFrameInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pRefDefaultFinalList0Entries = nullptr;
+ if (from->pRefDefaultFinalList0Entries)
+ {
+ to->pRefDefaultFinalList0Entries = (VkVideoEncodeH264DpbSlotInfoEXT*)alloc->alloc(from->refDefaultFinalList0EntryCount * sizeof(const VkVideoEncodeH264DpbSlotInfoEXT));
+ to->refDefaultFinalList0EntryCount = from->refDefaultFinalList0EntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->refDefaultFinalList0EntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(alloc, rootType, from->pRefDefaultFinalList0Entries + i, (VkVideoEncodeH264DpbSlotInfoEXT*)(to->pRefDefaultFinalList0Entries + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pRefDefaultFinalList1Entries = nullptr;
+ if (from->pRefDefaultFinalList1Entries)
+ {
+ to->pRefDefaultFinalList1Entries = (VkVideoEncodeH264DpbSlotInfoEXT*)alloc->alloc(from->refDefaultFinalList1EntryCount * sizeof(const VkVideoEncodeH264DpbSlotInfoEXT));
+ to->refDefaultFinalList1EntryCount = from->refDefaultFinalList1EntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->refDefaultFinalList1EntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(alloc, rootType, from->pRefDefaultFinalList1Entries + i, (VkVideoEncodeH264DpbSlotInfoEXT*)(to->pRefDefaultFinalList1Entries + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pNaluSliceEntries = nullptr;
+ if (from->pNaluSliceEntries)
+ {
+ to->pNaluSliceEntries = (VkVideoEncodeH264NaluSliceEXT*)alloc->alloc(from->naluSliceEntryCount * sizeof(const VkVideoEncodeH264NaluSliceEXT));
+ to->naluSliceEntryCount = from->naluSliceEntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->naluSliceEntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH264NaluSliceEXT(alloc, rootType, from->pNaluSliceEntries + i, (VkVideoEncodeH264NaluSliceEXT*)(to->pNaluSliceEntries + i));
+ }
+ }
+ }
+ to->pCurrentPictureInfo = nullptr;
+ if (from->pCurrentPictureInfo)
+ {
+ to->pCurrentPictureInfo = (VkVideoEncodeH264DpbSlotInfoEXT*)alloc->alloc(sizeof(const VkVideoEncodeH264DpbSlotInfoEXT));
+ deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(alloc, rootType, from->pCurrentPictureInfo, (VkVideoEncodeH264DpbSlotInfoEXT*)(to->pCurrentPictureInfo));
+ }
+}
+
+void deepcopy_VkVideoEncodeH264EmitPictureParametersEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* from,
+ VkVideoEncodeH264EmitPictureParametersEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->ppsIdEntries = nullptr;
+ if (from->ppsIdEntries)
+ {
+ to->ppsIdEntries = (uint8_t*)alloc->dupArray(from->ppsIdEntries, from->ppsIdEntryCount * sizeof(const uint8_t));
+ }
+}
+
+void deepcopy_VkVideoEncodeH264ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* from,
+ VkVideoEncodeH264ProfileEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void deepcopy_VkVideoEncodeH265CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* from,
+ VkVideoEncodeH265CapabilitiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtent2D(alloc, rootType, &from->inputImageDataAlignment, (VkExtent2D*)(&to->inputImageDataAlignment));
+ deepcopy_VkExtensionProperties(alloc, rootType, &from->stdExtensionVersion, (VkExtensionProperties*)(&to->stdExtensionVersion));
+}
+
+void deepcopy_VkVideoEncodeH265SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* from,
+ VkVideoEncodeH265SessionCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdExtensionVersion = nullptr;
+ if (from->pStdExtensionVersion)
+ {
+ to->pStdExtensionVersion = (VkExtensionProperties*)alloc->alloc(sizeof(const VkExtensionProperties));
+ deepcopy_VkExtensionProperties(alloc, rootType, from->pStdExtensionVersion, (VkExtensionProperties*)(to->pStdExtensionVersion));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* from,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pVpsStd = nullptr;
+ if (from->pVpsStd)
+ {
+ to->pVpsStd = (StdVideoH265VideoParameterSet*)alloc->dupArray(from->pVpsStd, from->vpsStdCount * sizeof(const StdVideoH265VideoParameterSet));
+ }
+ to->pSpsStd = nullptr;
+ if (from->pSpsStd)
+ {
+ to->pSpsStd = (StdVideoH265SequenceParameterSet*)alloc->dupArray(from->pSpsStd, from->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ }
+ to->pPpsStd = nullptr;
+ if (from->pPpsStd)
+ {
+ to->pPpsStd = (StdVideoH265PictureParameterSet*)alloc->dupArray(from->pPpsStd, from->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* from,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pParametersAddInfo = nullptr;
+ if (from->pParametersAddInfo)
+ {
+ to->pParametersAddInfo = (VkVideoEncodeH265SessionParametersAddInfoEXT*)alloc->alloc(sizeof(const VkVideoEncodeH265SessionParametersAddInfoEXT));
+ deepcopy_VkVideoEncodeH265SessionParametersAddInfoEXT(alloc, rootType, from->pParametersAddInfo, (VkVideoEncodeH265SessionParametersAddInfoEXT*)(to->pParametersAddInfo));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* from,
+ VkVideoEncodeH265DpbSlotInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdReferenceInfo = nullptr;
+ if (from->pStdReferenceInfo)
+ {
+ to->pStdReferenceInfo = (StdVideoEncodeH265ReferenceInfo*)alloc->dupArray(from->pStdReferenceInfo, sizeof(const StdVideoEncodeH265ReferenceInfo));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265ReferenceListsEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* from,
+ VkVideoEncodeH265ReferenceListsEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pReferenceList0Entries = nullptr;
+ if (from->pReferenceList0Entries)
+ {
+ to->pReferenceList0Entries = (VkVideoEncodeH265DpbSlotInfoEXT*)alloc->alloc(from->referenceList0EntryCount * sizeof(const VkVideoEncodeH265DpbSlotInfoEXT));
+ to->referenceList0EntryCount = from->referenceList0EntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->referenceList0EntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH265DpbSlotInfoEXT(alloc, rootType, from->pReferenceList0Entries + i, (VkVideoEncodeH265DpbSlotInfoEXT*)(to->pReferenceList0Entries + i));
+ }
+ }
+ }
+ if (from)
+ {
+ to->pReferenceList1Entries = nullptr;
+ if (from->pReferenceList1Entries)
+ {
+ to->pReferenceList1Entries = (VkVideoEncodeH265DpbSlotInfoEXT*)alloc->alloc(from->referenceList1EntryCount * sizeof(const VkVideoEncodeH265DpbSlotInfoEXT));
+ to->referenceList1EntryCount = from->referenceList1EntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->referenceList1EntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH265DpbSlotInfoEXT(alloc, rootType, from->pReferenceList1Entries + i, (VkVideoEncodeH265DpbSlotInfoEXT*)(to->pReferenceList1Entries + i));
+ }
+ }
+ }
+ to->pReferenceModifications = nullptr;
+ if (from->pReferenceModifications)
+ {
+ to->pReferenceModifications = (StdVideoEncodeH265ReferenceModifications*)alloc->dupArray(from->pReferenceModifications, sizeof(const StdVideoEncodeH265ReferenceModifications));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265NaluSliceEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* from,
+ VkVideoEncodeH265NaluSliceEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pReferenceFinalLists = nullptr;
+ if (from->pReferenceFinalLists)
+ {
+ to->pReferenceFinalLists = (VkVideoEncodeH265ReferenceListsEXT*)alloc->alloc(sizeof(const VkVideoEncodeH265ReferenceListsEXT));
+ deepcopy_VkVideoEncodeH265ReferenceListsEXT(alloc, rootType, from->pReferenceFinalLists, (VkVideoEncodeH265ReferenceListsEXT*)(to->pReferenceFinalLists));
+ }
+ to->pSliceHeaderStd = nullptr;
+ if (from->pSliceHeaderStd)
+ {
+ to->pSliceHeaderStd = (StdVideoEncodeH265SliceHeader*)alloc->dupArray(from->pSliceHeaderStd, sizeof(const StdVideoEncodeH265SliceHeader));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265VclFrameInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* from,
+ VkVideoEncodeH265VclFrameInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pReferenceFinalLists = nullptr;
+ if (from->pReferenceFinalLists)
+ {
+ to->pReferenceFinalLists = (VkVideoEncodeH265ReferenceListsEXT*)alloc->alloc(sizeof(const VkVideoEncodeH265ReferenceListsEXT));
+ deepcopy_VkVideoEncodeH265ReferenceListsEXT(alloc, rootType, from->pReferenceFinalLists, (VkVideoEncodeH265ReferenceListsEXT*)(to->pReferenceFinalLists));
+ }
+ if (from)
+ {
+ to->pNaluSliceEntries = nullptr;
+ if (from->pNaluSliceEntries)
+ {
+ to->pNaluSliceEntries = (VkVideoEncodeH265NaluSliceEXT*)alloc->alloc(from->naluSliceEntryCount * sizeof(const VkVideoEncodeH265NaluSliceEXT));
+ to->naluSliceEntryCount = from->naluSliceEntryCount;
+ for (uint32_t i = 0; i < (uint32_t)from->naluSliceEntryCount; ++i)
+ {
+ deepcopy_VkVideoEncodeH265NaluSliceEXT(alloc, rootType, from->pNaluSliceEntries + i, (VkVideoEncodeH265NaluSliceEXT*)(to->pNaluSliceEntries + i));
+ }
+ }
+ }
+ to->pCurrentPictureInfo = nullptr;
+ if (from->pCurrentPictureInfo)
+ {
+ to->pCurrentPictureInfo = (StdVideoEncodeH265PictureInfo*)alloc->dupArray(from->pCurrentPictureInfo, sizeof(const StdVideoEncodeH265PictureInfo));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265EmitPictureParametersEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* from,
+ VkVideoEncodeH265EmitPictureParametersEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->ppsIdEntries = nullptr;
+ if (from->ppsIdEntries)
+ {
+ to->ppsIdEntries = (uint8_t*)alloc->dupArray(from->ppsIdEntries, from->ppsIdEntryCount * sizeof(const uint8_t));
+ }
+}
+
+void deepcopy_VkVideoEncodeH265ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* from,
+ VkVideoEncodeH265ProfileEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void deepcopy_VkVideoDecodeH264ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* from,
+ VkVideoDecodeH264ProfileEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoDecodeH264CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* from,
+ VkVideoDecodeH264CapabilitiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkOffset2D(alloc, rootType, &from->fieldOffsetGranularity, (VkOffset2D*)(&to->fieldOffsetGranularity));
+ deepcopy_VkExtensionProperties(alloc, rootType, &from->stdExtensionVersion, (VkExtensionProperties*)(&to->stdExtensionVersion));
+}
+
+void deepcopy_VkVideoDecodeH264SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* from,
+ VkVideoDecodeH264SessionCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdExtensionVersion = nullptr;
+ if (from->pStdExtensionVersion)
+ {
+ to->pStdExtensionVersion = (VkExtensionProperties*)alloc->alloc(sizeof(const VkExtensionProperties));
+ deepcopy_VkExtensionProperties(alloc, rootType, from->pStdExtensionVersion, (VkExtensionProperties*)(to->pStdExtensionVersion));
+ }
+}
+
+void deepcopy_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* from,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pSpsStd = nullptr;
+ if (from->pSpsStd)
+ {
+ to->pSpsStd = (StdVideoH264SequenceParameterSet*)alloc->dupArray(from->pSpsStd, from->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ }
+ to->pPpsStd = nullptr;
+ if (from->pPpsStd)
+ {
+ to->pPpsStd = (StdVideoH264PictureParameterSet*)alloc->dupArray(from->pPpsStd, from->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ }
+}
+
+void deepcopy_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* from,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pParametersAddInfo = nullptr;
+ if (from->pParametersAddInfo)
+ {
+ to->pParametersAddInfo = (VkVideoDecodeH264SessionParametersAddInfoEXT*)alloc->alloc(sizeof(const VkVideoDecodeH264SessionParametersAddInfoEXT));
+ deepcopy_VkVideoDecodeH264SessionParametersAddInfoEXT(alloc, rootType, from->pParametersAddInfo, (VkVideoDecodeH264SessionParametersAddInfoEXT*)(to->pParametersAddInfo));
+ }
+}
+
+void deepcopy_VkVideoDecodeH264PictureInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* from,
+ VkVideoDecodeH264PictureInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdPictureInfo = nullptr;
+ if (from->pStdPictureInfo)
+ {
+ to->pStdPictureInfo = (StdVideoDecodeH264PictureInfo*)alloc->dupArray(from->pStdPictureInfo, sizeof(const StdVideoDecodeH264PictureInfo));
+ }
+ to->pSlicesDataOffsets = nullptr;
+ if (from->pSlicesDataOffsets)
+ {
+ to->pSlicesDataOffsets = (uint32_t*)alloc->dupArray(from->pSlicesDataOffsets, from->slicesCount * sizeof(const uint32_t));
+ }
+}
+
+void deepcopy_VkVideoDecodeH264MvcEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* from,
+ VkVideoDecodeH264MvcEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdMvc = nullptr;
+ if (from->pStdMvc)
+ {
+ to->pStdMvc = (StdVideoDecodeH264Mvc*)alloc->dupArray(from->pStdMvc, sizeof(const StdVideoDecodeH264Mvc));
+ }
+}
+
+void deepcopy_VkVideoDecodeH264DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* from,
+ VkVideoDecodeH264DpbSlotInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdReferenceInfo = nullptr;
+ if (from->pStdReferenceInfo)
+ {
+ to->pStdReferenceInfo = (StdVideoDecodeH264ReferenceInfo*)alloc->dupArray(from->pStdReferenceInfo, sizeof(const StdVideoDecodeH264ReferenceInfo));
+ }
+}
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void deepcopy_VkTextureLODGatherFormatPropertiesAMD(
Allocator* alloc,
@@ -11172,6 +13994,35 @@
}
}
+void deepcopy_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* from,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkComponentMapping(alloc, rootType, &from->samplerYcbcrConversionComponents, (VkComponentMapping*)(&to->samplerYcbcrConversionComponents));
+}
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
#endif
@@ -11924,6 +14775,58 @@
}
}
+void deepcopy_VkDrmFormatModifierProperties2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* from,
+ VkDrmFormatModifierProperties2EXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+}
+
+void deepcopy_VkDrmFormatModifierPropertiesList2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* from,
+ VkDrmFormatModifierPropertiesList2EXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pDrmFormatModifierProperties = nullptr;
+ if (from->pDrmFormatModifierProperties)
+ {
+ to->pDrmFormatModifierProperties = (VkDrmFormatModifierProperties2EXT*)alloc->alloc(from->drmFormatModifierCount * sizeof(VkDrmFormatModifierProperties2EXT));
+ to->drmFormatModifierCount = from->drmFormatModifierCount;
+ for (uint32_t i = 0; i < (uint32_t)from->drmFormatModifierCount; ++i)
+ {
+ deepcopy_VkDrmFormatModifierProperties2EXT(alloc, rootType, from->pDrmFormatModifierProperties + i, (VkDrmFormatModifierProperties2EXT*)(to->pDrmFormatModifierProperties + i));
+ }
+ }
+ }
+}
+
#endif
#ifdef VK_EXT_validation_cache
void deepcopy_VkValidationCacheCreateInfoEXT(
@@ -12924,6 +15827,242 @@
}
#endif
+#ifdef VK_EXT_video_decode_h265
+void deepcopy_VkVideoDecodeH265ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* from,
+ VkVideoDecodeH265ProfileEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVideoDecodeH265CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* from,
+ VkVideoDecodeH265CapabilitiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkExtensionProperties(alloc, rootType, &from->stdExtensionVersion, (VkExtensionProperties*)(&to->stdExtensionVersion));
+}
+
+void deepcopy_VkVideoDecodeH265SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* from,
+ VkVideoDecodeH265SessionCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdExtensionVersion = nullptr;
+ if (from->pStdExtensionVersion)
+ {
+ to->pStdExtensionVersion = (VkExtensionProperties*)alloc->alloc(sizeof(const VkExtensionProperties));
+ deepcopy_VkExtensionProperties(alloc, rootType, from->pStdExtensionVersion, (VkExtensionProperties*)(to->pStdExtensionVersion));
+ }
+}
+
+void deepcopy_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* from,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pSpsStd = nullptr;
+ if (from->pSpsStd)
+ {
+ to->pSpsStd = (StdVideoH265SequenceParameterSet*)alloc->dupArray(from->pSpsStd, from->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ }
+ to->pPpsStd = nullptr;
+ if (from->pPpsStd)
+ {
+ to->pPpsStd = (StdVideoH265PictureParameterSet*)alloc->dupArray(from->pPpsStd, from->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ }
+}
+
+void deepcopy_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* from,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pParametersAddInfo = nullptr;
+ if (from->pParametersAddInfo)
+ {
+ to->pParametersAddInfo = (VkVideoDecodeH265SessionParametersAddInfoEXT*)alloc->alloc(sizeof(const VkVideoDecodeH265SessionParametersAddInfoEXT));
+ deepcopy_VkVideoDecodeH265SessionParametersAddInfoEXT(alloc, rootType, from->pParametersAddInfo, (VkVideoDecodeH265SessionParametersAddInfoEXT*)(to->pParametersAddInfo));
+ }
+}
+
+void deepcopy_VkVideoDecodeH265PictureInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* from,
+ VkVideoDecodeH265PictureInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdPictureInfo = nullptr;
+ if (from->pStdPictureInfo)
+ {
+ to->pStdPictureInfo = (StdVideoDecodeH265PictureInfo*)alloc->dupArray(from->pStdPictureInfo, sizeof(StdVideoDecodeH265PictureInfo));
+ }
+ to->pSlicesDataOffsets = nullptr;
+ if (from->pSlicesDataOffsets)
+ {
+ to->pSlicesDataOffsets = (uint32_t*)alloc->dupArray(from->pSlicesDataOffsets, from->slicesCount * sizeof(const uint32_t));
+ }
+}
+
+void deepcopy_VkVideoDecodeH265DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* from,
+ VkVideoDecodeH265DpbSlotInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pStdReferenceInfo = nullptr;
+ if (from->pStdReferenceInfo)
+ {
+ to->pStdReferenceInfo = (StdVideoDecodeH265ReferenceInfo*)alloc->dupArray(from->pStdReferenceInfo, sizeof(const StdVideoDecodeH265ReferenceInfo));
+ }
+}
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void deepcopy_VkDeviceMemoryOverallocationCreateInfoAMD(
Allocator* alloc,
@@ -14594,6 +17733,92 @@
}
#endif
+#ifdef VK_EXT_provoking_vertex
+void deepcopy_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* from,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* from,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* from,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void deepcopy_VkSurfaceFullScreenExclusiveInfoEXT(
Allocator* alloc,
@@ -14888,6 +18113,36 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void deepcopy_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* from,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void deepcopy_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
Allocator* alloc,
@@ -15283,6 +18538,70 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void deepcopy_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* from,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkCommandBufferInheritanceViewportScissorInfoNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* from,
+ VkCommandBufferInheritanceViewportScissorInfoNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pViewportDepths = nullptr;
+ if (from->pViewportDepths)
+ {
+ to->pViewportDepths = (VkViewport*)alloc->alloc(sizeof(const VkViewport));
+ deepcopy_VkViewport(alloc, rootType, from->pViewportDepths, (VkViewport*)(to->pViewportDepths));
+ }
+}
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void deepcopy_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
Allocator* alloc,
@@ -15491,6 +18810,8 @@
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void deepcopy_VkPhysicalDeviceRobustness2FeaturesEXT(
Allocator* alloc,
@@ -15901,6 +19222,202 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void deepcopy_VkDeviceOrHostAddressConstKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* from,
+ VkDeviceOrHostAddressConstKHR* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ to->hostAddress = nullptr;
+ if (from->hostAddress)
+ {
+ to->hostAddress = (void*)alloc->dupArray(from->hostAddress, sizeof(const uint8_t));
+ }
+}
+
+void deepcopy_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* from,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkDeviceOrHostAddressConstKHR(alloc, rootType, &from->vertexData, (VkDeviceOrHostAddressConstKHR*)(&to->vertexData));
+}
+
+void deepcopy_VkAccelerationStructureMotionInfoNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* from,
+ VkAccelerationStructureMotionInfoNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkAccelerationStructureMatrixMotionInstanceNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* from,
+ VkAccelerationStructureMatrixMotionInstanceNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ deepcopy_VkTransformMatrixKHR(alloc, rootType, &from->transformT0, (VkTransformMatrixKHR*)(&to->transformT0));
+ deepcopy_VkTransformMatrixKHR(alloc, rootType, &from->transformT1, (VkTransformMatrixKHR*)(&to->transformT1));
+}
+
+void deepcopy_VkSRTDataNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSRTDataNV* from,
+ VkSRTDataNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+}
+
+void deepcopy_VkAccelerationStructureSRTMotionInstanceNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* from,
+ VkAccelerationStructureSRTMotionInstanceNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ deepcopy_VkSRTDataNV(alloc, rootType, &from->transformT0, (VkSRTDataNV*)(&to->transformT0));
+ deepcopy_VkSRTDataNV(alloc, rootType, &from->transformT1, (VkSRTDataNV*)(&to->transformT1));
+}
+
+void deepcopy_VkAccelerationStructureMotionInstanceDataNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* from,
+ VkAccelerationStructureMotionInstanceDataNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ deepcopy_VkAccelerationStructureInstanceKHR(alloc, rootType, &from->staticInstance, (VkAccelerationStructureInstanceKHR*)(&to->staticInstance));
+ deepcopy_VkAccelerationStructureMatrixMotionInstanceNV(alloc, rootType, &from->matrixMotionInstance, (VkAccelerationStructureMatrixMotionInstanceNV*)(&to->matrixMotionInstance));
+ deepcopy_VkAccelerationStructureSRTMotionInstanceNV(alloc, rootType, &from->srtMotionInstance, (VkAccelerationStructureSRTMotionInstanceNV*)(&to->srtMotionInstance));
+}
+
+void deepcopy_VkAccelerationStructureMotionInstanceNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* from,
+ VkAccelerationStructureMotionInstanceNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ deepcopy_VkAccelerationStructureMotionInstanceDataNV(alloc, rootType, &from->data, (VkAccelerationStructureMotionInstanceDataNV*)(&to->data));
+}
+
+void deepcopy_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* from,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void deepcopy_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* from,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void deepcopy_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
Allocator* alloc,
@@ -16049,6 +19566,38 @@
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void deepcopy_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* from,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void deepcopy_VkDirectFBSurfaceCreateInfoEXT(
Allocator* alloc,
@@ -16089,6 +19638,997 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void deepcopy_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* from,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkMutableDescriptorTypeListVALVE(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* from,
+ VkMutableDescriptorTypeListVALVE* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ to->pDescriptorTypes = nullptr;
+ if (from->pDescriptorTypes)
+ {
+ to->pDescriptorTypes = (VkDescriptorType*)alloc->dupArray(from->pDescriptorTypes, from->descriptorTypeCount * sizeof(const VkDescriptorType));
+ }
+}
+
+void deepcopy_VkMutableDescriptorTypeCreateInfoVALVE(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* from,
+ VkMutableDescriptorTypeCreateInfoVALVE* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pMutableDescriptorTypeLists = nullptr;
+ if (from->pMutableDescriptorTypeLists)
+ {
+ to->pMutableDescriptorTypeLists = (VkMutableDescriptorTypeListVALVE*)alloc->alloc(from->mutableDescriptorTypeListCount * sizeof(const VkMutableDescriptorTypeListVALVE));
+ to->mutableDescriptorTypeListCount = from->mutableDescriptorTypeListCount;
+ for (uint32_t i = 0; i < (uint32_t)from->mutableDescriptorTypeListCount; ++i)
+ {
+ deepcopy_VkMutableDescriptorTypeListVALVE(alloc, rootType, from->pMutableDescriptorTypeLists + i, (VkMutableDescriptorTypeListVALVE*)(to->pMutableDescriptorTypeLists + i));
+ }
+ }
+ }
+}
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void deepcopy_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* from,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVertexInputBindingDescription2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* from,
+ VkVertexInputBindingDescription2EXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkVertexInputAttributeDescription2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* from,
+ VkVertexInputAttributeDescription2EXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void deepcopy_VkPhysicalDeviceDrmPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* from,
+ VkPhysicalDeviceDrmPropertiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void deepcopy_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* from,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void deepcopy_VkImportMemoryZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* from,
+ VkImportMemoryZirconHandleInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkMemoryZirconHandlePropertiesFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* from,
+ VkMemoryZirconHandlePropertiesFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkMemoryGetZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* from,
+ VkMemoryGetZirconHandleInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void deepcopy_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* from,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* from,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void deepcopy_VkBufferCollectionCreateInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* from,
+ VkBufferCollectionCreateInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkImportMemoryBufferCollectionFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* from,
+ VkImportMemoryBufferCollectionFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkBufferCollectionImageCreateInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* from,
+ VkBufferCollectionImageCreateInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkBufferCollectionConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* from,
+ VkBufferCollectionConstraintsInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkBufferConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* from,
+ VkBufferConstraintsInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkBufferCreateInfo(alloc, rootType, &from->createInfo, (VkBufferCreateInfo*)(&to->createInfo));
+ deepcopy_VkBufferCollectionConstraintsInfoFUCHSIA(alloc, rootType, &from->bufferCollectionConstraints, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&to->bufferCollectionConstraints));
+}
+
+void deepcopy_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* from,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkSysmemColorSpaceFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* from,
+ VkSysmemColorSpaceFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkBufferCollectionPropertiesFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* from,
+ VkBufferCollectionPropertiesFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkSysmemColorSpaceFUCHSIA(alloc, rootType, &from->sysmemColorSpaceIndex, (VkSysmemColorSpaceFUCHSIA*)(&to->sysmemColorSpaceIndex));
+ deepcopy_VkComponentMapping(alloc, rootType, &from->samplerYcbcrConversionComponents, (VkComponentMapping*)(&to->samplerYcbcrConversionComponents));
+}
+
+void deepcopy_VkImageFormatConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* from,
+ VkImageFormatConstraintsInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkImageCreateInfo(alloc, rootType, &from->imageCreateInfo, (VkImageCreateInfo*)(&to->imageCreateInfo));
+ to->pColorSpaces = nullptr;
+ if (from->pColorSpaces)
+ {
+ to->pColorSpaces = (VkSysmemColorSpaceFUCHSIA*)alloc->alloc(sizeof(const VkSysmemColorSpaceFUCHSIA));
+ deepcopy_VkSysmemColorSpaceFUCHSIA(alloc, rootType, from->pColorSpaces, (VkSysmemColorSpaceFUCHSIA*)(to->pColorSpaces));
+ }
+}
+
+void deepcopy_VkImageConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* from,
+ VkImageConstraintsInfoFUCHSIA* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ if (from)
+ {
+ to->pFormatConstraints = nullptr;
+ if (from->pFormatConstraints)
+ {
+ to->pFormatConstraints = (VkImageFormatConstraintsInfoFUCHSIA*)alloc->alloc(from->formatConstraintsCount * sizeof(const VkImageFormatConstraintsInfoFUCHSIA));
+ to->formatConstraintsCount = from->formatConstraintsCount;
+ for (uint32_t i = 0; i < (uint32_t)from->formatConstraintsCount; ++i)
+ {
+ deepcopy_VkImageFormatConstraintsInfoFUCHSIA(alloc, rootType, from->pFormatConstraints + i, (VkImageFormatConstraintsInfoFUCHSIA*)(to->pFormatConstraints + i));
+ }
+ }
+ }
+ deepcopy_VkBufferCollectionConstraintsInfoFUCHSIA(alloc, rootType, &from->bufferCollectionConstraints, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&to->bufferCollectionConstraints));
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void deepcopy_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* from,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* from,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* from,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void deepcopy_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* from,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void deepcopy_VkMemoryGetRemoteAddressInfoNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* from,
+ VkMemoryGetRemoteAddressInfoNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* from,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void deepcopy_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* from,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+void deepcopy_VkScreenSurfaceCreateInfoQNX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* from,
+ VkScreenSurfaceCreateInfoQNX* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->context = nullptr;
+ if (from->context)
+ {
+ to->context = (_screen_context*)alloc->dupArray(from->context, sizeof(_screen_context));
+ }
+ to->window = nullptr;
+ if (from->window)
+ {
+ to->window = (_screen_window*)alloc->dupArray(from->window, sizeof(_screen_window));
+ }
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void deepcopy_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* from,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPipelineColorWriteCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* from,
+ VkPipelineColorWriteCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ to->pColorWriteEnables = nullptr;
+ if (from->pColorWriteEnables)
+ {
+ to->pColorWriteEnables = (VkBool32*)alloc->dupArray(from->pColorWriteEnables, from->attachmentCount * sizeof(const VkBool32));
+ }
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void deepcopy_VkImportColorBufferGOOGLE(
Allocator* alloc,
@@ -16175,6 +20715,236 @@
}
#endif
+#ifdef VK_EXT_global_priority_query
+void deepcopy_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* from,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* from,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ memcpy(to->priorities, from->priorities, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT * sizeof(VkQueueGlobalPriorityEXT));
+}
+
+#endif
+#ifdef VK_EXT_multi_draw
+void deepcopy_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* from,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* from,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkMultiDrawInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* from,
+ VkMultiDrawInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+}
+
+void deepcopy_VkMultiDrawIndexedInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* from,
+ VkMultiDrawIndexedInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void deepcopy_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* from,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+void deepcopy_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* from,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+ deepcopy_VkComponentMapping(alloc, rootType, &from->components, (VkComponentMapping*)(&to->components));
+}
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void deepcopy_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* from,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* to)
+{
+ (void)alloc;
+ (void)rootType;
+ *to = *from;
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = from->sType;
+ }
+ const void* from_pNext = from;
+ size_t pNext_size = 0u;
+ while (!pNext_size && from_pNext)
+ {
+ from_pNext = static_cast<const vk_struct_common*>(from_pNext)->pNext;
+ pNext_size = goldfish_vk_extension_struct_size(rootType, from_pNext);
+ }
+ to->pNext = nullptr;
+ if (pNext_size)
+ {
+ to->pNext = (void*)alloc->alloc(pNext_size);
+ deepcopy_extension_struct(alloc, rootType, from_pNext, (void*)(to->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_acceleration_structure
void deepcopy_VkDeviceOrHostAddressKHR(
Allocator* alloc,
@@ -16192,22 +20962,6 @@
}
}
-void deepcopy_VkDeviceOrHostAddressConstKHR(
- Allocator* alloc,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* from,
- VkDeviceOrHostAddressConstKHR* to)
-{
- (void)alloc;
- (void)rootType;
- *to = *from;
- to->hostAddress = nullptr;
- if (from->hostAddress)
- {
- to->hostAddress = (void*)alloc->dupArray(from->hostAddress, sizeof(const uint8_t));
- }
-}
-
void deepcopy_VkAccelerationStructureBuildRangeInfoKHR(
Allocator* alloc,
VkStructureType rootType,
@@ -17360,6 +22114,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ deepcopy_VkVideoQueueFamilyProperties2KHR(alloc, rootType, reinterpret_cast<const VkVideoQueueFamilyProperties2KHR*>(structExtension), reinterpret_cast<VkVideoQueueFamilyProperties2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ deepcopy_VkVideoProfileKHR(alloc, rootType, reinterpret_cast<const VkVideoProfileKHR*>(structExtension), reinterpret_cast<VkVideoProfileKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ deepcopy_VkVideoProfilesKHR(alloc, rootType, reinterpret_cast<const VkVideoProfilesKHR*>(structExtension), reinterpret_cast<VkVideoProfilesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ deepcopy_VkPipelineRenderingCreateInfoKHR(alloc, rootType, reinterpret_cast<const VkPipelineRenderingCreateInfoKHR*>(structExtension), reinterpret_cast<VkPipelineRenderingCreateInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceDynamicRenderingFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ deepcopy_VkCommandBufferInheritanceRenderingInfoKHR(alloc, rootType, reinterpret_cast<const VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension), reinterpret_cast<VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ deepcopy_VkRenderingFragmentShadingRateAttachmentInfoKHR(alloc, rootType, reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension), reinterpret_cast<VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ deepcopy_VkRenderingFragmentDensityMapAttachmentInfoEXT(alloc, rootType, reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension), reinterpret_cast<VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ deepcopy_VkAttachmentSampleCountInfoAMD(alloc, rootType, reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension), reinterpret_cast<VkAttachmentSampleCountInfoAMD*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ deepcopy_VkMultiviewPerViewAttributesInfoNVX(alloc, rootType, reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension), reinterpret_cast<VkMultiviewPerViewAttributesInfoNVX*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -17503,6 +22311,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDevicePresentWaitFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -17510,6 +22325,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ deepcopy_VkPresentIdKHR(alloc, rootType, reinterpret_cast<const VkPresentIdKHR*>(structExtension), reinterpret_cast<VkPresentIdKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDevicePresentIdFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ deepcopy_VkVideoEncodeRateControlInfoKHR(alloc, rootType, reinterpret_cast<const VkVideoEncodeRateControlInfoKHR*>(structExtension), reinterpret_cast<VkVideoEncodeRateControlInfoKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ deepcopy_VkMemoryBarrier2KHR(alloc, rootType, reinterpret_cast<const VkMemoryBarrier2KHR*>(structExtension), reinterpret_cast<VkMemoryBarrier2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceSynchronization2FeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ deepcopy_VkQueueFamilyCheckpointProperties2NV(alloc, rootType, reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension), reinterpret_cast<VkQueueFamilyCheckpointProperties2NV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ deepcopy_VkFormatProperties3KHR(alloc, rootType, reinterpret_cast<const VkFormatProperties3KHR*>(structExtension), reinterpret_cast<VkFormatProperties3KHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceMaintenance4FeaturesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ deepcopy_VkPhysicalDeviceMaintenance4PropertiesKHR(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension), reinterpret_cast<VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -17565,6 +22468,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ deepcopy_VkVideoEncodeH264CapabilitiesEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH264SessionCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH264SessionParametersAddInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH264SessionParametersCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH264VclFrameInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ deepcopy_VkVideoEncodeH264EmitPictureParametersEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ deepcopy_VkVideoEncodeH264ProfileEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH264ProfileEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ deepcopy_VkVideoEncodeH265CapabilitiesEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH265SessionCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH265SessionParametersAddInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH265SessionParametersCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ deepcopy_VkVideoEncodeH265VclFrameInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ deepcopy_VkVideoEncodeH265EmitPictureParametersEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ deepcopy_VkVideoEncodeH265ProfileEXT(alloc, rootType, reinterpret_cast<const VkVideoEncodeH265ProfileEXT*>(structExtension), reinterpret_cast<VkVideoEncodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ deepcopy_VkVideoDecodeH264ProfileEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264ProfileEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ deepcopy_VkVideoDecodeH264CapabilitiesEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264CapabilitiesEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH264SessionCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH264SessionParametersAddInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH264SessionParametersCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH264PictureInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264PictureInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ deepcopy_VkVideoDecodeH264MvcEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264MvcEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264MvcEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH264DpbSlotInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -17747,6 +22766,11 @@
deepcopy_VkExternalFormatANDROID(alloc, rootType, reinterpret_cast<const VkExternalFormatANDROID*>(structExtension), reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ deepcopy_VkAndroidHardwareBufferFormatProperties2ANDROID(alloc, rootType, reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension), reinterpret_cast<VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -17856,6 +22880,11 @@
deepcopy_VkImageDrmFormatModifierExplicitCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension), reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ deepcopy_VkDrmFormatModifierPropertiesList2EXT(alloc, rootType, reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension), reinterpret_cast<VkDrmFormatModifierPropertiesList2EXT*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -17955,6 +22984,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ deepcopy_VkVideoDecodeH265ProfileEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265ProfileEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ deepcopy_VkVideoDecodeH265CapabilitiesEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265CapabilitiesEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH265SessionCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH265SessionParametersAddInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH265SessionParametersCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH265PictureInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265PictureInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ deepcopy_VkVideoDecodeH265DpbSlotInfoEXT(alloc, rootType, reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension), reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -18277,6 +23343,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceProvokingVertexFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceProvokingVertexPropertiesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ deepcopy_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension), reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -18332,6 +23415,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -18356,6 +23446,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ deepcopy_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension), reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ deepcopy_VkCommandBufferInheritanceViewportScissorInfoNV(alloc, rootType, reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension), reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -18469,6 +23571,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ deepcopy_VkAccelerationStructureGeometryMotionTrianglesDataNV(alloc, rootType, reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension), reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ deepcopy_VkAccelerationStructureMotionInfoNV(alloc, rootType, reinterpret_cast<const VkAccelerationStructureMotionInfoNV*>(structExtension), reinterpret_cast<VkAccelerationStructureMotionInfoNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ deepcopy_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension), reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -18502,6 +23628,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ deepcopy_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension), reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ deepcopy_VkMutableDescriptorTypeCreateInfoVALVE(alloc, rootType, reinterpret_cast<const VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension), reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceDrmPropertiesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ deepcopy_VkImportMemoryZirconHandleInfoFUCHSIA(alloc, rootType, reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension), reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ deepcopy_VkImportMemoryBufferCollectionFUCHSIA(alloc, rootType, reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA*>(structExtension), reinterpret_cast<VkImportMemoryBufferCollectionFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ deepcopy_VkBufferCollectionImageCreateInfoFUCHSIA(alloc, rootType, reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension), reinterpret_cast<VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ deepcopy_VkBufferCollectionBufferCreateInfoFUCHSIA(alloc, rootType, reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension), reinterpret_cast<VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ deepcopy_VkSubpassShadingPipelineCreateInfoHUAWEI(alloc, rootType, reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension), reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ deepcopy_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension), reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ deepcopy_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension), reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ deepcopy_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension), reinterpret_cast<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ deepcopy_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension), reinterpret_cast<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceColorWriteEnableFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ deepcopy_VkPipelineColorWriteCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension), reinterpret_cast<VkPipelineColorWriteCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -18519,6 +23759,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ deepcopy_VkQueueFamilyGlobalPriorityPropertiesEXT(alloc, rootType, reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension), reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceMultiDrawFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceMultiDrawPropertiesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ deepcopy_VkSamplerBorderColorComponentMappingCreateInfoEXT(alloc, rootType, reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension), reinterpret_cast<VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ deepcopy_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(alloc, rootType, reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension), reinterpret_cast<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
diff --git a/system/vulkan_enc/goldfish_vk_deepcopy_guest.h b/system/vulkan_enc/goldfish_vk_deepcopy_guest.h
index 835ba7e..37989e8 100644
--- a/system/vulkan_enc/goldfish_vk_deepcopy_guest.h
+++ b/system/vulkan_enc/goldfish_vk_deepcopy_guest.h
@@ -128,6 +128,12 @@
const VkMemoryBarrier* from,
VkMemoryBarrier* to);
+void deepcopy_VkPipelineCacheHeaderVersionOne(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* from,
+ VkPipelineCacheHeaderVersionOne* to);
+
void deepcopy_VkAllocationCallbacks(
Allocator* alloc,
VkStructureType rootType,
@@ -1579,6 +1585,170 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void deepcopy_VkVideoQueueFamilyProperties2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* from,
+ VkVideoQueueFamilyProperties2KHR* to);
+
+void deepcopy_VkVideoProfileKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* from,
+ VkVideoProfileKHR* to);
+
+void deepcopy_VkVideoProfilesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* from,
+ VkVideoProfilesKHR* to);
+
+void deepcopy_VkVideoCapabilitiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* from,
+ VkVideoCapabilitiesKHR* to);
+
+void deepcopy_VkPhysicalDeviceVideoFormatInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* from,
+ VkPhysicalDeviceVideoFormatInfoKHR* to);
+
+void deepcopy_VkVideoFormatPropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* from,
+ VkVideoFormatPropertiesKHR* to);
+
+void deepcopy_VkVideoPictureResourceKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* from,
+ VkVideoPictureResourceKHR* to);
+
+void deepcopy_VkVideoReferenceSlotKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* from,
+ VkVideoReferenceSlotKHR* to);
+
+void deepcopy_VkVideoGetMemoryPropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* from,
+ VkVideoGetMemoryPropertiesKHR* to);
+
+void deepcopy_VkVideoBindMemoryKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* from,
+ VkVideoBindMemoryKHR* to);
+
+void deepcopy_VkVideoSessionCreateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* from,
+ VkVideoSessionCreateInfoKHR* to);
+
+void deepcopy_VkVideoSessionParametersCreateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* from,
+ VkVideoSessionParametersCreateInfoKHR* to);
+
+void deepcopy_VkVideoSessionParametersUpdateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* from,
+ VkVideoSessionParametersUpdateInfoKHR* to);
+
+void deepcopy_VkVideoBeginCodingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* from,
+ VkVideoBeginCodingInfoKHR* to);
+
+void deepcopy_VkVideoEndCodingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* from,
+ VkVideoEndCodingInfoKHR* to);
+
+void deepcopy_VkVideoCodingControlInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* from,
+ VkVideoCodingControlInfoKHR* to);
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void deepcopy_VkVideoDecodeInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* from,
+ VkVideoDecodeInfoKHR* to);
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void deepcopy_VkRenderingAttachmentInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* from,
+ VkRenderingAttachmentInfoKHR* to);
+
+void deepcopy_VkRenderingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* from,
+ VkRenderingInfoKHR* to);
+
+void deepcopy_VkPipelineRenderingCreateInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* from,
+ VkPipelineRenderingCreateInfoKHR* to);
+
+void deepcopy_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* from,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* to);
+
+void deepcopy_VkCommandBufferInheritanceRenderingInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* from,
+ VkCommandBufferInheritanceRenderingInfoKHR* to);
+
+void deepcopy_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* from,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* to);
+
+void deepcopy_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* from,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* to);
+
+void deepcopy_VkAttachmentSampleCountInfoAMD(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* from,
+ VkAttachmentSampleCountInfoAMD* to);
+
+DEFINE_ALIAS_FUNCTION(deepcopy_VkAttachmentSampleCountInfoAMD, deepcopy_VkAttachmentSampleCountInfoNV)
+
+void deepcopy_VkMultiviewPerViewAttributesInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* from,
+ VkMultiviewPerViewAttributesInfoNVX* to);
+
+#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(deepcopy_VkRenderPassMultiviewCreateInfo, deepcopy_VkRenderPassMultiviewCreateInfoKHR)
@@ -2183,6 +2353,14 @@
DEFINE_ALIAS_FUNCTION(deepcopy_VkAttachmentDescriptionStencilLayout, deepcopy_VkAttachmentDescriptionStencilLayoutKHR)
#endif
+#ifdef VK_KHR_present_wait
+void deepcopy_VkPhysicalDevicePresentWaitFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* from,
+ VkPhysicalDevicePresentWaitFeaturesKHR* to);
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(deepcopy_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, deepcopy_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR)
@@ -2245,6 +2423,20 @@
VkPipelineExecutableInternalRepresentationKHR* to);
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void deepcopy_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* from,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* to);
+
+void deepcopy_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* from,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* to);
+
+#endif
#ifdef VK_KHR_pipeline_library
void deepcopy_VkPipelineLibraryCreateInfoKHR(
Allocator* alloc,
@@ -2255,6 +2447,120 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void deepcopy_VkPresentIdKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPresentIdKHR* from,
+ VkPresentIdKHR* to);
+
+void deepcopy_VkPhysicalDevicePresentIdFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* from,
+ VkPhysicalDevicePresentIdFeaturesKHR* to);
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void deepcopy_VkVideoEncodeInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* from,
+ VkVideoEncodeInfoKHR* to);
+
+void deepcopy_VkVideoEncodeRateControlInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* from,
+ VkVideoEncodeRateControlInfoKHR* to);
+
+#endif
+#ifdef VK_KHR_synchronization2
+void deepcopy_VkMemoryBarrier2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* from,
+ VkMemoryBarrier2KHR* to);
+
+void deepcopy_VkBufferMemoryBarrier2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* from,
+ VkBufferMemoryBarrier2KHR* to);
+
+void deepcopy_VkImageMemoryBarrier2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* from,
+ VkImageMemoryBarrier2KHR* to);
+
+void deepcopy_VkDependencyInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* from,
+ VkDependencyInfoKHR* to);
+
+void deepcopy_VkSemaphoreSubmitInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* from,
+ VkSemaphoreSubmitInfoKHR* to);
+
+void deepcopy_VkCommandBufferSubmitInfoKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* from,
+ VkCommandBufferSubmitInfoKHR* to);
+
+void deepcopy_VkSubmitInfo2KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* from,
+ VkSubmitInfo2KHR* to);
+
+void deepcopy_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* from,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* to);
+
+void deepcopy_VkQueueFamilyCheckpointProperties2NV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* from,
+ VkQueueFamilyCheckpointProperties2NV* to);
+
+void deepcopy_VkCheckpointData2NV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* from,
+ VkCheckpointData2NV* to);
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void deepcopy_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* from,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* to);
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void deepcopy_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* from,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* to);
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void deepcopy_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* from,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* to);
+
+#endif
#ifdef VK_KHR_copy_commands2
void deepcopy_VkBufferCopy2KHR(
Allocator* alloc,
@@ -2323,6 +2629,40 @@
VkResolveImageInfo2KHR* to);
#endif
+#ifdef VK_KHR_format_feature_flags2
+void deepcopy_VkFormatProperties3KHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* from,
+ VkFormatProperties3KHR* to);
+
+#endif
+#ifdef VK_KHR_maintenance4
+void deepcopy_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* from,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* to);
+
+void deepcopy_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* from,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* to);
+
+void deepcopy_VkDeviceBufferMemoryRequirementsKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* from,
+ VkDeviceBufferMemoryRequirementsKHR* to);
+
+void deepcopy_VkDeviceImageMemoryRequirementsKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* from,
+ VkDeviceImageMemoryRequirementsKHR* to);
+
+#endif
#ifdef VK_ANDROID_native_buffer
void deepcopy_VkNativeBufferANDROID(
Allocator* alloc,
@@ -2419,6 +2759,26 @@
VkPipelineRasterizationStateStreamCreateInfoEXT* to);
#endif
+#ifdef VK_NVX_binary_import
+void deepcopy_VkCuModuleCreateInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* from,
+ VkCuModuleCreateInfoNVX* to);
+
+void deepcopy_VkCuFunctionCreateInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* from,
+ VkCuFunctionCreateInfoNVX* to);
+
+void deepcopy_VkCuLaunchInfoNVX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* from,
+ VkCuLaunchInfoNVX* to);
+
+#endif
#ifdef VK_NVX_image_view_handle
void deepcopy_VkImageViewHandleInfoNVX(
Allocator* alloc,
@@ -2441,6 +2801,174 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void deepcopy_VkVideoEncodeH264CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* from,
+ VkVideoEncodeH264CapabilitiesEXT* to);
+
+void deepcopy_VkVideoEncodeH264SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* from,
+ VkVideoEncodeH264SessionCreateInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* from,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* from,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH264DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* from,
+ VkVideoEncodeH264DpbSlotInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH264NaluSliceEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* from,
+ VkVideoEncodeH264NaluSliceEXT* to);
+
+void deepcopy_VkVideoEncodeH264VclFrameInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* from,
+ VkVideoEncodeH264VclFrameInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH264EmitPictureParametersEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* from,
+ VkVideoEncodeH264EmitPictureParametersEXT* to);
+
+void deepcopy_VkVideoEncodeH264ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* from,
+ VkVideoEncodeH264ProfileEXT* to);
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void deepcopy_VkVideoEncodeH265CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* from,
+ VkVideoEncodeH265CapabilitiesEXT* to);
+
+void deepcopy_VkVideoEncodeH265SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* from,
+ VkVideoEncodeH265SessionCreateInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* from,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* from,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH265DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* from,
+ VkVideoEncodeH265DpbSlotInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH265ReferenceListsEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* from,
+ VkVideoEncodeH265ReferenceListsEXT* to);
+
+void deepcopy_VkVideoEncodeH265NaluSliceEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* from,
+ VkVideoEncodeH265NaluSliceEXT* to);
+
+void deepcopy_VkVideoEncodeH265VclFrameInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* from,
+ VkVideoEncodeH265VclFrameInfoEXT* to);
+
+void deepcopy_VkVideoEncodeH265EmitPictureParametersEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* from,
+ VkVideoEncodeH265EmitPictureParametersEXT* to);
+
+void deepcopy_VkVideoEncodeH265ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* from,
+ VkVideoEncodeH265ProfileEXT* to);
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void deepcopy_VkVideoDecodeH264ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* from,
+ VkVideoDecodeH264ProfileEXT* to);
+
+void deepcopy_VkVideoDecodeH264CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* from,
+ VkVideoDecodeH264CapabilitiesEXT* to);
+
+void deepcopy_VkVideoDecodeH264SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* from,
+ VkVideoDecodeH264SessionCreateInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* from,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* from,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH264PictureInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* from,
+ VkVideoDecodeH264PictureInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH264MvcEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* from,
+ VkVideoDecodeH264MvcEXT* to);
+
+void deepcopy_VkVideoDecodeH264DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* from,
+ VkVideoDecodeH264DpbSlotInfoEXT* to);
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void deepcopy_VkTextureLODGatherFormatPropertiesAMD(
Allocator* alloc,
@@ -2844,6 +3372,12 @@
const VkExternalFormatANDROID* from,
VkExternalFormatANDROID* to);
+void deepcopy_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* from,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* to);
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(deepcopy_VkSamplerReductionModeCreateInfo, deepcopy_VkSamplerReductionModeCreateInfoEXT)
@@ -3026,6 +3560,18 @@
const VkImageDrmFormatModifierPropertiesEXT* from,
VkImageDrmFormatModifierPropertiesEXT* to);
+void deepcopy_VkDrmFormatModifierProperties2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* from,
+ VkDrmFormatModifierProperties2EXT* to);
+
+void deepcopy_VkDrmFormatModifierPropertiesList2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* from,
+ VkDrmFormatModifierPropertiesList2EXT* to);
+
#endif
#ifdef VK_EXT_validation_cache
void deepcopy_VkValidationCacheCreateInfoEXT(
@@ -3281,6 +3827,50 @@
VkPhysicalDeviceShaderCorePropertiesAMD* to);
#endif
+#ifdef VK_EXT_video_decode_h265
+void deepcopy_VkVideoDecodeH265ProfileEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* from,
+ VkVideoDecodeH265ProfileEXT* to);
+
+void deepcopy_VkVideoDecodeH265CapabilitiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* from,
+ VkVideoDecodeH265CapabilitiesEXT* to);
+
+void deepcopy_VkVideoDecodeH265SessionCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* from,
+ VkVideoDecodeH265SessionCreateInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* from,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* from,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH265PictureInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* from,
+ VkVideoDecodeH265PictureInfoEXT* to);
+
+void deepcopy_VkVideoDecodeH265DpbSlotInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* from,
+ VkVideoDecodeH265DpbSlotInfoEXT* to);
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void deepcopy_VkDeviceMemoryOverallocationCreateInfoAMD(
Allocator* alloc,
@@ -3705,6 +4295,26 @@
VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* to);
#endif
+#ifdef VK_EXT_provoking_vertex
+void deepcopy_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* from,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* to);
+
+void deepcopy_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* from,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* to);
+
+void deepcopy_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* from,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* to);
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void deepcopy_VkSurfaceFullScreenExclusiveInfoEXT(
Allocator* alloc,
@@ -3781,6 +4391,14 @@
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* to);
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void deepcopy_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* from,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* to);
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void deepcopy_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
Allocator* alloc,
@@ -3869,6 +4487,20 @@
VkGeneratedCommandsMemoryRequirementsInfoNV* to);
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void deepcopy_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* from,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* to);
+
+void deepcopy_VkCommandBufferInheritanceViewportScissorInfoNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* from,
+ VkCommandBufferInheritanceViewportScissorInfoNV* to);
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void deepcopy_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
Allocator* alloc,
@@ -3917,6 +4549,8 @@
VkDeviceDeviceMemoryReportCreateInfoEXT* to);
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void deepcopy_VkPhysicalDeviceRobustness2FeaturesEXT(
Allocator* alloc,
@@ -4017,6 +4651,70 @@
VkPipelineFragmentShadingRateEnumStateCreateInfoNV* to);
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void deepcopy_VkDeviceOrHostAddressConstKHR(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* from,
+ VkDeviceOrHostAddressConstKHR* to);
+
+void deepcopy_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* from,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* to);
+
+void deepcopy_VkAccelerationStructureMotionInfoNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* from,
+ VkAccelerationStructureMotionInfoNV* to);
+
+void deepcopy_VkAccelerationStructureMatrixMotionInstanceNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* from,
+ VkAccelerationStructureMatrixMotionInstanceNV* to);
+
+void deepcopy_VkSRTDataNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSRTDataNV* from,
+ VkSRTDataNV* to);
+
+void deepcopy_VkAccelerationStructureSRTMotionInstanceNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* from,
+ VkAccelerationStructureSRTMotionInstanceNV* to);
+
+void deepcopy_VkAccelerationStructureMotionInstanceDataNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* from,
+ VkAccelerationStructureMotionInstanceDataNV* to);
+
+void deepcopy_VkAccelerationStructureMotionInstanceNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* from,
+ VkAccelerationStructureMotionInstanceNV* to);
+
+void deepcopy_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* from,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* to);
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void deepcopy_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* from,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* to);
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void deepcopy_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
Allocator* alloc,
@@ -4055,6 +4753,16 @@
VkPhysicalDevice4444FormatsFeaturesEXT* to);
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void deepcopy_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* from,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* to);
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void deepcopy_VkDirectFBSurfaceCreateInfoEXT(
Allocator* alloc,
@@ -4063,6 +4771,230 @@
VkDirectFBSurfaceCreateInfoEXT* to);
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void deepcopy_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* from,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* to);
+
+void deepcopy_VkMutableDescriptorTypeListVALVE(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* from,
+ VkMutableDescriptorTypeListVALVE* to);
+
+void deepcopy_VkMutableDescriptorTypeCreateInfoVALVE(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* from,
+ VkMutableDescriptorTypeCreateInfoVALVE* to);
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void deepcopy_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* from,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* to);
+
+void deepcopy_VkVertexInputBindingDescription2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* from,
+ VkVertexInputBindingDescription2EXT* to);
+
+void deepcopy_VkVertexInputAttributeDescription2EXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* from,
+ VkVertexInputAttributeDescription2EXT* to);
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void deepcopy_VkPhysicalDeviceDrmPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* from,
+ VkPhysicalDeviceDrmPropertiesEXT* to);
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void deepcopy_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* from,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* to);
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void deepcopy_VkImportMemoryZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* from,
+ VkImportMemoryZirconHandleInfoFUCHSIA* to);
+
+void deepcopy_VkMemoryZirconHandlePropertiesFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* from,
+ VkMemoryZirconHandlePropertiesFUCHSIA* to);
+
+void deepcopy_VkMemoryGetZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* from,
+ VkMemoryGetZirconHandleInfoFUCHSIA* to);
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void deepcopy_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* from,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* to);
+
+void deepcopy_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* from,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* to);
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void deepcopy_VkBufferCollectionCreateInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* from,
+ VkBufferCollectionCreateInfoFUCHSIA* to);
+
+void deepcopy_VkImportMemoryBufferCollectionFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* from,
+ VkImportMemoryBufferCollectionFUCHSIA* to);
+
+void deepcopy_VkBufferCollectionImageCreateInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* from,
+ VkBufferCollectionImageCreateInfoFUCHSIA* to);
+
+void deepcopy_VkBufferCollectionConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* from,
+ VkBufferCollectionConstraintsInfoFUCHSIA* to);
+
+void deepcopy_VkBufferConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* from,
+ VkBufferConstraintsInfoFUCHSIA* to);
+
+void deepcopy_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* from,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* to);
+
+void deepcopy_VkSysmemColorSpaceFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* from,
+ VkSysmemColorSpaceFUCHSIA* to);
+
+void deepcopy_VkBufferCollectionPropertiesFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* from,
+ VkBufferCollectionPropertiesFUCHSIA* to);
+
+void deepcopy_VkImageFormatConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* from,
+ VkImageFormatConstraintsInfoFUCHSIA* to);
+
+void deepcopy_VkImageConstraintsInfoFUCHSIA(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* from,
+ VkImageConstraintsInfoFUCHSIA* to);
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void deepcopy_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* from,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* to);
+
+void deepcopy_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* from,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* to);
+
+void deepcopy_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* from,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* to);
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void deepcopy_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* from,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* to);
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void deepcopy_VkMemoryGetRemoteAddressInfoNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* from,
+ VkMemoryGetRemoteAddressInfoNV* to);
+
+void deepcopy_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* from,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* to);
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void deepcopy_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* from,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* to);
+
+#endif
+#ifdef VK_QNX_screen_surface
+void deepcopy_VkScreenSurfaceCreateInfoQNX(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* from,
+ VkScreenSurfaceCreateInfoQNX* to);
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void deepcopy_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* from,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* to);
+
+void deepcopy_VkPipelineColorWriteCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* from,
+ VkPipelineColorWriteCreateInfoEXT* to);
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void deepcopy_VkImportColorBufferGOOGLE(
Allocator* alloc,
@@ -4083,6 +5015,70 @@
VkImportPhysicalAddressGOOGLE* to);
#endif
+#ifdef VK_EXT_global_priority_query
+void deepcopy_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* from,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* to);
+
+void deepcopy_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* from,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* to);
+
+#endif
+#ifdef VK_EXT_multi_draw
+void deepcopy_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* from,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* to);
+
+void deepcopy_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* from,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* to);
+
+void deepcopy_VkMultiDrawInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* from,
+ VkMultiDrawInfoEXT* to);
+
+void deepcopy_VkMultiDrawIndexedInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* from,
+ VkMultiDrawIndexedInfoEXT* to);
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void deepcopy_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* from,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* to);
+
+void deepcopy_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* from,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* to);
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void deepcopy_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ Allocator* alloc,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* from,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* to);
+
+#endif
#ifdef VK_KHR_acceleration_structure
void deepcopy_VkDeviceOrHostAddressKHR(
Allocator* alloc,
@@ -4090,12 +5086,6 @@
const VkDeviceOrHostAddressKHR* from,
VkDeviceOrHostAddressKHR* to);
-void deepcopy_VkDeviceOrHostAddressConstKHR(
- Allocator* alloc,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* from,
- VkDeviceOrHostAddressConstKHR* to);
-
void deepcopy_VkAccelerationStructureBuildRangeInfoKHR(
Allocator* alloc,
VkStructureType rootType,
diff --git a/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp b/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp
index 5984b4d..7abd647 100644
--- a/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_extension_structs_guest.cpp
@@ -54,6 +54,12 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+#endif
+#ifdef VK_KHR_video_decode_queue
+#endif
+#ifdef VK_KHR_dynamic_rendering
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -168,6 +174,8 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -176,12 +184,30 @@
#endif
#ifdef VK_KHR_pipeline_executable_properties
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+#endif
#ifdef VK_KHR_pipeline_library
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+#endif
+#ifdef VK_KHR_video_encode_queue
+#endif
+#ifdef VK_KHR_synchronization2
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+#endif
#ifdef VK_KHR_copy_commands2
#endif
+#ifdef VK_KHR_format_feature_flags2
+#endif
+#ifdef VK_KHR_maintenance4
+#endif
#ifdef VK_ANDROID_native_buffer
#endif
#ifdef VK_EXT_debug_report
@@ -206,6 +232,8 @@
#endif
#ifdef VK_EXT_transform_feedback
#endif
+#ifdef VK_NVX_binary_import
+#endif
#ifdef VK_NVX_image_view_handle
#endif
#ifdef VK_AMD_draw_indirect_count
@@ -216,6 +244,12 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+#endif
+#ifdef VK_EXT_video_encode_h265
+#endif
+#ifdef VK_EXT_video_decode_h264
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
#endif
#ifdef VK_AMD_shader_info
@@ -352,6 +386,8 @@
#endif
#ifdef VK_AMD_shader_core_properties
#endif
+#ifdef VK_EXT_video_decode_h265
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
#endif
#ifdef VK_EXT_vertex_attribute_divisor
@@ -424,6 +460,8 @@
#endif
#ifdef VK_EXT_ycbcr_image_arrays
#endif
+#ifdef VK_EXT_provoking_vertex
+#endif
#ifdef VK_EXT_full_screen_exclusive
#endif
#ifdef VK_EXT_headless_surface
@@ -438,16 +476,22 @@
#endif
#ifdef VK_EXT_extended_dynamic_state
#endif
+#ifdef VK_EXT_shader_atomic_float2
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
#endif
#ifdef VK_NV_device_generated_commands
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+#endif
#ifdef VK_EXT_texel_buffer_alignment
#endif
#ifdef VK_QCOM_render_pass_transform
#endif
#ifdef VK_EXT_device_memory_report
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
#endif
#ifdef VK_EXT_custom_border_color
@@ -464,6 +508,10 @@
#endif
#ifdef VK_NV_fragment_shading_rate_enums
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+#endif
#ifdef VK_EXT_fragment_density_map2
#endif
#ifdef VK_QCOM_rotated_copy_commands
@@ -472,10 +520,50 @@
#endif
#ifdef VK_EXT_4444_formats
#endif
+#ifdef VK_EXT_rgba10x6_formats
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+#endif
+#ifdef VK_EXT_physical_device_drm
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+#endif
+#ifdef VK_FUCHSIA_external_memory
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+#endif
+#ifdef VK_NV_external_memory_rdma
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+#endif
+#ifdef VK_QNX_screen_surface
+#endif
+#ifdef VK_EXT_color_write_enable
+#endif
#ifdef VK_GOOGLE_gfxstream
#endif
+#ifdef VK_EXT_global_priority_query
+#endif
+#ifdef VK_EXT_multi_draw
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+#endif
#ifdef VK_KHR_acceleration_structure
#endif
#ifdef VK_KHR_ray_tracing_pipeline
@@ -836,6 +924,50 @@
return sizeof(VkDisplayPresentInfoKHR);
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ return sizeof(VkVideoQueueFamilyProperties2KHR);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ return sizeof(VkVideoProfileKHR);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ return sizeof(VkVideoProfilesKHR);
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ return sizeof(VkPipelineRenderingCreateInfoKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceDynamicRenderingFeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ return sizeof(VkCommandBufferInheritanceRenderingInfoKHR);
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ return sizeof(VkRenderingFragmentShadingRateAttachmentInfoKHR);
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ return sizeof(VkRenderingFragmentDensityMapAttachmentInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ return sizeof(VkAttachmentSampleCountInfoAMD);
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ return sizeof(VkMultiviewPerViewAttributesInfoNVX);
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -956,12 +1088,92 @@
return sizeof(VkSurfaceProtectedCapabilitiesKHR);
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDevicePresentWaitFeaturesKHR);
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
return sizeof(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR);
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR);
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ return sizeof(VkPresentIdKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDevicePresentIdFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ return sizeof(VkVideoEncodeRateControlInfoKHR);
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ return sizeof(VkMemoryBarrier2KHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceSynchronization2FeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ return sizeof(VkQueueFamilyCheckpointProperties2NV);
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ return sizeof(VkFormatProperties3KHR);
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceMaintenance4FeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceMaintenance4PropertiesKHR);
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -1008,6 +1220,100 @@
return sizeof(VkPipelineRasterizationStateStreamCreateInfoEXT);
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoEncodeH264CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264VclFrameInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ return sizeof(VkVideoEncodeH264EmitPictureParametersEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ return sizeof(VkVideoEncodeH264ProfileEXT);
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoEncodeH265CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265VclFrameInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ return sizeof(VkVideoEncodeH265EmitPictureParametersEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ return sizeof(VkVideoEncodeH265ProfileEXT);
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ return sizeof(VkVideoDecodeH264ProfileEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoDecodeH264CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264PictureInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ return sizeof(VkVideoDecodeH264MvcEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264DpbSlotInfoEXT);
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -1161,6 +1467,10 @@
{
return sizeof(VkExternalFormatANDROID);
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ return sizeof(VkAndroidHardwareBufferFormatProperties2ANDROID);
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -1251,6 +1561,10 @@
{
return sizeof(VkImageDrmFormatModifierExplicitCreateInfoEXT);
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ return sizeof(VkDrmFormatModifierPropertiesList2EXT);
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -1334,6 +1648,36 @@
return sizeof(VkPhysicalDeviceShaderCorePropertiesAMD);
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ return sizeof(VkVideoDecodeH265ProfileEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoDecodeH265CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265PictureInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265DpbSlotInfoEXT);
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -1615,6 +1959,20 @@
return sizeof(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT);
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceProvokingVertexFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceProvokingVertexPropertiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ return sizeof(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT);
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -1661,6 +2019,12 @@
return sizeof(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT);
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT);
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -1681,6 +2045,16 @@
return sizeof(VkGraphicsPipelineShaderGroupsCreateInfoNV);
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ return sizeof(VkPhysicalDeviceInheritedViewportScissorFeaturesNV);
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ return sizeof(VkCommandBufferInheritanceViewportScissorInfoNV);
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -1775,6 +2149,26 @@
return sizeof(VkPipelineFragmentShadingRateEnumStateCreateInfoNV);
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ return sizeof(VkAccelerationStructureGeometryMotionTrianglesDataNV);
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ return sizeof(VkAccelerationStructureMotionInfoNV);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ return sizeof(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV);
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT);
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -1803,6 +2197,102 @@
return sizeof(VkPhysicalDevice4444FormatsFeaturesEXT);
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT);
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ return sizeof(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE);
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ return sizeof(VkMutableDescriptorTypeCreateInfoVALVE);
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT);
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceDrmPropertiesEXT);
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT);
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ return sizeof(VkImportMemoryZirconHandleInfoFUCHSIA);
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ return sizeof(VkImportMemoryBufferCollectionFUCHSIA);
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ return sizeof(VkBufferCollectionImageCreateInfoFUCHSIA);
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ return sizeof(VkBufferCollectionBufferCreateInfoFUCHSIA);
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ return sizeof(VkSubpassShadingPipelineCreateInfoHUAWEI);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ return sizeof(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ return sizeof(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI);
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ return sizeof(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI);
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ return sizeof(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV);
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT);
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceColorWriteEnableFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ return sizeof(VkPipelineColorWriteCreateInfoEXT);
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -1817,6 +2307,42 @@
return sizeof(VkImportPhysicalAddressGOOGLE);
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ return sizeof(VkQueueFamilyGlobalPriorityPropertiesEXT);
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceMultiDrawFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceMultiDrawPropertiesEXT);
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ return sizeof(VkSamplerBorderColorComponentMappingCreateInfoEXT);
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT);
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
@@ -2209,6 +2735,50 @@
return sizeof(VkDisplayPresentInfoKHR);
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ return sizeof(VkVideoQueueFamilyProperties2KHR);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ return sizeof(VkVideoProfileKHR);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ return sizeof(VkVideoProfilesKHR);
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ return sizeof(VkPipelineRenderingCreateInfoKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceDynamicRenderingFeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ return sizeof(VkCommandBufferInheritanceRenderingInfoKHR);
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ return sizeof(VkRenderingFragmentShadingRateAttachmentInfoKHR);
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ return sizeof(VkRenderingFragmentDensityMapAttachmentInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ return sizeof(VkAttachmentSampleCountInfoAMD);
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ return sizeof(VkMultiviewPerViewAttributesInfoNVX);
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -2329,12 +2899,92 @@
return sizeof(VkSurfaceProtectedCapabilitiesKHR);
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDevicePresentWaitFeaturesKHR);
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
return sizeof(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR);
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR);
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ return sizeof(VkPresentIdKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDevicePresentIdFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ return sizeof(VkVideoEncodeRateControlInfoKHR);
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ return sizeof(VkMemoryBarrier2KHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceSynchronization2FeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ return sizeof(VkQueueFamilyCheckpointProperties2NV);
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR);
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ return sizeof(VkFormatProperties3KHR);
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceMaintenance4FeaturesKHR);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ return sizeof(VkPhysicalDeviceMaintenance4PropertiesKHR);
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -2381,6 +3031,100 @@
return sizeof(VkPipelineRasterizationStateStreamCreateInfoEXT);
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoEncodeH264CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH264VclFrameInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ return sizeof(VkVideoEncodeH264EmitPictureParametersEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ return sizeof(VkVideoEncodeH264ProfileEXT);
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoEncodeH265CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ return sizeof(VkVideoEncodeH265VclFrameInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ return sizeof(VkVideoEncodeH265EmitPictureParametersEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ return sizeof(VkVideoEncodeH265ProfileEXT);
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ return sizeof(VkVideoDecodeH264ProfileEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoDecodeH264CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264PictureInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ return sizeof(VkVideoDecodeH264MvcEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH264DpbSlotInfoEXT);
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -2534,6 +3278,10 @@
{
return sizeof(VkExternalFormatANDROID);
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ return sizeof(VkAndroidHardwareBufferFormatProperties2ANDROID);
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -2624,6 +3372,10 @@
{
return sizeof(VkImageDrmFormatModifierExplicitCreateInfoEXT);
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ return sizeof(VkDrmFormatModifierPropertiesList2EXT);
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -2707,6 +3459,36 @@
return sizeof(VkPhysicalDeviceShaderCorePropertiesAMD);
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ return sizeof(VkVideoDecodeH265ProfileEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ return sizeof(VkVideoDecodeH265CapabilitiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265SessionCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265SessionParametersAddInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265SessionParametersCreateInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265PictureInfoEXT);
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ return sizeof(VkVideoDecodeH265DpbSlotInfoEXT);
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -2988,6 +3770,20 @@
return sizeof(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT);
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceProvokingVertexFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceProvokingVertexPropertiesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ return sizeof(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT);
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -3034,6 +3830,12 @@
return sizeof(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT);
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT);
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -3054,6 +3856,16 @@
return sizeof(VkGraphicsPipelineShaderGroupsCreateInfoNV);
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ return sizeof(VkPhysicalDeviceInheritedViewportScissorFeaturesNV);
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ return sizeof(VkCommandBufferInheritanceViewportScissorInfoNV);
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -3148,6 +3960,26 @@
return sizeof(VkPipelineFragmentShadingRateEnumStateCreateInfoNV);
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ return sizeof(VkAccelerationStructureGeometryMotionTrianglesDataNV);
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ return sizeof(VkAccelerationStructureMotionInfoNV);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ return sizeof(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV);
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT);
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -3176,6 +4008,102 @@
return sizeof(VkPhysicalDevice4444FormatsFeaturesEXT);
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT);
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ return sizeof(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE);
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ return sizeof(VkMutableDescriptorTypeCreateInfoVALVE);
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT);
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceDrmPropertiesEXT);
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT);
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ return sizeof(VkImportMemoryZirconHandleInfoFUCHSIA);
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ return sizeof(VkImportMemoryBufferCollectionFUCHSIA);
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ return sizeof(VkBufferCollectionImageCreateInfoFUCHSIA);
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ return sizeof(VkBufferCollectionBufferCreateInfoFUCHSIA);
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ return sizeof(VkSubpassShadingPipelineCreateInfoHUAWEI);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ return sizeof(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ return sizeof(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI);
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ return sizeof(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI);
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ return sizeof(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV);
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT);
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceColorWriteEnableFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ return sizeof(VkPipelineColorWriteCreateInfoEXT);
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -3190,6 +4118,42 @@
return sizeof(VkImportPhysicalAddressGOOGLE);
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ return sizeof(VkQueueFamilyGlobalPriorityPropertiesEXT);
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceMultiDrawFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceMultiDrawPropertiesEXT);
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT);
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ return sizeof(VkSamplerBorderColorComponentMappingCreateInfoEXT);
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ return sizeof(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT);
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
diff --git a/system/vulkan_enc/goldfish_vk_extension_structs_guest.h b/system/vulkan_enc/goldfish_vk_extension_structs_guest.h
index 6bae0b8..5c7d486 100644
--- a/system/vulkan_enc/goldfish_vk_extension_structs_guest.h
+++ b/system/vulkan_enc/goldfish_vk_extension_structs_guest.h
@@ -77,6 +77,12 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+#endif
+#ifdef VK_KHR_video_decode_queue
+#endif
+#ifdef VK_KHR_dynamic_rendering
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -191,6 +197,8 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -199,12 +207,30 @@
#endif
#ifdef VK_KHR_pipeline_executable_properties
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+#endif
#ifdef VK_KHR_pipeline_library
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+#endif
+#ifdef VK_KHR_video_encode_queue
+#endif
+#ifdef VK_KHR_synchronization2
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+#endif
#ifdef VK_KHR_copy_commands2
#endif
+#ifdef VK_KHR_format_feature_flags2
+#endif
+#ifdef VK_KHR_maintenance4
+#endif
#ifdef VK_ANDROID_native_buffer
#endif
#ifdef VK_EXT_debug_report
@@ -229,6 +255,8 @@
#endif
#ifdef VK_EXT_transform_feedback
#endif
+#ifdef VK_NVX_binary_import
+#endif
#ifdef VK_NVX_image_view_handle
#endif
#ifdef VK_AMD_draw_indirect_count
@@ -239,6 +267,12 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+#endif
+#ifdef VK_EXT_video_encode_h265
+#endif
+#ifdef VK_EXT_video_decode_h264
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
#endif
#ifdef VK_AMD_shader_info
@@ -375,6 +409,8 @@
#endif
#ifdef VK_AMD_shader_core_properties
#endif
+#ifdef VK_EXT_video_decode_h265
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
#endif
#ifdef VK_EXT_vertex_attribute_divisor
@@ -447,6 +483,8 @@
#endif
#ifdef VK_EXT_ycbcr_image_arrays
#endif
+#ifdef VK_EXT_provoking_vertex
+#endif
#ifdef VK_EXT_full_screen_exclusive
#endif
#ifdef VK_EXT_headless_surface
@@ -461,16 +499,22 @@
#endif
#ifdef VK_EXT_extended_dynamic_state
#endif
+#ifdef VK_EXT_shader_atomic_float2
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
#endif
#ifdef VK_NV_device_generated_commands
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+#endif
#ifdef VK_EXT_texel_buffer_alignment
#endif
#ifdef VK_QCOM_render_pass_transform
#endif
#ifdef VK_EXT_device_memory_report
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
#endif
#ifdef VK_EXT_custom_border_color
@@ -487,6 +531,10 @@
#endif
#ifdef VK_NV_fragment_shading_rate_enums
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+#endif
#ifdef VK_EXT_fragment_density_map2
#endif
#ifdef VK_QCOM_rotated_copy_commands
@@ -495,10 +543,50 @@
#endif
#ifdef VK_EXT_4444_formats
#endif
+#ifdef VK_EXT_rgba10x6_formats
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+#endif
+#ifdef VK_EXT_physical_device_drm
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+#endif
+#ifdef VK_FUCHSIA_external_memory
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+#endif
+#ifdef VK_NV_external_memory_rdma
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+#endif
+#ifdef VK_QNX_screen_surface
+#endif
+#ifdef VK_EXT_color_write_enable
+#endif
#ifdef VK_GOOGLE_gfxstream
#endif
+#ifdef VK_EXT_global_priority_query
+#endif
+#ifdef VK_EXT_multi_draw
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+#endif
#ifdef VK_KHR_acceleration_structure
#endif
#ifdef VK_KHR_ray_tracing_pipeline
diff --git a/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp b/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp
index 269b50b..95ca034 100644
--- a/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_handlemap_guest.cpp
@@ -173,6 +173,14 @@
}
}
+void handlemap_VkPipelineCacheHeaderVersionOne(
+ VulkanHandleMapping* handlemap,
+ VkPipelineCacheHeaderVersionOne* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+}
+
void handlemap_VkAllocationCallbacks(
VulkanHandleMapping* handlemap,
VkAllocationCallbacks* toMap)
@@ -3427,6 +3435,409 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void handlemap_VkVideoQueueFamilyProperties2KHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoQueueFamilyProperties2KHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoProfileKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoProfileKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoProfilesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoProfilesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pProfiles)
+ {
+ handlemap_VkVideoProfileKHR(handlemap, (VkVideoProfileKHR*)(toMap->pProfiles));
+ }
+}
+
+void handlemap_VkVideoCapabilitiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoCapabilitiesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->videoPictureExtentGranularity));
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->minExtent));
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->maxExtent));
+}
+
+void handlemap_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceVideoFormatInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pVideoProfiles)
+ {
+ handlemap_VkVideoProfilesKHR(handlemap, (VkVideoProfilesKHR*)(toMap->pVideoProfiles));
+ }
+}
+
+void handlemap_VkVideoFormatPropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoFormatPropertiesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoPictureResourceKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoPictureResourceKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkOffset2D(handlemap, (VkOffset2D*)(&toMap->codedOffset));
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->codedExtent));
+ handlemap->mapHandles_VkImageView((VkImageView*)&toMap->imageViewBinding);
+}
+
+void handlemap_VkVideoReferenceSlotKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoReferenceSlotKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pPictureResource)
+ {
+ handlemap_VkVideoPictureResourceKHR(handlemap, (VkVideoPictureResourceKHR*)(toMap->pPictureResource));
+ }
+}
+
+void handlemap_VkVideoGetMemoryPropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoGetMemoryPropertiesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pMemoryRequirements)
+ {
+ handlemap_VkMemoryRequirements2(handlemap, (VkMemoryRequirements2*)(toMap->pMemoryRequirements));
+ }
+}
+
+void handlemap_VkVideoBindMemoryKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoBindMemoryKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkDeviceMemory((VkDeviceMemory*)&toMap->memory);
+}
+
+void handlemap_VkVideoSessionCreateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoSessionCreateInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pVideoProfile)
+ {
+ handlemap_VkVideoProfileKHR(handlemap, (VkVideoProfileKHR*)(toMap->pVideoProfile));
+ }
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->maxCodedExtent));
+}
+
+void handlemap_VkVideoSessionParametersCreateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoSessionParametersCreateInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkVideoSessionParametersKHR((VkVideoSessionParametersKHR*)&toMap->videoSessionParametersTemplate);
+ handlemap->mapHandles_VkVideoSessionKHR((VkVideoSessionKHR*)&toMap->videoSession);
+}
+
+void handlemap_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoSessionParametersUpdateInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoBeginCodingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoBeginCodingInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkVideoSessionKHR((VkVideoSessionKHR*)&toMap->videoSession);
+ handlemap->mapHandles_VkVideoSessionParametersKHR((VkVideoSessionParametersKHR*)&toMap->videoSessionParameters);
+ if (toMap)
+ {
+ if (toMap->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->referenceSlotCount; ++i)
+ {
+ handlemap_VkVideoReferenceSlotKHR(handlemap, (VkVideoReferenceSlotKHR*)(toMap->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkVideoEndCodingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoEndCodingInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoCodingControlInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoCodingControlInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void handlemap_VkVideoDecodeInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkOffset2D(handlemap, (VkOffset2D*)(&toMap->codedOffset));
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->codedExtent));
+ handlemap->mapHandles_VkBuffer((VkBuffer*)&toMap->srcBuffer);
+ handlemap_VkVideoPictureResourceKHR(handlemap, (VkVideoPictureResourceKHR*)(&toMap->dstPictureResource));
+ if (toMap->pSetupReferenceSlot)
+ {
+ handlemap_VkVideoReferenceSlotKHR(handlemap, (VkVideoReferenceSlotKHR*)(toMap->pSetupReferenceSlot));
+ }
+ if (toMap)
+ {
+ if (toMap->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->referenceSlotCount; ++i)
+ {
+ handlemap_VkVideoReferenceSlotKHR(handlemap, (VkVideoReferenceSlotKHR*)(toMap->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void handlemap_VkRenderingAttachmentInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkRenderingAttachmentInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkImageView((VkImageView*)&toMap->imageView);
+ handlemap->mapHandles_VkImageView((VkImageView*)&toMap->resolveImageView);
+ handlemap_VkClearValue(handlemap, (VkClearValue*)(&toMap->clearValue));
+}
+
+void handlemap_VkRenderingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkRenderingInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkRect2D(handlemap, (VkRect2D*)(&toMap->renderArea));
+ if (toMap)
+ {
+ if (toMap->pColorAttachments)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->colorAttachmentCount; ++i)
+ {
+ handlemap_VkRenderingAttachmentInfoKHR(handlemap, (VkRenderingAttachmentInfoKHR*)(toMap->pColorAttachments + i));
+ }
+ }
+ }
+ if (toMap->pDepthAttachment)
+ {
+ handlemap_VkRenderingAttachmentInfoKHR(handlemap, (VkRenderingAttachmentInfoKHR*)(toMap->pDepthAttachment));
+ }
+ if (toMap->pStencilAttachment)
+ {
+ handlemap_VkRenderingAttachmentInfoKHR(handlemap, (VkRenderingAttachmentInfoKHR*)(toMap->pStencilAttachment));
+ }
+}
+
+void handlemap_VkPipelineRenderingCreateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkPipelineRenderingCreateInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkCommandBufferInheritanceRenderingInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkImageView((VkImageView*)&toMap->imageView);
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->shadingRateAttachmentTexelSize));
+}
+
+void handlemap_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkImageView((VkImageView*)&toMap->imageView);
+}
+
+void handlemap_VkAttachmentSampleCountInfoAMD(
+ VulkanHandleMapping* handlemap,
+ VkAttachmentSampleCountInfoAMD* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkMultiviewPerViewAttributesInfoNVX* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -4187,6 +4598,20 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+void handlemap_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePresentWaitFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -4278,6 +4703,32 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void handlemap_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_pipeline_library
void handlemap_VkPipelineLibraryCreateInfoKHR(
VulkanHandleMapping* handlemap,
@@ -4298,6 +4749,304 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void handlemap_VkPresentIdKHR(
+ VulkanHandleMapping* handlemap,
+ VkPresentIdKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePresentIdFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void handlemap_VkVideoEncodeInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->codedExtent));
+ handlemap->mapHandles_VkBuffer((VkBuffer*)&toMap->dstBitstreamBuffer);
+ handlemap_VkVideoPictureResourceKHR(handlemap, (VkVideoPictureResourceKHR*)(&toMap->srcPictureResource));
+ if (toMap->pSetupReferenceSlot)
+ {
+ handlemap_VkVideoReferenceSlotKHR(handlemap, (VkVideoReferenceSlotKHR*)(toMap->pSetupReferenceSlot));
+ }
+ if (toMap)
+ {
+ if (toMap->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->referenceSlotCount; ++i)
+ {
+ handlemap_VkVideoReferenceSlotKHR(handlemap, (VkVideoReferenceSlotKHR*)(toMap->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkVideoEncodeRateControlInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeRateControlInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void handlemap_VkMemoryBarrier2KHR(
+ VulkanHandleMapping* handlemap,
+ VkMemoryBarrier2KHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkBufferMemoryBarrier2KHR(
+ VulkanHandleMapping* handlemap,
+ VkBufferMemoryBarrier2KHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkBuffer((VkBuffer*)&toMap->buffer);
+}
+
+void handlemap_VkImageMemoryBarrier2KHR(
+ VulkanHandleMapping* handlemap,
+ VkImageMemoryBarrier2KHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkImage((VkImage*)&toMap->image);
+ handlemap_VkImageSubresourceRange(handlemap, (VkImageSubresourceRange*)(&toMap->subresourceRange));
+}
+
+void handlemap_VkDependencyInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkDependencyInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->memoryBarrierCount; ++i)
+ {
+ handlemap_VkMemoryBarrier2KHR(handlemap, (VkMemoryBarrier2KHR*)(toMap->pMemoryBarriers + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pBufferMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->bufferMemoryBarrierCount; ++i)
+ {
+ handlemap_VkBufferMemoryBarrier2KHR(handlemap, (VkBufferMemoryBarrier2KHR*)(toMap->pBufferMemoryBarriers + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pImageMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->imageMemoryBarrierCount; ++i)
+ {
+ handlemap_VkImageMemoryBarrier2KHR(handlemap, (VkImageMemoryBarrier2KHR*)(toMap->pImageMemoryBarriers + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkSemaphoreSubmitInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkSemaphoreSubmitInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkSemaphore((VkSemaphore*)&toMap->semaphore);
+}
+
+void handlemap_VkCommandBufferSubmitInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkCommandBufferSubmitInfoKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkCommandBuffer((VkCommandBuffer*)&toMap->commandBuffer);
+}
+
+void handlemap_VkSubmitInfo2KHR(
+ VulkanHandleMapping* handlemap,
+ VkSubmitInfo2KHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pWaitSemaphoreInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->waitSemaphoreInfoCount; ++i)
+ {
+ handlemap_VkSemaphoreSubmitInfoKHR(handlemap, (VkSemaphoreSubmitInfoKHR*)(toMap->pWaitSemaphoreInfos + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pCommandBufferInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->commandBufferInfoCount; ++i)
+ {
+ handlemap_VkCommandBufferSubmitInfoKHR(handlemap, (VkCommandBufferSubmitInfoKHR*)(toMap->pCommandBufferInfos + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pSignalSemaphoreInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->signalSemaphoreInfoCount; ++i)
+ {
+ handlemap_VkSemaphoreSubmitInfoKHR(handlemap, (VkSemaphoreSubmitInfoKHR*)(toMap->pSignalSemaphoreInfos + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkQueueFamilyCheckpointProperties2NV(
+ VulkanHandleMapping* handlemap,
+ VkQueueFamilyCheckpointProperties2NV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkCheckpointData2NV(
+ VulkanHandleMapping* handlemap,
+ VkCheckpointData2NV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void handlemap_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void handlemap_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void handlemap_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_copy_commands2
void handlemap_VkBufferCopy2KHR(
VulkanHandleMapping* handlemap,
@@ -4527,6 +5276,78 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+void handlemap_VkFormatProperties3KHR(
+ VulkanHandleMapping* handlemap,
+ VkFormatProperties3KHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_maintenance4
+void handlemap_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceBufferMemoryRequirementsKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pCreateInfo)
+ {
+ handlemap_VkBufferCreateInfo(handlemap, (VkBufferCreateInfo*)(toMap->pCreateInfo));
+ }
+}
+
+void handlemap_VkDeviceImageMemoryRequirementsKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceImageMemoryRequirementsKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pCreateInfo)
+ {
+ handlemap_VkImageCreateInfo(handlemap, (VkImageCreateInfo*)(toMap->pCreateInfo));
+ }
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
void handlemap_VkNativeBufferANDROID(
VulkanHandleMapping* handlemap,
@@ -4697,6 +5518,46 @@
}
#endif
+#ifdef VK_NVX_binary_import
+void handlemap_VkCuModuleCreateInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkCuModuleCreateInfoNVX* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkCuFunctionCreateInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkCuFunctionCreateInfoNVX* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkCuModuleNVX((VkCuModuleNVX*)&toMap->module);
+}
+
+void handlemap_VkCuLaunchInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkCuLaunchInfoNVX* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkCuFunctionNVX((VkCuFunctionNVX*)&toMap->function);
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
void handlemap_VkImageViewHandleInfoNVX(
VulkanHandleMapping* handlemap,
@@ -4733,6 +5594,461 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void handlemap_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264CapabilitiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->minPictureSizeInMbs));
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->maxPictureSizeInMbs));
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->inputImageDataAlignment));
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(&toMap->stdExtensionVersion));
+}
+
+void handlemap_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264SessionCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->maxPictureSizeInMbs));
+ if (toMap->pStdExtensionVersion)
+ {
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(toMap->pStdExtensionVersion));
+ }
+}
+
+void handlemap_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pParametersAddInfo)
+ {
+ handlemap_VkVideoEncodeH264SessionParametersAddInfoEXT(handlemap, (VkVideoEncodeH264SessionParametersAddInfoEXT*)(toMap->pParametersAddInfo));
+ }
+}
+
+void handlemap_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264DpbSlotInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoEncodeH264NaluSliceEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264NaluSliceEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pRefFinalList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->refFinalList0EntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH264DpbSlotInfoEXT(handlemap, (VkVideoEncodeH264DpbSlotInfoEXT*)(toMap->pRefFinalList0Entries + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pRefFinalList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->refFinalList1EntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH264DpbSlotInfoEXT(handlemap, (VkVideoEncodeH264DpbSlotInfoEXT*)(toMap->pRefFinalList1Entries + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264VclFrameInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pRefDefaultFinalList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->refDefaultFinalList0EntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH264DpbSlotInfoEXT(handlemap, (VkVideoEncodeH264DpbSlotInfoEXT*)(toMap->pRefDefaultFinalList0Entries + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pRefDefaultFinalList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->refDefaultFinalList1EntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH264DpbSlotInfoEXT(handlemap, (VkVideoEncodeH264DpbSlotInfoEXT*)(toMap->pRefDefaultFinalList1Entries + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pNaluSliceEntries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->naluSliceEntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH264NaluSliceEXT(handlemap, (VkVideoEncodeH264NaluSliceEXT*)(toMap->pNaluSliceEntries + i));
+ }
+ }
+ }
+ if (toMap->pCurrentPictureInfo)
+ {
+ handlemap_VkVideoEncodeH264DpbSlotInfoEXT(handlemap, (VkVideoEncodeH264DpbSlotInfoEXT*)(toMap->pCurrentPictureInfo));
+ }
+}
+
+void handlemap_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264EmitPictureParametersEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoEncodeH264ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264ProfileEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void handlemap_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265CapabilitiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkExtent2D(handlemap, (VkExtent2D*)(&toMap->inputImageDataAlignment));
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(&toMap->stdExtensionVersion));
+}
+
+void handlemap_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265SessionCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pStdExtensionVersion)
+ {
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(toMap->pStdExtensionVersion));
+ }
+}
+
+void handlemap_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pParametersAddInfo)
+ {
+ handlemap_VkVideoEncodeH265SessionParametersAddInfoEXT(handlemap, (VkVideoEncodeH265SessionParametersAddInfoEXT*)(toMap->pParametersAddInfo));
+ }
+}
+
+void handlemap_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265DpbSlotInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265ReferenceListsEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pReferenceList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->referenceList0EntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH265DpbSlotInfoEXT(handlemap, (VkVideoEncodeH265DpbSlotInfoEXT*)(toMap->pReferenceList0Entries + i));
+ }
+ }
+ }
+ if (toMap)
+ {
+ if (toMap->pReferenceList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->referenceList1EntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH265DpbSlotInfoEXT(handlemap, (VkVideoEncodeH265DpbSlotInfoEXT*)(toMap->pReferenceList1Entries + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkVideoEncodeH265NaluSliceEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265NaluSliceEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pReferenceFinalLists)
+ {
+ handlemap_VkVideoEncodeH265ReferenceListsEXT(handlemap, (VkVideoEncodeH265ReferenceListsEXT*)(toMap->pReferenceFinalLists));
+ }
+}
+
+void handlemap_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265VclFrameInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pReferenceFinalLists)
+ {
+ handlemap_VkVideoEncodeH265ReferenceListsEXT(handlemap, (VkVideoEncodeH265ReferenceListsEXT*)(toMap->pReferenceFinalLists));
+ }
+ if (toMap)
+ {
+ if (toMap->pNaluSliceEntries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->naluSliceEntryCount; ++i)
+ {
+ handlemap_VkVideoEncodeH265NaluSliceEXT(handlemap, (VkVideoEncodeH265NaluSliceEXT*)(toMap->pNaluSliceEntries + i));
+ }
+ }
+ }
+}
+
+void handlemap_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265EmitPictureParametersEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoEncodeH265ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265ProfileEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void handlemap_VkVideoDecodeH264ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264ProfileEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264CapabilitiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkOffset2D(handlemap, (VkOffset2D*)(&toMap->fieldOffsetGranularity));
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(&toMap->stdExtensionVersion));
+}
+
+void handlemap_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264SessionCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pStdExtensionVersion)
+ {
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(toMap->pStdExtensionVersion));
+ }
+}
+
+void handlemap_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pParametersAddInfo)
+ {
+ handlemap_VkVideoDecodeH264SessionParametersAddInfoEXT(handlemap, (VkVideoDecodeH264SessionParametersAddInfoEXT*)(toMap->pParametersAddInfo));
+ }
+}
+
+void handlemap_VkVideoDecodeH264PictureInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264PictureInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH264MvcEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264MvcEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264DpbSlotInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void handlemap_VkTextureLODGatherFormatPropertiesAMD(
VulkanHandleMapping* handlemap,
@@ -5514,6 +6830,19 @@
}
}
+void handlemap_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanHandleMapping* handlemap,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkComponentMapping(handlemap, (VkComponentMapping*)(&toMap->samplerYcbcrConversionComponents));
+}
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
#endif
@@ -5882,6 +7211,36 @@
}
}
+void handlemap_VkDrmFormatModifierProperties2EXT(
+ VulkanHandleMapping* handlemap,
+ VkDrmFormatModifierProperties2EXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+}
+
+void handlemap_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanHandleMapping* handlemap,
+ VkDrmFormatModifierPropertiesList2EXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pDrmFormatModifierProperties)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->drmFormatModifierCount; ++i)
+ {
+ handlemap_VkDrmFormatModifierProperties2EXT(handlemap, (VkDrmFormatModifierProperties2EXT*)(toMap->pDrmFormatModifierProperties + i));
+ }
+ }
+ }
+}
+
#endif
#ifdef VK_EXT_validation_cache
void handlemap_VkValidationCacheCreateInfoEXT(
@@ -6383,6 +7742,101 @@
}
#endif
+#ifdef VK_EXT_video_decode_h265
+void handlemap_VkVideoDecodeH265ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265ProfileEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265CapabilitiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(&toMap->stdExtensionVersion));
+}
+
+void handlemap_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265SessionCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pStdExtensionVersion)
+ {
+ handlemap_VkExtensionProperties(handlemap, (VkExtensionProperties*)(toMap->pStdExtensionVersion));
+ }
+}
+
+void handlemap_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pParametersAddInfo)
+ {
+ handlemap_VkVideoDecodeH265SessionParametersAddInfoEXT(handlemap, (VkVideoDecodeH265SessionParametersAddInfoEXT*)(toMap->pParametersAddInfo));
+ }
+}
+
+void handlemap_VkVideoDecodeH265PictureInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265PictureInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265DpbSlotInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void handlemap_VkDeviceMemoryOverallocationCreateInfoAMD(
VulkanHandleMapping* handlemap,
@@ -7157,6 +8611,44 @@
}
#endif
+#ifdef VK_EXT_provoking_vertex
+void handlemap_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void handlemap_VkSurfaceFullScreenExclusiveInfoEXT(
VulkanHandleMapping* handlemap,
@@ -7291,6 +8783,20 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void handlemap_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void handlemap_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -7504,6 +9010,36 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void handlemap_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanHandleMapping* handlemap,
+ VkCommandBufferInheritanceViewportScissorInfoNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap->pViewportDepths)
+ {
+ handlemap_VkViewport(handlemap, (VkViewport*)(toMap->pViewportDepths));
+ }
+}
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void handlemap_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -7595,6 +9131,8 @@
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void handlemap_VkPhysicalDeviceRobustness2FeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -7780,6 +9318,115 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void handlemap_VkDeviceOrHostAddressConstKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceOrHostAddressConstKHR* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+}
+
+void handlemap_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkDeviceOrHostAddressConstKHR(handlemap, (VkDeviceOrHostAddressConstKHR*)(&toMap->vertexData));
+}
+
+void handlemap_VkAccelerationStructureMotionInfoNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMotionInfoNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMatrixMotionInstanceNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ handlemap_VkTransformMatrixKHR(handlemap, (VkTransformMatrixKHR*)(&toMap->transformT0));
+ handlemap_VkTransformMatrixKHR(handlemap, (VkTransformMatrixKHR*)(&toMap->transformT1));
+}
+
+void handlemap_VkSRTDataNV(
+ VulkanHandleMapping* handlemap,
+ VkSRTDataNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+}
+
+void handlemap_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureSRTMotionInstanceNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ handlemap_VkSRTDataNV(handlemap, (VkSRTDataNV*)(&toMap->transformT0));
+ handlemap_VkSRTDataNV(handlemap, (VkSRTDataNV*)(&toMap->transformT1));
+}
+
+void handlemap_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMotionInstanceDataNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ handlemap_VkAccelerationStructureInstanceKHR(handlemap, (VkAccelerationStructureInstanceKHR*)(&toMap->staticInstance));
+ handlemap_VkAccelerationStructureMatrixMotionInstanceNV(handlemap, (VkAccelerationStructureMatrixMotionInstanceNV*)(&toMap->matrixMotionInstance));
+ handlemap_VkAccelerationStructureSRTMotionInstanceNV(handlemap, (VkAccelerationStructureSRTMotionInstanceNV*)(&toMap->srtMotionInstance));
+}
+
+void handlemap_VkAccelerationStructureMotionInstanceNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMotionInstanceNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ handlemap_VkAccelerationStructureMotionInstanceDataNV(handlemap, (VkAccelerationStructureMotionInstanceDataNV*)(&toMap->data));
+}
+
+void handlemap_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void handlemap_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void handlemap_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -7848,6 +9495,22 @@
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void handlemap_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void handlemap_VkDirectFBSurfaceCreateInfoEXT(
VulkanHandleMapping* handlemap,
@@ -7862,6 +9525,462 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void handlemap_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkMutableDescriptorTypeListVALVE(
+ VulkanHandleMapping* handlemap,
+ VkMutableDescriptorTypeListVALVE* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+}
+
+void handlemap_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanHandleMapping* handlemap,
+ VkMutableDescriptorTypeCreateInfoVALVE* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pMutableDescriptorTypeLists)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->mutableDescriptorTypeListCount; ++i)
+ {
+ handlemap_VkMutableDescriptorTypeListVALVE(handlemap, (VkMutableDescriptorTypeListVALVE*)(toMap->pMutableDescriptorTypeLists + i));
+ }
+ }
+ }
+}
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void handlemap_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVertexInputBindingDescription2EXT(
+ VulkanHandleMapping* handlemap,
+ VkVertexInputBindingDescription2EXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkVertexInputAttributeDescription2EXT(
+ VulkanHandleMapping* handlemap,
+ VkVertexInputAttributeDescription2EXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void handlemap_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceDrmPropertiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void handlemap_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void handlemap_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImportMemoryZirconHandleInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkMemoryZirconHandlePropertiesFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkMemoryGetZirconHandleInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkDeviceMemory((VkDeviceMemory*)&toMap->memory);
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void handlemap_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkSemaphore((VkSemaphore*)&toMap->semaphore);
+}
+
+void handlemap_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkSemaphore((VkSemaphore*)&toMap->semaphore);
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void handlemap_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionCreateInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImportMemoryBufferCollectionFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkBufferCollectionFUCHSIA((VkBufferCollectionFUCHSIA*)&toMap->collection);
+}
+
+void handlemap_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionImageCreateInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkBufferCollectionFUCHSIA((VkBufferCollectionFUCHSIA*)&toMap->collection);
+}
+
+void handlemap_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionConstraintsInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkBufferConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferConstraintsInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkBufferCreateInfo(handlemap, (VkBufferCreateInfo*)(&toMap->createInfo));
+ handlemap_VkBufferCollectionConstraintsInfoFUCHSIA(handlemap, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toMap->bufferCollectionConstraints));
+}
+
+void handlemap_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkBufferCollectionFUCHSIA((VkBufferCollectionFUCHSIA*)&toMap->collection);
+}
+
+void handlemap_VkSysmemColorSpaceFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkSysmemColorSpaceFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionPropertiesFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkSysmemColorSpaceFUCHSIA(handlemap, (VkSysmemColorSpaceFUCHSIA*)(&toMap->sysmemColorSpaceIndex));
+ handlemap_VkComponentMapping(handlemap, (VkComponentMapping*)(&toMap->samplerYcbcrConversionComponents));
+}
+
+void handlemap_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImageFormatConstraintsInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkImageCreateInfo(handlemap, (VkImageCreateInfo*)(&toMap->imageCreateInfo));
+ if (toMap->pColorSpaces)
+ {
+ handlemap_VkSysmemColorSpaceFUCHSIA(handlemap, (VkSysmemColorSpaceFUCHSIA*)(toMap->pColorSpaces));
+ }
+}
+
+void handlemap_VkImageConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImageConstraintsInfoFUCHSIA* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ if (toMap)
+ {
+ if (toMap->pFormatConstraints)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toMap->formatConstraintsCount; ++i)
+ {
+ handlemap_VkImageFormatConstraintsInfoFUCHSIA(handlemap, (VkImageFormatConstraintsInfoFUCHSIA*)(toMap->pFormatConstraints + i));
+ }
+ }
+ }
+ handlemap_VkBufferCollectionConstraintsInfoFUCHSIA(handlemap, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toMap->bufferCollectionConstraints));
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void handlemap_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkRenderPass((VkRenderPass*)&toMap->renderPass);
+}
+
+void handlemap_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void handlemap_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void handlemap_VkMemoryGetRemoteAddressInfoNV(
+ VulkanHandleMapping* handlemap,
+ VkMemoryGetRemoteAddressInfoNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap->mapHandles_VkDeviceMemory((VkDeviceMemory*)&toMap->memory);
+}
+
+void handlemap_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void handlemap_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+void handlemap_VkScreenSurfaceCreateInfoQNX(
+ VulkanHandleMapping* handlemap,
+ VkScreenSurfaceCreateInfoQNX* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void handlemap_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPipelineColorWriteCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkPipelineColorWriteCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void handlemap_VkImportColorBufferGOOGLE(
VulkanHandleMapping* handlemap,
@@ -7900,18 +10019,121 @@
}
#endif
-#ifdef VK_KHR_acceleration_structure
-void handlemap_VkDeviceOrHostAddressKHR(
+#ifdef VK_EXT_global_priority_query
+void handlemap_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
VulkanHandleMapping* handlemap,
- VkDeviceOrHostAddressKHR* toMap)
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_multi_draw
+void handlemap_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkMultiDrawInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkMultiDrawInfoEXT* toMap)
{
(void)handlemap;
(void)toMap;
}
-void handlemap_VkDeviceOrHostAddressConstKHR(
+void handlemap_VkMultiDrawIndexedInfoEXT(
VulkanHandleMapping* handlemap,
- VkDeviceOrHostAddressConstKHR* toMap)
+ VkMultiDrawIndexedInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void handlemap_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+void handlemap_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+ handlemap_VkComponentMapping(handlemap, (VkComponentMapping*)(&toMap->components));
+}
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void handlemap_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toMap)
+{
+ (void)handlemap;
+ (void)toMap;
+ if (toMap->pNext)
+ {
+ handlemap_extension_struct(handlemap, (void*)(toMap->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_acceleration_structure
+void handlemap_VkDeviceOrHostAddressKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceOrHostAddressKHR* toMap)
{
(void)handlemap;
(void)toMap;
@@ -8703,6 +10925,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ handlemap_VkVideoQueueFamilyProperties2KHR(handlemap, reinterpret_cast<VkVideoQueueFamilyProperties2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ handlemap_VkVideoProfileKHR(handlemap, reinterpret_cast<VkVideoProfileKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ handlemap_VkVideoProfilesKHR(handlemap, reinterpret_cast<VkVideoProfilesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ handlemap_VkPipelineRenderingCreateInfoKHR(handlemap, reinterpret_cast<VkPipelineRenderingCreateInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceDynamicRenderingFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ handlemap_VkCommandBufferInheritanceRenderingInfoKHR(handlemap, reinterpret_cast<VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ handlemap_VkRenderingFragmentShadingRateAttachmentInfoKHR(handlemap, reinterpret_cast<VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ handlemap_VkRenderingFragmentDensityMapAttachmentInfoEXT(handlemap, reinterpret_cast<VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ handlemap_VkAttachmentSampleCountInfoAMD(handlemap, reinterpret_cast<VkAttachmentSampleCountInfoAMD*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ handlemap_VkMultiviewPerViewAttributesInfoNVX(handlemap, reinterpret_cast<VkMultiviewPerViewAttributesInfoNVX*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -8846,6 +11122,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDevicePresentWaitFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -8853,6 +11136,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ handlemap_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ handlemap_VkPresentIdKHR(handlemap, reinterpret_cast<VkPresentIdKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDevicePresentIdFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ handlemap_VkVideoEncodeRateControlInfoKHR(handlemap, reinterpret_cast<VkVideoEncodeRateControlInfoKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ handlemap_VkMemoryBarrier2KHR(handlemap, reinterpret_cast<VkMemoryBarrier2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceSynchronization2FeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ handlemap_VkQueueFamilyCheckpointProperties2NV(handlemap, reinterpret_cast<VkQueueFamilyCheckpointProperties2NV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ handlemap_VkFormatProperties3KHR(handlemap, reinterpret_cast<VkFormatProperties3KHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ handlemap_VkPhysicalDeviceMaintenance4FeaturesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ handlemap_VkPhysicalDeviceMaintenance4PropertiesKHR(handlemap, reinterpret_cast<VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -8908,6 +11279,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ handlemap_VkVideoEncodeH264CapabilitiesEXT(handlemap, reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH264SessionCreateInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH264SessionParametersAddInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH264SessionParametersCreateInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH264VclFrameInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ handlemap_VkVideoEncodeH264EmitPictureParametersEXT(handlemap, reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ handlemap_VkVideoEncodeH264ProfileEXT(handlemap, reinterpret_cast<VkVideoEncodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ handlemap_VkVideoEncodeH265CapabilitiesEXT(handlemap, reinterpret_cast<VkVideoEncodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH265SessionCreateInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH265SessionParametersAddInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH265SessionParametersCreateInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ handlemap_VkVideoEncodeH265VclFrameInfoEXT(handlemap, reinterpret_cast<VkVideoEncodeH265VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ handlemap_VkVideoEncodeH265EmitPictureParametersEXT(handlemap, reinterpret_cast<VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ handlemap_VkVideoEncodeH265ProfileEXT(handlemap, reinterpret_cast<VkVideoEncodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ handlemap_VkVideoDecodeH264ProfileEXT(handlemap, reinterpret_cast<VkVideoDecodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ handlemap_VkVideoDecodeH264CapabilitiesEXT(handlemap, reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH264SessionCreateInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH264SessionParametersAddInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH264SessionParametersCreateInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH264PictureInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH264PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ handlemap_VkVideoDecodeH264MvcEXT(handlemap, reinterpret_cast<VkVideoDecodeH264MvcEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH264DpbSlotInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -9090,6 +11577,11 @@
handlemap_VkExternalFormatANDROID(handlemap, reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ handlemap_VkAndroidHardwareBufferFormatProperties2ANDROID(handlemap, reinterpret_cast<VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -9199,6 +11691,11 @@
handlemap_VkImageDrmFormatModifierExplicitCreateInfoEXT(handlemap, reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ handlemap_VkDrmFormatModifierPropertiesList2EXT(handlemap, reinterpret_cast<VkDrmFormatModifierPropertiesList2EXT*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -9298,6 +11795,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ handlemap_VkVideoDecodeH265ProfileEXT(handlemap, reinterpret_cast<VkVideoDecodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ handlemap_VkVideoDecodeH265CapabilitiesEXT(handlemap, reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH265SessionCreateInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH265SessionParametersAddInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH265SessionParametersCreateInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH265PictureInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH265PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ handlemap_VkVideoDecodeH265DpbSlotInfoEXT(handlemap, reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -9559,6 +12093,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceProvokingVertexFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ handlemap_VkPhysicalDeviceProvokingVertexPropertiesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ handlemap_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(handlemap, reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -9614,6 +12165,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -9638,6 +12196,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ handlemap_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(handlemap, reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ handlemap_VkCommandBufferInheritanceViewportScissorInfoNV(handlemap, reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -9751,6 +12321,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ handlemap_VkAccelerationStructureGeometryMotionTrianglesDataNV(handlemap, reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ handlemap_VkAccelerationStructureMotionInfoNV(handlemap, reinterpret_cast<VkAccelerationStructureMotionInfoNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ handlemap_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(handlemap, reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -9784,6 +12378,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ handlemap_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(handlemap, reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ handlemap_VkMutableDescriptorTypeCreateInfoVALVE(handlemap, reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ handlemap_VkPhysicalDeviceDrmPropertiesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ handlemap_VkImportMemoryZirconHandleInfoFUCHSIA(handlemap, reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ handlemap_VkImportMemoryBufferCollectionFUCHSIA(handlemap, reinterpret_cast<VkImportMemoryBufferCollectionFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ handlemap_VkBufferCollectionImageCreateInfoFUCHSIA(handlemap, reinterpret_cast<VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ handlemap_VkBufferCollectionBufferCreateInfoFUCHSIA(handlemap, reinterpret_cast<VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ handlemap_VkSubpassShadingPipelineCreateInfoHUAWEI(handlemap, reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ handlemap_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(handlemap, reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ handlemap_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(handlemap, reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ handlemap_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(handlemap, reinterpret_cast<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ handlemap_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(handlemap, reinterpret_cast<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceColorWriteEnableFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ handlemap_VkPipelineColorWriteCreateInfoEXT(handlemap, reinterpret_cast<VkPipelineColorWriteCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -9801,6 +12509,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ handlemap_VkQueueFamilyGlobalPriorityPropertiesEXT(handlemap, reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceMultiDrawFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ handlemap_VkPhysicalDeviceMultiDrawPropertiesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ handlemap_VkSamplerBorderColorComponentMappingCreateInfoEXT(handlemap, reinterpret_cast<VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ handlemap_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(handlemap, reinterpret_cast<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
diff --git a/system/vulkan_enc/goldfish_vk_handlemap_guest.h b/system/vulkan_enc/goldfish_vk_handlemap_guest.h
index d73c8bd..86eed63 100644
--- a/system/vulkan_enc/goldfish_vk_handlemap_guest.h
+++ b/system/vulkan_enc/goldfish_vk_handlemap_guest.h
@@ -98,6 +98,10 @@
VulkanHandleMapping* handlemap,
VkMemoryBarrier* toMap);
+void handlemap_VkPipelineCacheHeaderVersionOne(
+ VulkanHandleMapping* handlemap,
+ VkPipelineCacheHeaderVersionOne* toMap);
+
void handlemap_VkAllocationCallbacks(
VulkanHandleMapping* handlemap,
VkAllocationCallbacks* toMap);
@@ -1075,6 +1079,118 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void handlemap_VkVideoQueueFamilyProperties2KHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoQueueFamilyProperties2KHR* toMap);
+
+void handlemap_VkVideoProfileKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoProfileKHR* toMap);
+
+void handlemap_VkVideoProfilesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoProfilesKHR* toMap);
+
+void handlemap_VkVideoCapabilitiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoCapabilitiesKHR* toMap);
+
+void handlemap_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceVideoFormatInfoKHR* toMap);
+
+void handlemap_VkVideoFormatPropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoFormatPropertiesKHR* toMap);
+
+void handlemap_VkVideoPictureResourceKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoPictureResourceKHR* toMap);
+
+void handlemap_VkVideoReferenceSlotKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoReferenceSlotKHR* toMap);
+
+void handlemap_VkVideoGetMemoryPropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoGetMemoryPropertiesKHR* toMap);
+
+void handlemap_VkVideoBindMemoryKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoBindMemoryKHR* toMap);
+
+void handlemap_VkVideoSessionCreateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoSessionCreateInfoKHR* toMap);
+
+void handlemap_VkVideoSessionParametersCreateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoSessionParametersCreateInfoKHR* toMap);
+
+void handlemap_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoSessionParametersUpdateInfoKHR* toMap);
+
+void handlemap_VkVideoBeginCodingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoBeginCodingInfoKHR* toMap);
+
+void handlemap_VkVideoEndCodingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoEndCodingInfoKHR* toMap);
+
+void handlemap_VkVideoCodingControlInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoCodingControlInfoKHR* toMap);
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void handlemap_VkVideoDecodeInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeInfoKHR* toMap);
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void handlemap_VkRenderingAttachmentInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkRenderingAttachmentInfoKHR* toMap);
+
+void handlemap_VkRenderingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkRenderingInfoKHR* toMap);
+
+void handlemap_VkPipelineRenderingCreateInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkPipelineRenderingCreateInfoKHR* toMap);
+
+void handlemap_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* toMap);
+
+void handlemap_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkCommandBufferInheritanceRenderingInfoKHR* toMap);
+
+void handlemap_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* toMap);
+
+void handlemap_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* toMap);
+
+void handlemap_VkAttachmentSampleCountInfoAMD(
+ VulkanHandleMapping* handlemap,
+ VkAttachmentSampleCountInfoAMD* toMap);
+
+DEFINE_ALIAS_FUNCTION(handlemap_VkAttachmentSampleCountInfoAMD, handlemap_VkAttachmentSampleCountInfoNV)
+
+void handlemap_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkMultiviewPerViewAttributesInfoNVX* toMap);
+
+#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(handlemap_VkRenderPassMultiviewCreateInfo, handlemap_VkRenderPassMultiviewCreateInfoKHR)
@@ -1579,6 +1695,12 @@
DEFINE_ALIAS_FUNCTION(handlemap_VkAttachmentDescriptionStencilLayout, handlemap_VkAttachmentDescriptionStencilLayoutKHR)
#endif
+#ifdef VK_KHR_present_wait
+void handlemap_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePresentWaitFeaturesKHR* toMap);
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(handlemap_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, handlemap_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR)
@@ -1627,6 +1749,16 @@
VkPipelineExecutableInternalRepresentationKHR* toMap);
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void handlemap_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toMap);
+
+void handlemap_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toMap);
+
+#endif
#ifdef VK_KHR_pipeline_library
void handlemap_VkPipelineLibraryCreateInfoKHR(
VulkanHandleMapping* handlemap,
@@ -1635,6 +1767,86 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void handlemap_VkPresentIdKHR(
+ VulkanHandleMapping* handlemap,
+ VkPresentIdKHR* toMap);
+
+void handlemap_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePresentIdFeaturesKHR* toMap);
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void handlemap_VkVideoEncodeInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeInfoKHR* toMap);
+
+void handlemap_VkVideoEncodeRateControlInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeRateControlInfoKHR* toMap);
+
+#endif
+#ifdef VK_KHR_synchronization2
+void handlemap_VkMemoryBarrier2KHR(
+ VulkanHandleMapping* handlemap,
+ VkMemoryBarrier2KHR* toMap);
+
+void handlemap_VkBufferMemoryBarrier2KHR(
+ VulkanHandleMapping* handlemap,
+ VkBufferMemoryBarrier2KHR* toMap);
+
+void handlemap_VkImageMemoryBarrier2KHR(
+ VulkanHandleMapping* handlemap,
+ VkImageMemoryBarrier2KHR* toMap);
+
+void handlemap_VkDependencyInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkDependencyInfoKHR* toMap);
+
+void handlemap_VkSemaphoreSubmitInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkSemaphoreSubmitInfoKHR* toMap);
+
+void handlemap_VkCommandBufferSubmitInfoKHR(
+ VulkanHandleMapping* handlemap,
+ VkCommandBufferSubmitInfoKHR* toMap);
+
+void handlemap_VkSubmitInfo2KHR(
+ VulkanHandleMapping* handlemap,
+ VkSubmitInfo2KHR* toMap);
+
+void handlemap_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* toMap);
+
+void handlemap_VkQueueFamilyCheckpointProperties2NV(
+ VulkanHandleMapping* handlemap,
+ VkQueueFamilyCheckpointProperties2NV* toMap);
+
+void handlemap_VkCheckpointData2NV(
+ VulkanHandleMapping* handlemap,
+ VkCheckpointData2NV* toMap);
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void handlemap_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toMap);
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void handlemap_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toMap);
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void handlemap_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toMap);
+
+#endif
#ifdef VK_KHR_copy_commands2
void handlemap_VkBufferCopy2KHR(
VulkanHandleMapping* handlemap,
@@ -1681,6 +1893,30 @@
VkResolveImageInfo2KHR* toMap);
#endif
+#ifdef VK_KHR_format_feature_flags2
+void handlemap_VkFormatProperties3KHR(
+ VulkanHandleMapping* handlemap,
+ VkFormatProperties3KHR* toMap);
+
+#endif
+#ifdef VK_KHR_maintenance4
+void handlemap_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* toMap);
+
+void handlemap_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* toMap);
+
+void handlemap_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceBufferMemoryRequirementsKHR* toMap);
+
+void handlemap_VkDeviceImageMemoryRequirementsKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceImageMemoryRequirementsKHR* toMap);
+
+#endif
#ifdef VK_ANDROID_native_buffer
void handlemap_VkNativeBufferANDROID(
VulkanHandleMapping* handlemap,
@@ -1753,6 +1989,20 @@
VkPipelineRasterizationStateStreamCreateInfoEXT* toMap);
#endif
+#ifdef VK_NVX_binary_import
+void handlemap_VkCuModuleCreateInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkCuModuleCreateInfoNVX* toMap);
+
+void handlemap_VkCuFunctionCreateInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkCuFunctionCreateInfoNVX* toMap);
+
+void handlemap_VkCuLaunchInfoNVX(
+ VulkanHandleMapping* handlemap,
+ VkCuLaunchInfoNVX* toMap);
+
+#endif
#ifdef VK_NVX_image_view_handle
void handlemap_VkImageViewHandleInfoNVX(
VulkanHandleMapping* handlemap,
@@ -1771,6 +2021,120 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void handlemap_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264CapabilitiesEXT* toMap);
+
+void handlemap_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264SessionCreateInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264DpbSlotInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH264NaluSliceEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264NaluSliceEXT* toMap);
+
+void handlemap_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264VclFrameInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264EmitPictureParametersEXT* toMap);
+
+void handlemap_VkVideoEncodeH264ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH264ProfileEXT* toMap);
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void handlemap_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265CapabilitiesEXT* toMap);
+
+void handlemap_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265SessionCreateInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265DpbSlotInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265ReferenceListsEXT* toMap);
+
+void handlemap_VkVideoEncodeH265NaluSliceEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265NaluSliceEXT* toMap);
+
+void handlemap_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265VclFrameInfoEXT* toMap);
+
+void handlemap_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265EmitPictureParametersEXT* toMap);
+
+void handlemap_VkVideoEncodeH265ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoEncodeH265ProfileEXT* toMap);
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void handlemap_VkVideoDecodeH264ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264ProfileEXT* toMap);
+
+void handlemap_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264CapabilitiesEXT* toMap);
+
+void handlemap_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264SessionCreateInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH264PictureInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264PictureInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH264MvcEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264MvcEXT* toMap);
+
+void handlemap_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH264DpbSlotInfoEXT* toMap);
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void handlemap_VkTextureLODGatherFormatPropertiesAMD(
VulkanHandleMapping* handlemap,
@@ -2066,6 +2430,10 @@
VulkanHandleMapping* handlemap,
VkExternalFormatANDROID* toMap);
+void handlemap_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanHandleMapping* handlemap,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* toMap);
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(handlemap_VkSamplerReductionModeCreateInfo, handlemap_VkSamplerReductionModeCreateInfoEXT)
@@ -2198,6 +2566,14 @@
VulkanHandleMapping* handlemap,
VkImageDrmFormatModifierPropertiesEXT* toMap);
+void handlemap_VkDrmFormatModifierProperties2EXT(
+ VulkanHandleMapping* handlemap,
+ VkDrmFormatModifierProperties2EXT* toMap);
+
+void handlemap_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanHandleMapping* handlemap,
+ VkDrmFormatModifierPropertiesList2EXT* toMap);
+
#endif
#ifdef VK_EXT_validation_cache
void handlemap_VkValidationCacheCreateInfoEXT(
@@ -2383,6 +2759,36 @@
VkPhysicalDeviceShaderCorePropertiesAMD* toMap);
#endif
+#ifdef VK_EXT_video_decode_h265
+void handlemap_VkVideoDecodeH265ProfileEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265ProfileEXT* toMap);
+
+void handlemap_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265CapabilitiesEXT* toMap);
+
+void handlemap_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265SessionCreateInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH265PictureInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265PictureInfoEXT* toMap);
+
+void handlemap_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkVideoDecodeH265DpbSlotInfoEXT* toMap);
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void handlemap_VkDeviceMemoryOverallocationCreateInfoAMD(
VulkanHandleMapping* handlemap,
@@ -2693,6 +3099,20 @@
VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* toMap);
#endif
+#ifdef VK_EXT_provoking_vertex
+void handlemap_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* toMap);
+
+void handlemap_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* toMap);
+
+void handlemap_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toMap);
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void handlemap_VkSurfaceFullScreenExclusiveInfoEXT(
VulkanHandleMapping* handlemap,
@@ -2749,6 +3169,12 @@
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* toMap);
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void handlemap_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toMap);
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void handlemap_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -2809,6 +3235,16 @@
VkGeneratedCommandsMemoryRequirementsInfoNV* toMap);
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void handlemap_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toMap);
+
+void handlemap_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanHandleMapping* handlemap,
+ VkCommandBufferInheritanceViewportScissorInfoNV* toMap);
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void handlemap_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -2843,6 +3279,8 @@
VkDeviceDeviceMemoryReportCreateInfoEXT* toMap);
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void handlemap_VkPhysicalDeviceRobustness2FeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -2915,6 +3353,50 @@
VkPipelineFragmentShadingRateEnumStateCreateInfoNV* toMap);
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void handlemap_VkDeviceOrHostAddressConstKHR(
+ VulkanHandleMapping* handlemap,
+ VkDeviceOrHostAddressConstKHR* toMap);
+
+void handlemap_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* toMap);
+
+void handlemap_VkAccelerationStructureMotionInfoNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMotionInfoNV* toMap);
+
+void handlemap_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMatrixMotionInstanceNV* toMap);
+
+void handlemap_VkSRTDataNV(
+ VulkanHandleMapping* handlemap,
+ VkSRTDataNV* toMap);
+
+void handlemap_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureSRTMotionInstanceNV* toMap);
+
+void handlemap_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMotionInstanceDataNV* toMap);
+
+void handlemap_VkAccelerationStructureMotionInstanceNV(
+ VulkanHandleMapping* handlemap,
+ VkAccelerationStructureMotionInstanceNV* toMap);
+
+void handlemap_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toMap);
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void handlemap_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toMap);
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void handlemap_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
VulkanHandleMapping* handlemap,
@@ -2943,12 +3425,178 @@
VkPhysicalDevice4444FormatsFeaturesEXT* toMap);
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void handlemap_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toMap);
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void handlemap_VkDirectFBSurfaceCreateInfoEXT(
VulkanHandleMapping* handlemap,
VkDirectFBSurfaceCreateInfoEXT* toMap);
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void handlemap_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toMap);
+
+void handlemap_VkMutableDescriptorTypeListVALVE(
+ VulkanHandleMapping* handlemap,
+ VkMutableDescriptorTypeListVALVE* toMap);
+
+void handlemap_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanHandleMapping* handlemap,
+ VkMutableDescriptorTypeCreateInfoVALVE* toMap);
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void handlemap_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toMap);
+
+void handlemap_VkVertexInputBindingDescription2EXT(
+ VulkanHandleMapping* handlemap,
+ VkVertexInputBindingDescription2EXT* toMap);
+
+void handlemap_VkVertexInputAttributeDescription2EXT(
+ VulkanHandleMapping* handlemap,
+ VkVertexInputAttributeDescription2EXT* toMap);
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void handlemap_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceDrmPropertiesEXT* toMap);
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void handlemap_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toMap);
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void handlemap_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImportMemoryZirconHandleInfoFUCHSIA* toMap);
+
+void handlemap_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkMemoryZirconHandlePropertiesFUCHSIA* toMap);
+
+void handlemap_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkMemoryGetZirconHandleInfoFUCHSIA* toMap);
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void handlemap_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* toMap);
+
+void handlemap_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* toMap);
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void handlemap_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionCreateInfoFUCHSIA* toMap);
+
+void handlemap_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImportMemoryBufferCollectionFUCHSIA* toMap);
+
+void handlemap_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionImageCreateInfoFUCHSIA* toMap);
+
+void handlemap_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionConstraintsInfoFUCHSIA* toMap);
+
+void handlemap_VkBufferConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferConstraintsInfoFUCHSIA* toMap);
+
+void handlemap_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* toMap);
+
+void handlemap_VkSysmemColorSpaceFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkSysmemColorSpaceFUCHSIA* toMap);
+
+void handlemap_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkBufferCollectionPropertiesFUCHSIA* toMap);
+
+void handlemap_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImageFormatConstraintsInfoFUCHSIA* toMap);
+
+void handlemap_VkImageConstraintsInfoFUCHSIA(
+ VulkanHandleMapping* handlemap,
+ VkImageConstraintsInfoFUCHSIA* toMap);
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void handlemap_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* toMap);
+
+void handlemap_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toMap);
+
+void handlemap_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toMap);
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void handlemap_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toMap);
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void handlemap_VkMemoryGetRemoteAddressInfoNV(
+ VulkanHandleMapping* handlemap,
+ VkMemoryGetRemoteAddressInfoNV* toMap);
+
+void handlemap_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toMap);
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void handlemap_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toMap);
+
+#endif
+#ifdef VK_QNX_screen_surface
+void handlemap_VkScreenSurfaceCreateInfoQNX(
+ VulkanHandleMapping* handlemap,
+ VkScreenSurfaceCreateInfoQNX* toMap);
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void handlemap_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* toMap);
+
+void handlemap_VkPipelineColorWriteCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkPipelineColorWriteCreateInfoEXT* toMap);
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void handlemap_VkImportColorBufferGOOGLE(
VulkanHandleMapping* handlemap,
@@ -2963,15 +3611,57 @@
VkImportPhysicalAddressGOOGLE* toMap);
#endif
+#ifdef VK_EXT_global_priority_query
+void handlemap_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toMap);
+
+void handlemap_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* toMap);
+
+#endif
+#ifdef VK_EXT_multi_draw
+void handlemap_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* toMap);
+
+void handlemap_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* toMap);
+
+void handlemap_VkMultiDrawInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkMultiDrawInfoEXT* toMap);
+
+void handlemap_VkMultiDrawIndexedInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkMultiDrawIndexedInfoEXT* toMap);
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void handlemap_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toMap);
+
+void handlemap_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanHandleMapping* handlemap,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* toMap);
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void handlemap_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanHandleMapping* handlemap,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toMap);
+
+#endif
#ifdef VK_KHR_acceleration_structure
void handlemap_VkDeviceOrHostAddressKHR(
VulkanHandleMapping* handlemap,
VkDeviceOrHostAddressKHR* toMap);
-void handlemap_VkDeviceOrHostAddressConstKHR(
- VulkanHandleMapping* handlemap,
- VkDeviceOrHostAddressConstKHR* toMap);
-
void handlemap_VkAccelerationStructureBuildRangeInfoKHR(
VulkanHandleMapping* handlemap,
VkAccelerationStructureBuildRangeInfoKHR* toMap);
diff --git a/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp b/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp
index 09bf7b9..967b5bc 100644
--- a/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_marshaling_guest.cpp
@@ -426,6 +426,32 @@
vkStream->read((VkAccessFlags*)&forUnmarshaling->dstAccessMask, sizeof(VkAccessFlags));
}
+void marshal_VkPipelineCacheHeaderVersionOne(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((uint32_t*)&forMarshaling->headerSize, sizeof(uint32_t));
+ vkStream->write((VkPipelineCacheHeaderVersion*)&forMarshaling->headerVersion, sizeof(VkPipelineCacheHeaderVersion));
+ vkStream->write((uint32_t*)&forMarshaling->vendorID, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->deviceID, sizeof(uint32_t));
+ vkStream->write((uint8_t*)forMarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t));
+}
+
+void unmarshal_VkPipelineCacheHeaderVersionOne(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineCacheHeaderVersionOne* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((uint32_t*)&forUnmarshaling->headerSize, sizeof(uint32_t));
+ vkStream->read((VkPipelineCacheHeaderVersion*)&forUnmarshaling->headerVersion, sizeof(VkPipelineCacheHeaderVersion));
+ vkStream->read((uint32_t*)&forUnmarshaling->vendorID, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->deviceID, sizeof(uint32_t));
+ vkStream->read((uint8_t*)forUnmarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t));
+}
+
void marshal_VkAllocationCallbacks(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
@@ -10307,6 +10333,1052 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void marshal_VkVideoQueueFamilyProperties2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoCodecOperationFlagsKHR*)&forMarshaling->videoCodecOperations, sizeof(VkVideoCodecOperationFlagsKHR));
+}
+
+void unmarshal_VkVideoQueueFamilyProperties2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoQueueFamilyProperties2KHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoCodecOperationFlagsKHR*)&forUnmarshaling->videoCodecOperations, sizeof(VkVideoCodecOperationFlagsKHR));
+}
+
+void marshal_VkVideoProfileKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoCodecOperationFlagBitsKHR*)&forMarshaling->videoCodecOperation, sizeof(VkVideoCodecOperationFlagBitsKHR));
+ vkStream->write((VkVideoChromaSubsamplingFlagsKHR*)&forMarshaling->chromaSubsampling, sizeof(VkVideoChromaSubsamplingFlagsKHR));
+ vkStream->write((VkVideoComponentBitDepthFlagsKHR*)&forMarshaling->lumaBitDepth, sizeof(VkVideoComponentBitDepthFlagsKHR));
+ vkStream->write((VkVideoComponentBitDepthFlagsKHR*)&forMarshaling->chromaBitDepth, sizeof(VkVideoComponentBitDepthFlagsKHR));
+}
+
+void unmarshal_VkVideoProfileKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoProfileKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoCodecOperationFlagBitsKHR*)&forUnmarshaling->videoCodecOperation, sizeof(VkVideoCodecOperationFlagBitsKHR));
+ vkStream->read((VkVideoChromaSubsamplingFlagsKHR*)&forUnmarshaling->chromaSubsampling, sizeof(VkVideoChromaSubsamplingFlagsKHR));
+ vkStream->read((VkVideoComponentBitDepthFlagsKHR*)&forUnmarshaling->lumaBitDepth, sizeof(VkVideoComponentBitDepthFlagsKHR));
+ vkStream->read((VkVideoComponentBitDepthFlagsKHR*)&forUnmarshaling->chromaBitDepth, sizeof(VkVideoComponentBitDepthFlagsKHR));
+}
+
+void marshal_VkVideoProfilesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->profileCount, sizeof(uint32_t));
+ marshal_VkVideoProfileKHR(vkStream, rootType, (const VkVideoProfileKHR*)(forMarshaling->pProfiles));
+}
+
+void unmarshal_VkVideoProfilesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoProfilesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->profileCount, sizeof(uint32_t));
+ unmarshal_VkVideoProfileKHR(vkStream, rootType, (VkVideoProfileKHR*)(forUnmarshaling->pProfiles));
+}
+
+void marshal_VkVideoCapabilitiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoCapabilityFlagsKHR*)&forMarshaling->capabilityFlags, sizeof(VkVideoCapabilityFlagsKHR));
+ vkStream->write((VkDeviceSize*)&forMarshaling->minBitstreamBufferOffsetAlignment, sizeof(VkDeviceSize));
+ vkStream->write((VkDeviceSize*)&forMarshaling->minBitstreamBufferSizeAlignment, sizeof(VkDeviceSize));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->videoPictureExtentGranularity));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->minExtent));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxExtent));
+ vkStream->write((uint32_t*)&forMarshaling->maxReferencePicturesSlotsCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxReferencePicturesActiveCount, sizeof(uint32_t));
+}
+
+void unmarshal_VkVideoCapabilitiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoCapabilitiesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoCapabilityFlagsKHR*)&forUnmarshaling->capabilityFlags, sizeof(VkVideoCapabilityFlagsKHR));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->minBitstreamBufferOffsetAlignment, sizeof(VkDeviceSize));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->minBitstreamBufferSizeAlignment, sizeof(VkDeviceSize));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->videoPictureExtentGranularity));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->minExtent));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->maxExtent));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxReferencePicturesSlotsCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxReferencePicturesActiveCount, sizeof(uint32_t));
+}
+
+void marshal_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkImageUsageFlags*)&forMarshaling->imageUsage, sizeof(VkImageUsageFlags));
+ marshal_VkVideoProfilesKHR(vkStream, rootType, (const VkVideoProfilesKHR*)(forMarshaling->pVideoProfiles));
+}
+
+void unmarshal_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceVideoFormatInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkImageUsageFlags*)&forUnmarshaling->imageUsage, sizeof(VkImageUsageFlags));
+ unmarshal_VkVideoProfilesKHR(vkStream, rootType, (VkVideoProfilesKHR*)(forUnmarshaling->pVideoProfiles));
+}
+
+void marshal_VkVideoFormatPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkFormat*)&forMarshaling->format, sizeof(VkFormat));
+}
+
+void unmarshal_VkVideoFormatPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoFormatPropertiesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkFormat*)&forUnmarshaling->format, sizeof(VkFormat));
+}
+
+void marshal_VkVideoPictureResourceKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->codedOffset));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->codedExtent));
+ vkStream->write((uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkImageView_u64(&forMarshaling->imageViewBinding, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+}
+
+void unmarshal_VkVideoPictureResourceKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoPictureResourceKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forUnmarshaling->codedOffset));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->codedExtent));
+ vkStream->read((uint32_t*)&forUnmarshaling->baseArrayLayer, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkImageView(&cgen_var_0, (VkImageView*)&forUnmarshaling->imageViewBinding, 1);
+}
+
+void marshal_VkVideoReferenceSlotKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((int8_t*)&forMarshaling->slotIndex, sizeof(int8_t));
+ marshal_VkVideoPictureResourceKHR(vkStream, rootType, (const VkVideoPictureResourceKHR*)(forMarshaling->pPictureResource));
+}
+
+void unmarshal_VkVideoReferenceSlotKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoReferenceSlotKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((int8_t*)&forUnmarshaling->slotIndex, sizeof(int8_t));
+ unmarshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(forUnmarshaling->pPictureResource));
+}
+
+void marshal_VkVideoGetMemoryPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->memoryBindIndex, sizeof(uint32_t));
+ marshal_VkMemoryRequirements2(vkStream, rootType, (VkMemoryRequirements2*)(forMarshaling->pMemoryRequirements));
+}
+
+void unmarshal_VkVideoGetMemoryPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoGetMemoryPropertiesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->memoryBindIndex, sizeof(uint32_t));
+ unmarshal_VkMemoryRequirements2(vkStream, rootType, (VkMemoryRequirements2*)(forUnmarshaling->pMemoryRequirements));
+}
+
+void marshal_VkVideoBindMemoryKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->memoryBindIndex, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkDeviceMemory_u64(&forMarshaling->memory, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize));
+ vkStream->write((VkDeviceSize*)&forMarshaling->memorySize, sizeof(VkDeviceSize));
+}
+
+void unmarshal_VkVideoBindMemoryKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoBindMemoryKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->memoryBindIndex, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkDeviceMemory(&cgen_var_0, (VkDeviceMemory*)&forUnmarshaling->memory, 1);
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->memoryOffset, sizeof(VkDeviceSize));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->memorySize, sizeof(VkDeviceSize));
+}
+
+void marshal_VkVideoSessionCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t));
+ vkStream->write((VkVideoSessionCreateFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoSessionCreateFlagsKHR));
+ marshal_VkVideoProfileKHR(vkStream, rootType, (const VkVideoProfileKHR*)(forMarshaling->pVideoProfile));
+ vkStream->write((VkFormat*)&forMarshaling->pictureFormat, sizeof(VkFormat));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxCodedExtent));
+ vkStream->write((VkFormat*)&forMarshaling->referencePicturesFormat, sizeof(VkFormat));
+ vkStream->write((uint32_t*)&forMarshaling->maxReferencePicturesSlotsCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxReferencePicturesActiveCount, sizeof(uint32_t));
+}
+
+void unmarshal_VkVideoSessionCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoSessionCreateInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->queueFamilyIndex, sizeof(uint32_t));
+ vkStream->read((VkVideoSessionCreateFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoSessionCreateFlagsKHR));
+ unmarshal_VkVideoProfileKHR(vkStream, rootType, (VkVideoProfileKHR*)(forUnmarshaling->pVideoProfile));
+ vkStream->read((VkFormat*)&forUnmarshaling->pictureFormat, sizeof(VkFormat));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->maxCodedExtent));
+ vkStream->read((VkFormat*)&forUnmarshaling->referencePicturesFormat, sizeof(VkFormat));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxReferencePicturesSlotsCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxReferencePicturesActiveCount, sizeof(uint32_t));
+}
+
+void marshal_VkVideoSessionParametersCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->videoSessionParametersTemplate;
+ vkStream->putBe64(cgen_var_0);
+ uint64_t cgen_var_1 = (uint64_t)forMarshaling->videoSession;
+ vkStream->putBe64(cgen_var_1);
+}
+
+void unmarshal_VkVideoSessionParametersCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoSessionParametersCreateInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->videoSessionParametersTemplate = (VkVideoSessionParametersKHR)vkStream->getBe64();
+ forUnmarshaling->videoSession = (VkVideoSessionKHR)vkStream->getBe64();
+}
+
+void marshal_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->updateSequenceCount, sizeof(uint32_t));
+}
+
+void unmarshal_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoSessionParametersUpdateInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->updateSequenceCount, sizeof(uint32_t));
+}
+
+void marshal_VkVideoBeginCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoBeginCodingFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoBeginCodingFlagsKHR));
+ vkStream->write((VkVideoCodingQualityPresetFlagsKHR*)&forMarshaling->codecQualityPreset, sizeof(VkVideoCodingQualityPresetFlagsKHR));
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->videoSession;
+ vkStream->putBe64(cgen_var_0);
+ uint64_t cgen_var_1 = (uint64_t)forMarshaling->videoSessionParameters;
+ vkStream->putBe64(cgen_var_1);
+ vkStream->write((uint32_t*)&forMarshaling->referenceSlotCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceSlotCount; ++i)
+ {
+ marshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pReferenceSlots + i));
+ }
+ }
+}
+
+void unmarshal_VkVideoBeginCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoBeginCodingInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoBeginCodingFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoBeginCodingFlagsKHR));
+ vkStream->read((VkVideoCodingQualityPresetFlagsKHR*)&forUnmarshaling->codecQualityPreset, sizeof(VkVideoCodingQualityPresetFlagsKHR));
+ forUnmarshaling->videoSession = (VkVideoSessionKHR)vkStream->getBe64();
+ forUnmarshaling->videoSessionParameters = (VkVideoSessionParametersKHR)vkStream->getBe64();
+ vkStream->read((uint32_t*)&forUnmarshaling->referenceSlotCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->referenceSlotCount; ++i)
+ {
+ unmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (VkVideoReferenceSlotKHR*)(forUnmarshaling->pReferenceSlots + i));
+ }
+ }
+}
+
+void marshal_VkVideoEndCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEndCodingFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoEndCodingFlagsKHR));
+}
+
+void unmarshal_VkVideoEndCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEndCodingInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEndCodingFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoEndCodingFlagsKHR));
+}
+
+void marshal_VkVideoCodingControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoCodingControlFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoCodingControlFlagsKHR));
+}
+
+void unmarshal_VkVideoCodingControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoCodingControlInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoCodingControlFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoCodingControlFlagsKHR));
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void marshal_VkVideoDecodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoDecodeFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoDecodeFlagsKHR));
+ marshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->codedOffset));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->codedExtent));
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkBuffer_u64(&forMarshaling->srcBuffer, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkDeviceSize*)&forMarshaling->srcBufferOffset, sizeof(VkDeviceSize));
+ vkStream->write((VkDeviceSize*)&forMarshaling->srcBufferRange, sizeof(VkDeviceSize));
+ marshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(&forMarshaling->dstPictureResource));
+ marshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pSetupReferenceSlot));
+ vkStream->write((uint32_t*)&forMarshaling->referenceSlotCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceSlotCount; ++i)
+ {
+ marshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pReferenceSlots + i));
+ }
+ }
+}
+
+void unmarshal_VkVideoDecodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoDecodeFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoDecodeFlagsKHR));
+ unmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forUnmarshaling->codedOffset));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->codedExtent));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkBuffer(&cgen_var_0, (VkBuffer*)&forUnmarshaling->srcBuffer, 1);
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->srcBufferOffset, sizeof(VkDeviceSize));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->srcBufferRange, sizeof(VkDeviceSize));
+ unmarshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(&forUnmarshaling->dstPictureResource));
+ unmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (VkVideoReferenceSlotKHR*)(forUnmarshaling->pSetupReferenceSlot));
+ vkStream->read((uint32_t*)&forUnmarshaling->referenceSlotCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->referenceSlotCount; ++i)
+ {
+ unmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (VkVideoReferenceSlotKHR*)(forUnmarshaling->pReferenceSlots + i));
+ }
+ }
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void marshal_VkRenderingAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkImageView_u64(&forMarshaling->imageView, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
+ vkStream->write((VkResolveModeFlagBits*)&forMarshaling->resolveMode, sizeof(VkResolveModeFlagBits));
+ uint64_t cgen_var_1;
+ vkStream->handleMapping()->mapHandles_VkImageView_u64(&forMarshaling->resolveImageView, &cgen_var_1, 1);
+ vkStream->write((uint64_t*)&cgen_var_1, 1 * 8);
+ vkStream->write((VkImageLayout*)&forMarshaling->resolveImageLayout, sizeof(VkImageLayout));
+ vkStream->write((VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp));
+ vkStream->write((VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp));
+ marshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forMarshaling->clearValue));
+}
+
+void unmarshal_VkRenderingAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingAttachmentInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkImageView(&cgen_var_0, (VkImageView*)&forUnmarshaling->imageView, 1);
+ vkStream->read((VkImageLayout*)&forUnmarshaling->imageLayout, sizeof(VkImageLayout));
+ vkStream->read((VkResolveModeFlagBits*)&forUnmarshaling->resolveMode, sizeof(VkResolveModeFlagBits));
+ uint64_t cgen_var_1;
+ vkStream->read((uint64_t*)&cgen_var_1, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkImageView(&cgen_var_1, (VkImageView*)&forUnmarshaling->resolveImageView, 1);
+ vkStream->read((VkImageLayout*)&forUnmarshaling->resolveImageLayout, sizeof(VkImageLayout));
+ vkStream->read((VkAttachmentLoadOp*)&forUnmarshaling->loadOp, sizeof(VkAttachmentLoadOp));
+ vkStream->read((VkAttachmentStoreOp*)&forUnmarshaling->storeOp, sizeof(VkAttachmentStoreOp));
+ unmarshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forUnmarshaling->clearValue));
+}
+
+void marshal_VkRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkRenderingFlagsKHR*)&forMarshaling->flags, sizeof(VkRenderingFlagsKHR));
+ marshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->renderArea));
+ vkStream->write((uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i)
+ {
+ marshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (const VkRenderingAttachmentInfoKHR*)(forMarshaling->pColorAttachments + i));
+ }
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDepthAttachment;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pDepthAttachment)
+ {
+ marshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (const VkRenderingAttachmentInfoKHR*)(forMarshaling->pDepthAttachment));
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pStencilAttachment;
+ vkStream->putBe64(cgen_var_1);
+ if (forMarshaling->pStencilAttachment)
+ {
+ marshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (const VkRenderingAttachmentInfoKHR*)(forMarshaling->pStencilAttachment));
+ }
+}
+
+void unmarshal_VkRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkRenderingFlagsKHR*)&forUnmarshaling->flags, sizeof(VkRenderingFlagsKHR));
+ unmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forUnmarshaling->renderArea));
+ vkStream->read((uint32_t*)&forUnmarshaling->layerCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->viewMask, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->colorAttachmentCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->colorAttachmentCount; ++i)
+ {
+ unmarshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (VkRenderingAttachmentInfoKHR*)(forUnmarshaling->pColorAttachments + i));
+ }
+ }
+ // WARNING PTR CHECK
+ const VkRenderingAttachmentInfoKHR* check_pDepthAttachment;
+ check_pDepthAttachment = (const VkRenderingAttachmentInfoKHR*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pDepthAttachment)
+ {
+ if (!(check_pDepthAttachment))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pDepthAttachment inconsistent between guest and host\n");
+ }
+ unmarshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (VkRenderingAttachmentInfoKHR*)(forUnmarshaling->pDepthAttachment));
+ }
+ // WARNING PTR CHECK
+ const VkRenderingAttachmentInfoKHR* check_pStencilAttachment;
+ check_pStencilAttachment = (const VkRenderingAttachmentInfoKHR*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pStencilAttachment)
+ {
+ if (!(check_pStencilAttachment))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pStencilAttachment inconsistent between guest and host\n");
+ }
+ unmarshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (VkRenderingAttachmentInfoKHR*)(forUnmarshaling->pStencilAttachment));
+ }
+}
+
+void marshal_VkPipelineRenderingCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ vkStream->write((const VkFormat*)forMarshaling->pColorAttachmentFormats, forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
+ vkStream->write((VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
+ vkStream->write((VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
+}
+
+void unmarshal_VkPipelineRenderingCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineRenderingCreateInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->viewMask, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->colorAttachmentCount, sizeof(uint32_t));
+ vkStream->read((VkFormat*)forUnmarshaling->pColorAttachmentFormats, forUnmarshaling->colorAttachmentCount * sizeof(const VkFormat));
+ vkStream->read((VkFormat*)&forUnmarshaling->depthAttachmentFormat, sizeof(VkFormat));
+ vkStream->read((VkFormat*)&forUnmarshaling->stencilAttachmentFormat, sizeof(VkFormat));
+}
+
+void marshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->dynamicRendering, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->dynamicRendering, sizeof(VkBool32));
+}
+
+void marshal_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkRenderingFlagsKHR*)&forMarshaling->flags, sizeof(VkRenderingFlagsKHR));
+ vkStream->write((uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ vkStream->write((const VkFormat*)forMarshaling->pColorAttachmentFormats, forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
+ vkStream->write((VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
+ vkStream->write((VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
+ vkStream->write((VkSampleCountFlagBits*)&forMarshaling->rasterizationSamples, sizeof(VkSampleCountFlagBits));
+}
+
+void unmarshal_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCommandBufferInheritanceRenderingInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkRenderingFlagsKHR*)&forUnmarshaling->flags, sizeof(VkRenderingFlagsKHR));
+ vkStream->read((uint32_t*)&forUnmarshaling->viewMask, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->colorAttachmentCount, sizeof(uint32_t));
+ vkStream->read((VkFormat*)forUnmarshaling->pColorAttachmentFormats, forUnmarshaling->colorAttachmentCount * sizeof(const VkFormat));
+ vkStream->read((VkFormat*)&forUnmarshaling->depthAttachmentFormat, sizeof(VkFormat));
+ vkStream->read((VkFormat*)&forUnmarshaling->stencilAttachmentFormat, sizeof(VkFormat));
+ vkStream->read((VkSampleCountFlagBits*)&forUnmarshaling->rasterizationSamples, sizeof(VkSampleCountFlagBits));
+}
+
+void marshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkImageView_u64(&forMarshaling->imageView, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->shadingRateAttachmentTexelSize));
+}
+
+void unmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkImageView(&cgen_var_0, (VkImageView*)&forUnmarshaling->imageView, 1);
+ vkStream->read((VkImageLayout*)&forUnmarshaling->imageLayout, sizeof(VkImageLayout));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->shadingRateAttachmentTexelSize));
+}
+
+void marshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkImageView_u64(&forMarshaling->imageView, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
+}
+
+void unmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkImageView(&cgen_var_0, (VkImageView*)&forUnmarshaling->imageView, 1);
+ vkStream->read((VkImageLayout*)&forUnmarshaling->imageLayout, sizeof(VkImageLayout));
+}
+
+void marshal_VkAttachmentSampleCountInfoAMD(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentSamples;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pColorAttachmentSamples)
+ {
+ vkStream->write((const VkSampleCountFlagBits*)forMarshaling->pColorAttachmentSamples, forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits));
+ }
+ vkStream->write((VkSampleCountFlagBits*)&forMarshaling->depthStencilAttachmentSamples, sizeof(VkSampleCountFlagBits));
+}
+
+void unmarshal_VkAttachmentSampleCountInfoAMD(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAttachmentSampleCountInfoAMD* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->colorAttachmentCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkSampleCountFlagBits* check_pColorAttachmentSamples;
+ check_pColorAttachmentSamples = (const VkSampleCountFlagBits*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pColorAttachmentSamples)
+ {
+ if (!(check_pColorAttachmentSamples))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pColorAttachmentSamples inconsistent between guest and host\n");
+ }
+ vkStream->read((VkSampleCountFlagBits*)forUnmarshaling->pColorAttachmentSamples, forUnmarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits));
+ }
+ vkStream->read((VkSampleCountFlagBits*)&forUnmarshaling->depthStencilAttachmentSamples, sizeof(VkSampleCountFlagBits));
+}
+
+void marshal_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->perViewAttributes, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->perViewAttributesPositionXOnly, sizeof(VkBool32));
+}
+
+void unmarshal_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMultiviewPerViewAttributesInfoNVX* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->perViewAttributes, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->perViewAttributesPositionXOnly, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -12054,7 +13126,13 @@
rootType = forMarshaling->sType;
}
marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
- marshal_VkAttachmentReference2(vkStream, rootType, (const VkAttachmentReference2*)(forMarshaling->pFragmentShadingRateAttachment));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pFragmentShadingRateAttachment;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pFragmentShadingRateAttachment)
+ {
+ marshal_VkAttachmentReference2(vkStream, rootType, (const VkAttachmentReference2*)(forMarshaling->pFragmentShadingRateAttachment));
+ }
marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->shadingRateAttachmentTexelSize));
}
@@ -12070,7 +13148,17 @@
rootType = forUnmarshaling->sType;
}
unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
- unmarshal_VkAttachmentReference2(vkStream, rootType, (VkAttachmentReference2*)(forUnmarshaling->pFragmentShadingRateAttachment));
+ // WARNING PTR CHECK
+ const VkAttachmentReference2* check_pFragmentShadingRateAttachment;
+ check_pFragmentShadingRateAttachment = (const VkAttachmentReference2*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pFragmentShadingRateAttachment)
+ {
+ if (!(check_pFragmentShadingRateAttachment))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pFragmentShadingRateAttachment inconsistent between guest and host\n");
+ }
+ unmarshal_VkAttachmentReference2(vkStream, rootType, (VkAttachmentReference2*)(forUnmarshaling->pFragmentShadingRateAttachment));
+ }
unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->shadingRateAttachmentTexelSize));
}
@@ -12271,6 +13359,38 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+void marshal_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->presentWait, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePresentWaitFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->presentWait, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -12524,6 +13644,126 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void marshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->shaderIntegerDotProduct, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderIntegerDotProduct, sizeof(VkBool32));
+}
+
+void marshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct8BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct8BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct8BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct16BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct16BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct16BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct32BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct32BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct32BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct64BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct64BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProduct64BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct8BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct8BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct8BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct4x8BitPackedSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct16BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct16BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct16BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct32BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct32BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct32BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct64BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct64BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProduct64BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_KHR_pipeline_library
void marshal_VkPipelineLibraryCreateInfoKHR(
VulkanStreamGuest* vkStream,
@@ -12572,6 +13812,776 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void marshal_VkPresentIdKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPresentIdKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pPresentIds;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pPresentIds)
+ {
+ vkStream->write((const uint64_t*)forMarshaling->pPresentIds, forMarshaling->swapchainCount * sizeof(const uint64_t));
+ }
+}
+
+void unmarshal_VkPresentIdKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPresentIdKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->swapchainCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const uint64_t* check_pPresentIds;
+ check_pPresentIds = (const uint64_t*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pPresentIds)
+ {
+ if (!(check_pPresentIds))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pPresentIds inconsistent between guest and host\n");
+ }
+ vkStream->read((uint64_t*)forUnmarshaling->pPresentIds, forUnmarshaling->swapchainCount * sizeof(const uint64_t));
+ }
+}
+
+void marshal_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->presentId, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePresentIdFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->presentId, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void marshal_VkVideoEncodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEncodeFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoEncodeFlagsKHR));
+ vkStream->write((uint32_t*)&forMarshaling->qualityLevel, sizeof(uint32_t));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->codedExtent));
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkBuffer_u64(&forMarshaling->dstBitstreamBuffer, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkDeviceSize*)&forMarshaling->dstBitstreamBufferOffset, sizeof(VkDeviceSize));
+ vkStream->write((VkDeviceSize*)&forMarshaling->dstBitstreamBufferMaxRange, sizeof(VkDeviceSize));
+ marshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(&forMarshaling->srcPictureResource));
+ marshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pSetupReferenceSlot));
+ vkStream->write((uint32_t*)&forMarshaling->referenceSlotCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceSlotCount; ++i)
+ {
+ marshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pReferenceSlots + i));
+ }
+ }
+}
+
+void unmarshal_VkVideoEncodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEncodeFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoEncodeFlagsKHR));
+ vkStream->read((uint32_t*)&forUnmarshaling->qualityLevel, sizeof(uint32_t));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->codedExtent));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkBuffer(&cgen_var_0, (VkBuffer*)&forUnmarshaling->dstBitstreamBuffer, 1);
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->dstBitstreamBufferOffset, sizeof(VkDeviceSize));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->dstBitstreamBufferMaxRange, sizeof(VkDeviceSize));
+ unmarshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(&forUnmarshaling->srcPictureResource));
+ unmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (VkVideoReferenceSlotKHR*)(forUnmarshaling->pSetupReferenceSlot));
+ vkStream->read((uint32_t*)&forUnmarshaling->referenceSlotCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->referenceSlotCount; ++i)
+ {
+ unmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (VkVideoReferenceSlotKHR*)(forUnmarshaling->pReferenceSlots + i));
+ }
+ }
+}
+
+void marshal_VkVideoEncodeRateControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEncodeRateControlFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoEncodeRateControlFlagsKHR));
+ vkStream->write((VkVideoEncodeRateControlModeFlagBitsKHR*)&forMarshaling->rateControlMode, sizeof(VkVideoEncodeRateControlModeFlagBitsKHR));
+ vkStream->write((uint32_t*)&forMarshaling->averageBitrate, sizeof(uint32_t));
+ vkStream->write((uint16_t*)&forMarshaling->peakToAverageBitrateRatio, sizeof(uint16_t));
+ vkStream->write((uint16_t*)&forMarshaling->frameRateNumerator, sizeof(uint16_t));
+ vkStream->write((uint16_t*)&forMarshaling->frameRateDenominator, sizeof(uint16_t));
+ vkStream->write((uint32_t*)&forMarshaling->virtualBufferSizeInMs, sizeof(uint32_t));
+}
+
+void unmarshal_VkVideoEncodeRateControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeRateControlInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEncodeRateControlFlagsKHR*)&forUnmarshaling->flags, sizeof(VkVideoEncodeRateControlFlagsKHR));
+ vkStream->read((VkVideoEncodeRateControlModeFlagBitsKHR*)&forUnmarshaling->rateControlMode, sizeof(VkVideoEncodeRateControlModeFlagBitsKHR));
+ vkStream->read((uint32_t*)&forUnmarshaling->averageBitrate, sizeof(uint32_t));
+ vkStream->read((uint16_t*)&forUnmarshaling->peakToAverageBitrateRatio, sizeof(uint16_t));
+ vkStream->read((uint16_t*)&forUnmarshaling->frameRateNumerator, sizeof(uint16_t));
+ vkStream->read((uint16_t*)&forUnmarshaling->frameRateDenominator, sizeof(uint16_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->virtualBufferSizeInMs, sizeof(uint32_t));
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void marshal_VkMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((VkAccessFlags2KHR*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((VkAccessFlags2KHR*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+}
+
+void unmarshal_VkMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryBarrier2KHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((VkAccessFlags2KHR*)&forUnmarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((VkAccessFlags2KHR*)&forUnmarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+}
+
+void marshal_VkBufferMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((VkAccessFlags2KHR*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((VkAccessFlags2KHR*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->write((uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkBuffer_u64(&forMarshaling->buffer, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
+ vkStream->write((VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
+}
+
+void unmarshal_VkBufferMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferMemoryBarrier2KHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((VkAccessFlags2KHR*)&forUnmarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((VkAccessFlags2KHR*)&forUnmarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->read((uint32_t*)&forUnmarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkBuffer(&cgen_var_0, (VkBuffer*)&forUnmarshaling->buffer, 1);
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->offset, sizeof(VkDeviceSize));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->size, sizeof(VkDeviceSize));
+}
+
+void marshal_VkImageMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((VkAccessFlags2KHR*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((VkAccessFlags2KHR*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->write((VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout));
+ vkStream->write((VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout));
+ vkStream->write((uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkImage_u64(&forMarshaling->image, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ marshal_VkImageSubresourceRange(vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange));
+}
+
+void unmarshal_VkImageMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImageMemoryBarrier2KHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((VkAccessFlags2KHR*)&forUnmarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((VkAccessFlags2KHR*)&forUnmarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ vkStream->read((VkImageLayout*)&forUnmarshaling->oldLayout, sizeof(VkImageLayout));
+ vkStream->read((VkImageLayout*)&forUnmarshaling->newLayout, sizeof(VkImageLayout));
+ vkStream->read((uint32_t*)&forUnmarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkImage(&cgen_var_0, (VkImage*)&forUnmarshaling->image, 1);
+ unmarshal_VkImageSubresourceRange(vkStream, rootType, (VkImageSubresourceRange*)(&forUnmarshaling->subresourceRange));
+}
+
+void marshal_VkDependencyInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags));
+ vkStream->write((uint32_t*)&forMarshaling->memoryBarrierCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->memoryBarrierCount; ++i)
+ {
+ marshal_VkMemoryBarrier2KHR(vkStream, rootType, (const VkMemoryBarrier2KHR*)(forMarshaling->pMemoryBarriers + i));
+ }
+ }
+ vkStream->write((uint32_t*)&forMarshaling->bufferMemoryBarrierCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->bufferMemoryBarrierCount; ++i)
+ {
+ marshal_VkBufferMemoryBarrier2KHR(vkStream, rootType, (const VkBufferMemoryBarrier2KHR*)(forMarshaling->pBufferMemoryBarriers + i));
+ }
+ }
+ vkStream->write((uint32_t*)&forMarshaling->imageMemoryBarrierCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageMemoryBarrierCount; ++i)
+ {
+ marshal_VkImageMemoryBarrier2KHR(vkStream, rootType, (const VkImageMemoryBarrier2KHR*)(forMarshaling->pImageMemoryBarriers + i));
+ }
+ }
+}
+
+void unmarshal_VkDependencyInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDependencyInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkDependencyFlags*)&forUnmarshaling->dependencyFlags, sizeof(VkDependencyFlags));
+ vkStream->read((uint32_t*)&forUnmarshaling->memoryBarrierCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->memoryBarrierCount; ++i)
+ {
+ unmarshal_VkMemoryBarrier2KHR(vkStream, rootType, (VkMemoryBarrier2KHR*)(forUnmarshaling->pMemoryBarriers + i));
+ }
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->bufferMemoryBarrierCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->bufferMemoryBarrierCount; ++i)
+ {
+ unmarshal_VkBufferMemoryBarrier2KHR(vkStream, rootType, (VkBufferMemoryBarrier2KHR*)(forUnmarshaling->pBufferMemoryBarriers + i));
+ }
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->imageMemoryBarrierCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->imageMemoryBarrierCount; ++i)
+ {
+ unmarshal_VkImageMemoryBarrier2KHR(vkStream, rootType, (VkImageMemoryBarrier2KHR*)(forUnmarshaling->pImageMemoryBarriers + i));
+ }
+ }
+}
+
+void marshal_VkSemaphoreSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkSemaphore_u64(&forMarshaling->semaphore, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((uint64_t*)&forMarshaling->value, sizeof(uint64_t));
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->stageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->write((uint32_t*)&forMarshaling->deviceIndex, sizeof(uint32_t));
+}
+
+void unmarshal_VkSemaphoreSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSemaphoreSubmitInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkSemaphore(&cgen_var_0, (VkSemaphore*)&forUnmarshaling->semaphore, 1);
+ vkStream->read((uint64_t*)&forUnmarshaling->value, sizeof(uint64_t));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->stageMask, sizeof(VkPipelineStageFlags2KHR));
+ vkStream->read((uint32_t*)&forUnmarshaling->deviceIndex, sizeof(uint32_t));
+}
+
+void marshal_VkCommandBufferSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkCommandBuffer_u64(&forMarshaling->commandBuffer, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t));
+}
+
+void unmarshal_VkCommandBufferSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCommandBufferSubmitInfoKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkCommandBuffer(&cgen_var_0, (VkCommandBuffer*)&forUnmarshaling->commandBuffer, 1);
+ vkStream->read((uint32_t*)&forUnmarshaling->deviceMask, sizeof(uint32_t));
+}
+
+void marshal_VkSubmitInfo2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkSubmitFlagsKHR*)&forMarshaling->flags, sizeof(VkSubmitFlagsKHR));
+ vkStream->write((uint32_t*)&forMarshaling->waitSemaphoreInfoCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->waitSemaphoreInfoCount; ++i)
+ {
+ marshal_VkSemaphoreSubmitInfoKHR(vkStream, rootType, (const VkSemaphoreSubmitInfoKHR*)(forMarshaling->pWaitSemaphoreInfos + i));
+ }
+ }
+ vkStream->write((uint32_t*)&forMarshaling->commandBufferInfoCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->commandBufferInfoCount; ++i)
+ {
+ marshal_VkCommandBufferSubmitInfoKHR(vkStream, rootType, (const VkCommandBufferSubmitInfoKHR*)(forMarshaling->pCommandBufferInfos + i));
+ }
+ }
+ vkStream->write((uint32_t*)&forMarshaling->signalSemaphoreInfoCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->signalSemaphoreInfoCount; ++i)
+ {
+ marshal_VkSemaphoreSubmitInfoKHR(vkStream, rootType, (const VkSemaphoreSubmitInfoKHR*)(forMarshaling->pSignalSemaphoreInfos + i));
+ }
+ }
+}
+
+void unmarshal_VkSubmitInfo2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSubmitInfo2KHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkSubmitFlagsKHR*)&forUnmarshaling->flags, sizeof(VkSubmitFlagsKHR));
+ vkStream->read((uint32_t*)&forUnmarshaling->waitSemaphoreInfoCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->waitSemaphoreInfoCount; ++i)
+ {
+ unmarshal_VkSemaphoreSubmitInfoKHR(vkStream, rootType, (VkSemaphoreSubmitInfoKHR*)(forUnmarshaling->pWaitSemaphoreInfos + i));
+ }
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->commandBufferInfoCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->commandBufferInfoCount; ++i)
+ {
+ unmarshal_VkCommandBufferSubmitInfoKHR(vkStream, rootType, (VkCommandBufferSubmitInfoKHR*)(forUnmarshaling->pCommandBufferInfos + i));
+ }
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->signalSemaphoreInfoCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->signalSemaphoreInfoCount; ++i)
+ {
+ unmarshal_VkSemaphoreSubmitInfoKHR(vkStream, rootType, (VkSemaphoreSubmitInfoKHR*)(forUnmarshaling->pSignalSemaphoreInfos + i));
+ }
+ }
+}
+
+void marshal_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->synchronization2, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->synchronization2, sizeof(VkBool32));
+}
+
+void marshal_VkQueueFamilyCheckpointProperties2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->checkpointExecutionStageMask, sizeof(VkPipelineStageFlags2KHR));
+}
+
+void unmarshal_VkQueueFamilyCheckpointProperties2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkQueueFamilyCheckpointProperties2NV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->checkpointExecutionStageMask, sizeof(VkPipelineStageFlags2KHR));
+}
+
+void marshal_VkCheckpointData2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkPipelineStageFlags2KHR*)&forMarshaling->stage, sizeof(VkPipelineStageFlags2KHR));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCheckpointMarker;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pCheckpointMarker)
+ {
+ vkStream->write((void*)forMarshaling->pCheckpointMarker, sizeof(uint8_t));
+ }
+}
+
+void unmarshal_VkCheckpointData2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCheckpointData2NV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkPipelineStageFlags2KHR*)&forUnmarshaling->stage, sizeof(VkPipelineStageFlags2KHR));
+ // WARNING PTR CHECK
+ void* check_pCheckpointMarker;
+ check_pCheckpointMarker = (void*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pCheckpointMarker)
+ {
+ if (!(check_pCheckpointMarker))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pCheckpointMarker inconsistent between guest and host\n");
+ }
+ vkStream->read((void*)forUnmarshaling->pCheckpointMarker, sizeof(uint8_t));
+ }
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void marshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->shaderSubgroupUniformControlFlow, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderSubgroupUniformControlFlow, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void marshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void marshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->workgroupMemoryExplicitLayout, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->workgroupMemoryExplicitLayoutScalarBlockLayout, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->workgroupMemoryExplicitLayout8BitAccess, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->workgroupMemoryExplicitLayout16BitAccess, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->workgroupMemoryExplicitLayout, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->workgroupMemoryExplicitLayoutScalarBlockLayout, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->workgroupMemoryExplicitLayout8BitAccess, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->workgroupMemoryExplicitLayout16BitAccess, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_KHR_copy_commands2
void marshal_VkBufferCopy2KHR(
VulkanStreamGuest* vkStream,
@@ -13126,6 +15136,166 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+void marshal_VkFormatProperties3KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkFormatFeatureFlags2KHR*)&forMarshaling->linearTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ vkStream->write((VkFormatFeatureFlags2KHR*)&forMarshaling->optimalTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ vkStream->write((VkFormatFeatureFlags2KHR*)&forMarshaling->bufferFeatures, sizeof(VkFormatFeatureFlags2KHR));
+}
+
+void unmarshal_VkFormatProperties3KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkFormatProperties3KHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkFormatFeatureFlags2KHR*)&forUnmarshaling->linearTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ vkStream->read((VkFormatFeatureFlags2KHR*)&forUnmarshaling->optimalTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ vkStream->read((VkFormatFeatureFlags2KHR*)&forUnmarshaling->bufferFeatures, sizeof(VkFormatFeatureFlags2KHR));
+}
+
+#endif
+#ifdef VK_KHR_maintenance4
+void marshal_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->maintenance4, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->maintenance4, sizeof(VkBool32));
+}
+
+void marshal_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkDeviceSize*)&forMarshaling->maxBufferSize, sizeof(VkDeviceSize));
+}
+
+void unmarshal_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkDeviceSize*)&forUnmarshaling->maxBufferSize, sizeof(VkDeviceSize));
+}
+
+void marshal_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkBufferCreateInfo(vkStream, rootType, (const VkBufferCreateInfo*)(forMarshaling->pCreateInfo));
+}
+
+void unmarshal_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDeviceBufferMemoryRequirementsKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkBufferCreateInfo(vkStream, rootType, (VkBufferCreateInfo*)(forUnmarshaling->pCreateInfo));
+}
+
+void marshal_VkDeviceImageMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkImageCreateInfo(vkStream, rootType, (const VkImageCreateInfo*)(forMarshaling->pCreateInfo));
+ vkStream->write((VkImageAspectFlagBits*)&forMarshaling->planeAspect, sizeof(VkImageAspectFlagBits));
+}
+
+void unmarshal_VkDeviceImageMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDeviceImageMemoryRequirementsKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkImageCreateInfo(vkStream, rootType, (VkImageCreateInfo*)(forUnmarshaling->pCreateInfo));
+ vkStream->read((VkImageAspectFlagBits*)&forUnmarshaling->planeAspect, sizeof(VkImageAspectFlagBits));
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
void marshal_VkNativeBufferANDROID(
VulkanStreamGuest* vkStream,
@@ -13604,6 +15774,125 @@
}
#endif
+#ifdef VK_NVX_binary_import
+void marshal_VkCuModuleCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize;
+ vkStream->putBe64(cgen_var_0);
+ vkStream->write((const void*)forMarshaling->pData, forMarshaling->dataSize * sizeof(const uint8_t));
+}
+
+void unmarshal_VkCuModuleCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCuModuleCreateInfoNVX* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->dataSize = (size_t)vkStream->getBe64();
+ vkStream->read((void*)forUnmarshaling->pData, forUnmarshaling->dataSize * sizeof(const uint8_t));
+}
+
+void marshal_VkCuFunctionCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->module;
+ vkStream->putBe64(cgen_var_0);
+ vkStream->putString(forMarshaling->pName);
+}
+
+void unmarshal_VkCuFunctionCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCuFunctionCreateInfoNVX* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->module = (VkCuModuleNVX)vkStream->getBe64();
+ vkStream->loadStringInPlace((char**)&forUnmarshaling->pName);
+}
+
+void marshal_VkCuLaunchInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->function;
+ vkStream->putBe64(cgen_var_0);
+ vkStream->write((uint32_t*)&forMarshaling->gridDimX, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->gridDimY, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->gridDimZ, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->blockDimX, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->blockDimY, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->blockDimZ, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->sharedMemBytes, sizeof(uint32_t));
+ uint64_t cgen_var_1 = (uint64_t)forMarshaling->paramCount;
+ vkStream->putBe64(cgen_var_1);
+ uint64_t cgen_var_2 = (uint64_t)forMarshaling->extraCount;
+ vkStream->putBe64(cgen_var_2);
+}
+
+void unmarshal_VkCuLaunchInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCuLaunchInfoNVX* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->function = (VkCuFunctionNVX)vkStream->getBe64();
+ vkStream->read((uint32_t*)&forUnmarshaling->gridDimX, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->gridDimY, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->gridDimZ, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->blockDimX, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->blockDimY, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->blockDimZ, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->sharedMemBytes, sizeof(uint32_t));
+ forUnmarshaling->paramCount = (size_t)vkStream->getBe64();
+ forUnmarshaling->extraCount = (size_t)vkStream->getBe64();
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
void marshal_VkImageViewHandleInfoNVX(
VulkanStreamGuest* vkStream,
@@ -13688,6 +15977,1270 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void marshal_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEncodeH264CapabilityFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH264CapabilityFlagsEXT));
+ vkStream->write((VkVideoEncodeH264InputModeFlagsEXT*)&forMarshaling->inputModeFlags, sizeof(VkVideoEncodeH264InputModeFlagsEXT));
+ vkStream->write((VkVideoEncodeH264OutputModeFlagsEXT*)&forMarshaling->outputModeFlags, sizeof(VkVideoEncodeH264OutputModeFlagsEXT));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->minPictureSizeInMbs));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxPictureSizeInMbs));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->inputImageDataAlignment));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumL0ReferenceForP, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumL0ReferenceForB, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumL1Reference, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->qualityLevelCount, sizeof(uint8_t));
+ marshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion));
+}
+
+void unmarshal_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264CapabilitiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEncodeH264CapabilityFlagsEXT*)&forUnmarshaling->flags, sizeof(VkVideoEncodeH264CapabilityFlagsEXT));
+ vkStream->read((VkVideoEncodeH264InputModeFlagsEXT*)&forUnmarshaling->inputModeFlags, sizeof(VkVideoEncodeH264InputModeFlagsEXT));
+ vkStream->read((VkVideoEncodeH264OutputModeFlagsEXT*)&forUnmarshaling->outputModeFlags, sizeof(VkVideoEncodeH264OutputModeFlagsEXT));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->minPictureSizeInMbs));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->maxPictureSizeInMbs));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->inputImageDataAlignment));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumL0ReferenceForP, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumL0ReferenceForB, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumL1Reference, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->qualityLevelCount, sizeof(uint8_t));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forUnmarshaling->stdExtensionVersion));
+}
+
+void marshal_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEncodeH264CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH264CreateFlagsEXT));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxPictureSizeInMbs));
+ marshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion));
+}
+
+void unmarshal_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264SessionCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEncodeH264CreateFlagsEXT*)&forUnmarshaling->flags, sizeof(VkVideoEncodeH264CreateFlagsEXT));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->maxPictureSizeInMbs));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(forUnmarshaling->pStdExtensionVersion));
+}
+
+void marshal_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pSpsStd)
+ {
+ vkStream->write((const StdVideoH264SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ }
+ vkStream->write((uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ vkStream->putBe64(cgen_var_1);
+ if (forMarshaling->pPpsStd)
+ {
+ vkStream->write((const StdVideoH264PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ }
+}
+
+void unmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH264SequenceParameterSet* check_pSpsStd;
+ check_pSpsStd = (const StdVideoH264SequenceParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pSpsStd)
+ {
+ if (!(check_pSpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pSpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH264SequenceParameterSet*)forUnmarshaling->pSpsStd, forUnmarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH264PictureParameterSet* check_pPpsStd;
+ check_pPpsStd = (const StdVideoH264PictureParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pPpsStd)
+ {
+ if (!(check_pPpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pPpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH264PictureParameterSet*)forUnmarshaling->pPpsStd, forUnmarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ }
+}
+
+void marshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pParametersAddInfo)
+ {
+ marshal_VkVideoEncodeH264SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoEncodeH264SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo));
+ }
+}
+
+void unmarshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* check_pParametersAddInfo;
+ check_pParametersAddInfo = (const VkVideoEncodeH264SessionParametersAddInfoEXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pParametersAddInfo)
+ {
+ if (!(check_pParametersAddInfo))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pParametersAddInfo inconsistent between guest and host\n");
+ }
+ unmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(vkStream, rootType, (VkVideoEncodeH264SessionParametersAddInfoEXT*)(forUnmarshaling->pParametersAddInfo));
+ }
+}
+
+void marshal_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((int8_t*)&forMarshaling->slotIndex, sizeof(int8_t));
+ vkStream->write((const StdVideoEncodeH264PictureInfo*)forMarshaling->pStdPictureInfo, sizeof(const StdVideoEncodeH264PictureInfo));
+}
+
+void unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264DpbSlotInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((int8_t*)&forUnmarshaling->slotIndex, sizeof(int8_t));
+ vkStream->read((StdVideoEncodeH264PictureInfo*)forUnmarshaling->pStdPictureInfo, sizeof(const StdVideoEncodeH264PictureInfo));
+}
+
+void marshal_VkVideoEncodeH264NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((const StdVideoEncodeH264SliceHeader*)forMarshaling->pSliceHeaderStd, sizeof(const StdVideoEncodeH264SliceHeader));
+ vkStream->write((uint32_t*)&forMarshaling->mbCount, sizeof(uint32_t));
+ vkStream->write((uint8_t*)&forMarshaling->refFinalList0EntryCount, sizeof(uint8_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refFinalList0EntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefFinalList0Entries + i));
+ }
+ }
+ vkStream->write((uint8_t*)&forMarshaling->refFinalList1EntryCount, sizeof(uint8_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refFinalList1EntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefFinalList1Entries + i));
+ }
+ }
+ vkStream->write((uint32_t*)&forMarshaling->precedingNaluBytes, sizeof(uint32_t));
+ vkStream->write((uint8_t*)&forMarshaling->minQp, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->maxQp, sizeof(uint8_t));
+}
+
+void unmarshal_VkVideoEncodeH264NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264NaluSliceEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoEncodeH264SliceHeader*)forUnmarshaling->pSliceHeaderStd, sizeof(const StdVideoEncodeH264SliceHeader));
+ vkStream->read((uint32_t*)&forUnmarshaling->mbCount, sizeof(uint32_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->refFinalList0EntryCount, sizeof(uint8_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->refFinalList0EntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH264DpbSlotInfoEXT*)(forUnmarshaling->pRefFinalList0Entries + i));
+ }
+ }
+ vkStream->read((uint8_t*)&forUnmarshaling->refFinalList1EntryCount, sizeof(uint8_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->refFinalList1EntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH264DpbSlotInfoEXT*)(forUnmarshaling->pRefFinalList1Entries + i));
+ }
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->precedingNaluBytes, sizeof(uint32_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->minQp, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxQp, sizeof(uint8_t));
+}
+
+void marshal_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint8_t*)&forMarshaling->refDefaultFinalList0EntryCount, sizeof(uint8_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refDefaultFinalList0EntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefDefaultFinalList0Entries + i));
+ }
+ }
+ vkStream->write((uint8_t*)&forMarshaling->refDefaultFinalList1EntryCount, sizeof(uint8_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refDefaultFinalList1EntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefDefaultFinalList1Entries + i));
+ }
+ }
+ vkStream->write((uint32_t*)&forMarshaling->naluSliceEntryCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->naluSliceEntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH264NaluSliceEXT(vkStream, rootType, (const VkVideoEncodeH264NaluSliceEXT*)(forMarshaling->pNaluSliceEntries + i));
+ }
+ }
+ marshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pCurrentPictureInfo));
+}
+
+void unmarshal_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264VclFrameInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint8_t*)&forUnmarshaling->refDefaultFinalList0EntryCount, sizeof(uint8_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->refDefaultFinalList0EntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH264DpbSlotInfoEXT*)(forUnmarshaling->pRefDefaultFinalList0Entries + i));
+ }
+ }
+ vkStream->read((uint8_t*)&forUnmarshaling->refDefaultFinalList1EntryCount, sizeof(uint8_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->refDefaultFinalList1EntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH264DpbSlotInfoEXT*)(forUnmarshaling->pRefDefaultFinalList1Entries + i));
+ }
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->naluSliceEntryCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->naluSliceEntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH264NaluSliceEXT(vkStream, rootType, (VkVideoEncodeH264NaluSliceEXT*)(forUnmarshaling->pNaluSliceEntries + i));
+ }
+ }
+ unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH264DpbSlotInfoEXT*)(forUnmarshaling->pCurrentPictureInfo));
+}
+
+void marshal_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint8_t*)&forMarshaling->spsId, sizeof(uint8_t));
+ vkStream->write((VkBool32*)&forMarshaling->emitSpsEnable, sizeof(VkBool32));
+ vkStream->write((uint32_t*)&forMarshaling->ppsIdEntryCount, sizeof(uint32_t));
+ vkStream->write((const uint8_t*)forMarshaling->ppsIdEntries, forMarshaling->ppsIdEntryCount * sizeof(const uint8_t));
+}
+
+void unmarshal_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264EmitPictureParametersEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint8_t*)&forUnmarshaling->spsId, sizeof(uint8_t));
+ vkStream->read((VkBool32*)&forUnmarshaling->emitSpsEnable, sizeof(VkBool32));
+ vkStream->read((uint32_t*)&forUnmarshaling->ppsIdEntryCount, sizeof(uint32_t));
+ vkStream->read((uint8_t*)forUnmarshaling->ppsIdEntries, forUnmarshaling->ppsIdEntryCount * sizeof(const uint8_t));
+}
+
+void marshal_VkVideoEncodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((StdVideoH264ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH264ProfileIdc));
+}
+
+void unmarshal_VkVideoEncodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264ProfileEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoH264ProfileIdc*)&forUnmarshaling->stdProfileIdc, sizeof(StdVideoH264ProfileIdc));
+}
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void marshal_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEncodeH265CapabilityFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH265CapabilityFlagsEXT));
+ vkStream->write((VkVideoEncodeH265InputModeFlagsEXT*)&forMarshaling->inputModeFlags, sizeof(VkVideoEncodeH265InputModeFlagsEXT));
+ vkStream->write((VkVideoEncodeH265OutputModeFlagsEXT*)&forMarshaling->outputModeFlags, sizeof(VkVideoEncodeH265OutputModeFlagsEXT));
+ vkStream->write((VkVideoEncodeH265CtbSizeFlagsEXT*)&forMarshaling->ctbSizes, sizeof(VkVideoEncodeH265CtbSizeFlagsEXT));
+ marshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->inputImageDataAlignment));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumL0ReferenceForP, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumL0ReferenceForB, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumL1Reference, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->maxNumSubLayers, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->qualityLevelCount, sizeof(uint8_t));
+ marshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion));
+}
+
+void unmarshal_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265CapabilitiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEncodeH265CapabilityFlagsEXT*)&forUnmarshaling->flags, sizeof(VkVideoEncodeH265CapabilityFlagsEXT));
+ vkStream->read((VkVideoEncodeH265InputModeFlagsEXT*)&forUnmarshaling->inputModeFlags, sizeof(VkVideoEncodeH265InputModeFlagsEXT));
+ vkStream->read((VkVideoEncodeH265OutputModeFlagsEXT*)&forUnmarshaling->outputModeFlags, sizeof(VkVideoEncodeH265OutputModeFlagsEXT));
+ vkStream->read((VkVideoEncodeH265CtbSizeFlagsEXT*)&forUnmarshaling->ctbSizes, sizeof(VkVideoEncodeH265CtbSizeFlagsEXT));
+ unmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forUnmarshaling->inputImageDataAlignment));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumL0ReferenceForP, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumL0ReferenceForB, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumL1Reference, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->maxNumSubLayers, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->qualityLevelCount, sizeof(uint8_t));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forUnmarshaling->stdExtensionVersion));
+}
+
+void marshal_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoEncodeH265CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH265CreateFlagsEXT));
+ marshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion));
+}
+
+void unmarshal_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265SessionCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoEncodeH265CreateFlagsEXT*)&forUnmarshaling->flags, sizeof(VkVideoEncodeH265CreateFlagsEXT));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(forUnmarshaling->pStdExtensionVersion));
+}
+
+void marshal_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->vpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pVpsStd;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pVpsStd)
+ {
+ vkStream->write((const StdVideoH265VideoParameterSet*)forMarshaling->pVpsStd, forMarshaling->vpsStdCount * sizeof(const StdVideoH265VideoParameterSet));
+ }
+ vkStream->write((uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ vkStream->putBe64(cgen_var_1);
+ if (forMarshaling->pSpsStd)
+ {
+ vkStream->write((const StdVideoH265SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ }
+ vkStream->write((uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ vkStream->putBe64(cgen_var_2);
+ if (forMarshaling->pPpsStd)
+ {
+ vkStream->write((const StdVideoH265PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ }
+}
+
+void unmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->vpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH265VideoParameterSet* check_pVpsStd;
+ check_pVpsStd = (const StdVideoH265VideoParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pVpsStd)
+ {
+ if (!(check_pVpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pVpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH265VideoParameterSet*)forUnmarshaling->pVpsStd, forUnmarshaling->vpsStdCount * sizeof(const StdVideoH265VideoParameterSet));
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH265SequenceParameterSet* check_pSpsStd;
+ check_pSpsStd = (const StdVideoH265SequenceParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pSpsStd)
+ {
+ if (!(check_pSpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pSpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH265SequenceParameterSet*)forUnmarshaling->pSpsStd, forUnmarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH265PictureParameterSet* check_pPpsStd;
+ check_pPpsStd = (const StdVideoH265PictureParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pPpsStd)
+ {
+ if (!(check_pPpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pPpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH265PictureParameterSet*)forUnmarshaling->pPpsStd, forUnmarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ }
+}
+
+void marshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxVpsStdCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pParametersAddInfo)
+ {
+ marshal_VkVideoEncodeH265SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoEncodeH265SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo));
+ }
+}
+
+void unmarshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxVpsStdCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* check_pParametersAddInfo;
+ check_pParametersAddInfo = (const VkVideoEncodeH265SessionParametersAddInfoEXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pParametersAddInfo)
+ {
+ if (!(check_pParametersAddInfo))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pParametersAddInfo inconsistent between guest and host\n");
+ }
+ unmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(vkStream, rootType, (VkVideoEncodeH265SessionParametersAddInfoEXT*)(forUnmarshaling->pParametersAddInfo));
+ }
+}
+
+void marshal_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((int8_t*)&forMarshaling->slotIndex, sizeof(int8_t));
+ vkStream->write((const StdVideoEncodeH265ReferenceInfo*)forMarshaling->pStdReferenceInfo, sizeof(const StdVideoEncodeH265ReferenceInfo));
+}
+
+void unmarshal_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265DpbSlotInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((int8_t*)&forUnmarshaling->slotIndex, sizeof(int8_t));
+ vkStream->read((StdVideoEncodeH265ReferenceInfo*)forUnmarshaling->pStdReferenceInfo, sizeof(const StdVideoEncodeH265ReferenceInfo));
+}
+
+void marshal_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint8_t*)&forMarshaling->referenceList0EntryCount, sizeof(uint8_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceList0EntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH265DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH265DpbSlotInfoEXT*)(forMarshaling->pReferenceList0Entries + i));
+ }
+ }
+ vkStream->write((uint8_t*)&forMarshaling->referenceList1EntryCount, sizeof(uint8_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceList1EntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH265DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH265DpbSlotInfoEXT*)(forMarshaling->pReferenceList1Entries + i));
+ }
+ }
+ vkStream->write((const StdVideoEncodeH265ReferenceModifications*)forMarshaling->pReferenceModifications, sizeof(const StdVideoEncodeH265ReferenceModifications));
+}
+
+void unmarshal_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265ReferenceListsEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint8_t*)&forUnmarshaling->referenceList0EntryCount, sizeof(uint8_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->referenceList0EntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH265DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH265DpbSlotInfoEXT*)(forUnmarshaling->pReferenceList0Entries + i));
+ }
+ }
+ vkStream->read((uint8_t*)&forUnmarshaling->referenceList1EntryCount, sizeof(uint8_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->referenceList1EntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH265DpbSlotInfoEXT(vkStream, rootType, (VkVideoEncodeH265DpbSlotInfoEXT*)(forUnmarshaling->pReferenceList1Entries + i));
+ }
+ }
+ vkStream->read((StdVideoEncodeH265ReferenceModifications*)forUnmarshaling->pReferenceModifications, sizeof(const StdVideoEncodeH265ReferenceModifications));
+}
+
+void marshal_VkVideoEncodeH265NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->ctbCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pReferenceFinalLists;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pReferenceFinalLists)
+ {
+ marshal_VkVideoEncodeH265ReferenceListsEXT(vkStream, rootType, (const VkVideoEncodeH265ReferenceListsEXT*)(forMarshaling->pReferenceFinalLists));
+ }
+ vkStream->write((const StdVideoEncodeH265SliceHeader*)forMarshaling->pSliceHeaderStd, sizeof(const StdVideoEncodeH265SliceHeader));
+}
+
+void unmarshal_VkVideoEncodeH265NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265NaluSliceEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->ctbCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkVideoEncodeH265ReferenceListsEXT* check_pReferenceFinalLists;
+ check_pReferenceFinalLists = (const VkVideoEncodeH265ReferenceListsEXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pReferenceFinalLists)
+ {
+ if (!(check_pReferenceFinalLists))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pReferenceFinalLists inconsistent between guest and host\n");
+ }
+ unmarshal_VkVideoEncodeH265ReferenceListsEXT(vkStream, rootType, (VkVideoEncodeH265ReferenceListsEXT*)(forUnmarshaling->pReferenceFinalLists));
+ }
+ vkStream->read((StdVideoEncodeH265SliceHeader*)forUnmarshaling->pSliceHeaderStd, sizeof(const StdVideoEncodeH265SliceHeader));
+}
+
+void marshal_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pReferenceFinalLists;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pReferenceFinalLists)
+ {
+ marshal_VkVideoEncodeH265ReferenceListsEXT(vkStream, rootType, (const VkVideoEncodeH265ReferenceListsEXT*)(forMarshaling->pReferenceFinalLists));
+ }
+ vkStream->write((uint32_t*)&forMarshaling->naluSliceEntryCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->naluSliceEntryCount; ++i)
+ {
+ marshal_VkVideoEncodeH265NaluSliceEXT(vkStream, rootType, (const VkVideoEncodeH265NaluSliceEXT*)(forMarshaling->pNaluSliceEntries + i));
+ }
+ }
+ vkStream->write((const StdVideoEncodeH265PictureInfo*)forMarshaling->pCurrentPictureInfo, sizeof(const StdVideoEncodeH265PictureInfo));
+}
+
+void unmarshal_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265VclFrameInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ // WARNING PTR CHECK
+ const VkVideoEncodeH265ReferenceListsEXT* check_pReferenceFinalLists;
+ check_pReferenceFinalLists = (const VkVideoEncodeH265ReferenceListsEXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pReferenceFinalLists)
+ {
+ if (!(check_pReferenceFinalLists))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pReferenceFinalLists inconsistent between guest and host\n");
+ }
+ unmarshal_VkVideoEncodeH265ReferenceListsEXT(vkStream, rootType, (VkVideoEncodeH265ReferenceListsEXT*)(forUnmarshaling->pReferenceFinalLists));
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->naluSliceEntryCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->naluSliceEntryCount; ++i)
+ {
+ unmarshal_VkVideoEncodeH265NaluSliceEXT(vkStream, rootType, (VkVideoEncodeH265NaluSliceEXT*)(forUnmarshaling->pNaluSliceEntries + i));
+ }
+ }
+ vkStream->read((StdVideoEncodeH265PictureInfo*)forUnmarshaling->pCurrentPictureInfo, sizeof(const StdVideoEncodeH265PictureInfo));
+}
+
+void marshal_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint8_t*)&forMarshaling->vpsId, sizeof(uint8_t));
+ vkStream->write((uint8_t*)&forMarshaling->spsId, sizeof(uint8_t));
+ vkStream->write((VkBool32*)&forMarshaling->emitVpsEnable, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->emitSpsEnable, sizeof(VkBool32));
+ vkStream->write((uint32_t*)&forMarshaling->ppsIdEntryCount, sizeof(uint32_t));
+ vkStream->write((const uint8_t*)forMarshaling->ppsIdEntries, forMarshaling->ppsIdEntryCount * sizeof(const uint8_t));
+}
+
+void unmarshal_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265EmitPictureParametersEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint8_t*)&forUnmarshaling->vpsId, sizeof(uint8_t));
+ vkStream->read((uint8_t*)&forUnmarshaling->spsId, sizeof(uint8_t));
+ vkStream->read((VkBool32*)&forUnmarshaling->emitVpsEnable, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->emitSpsEnable, sizeof(VkBool32));
+ vkStream->read((uint32_t*)&forUnmarshaling->ppsIdEntryCount, sizeof(uint32_t));
+ vkStream->read((uint8_t*)forUnmarshaling->ppsIdEntries, forUnmarshaling->ppsIdEntryCount * sizeof(const uint8_t));
+}
+
+void marshal_VkVideoEncodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((StdVideoH265ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH265ProfileIdc));
+}
+
+void unmarshal_VkVideoEncodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265ProfileEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoH265ProfileIdc*)&forUnmarshaling->stdProfileIdc, sizeof(StdVideoH265ProfileIdc));
+}
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void marshal_VkVideoDecodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((StdVideoH264ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH264ProfileIdc));
+ vkStream->write((VkVideoDecodeH264PictureLayoutFlagsEXT*)&forMarshaling->pictureLayout, sizeof(VkVideoDecodeH264PictureLayoutFlagsEXT));
+}
+
+void unmarshal_VkVideoDecodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264ProfileEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoH264ProfileIdc*)&forUnmarshaling->stdProfileIdc, sizeof(StdVideoH264ProfileIdc));
+ vkStream->read((VkVideoDecodeH264PictureLayoutFlagsEXT*)&forUnmarshaling->pictureLayout, sizeof(VkVideoDecodeH264PictureLayoutFlagsEXT));
+}
+
+void marshal_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxLevel, sizeof(uint32_t));
+ marshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->fieldOffsetGranularity));
+ marshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion));
+}
+
+void unmarshal_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264CapabilitiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxLevel, sizeof(uint32_t));
+ unmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forUnmarshaling->fieldOffsetGranularity));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forUnmarshaling->stdExtensionVersion));
+}
+
+void marshal_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoDecodeH264CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoDecodeH264CreateFlagsEXT));
+ marshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion));
+}
+
+void unmarshal_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264SessionCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoDecodeH264CreateFlagsEXT*)&forUnmarshaling->flags, sizeof(VkVideoDecodeH264CreateFlagsEXT));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(forUnmarshaling->pStdExtensionVersion));
+}
+
+void marshal_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pSpsStd)
+ {
+ vkStream->write((const StdVideoH264SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ }
+ vkStream->write((uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ vkStream->putBe64(cgen_var_1);
+ if (forMarshaling->pPpsStd)
+ {
+ vkStream->write((const StdVideoH264PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ }
+}
+
+void unmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH264SequenceParameterSet* check_pSpsStd;
+ check_pSpsStd = (const StdVideoH264SequenceParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pSpsStd)
+ {
+ if (!(check_pSpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pSpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH264SequenceParameterSet*)forUnmarshaling->pSpsStd, forUnmarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH264PictureParameterSet* check_pPpsStd;
+ check_pPpsStd = (const StdVideoH264PictureParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pPpsStd)
+ {
+ if (!(check_pPpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pPpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH264PictureParameterSet*)forUnmarshaling->pPpsStd, forUnmarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ }
+}
+
+void marshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pParametersAddInfo)
+ {
+ marshal_VkVideoDecodeH264SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoDecodeH264SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo));
+ }
+}
+
+void unmarshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* check_pParametersAddInfo;
+ check_pParametersAddInfo = (const VkVideoDecodeH264SessionParametersAddInfoEXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pParametersAddInfo)
+ {
+ if (!(check_pParametersAddInfo))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pParametersAddInfo inconsistent between guest and host\n");
+ }
+ unmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(vkStream, rootType, (VkVideoDecodeH264SessionParametersAddInfoEXT*)(forUnmarshaling->pParametersAddInfo));
+ }
+}
+
+void marshal_VkVideoDecodeH264PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((const StdVideoDecodeH264PictureInfo*)forMarshaling->pStdPictureInfo, sizeof(const StdVideoDecodeH264PictureInfo));
+ vkStream->write((uint32_t*)&forMarshaling->slicesCount, sizeof(uint32_t));
+ vkStream->write((const uint32_t*)forMarshaling->pSlicesDataOffsets, forMarshaling->slicesCount * sizeof(const uint32_t));
+}
+
+void unmarshal_VkVideoDecodeH264PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264PictureInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoDecodeH264PictureInfo*)forUnmarshaling->pStdPictureInfo, sizeof(const StdVideoDecodeH264PictureInfo));
+ vkStream->read((uint32_t*)&forUnmarshaling->slicesCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)forUnmarshaling->pSlicesDataOffsets, forUnmarshaling->slicesCount * sizeof(const uint32_t));
+}
+
+void marshal_VkVideoDecodeH264MvcEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((const StdVideoDecodeH264Mvc*)forMarshaling->pStdMvc, sizeof(const StdVideoDecodeH264Mvc));
+}
+
+void unmarshal_VkVideoDecodeH264MvcEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264MvcEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoDecodeH264Mvc*)forUnmarshaling->pStdMvc, sizeof(const StdVideoDecodeH264Mvc));
+}
+
+void marshal_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((const StdVideoDecodeH264ReferenceInfo*)forMarshaling->pStdReferenceInfo, sizeof(const StdVideoDecodeH264ReferenceInfo));
+}
+
+void unmarshal_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264DpbSlotInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoDecodeH264ReferenceInfo*)forUnmarshaling->pStdReferenceInfo, sizeof(const StdVideoDecodeH264ReferenceInfo));
+}
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void marshal_VkTextureLODGatherFormatPropertiesAMD(
VulkanStreamGuest* vkStream,
@@ -15857,6 +19410,50 @@
vkStream->read((uint64_t*)&forUnmarshaling->externalFormat, sizeof(uint64_t));
}
+void marshal_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkFormat*)&forMarshaling->format, sizeof(VkFormat));
+ vkStream->write((uint64_t*)&forMarshaling->externalFormat, sizeof(uint64_t));
+ vkStream->write((VkFormatFeatureFlags2KHR*)&forMarshaling->formatFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ marshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forMarshaling->samplerYcbcrConversionComponents));
+ vkStream->write((VkSamplerYcbcrModelConversion*)&forMarshaling->suggestedYcbcrModel, sizeof(VkSamplerYcbcrModelConversion));
+ vkStream->write((VkSamplerYcbcrRange*)&forMarshaling->suggestedYcbcrRange, sizeof(VkSamplerYcbcrRange));
+ vkStream->write((VkChromaLocation*)&forMarshaling->suggestedXChromaOffset, sizeof(VkChromaLocation));
+ vkStream->write((VkChromaLocation*)&forMarshaling->suggestedYChromaOffset, sizeof(VkChromaLocation));
+}
+
+void unmarshal_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkFormat*)&forUnmarshaling->format, sizeof(VkFormat));
+ vkStream->read((uint64_t*)&forUnmarshaling->externalFormat, sizeof(uint64_t));
+ vkStream->read((VkFormatFeatureFlags2KHR*)&forUnmarshaling->formatFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ unmarshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forUnmarshaling->samplerYcbcrConversionComponents));
+ vkStream->read((VkSamplerYcbcrModelConversion*)&forUnmarshaling->suggestedYcbcrModel, sizeof(VkSamplerYcbcrModelConversion));
+ vkStream->read((VkSamplerYcbcrRange*)&forUnmarshaling->suggestedYcbcrRange, sizeof(VkSamplerYcbcrRange));
+ vkStream->read((VkChromaLocation*)&forUnmarshaling->suggestedXChromaOffset, sizeof(VkChromaLocation));
+ vkStream->read((VkChromaLocation*)&forUnmarshaling->suggestedYChromaOffset, sizeof(VkChromaLocation));
+}
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
#endif
@@ -16781,6 +20378,88 @@
vkStream->read((uint64_t*)&forUnmarshaling->drmFormatModifier, sizeof(uint64_t));
}
+void marshal_VkDrmFormatModifierProperties2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
+ vkStream->write((uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
+ vkStream->write((VkFormatFeatureFlags2KHR*)&forMarshaling->drmFormatModifierTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+}
+
+void unmarshal_VkDrmFormatModifierProperties2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDrmFormatModifierProperties2EXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((uint64_t*)&forUnmarshaling->drmFormatModifier, sizeof(uint64_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
+ vkStream->read((VkFormatFeatureFlags2KHR*)&forUnmarshaling->drmFormatModifierTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+}
+
+void marshal_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDrmFormatModifierProperties;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pDrmFormatModifierProperties)
+ {
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierCount; ++i)
+ {
+ marshal_VkDrmFormatModifierProperties2EXT(vkStream, rootType, (VkDrmFormatModifierProperties2EXT*)(forMarshaling->pDrmFormatModifierProperties + i));
+ }
+ }
+ }
+}
+
+void unmarshal_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDrmFormatModifierPropertiesList2EXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->drmFormatModifierCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ VkDrmFormatModifierProperties2EXT* check_pDrmFormatModifierProperties;
+ check_pDrmFormatModifierProperties = (VkDrmFormatModifierProperties2EXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pDrmFormatModifierProperties)
+ {
+ if (!(check_pDrmFormatModifierProperties))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pDrmFormatModifierProperties inconsistent between guest and host\n");
+ }
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->drmFormatModifierCount; ++i)
+ {
+ unmarshal_VkDrmFormatModifierProperties2EXT(vkStream, rootType, (VkDrmFormatModifierProperties2EXT*)(forUnmarshaling->pDrmFormatModifierProperties + i));
+ }
+ }
+ }
+}
+
#endif
#ifdef VK_EXT_validation_cache
void marshal_VkValidationCacheCreateInfoEXT(
@@ -18137,6 +21816,284 @@
}
#endif
+#ifdef VK_EXT_video_decode_h265
+void marshal_VkVideoDecodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((StdVideoH265ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH265ProfileIdc));
+}
+
+void unmarshal_VkVideoDecodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265ProfileEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoH265ProfileIdc*)&forUnmarshaling->stdProfileIdc, sizeof(StdVideoH265ProfileIdc));
+}
+
+void marshal_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxLevel, sizeof(uint32_t));
+ marshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion));
+}
+
+void unmarshal_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265CapabilitiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxLevel, sizeof(uint32_t));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forUnmarshaling->stdExtensionVersion));
+}
+
+void marshal_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkVideoDecodeH265CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoDecodeH265CreateFlagsEXT));
+ marshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion));
+}
+
+void unmarshal_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265SessionCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkVideoDecodeH265CreateFlagsEXT*)&forUnmarshaling->flags, sizeof(VkVideoDecodeH265CreateFlagsEXT));
+ unmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(forUnmarshaling->pStdExtensionVersion));
+}
+
+void marshal_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pSpsStd)
+ {
+ vkStream->write((const StdVideoH265SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ }
+ vkStream->write((uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ vkStream->putBe64(cgen_var_1);
+ if (forMarshaling->pPpsStd)
+ {
+ vkStream->write((const StdVideoH265PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ }
+}
+
+void unmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->spsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH265SequenceParameterSet* check_pSpsStd;
+ check_pSpsStd = (const StdVideoH265SequenceParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pSpsStd)
+ {
+ if (!(check_pSpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pSpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH265SequenceParameterSet*)forUnmarshaling->pSpsStd, forUnmarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ }
+ vkStream->read((uint32_t*)&forUnmarshaling->ppsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const StdVideoH265PictureParameterSet* check_pPpsStd;
+ check_pPpsStd = (const StdVideoH265PictureParameterSet*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pPpsStd)
+ {
+ if (!(check_pPpsStd))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pPpsStd inconsistent between guest and host\n");
+ }
+ vkStream->read((StdVideoH265PictureParameterSet*)forUnmarshaling->pPpsStd, forUnmarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ }
+}
+
+void marshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pParametersAddInfo)
+ {
+ marshal_VkVideoDecodeH265SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoDecodeH265SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo));
+ }
+}
+
+void unmarshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxSpsStdCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxPpsStdCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* check_pParametersAddInfo;
+ check_pParametersAddInfo = (const VkVideoDecodeH265SessionParametersAddInfoEXT*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pParametersAddInfo)
+ {
+ if (!(check_pParametersAddInfo))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pParametersAddInfo inconsistent between guest and host\n");
+ }
+ unmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(vkStream, rootType, (VkVideoDecodeH265SessionParametersAddInfoEXT*)(forUnmarshaling->pParametersAddInfo));
+ }
+}
+
+void marshal_VkVideoDecodeH265PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((StdVideoDecodeH265PictureInfo*)forMarshaling->pStdPictureInfo, sizeof(StdVideoDecodeH265PictureInfo));
+ vkStream->write((uint32_t*)&forMarshaling->slicesCount, sizeof(uint32_t));
+ vkStream->write((const uint32_t*)forMarshaling->pSlicesDataOffsets, forMarshaling->slicesCount * sizeof(const uint32_t));
+}
+
+void unmarshal_VkVideoDecodeH265PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265PictureInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoDecodeH265PictureInfo*)forUnmarshaling->pStdPictureInfo, sizeof(StdVideoDecodeH265PictureInfo));
+ vkStream->read((uint32_t*)&forUnmarshaling->slicesCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)forUnmarshaling->pSlicesDataOffsets, forUnmarshaling->slicesCount * sizeof(const uint32_t));
+}
+
+void marshal_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((const StdVideoDecodeH265ReferenceInfo*)forMarshaling->pStdReferenceInfo, sizeof(const StdVideoDecodeH265ReferenceInfo));
+}
+
+void unmarshal_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265DpbSlotInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((StdVideoDecodeH265ReferenceInfo*)forUnmarshaling->pStdReferenceInfo, sizeof(const StdVideoDecodeH265ReferenceInfo));
+}
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void marshal_VkDeviceMemoryOverallocationCreateInfoAMD(
VulkanStreamGuest* vkStream,
@@ -20068,6 +24025,102 @@
}
#endif
+#ifdef VK_EXT_provoking_vertex
+void marshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->provokingVertexLast, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->transformFeedbackPreservesProvokingVertex, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->provokingVertexLast, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->transformFeedbackPreservesProvokingVertex, sizeof(VkBool32));
+}
+
+void marshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->provokingVertexModePerPipeline, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->transformFeedbackPreservesTriangleFanProvokingVertex, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->provokingVertexModePerPipeline, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->transformFeedbackPreservesTriangleFanProvokingVertex, sizeof(VkBool32));
+}
+
+void marshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkProvokingVertexModeEXT*)&forMarshaling->provokingVertexMode, sizeof(VkProvokingVertexModeEXT));
+}
+
+void unmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkProvokingVertexModeEXT*)&forUnmarshaling->provokingVertexMode, sizeof(VkProvokingVertexModeEXT));
+}
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void marshal_VkSurfaceFullScreenExclusiveInfoEXT(
VulkanStreamGuest* vkStream,
@@ -20420,6 +24473,60 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void marshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->shaderBufferFloat16Atomics, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderBufferFloat16AtomicAdd, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderBufferFloat16AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderBufferFloat32AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderBufferFloat64AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderSharedFloat16Atomics, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderSharedFloat16AtomicAdd, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderSharedFloat16AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderSharedFloat32AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderSharedFloat64AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->shaderImageFloat32AtomicMinMax, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->sparseImageFloat32AtomicMinMax, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderBufferFloat16Atomics, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderBufferFloat16AtomicAdd, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderBufferFloat16AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderBufferFloat32AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderBufferFloat64AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderSharedFloat16Atomics, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderSharedFloat16AtomicAdd, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderSharedFloat16AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderSharedFloat32AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderSharedFloat64AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->shaderImageFloat32AtomicMinMax, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->sparseImageFloat32AtomicMinMax, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void marshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -21014,6 +25121,88 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void marshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->inheritedViewportScissor2D, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->inheritedViewportScissor2D, sizeof(VkBool32));
+}
+
+void marshal_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->viewportScissor2D, sizeof(VkBool32));
+ vkStream->write((uint32_t*)&forMarshaling->viewportDepthCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pViewportDepths;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->pViewportDepths)
+ {
+ marshal_VkViewport(vkStream, rootType, (const VkViewport*)(forMarshaling->pViewportDepths));
+ }
+}
+
+void unmarshal_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCommandBufferInheritanceViewportScissorInfoNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->viewportScissor2D, sizeof(VkBool32));
+ vkStream->read((uint32_t*)&forUnmarshaling->viewportDepthCount, sizeof(uint32_t));
+ // WARNING PTR CHECK
+ const VkViewport* check_pViewportDepths;
+ check_pViewportDepths = (const VkViewport*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->pViewportDepths)
+ {
+ if (!(check_pViewportDepths))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->pViewportDepths inconsistent between guest and host\n");
+ }
+ unmarshal_VkViewport(vkStream, rootType, (VkViewport*)(forUnmarshaling->pViewportDepths));
+ }
+}
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void marshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -21255,6 +25444,8 @@
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void marshal_VkPhysicalDeviceRobustness2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -21709,6 +25900,336 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void marshal_VkDeviceOrHostAddressConstKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkDeviceAddress*)&forMarshaling->deviceAddress, sizeof(VkDeviceAddress));
+}
+
+void unmarshal_VkDeviceOrHostAddressConstKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDeviceOrHostAddressConstKHR* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkDeviceAddress*)&forUnmarshaling->deviceAddress, sizeof(VkDeviceAddress));
+}
+
+void marshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkDeviceOrHostAddressConstKHR(vkStream, rootType, (VkDeviceOrHostAddressConstKHR*)(&forMarshaling->vertexData));
+}
+
+void unmarshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkDeviceOrHostAddressConstKHR(vkStream, rootType, (VkDeviceOrHostAddressConstKHR*)(&forUnmarshaling->vertexData));
+}
+
+void marshal_VkAccelerationStructureMotionInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxInstances, sizeof(uint32_t));
+ vkStream->write((VkAccelerationStructureMotionInfoFlagsNV*)&forMarshaling->flags, sizeof(VkAccelerationStructureMotionInfoFlagsNV));
+}
+
+void unmarshal_VkAccelerationStructureMotionInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMotionInfoNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxInstances, sizeof(uint32_t));
+ vkStream->read((VkAccelerationStructureMotionInfoFlagsNV*)&forUnmarshaling->flags, sizeof(VkAccelerationStructureMotionInfoFlagsNV));
+}
+
+void marshal_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* forMarshaling)
+{
+ (void)rootType;
+
+ typedef struct VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields {
+ VkTransformMatrixKHR transformT0;
+ VkTransformMatrixKHR transformT1;
+ uint32_t dwords[2];
+ uint64_t accelerationStructureReference;
+ } VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields;
+
+ const VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields* forMarshaling_new = (const VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields*)(forMarshaling);
+ marshal_VkTransformMatrixKHR(vkStream, rootType, (VkTransformMatrixKHR*)(&forMarshaling_new->transformT0));
+ marshal_VkTransformMatrixKHR(vkStream, rootType, (VkTransformMatrixKHR*)(&forMarshaling_new->transformT1));
+ for (uint32_t i = 0; i < 2; i++) {
+ vkStream->write((uint32_t*)&(forMarshaling_new->dwords[i]), sizeof(uint32_t));
+ }
+ vkStream->write((uint64_t*)&forMarshaling_new->accelerationStructureReference, sizeof(uint64_t));
+
+}
+
+void unmarshal_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMatrixMotionInstanceNV* forUnmarshaling)
+{
+ (void)rootType;
+
+ typedef struct VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields {
+ VkTransformMatrixKHR transformT0;
+ VkTransformMatrixKHR transformT1;
+ uint32_t dwords[2];
+ uint64_t accelerationStructureReference;
+ } VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields;
+
+ VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields* forUnmarshaling_new = (VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields*)(forUnmarshaling);
+ unmarshal_VkTransformMatrixKHR(vkStream, rootType, (VkTransformMatrixKHR*)(&forUnmarshaling_new->transformT0));
+ unmarshal_VkTransformMatrixKHR(vkStream, rootType, (VkTransformMatrixKHR*)(&forUnmarshaling_new->transformT1));
+ for (uint32_t i = 0; i < 2; i++) {
+ vkStream->read((uint32_t*)&(forUnmarshaling_new->dwords[i]), sizeof(uint32_t));
+ }
+ vkStream->read((uint64_t*)&forUnmarshaling_new->accelerationStructureReference, sizeof(uint64_t));
+
+}
+
+void marshal_VkSRTDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSRTDataNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((float*)&forMarshaling->sx, sizeof(float));
+ vkStream->write((float*)&forMarshaling->a, sizeof(float));
+ vkStream->write((float*)&forMarshaling->b, sizeof(float));
+ vkStream->write((float*)&forMarshaling->pvx, sizeof(float));
+ vkStream->write((float*)&forMarshaling->sy, sizeof(float));
+ vkStream->write((float*)&forMarshaling->c, sizeof(float));
+ vkStream->write((float*)&forMarshaling->pvy, sizeof(float));
+ vkStream->write((float*)&forMarshaling->sz, sizeof(float));
+ vkStream->write((float*)&forMarshaling->pvz, sizeof(float));
+ vkStream->write((float*)&forMarshaling->qx, sizeof(float));
+ vkStream->write((float*)&forMarshaling->qy, sizeof(float));
+ vkStream->write((float*)&forMarshaling->qz, sizeof(float));
+ vkStream->write((float*)&forMarshaling->qw, sizeof(float));
+ vkStream->write((float*)&forMarshaling->tx, sizeof(float));
+ vkStream->write((float*)&forMarshaling->ty, sizeof(float));
+ vkStream->write((float*)&forMarshaling->tz, sizeof(float));
+}
+
+void unmarshal_VkSRTDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSRTDataNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((float*)&forUnmarshaling->sx, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->a, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->b, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->pvx, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->sy, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->c, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->pvy, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->sz, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->pvz, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->qx, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->qy, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->qz, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->qw, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->tx, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->ty, sizeof(float));
+ vkStream->read((float*)&forUnmarshaling->tz, sizeof(float));
+}
+
+void marshal_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* forMarshaling)
+{
+ (void)rootType;
+
+ typedef struct VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields {
+ VkSRTDataNV transformT0;
+ VkSRTDataNV transformT1;
+ uint32_t dwords[2];
+ uint64_t accelerationStructureReference;
+ } VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields;
+
+ const VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields* forMarshaling_new = (const VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields*)(forMarshaling);
+ marshal_VkSRTDataNV(vkStream, rootType, (VkSRTDataNV*)(&forMarshaling_new->transformT0));
+ marshal_VkSRTDataNV(vkStream, rootType, (VkSRTDataNV*)(&forMarshaling_new->transformT1));
+ for (uint32_t i = 0; i < 2; i++) {
+ vkStream->write((uint32_t*)&(forMarshaling_new->dwords[i]), sizeof(uint32_t));
+ }
+ vkStream->write((uint64_t*)&forMarshaling_new->accelerationStructureReference, sizeof(uint64_t));
+
+}
+
+void unmarshal_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureSRTMotionInstanceNV* forUnmarshaling)
+{
+ (void)rootType;
+
+ typedef struct VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields {
+ VkSRTDataNV transformT0;
+ VkSRTDataNV transformT1;
+ uint32_t dwords[2];
+ uint64_t accelerationStructureReference;
+ } VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields;
+
+ VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields* forUnmarshaling_new = (VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields*)(forUnmarshaling);
+ unmarshal_VkSRTDataNV(vkStream, rootType, (VkSRTDataNV*)(&forUnmarshaling_new->transformT0));
+ unmarshal_VkSRTDataNV(vkStream, rootType, (VkSRTDataNV*)(&forUnmarshaling_new->transformT1));
+ for (uint32_t i = 0; i < 2; i++) {
+ vkStream->read((uint32_t*)&(forUnmarshaling_new->dwords[i]), sizeof(uint32_t));
+ }
+ vkStream->read((uint64_t*)&forUnmarshaling_new->accelerationStructureReference, sizeof(uint64_t));
+
+}
+
+void marshal_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* forMarshaling)
+{
+ (void)rootType;
+ marshal_VkAccelerationStructureInstanceKHR(vkStream, rootType, (VkAccelerationStructureInstanceKHR*)(&forMarshaling->staticInstance));
+}
+
+void unmarshal_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMotionInstanceDataNV* forUnmarshaling)
+{
+ (void)rootType;
+ unmarshal_VkAccelerationStructureInstanceKHR(vkStream, rootType, (VkAccelerationStructureInstanceKHR*)(&forUnmarshaling->staticInstance));
+}
+
+void marshal_VkAccelerationStructureMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkAccelerationStructureMotionInstanceTypeNV*)&forMarshaling->type, sizeof(VkAccelerationStructureMotionInstanceTypeNV));
+ vkStream->write((VkAccelerationStructureMotionInstanceFlagsNV*)&forMarshaling->flags, sizeof(VkAccelerationStructureMotionInstanceFlagsNV));
+ marshal_VkAccelerationStructureMotionInstanceDataNV(vkStream, rootType, (VkAccelerationStructureMotionInstanceDataNV*)(&forMarshaling->data));
+}
+
+void unmarshal_VkAccelerationStructureMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMotionInstanceNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkAccelerationStructureMotionInstanceTypeNV*)&forUnmarshaling->type, sizeof(VkAccelerationStructureMotionInstanceTypeNV));
+ vkStream->read((VkAccelerationStructureMotionInstanceFlagsNV*)&forUnmarshaling->flags, sizeof(VkAccelerationStructureMotionInstanceFlagsNV));
+ unmarshal_VkAccelerationStructureMotionInstanceDataNV(vkStream, rootType, (VkAccelerationStructureMotionInstanceDataNV*)(&forUnmarshaling->data));
+}
+
+void marshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->rayTracingMotionBlur, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->rayTracingMotionBlurPipelineTraceRaysIndirect, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->rayTracingMotionBlur, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->rayTracingMotionBlurPipelineTraceRaysIndirect, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void marshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->ycbcr2plane444Formats, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->ycbcr2plane444Formats, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void marshal_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -21875,6 +26396,40 @@
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void marshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->formatRgba10x6WithoutYCbCrSampler, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->formatRgba10x6WithoutYCbCrSampler, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void marshal_VkDirectFBSurfaceCreateInfoEXT(
VulkanStreamGuest* vkStream,
@@ -21943,6 +26498,1197 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void marshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->mutableDescriptorType, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->mutableDescriptorType, sizeof(VkBool32));
+}
+
+void marshal_VkMutableDescriptorTypeListVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((uint32_t*)&forMarshaling->descriptorTypeCount, sizeof(uint32_t));
+ vkStream->write((const VkDescriptorType*)forMarshaling->pDescriptorTypes, forMarshaling->descriptorTypeCount * sizeof(const VkDescriptorType));
+}
+
+void unmarshal_VkMutableDescriptorTypeListVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMutableDescriptorTypeListVALVE* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((uint32_t*)&forUnmarshaling->descriptorTypeCount, sizeof(uint32_t));
+ vkStream->read((VkDescriptorType*)forUnmarshaling->pDescriptorTypes, forUnmarshaling->descriptorTypeCount * sizeof(const VkDescriptorType));
+}
+
+void marshal_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->mutableDescriptorTypeListCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->mutableDescriptorTypeListCount; ++i)
+ {
+ marshal_VkMutableDescriptorTypeListVALVE(vkStream, rootType, (const VkMutableDescriptorTypeListVALVE*)(forMarshaling->pMutableDescriptorTypeLists + i));
+ }
+ }
+}
+
+void unmarshal_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMutableDescriptorTypeCreateInfoVALVE* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->mutableDescriptorTypeListCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->mutableDescriptorTypeListCount; ++i)
+ {
+ unmarshal_VkMutableDescriptorTypeListVALVE(vkStream, rootType, (VkMutableDescriptorTypeListVALVE*)(forUnmarshaling->pMutableDescriptorTypeLists + i));
+ }
+ }
+}
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void marshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->vertexInputDynamicState, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->vertexInputDynamicState, sizeof(VkBool32));
+}
+
+void marshal_VkVertexInputBindingDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->stride, sizeof(uint32_t));
+ vkStream->write((VkVertexInputRate*)&forMarshaling->inputRate, sizeof(VkVertexInputRate));
+ vkStream->write((uint32_t*)&forMarshaling->divisor, sizeof(uint32_t));
+}
+
+void unmarshal_VkVertexInputBindingDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVertexInputBindingDescription2EXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->binding, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->stride, sizeof(uint32_t));
+ vkStream->read((VkVertexInputRate*)&forUnmarshaling->inputRate, sizeof(VkVertexInputRate));
+ vkStream->read((uint32_t*)&forUnmarshaling->divisor, sizeof(uint32_t));
+}
+
+void marshal_VkVertexInputAttributeDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->location, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
+ vkStream->write((VkFormat*)&forMarshaling->format, sizeof(VkFormat));
+ vkStream->write((uint32_t*)&forMarshaling->offset, sizeof(uint32_t));
+}
+
+void unmarshal_VkVertexInputAttributeDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVertexInputAttributeDescription2EXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->location, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->binding, sizeof(uint32_t));
+ vkStream->read((VkFormat*)&forUnmarshaling->format, sizeof(VkFormat));
+ vkStream->read((uint32_t*)&forUnmarshaling->offset, sizeof(uint32_t));
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void marshal_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->hasPrimary, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->hasRender, sizeof(VkBool32));
+ vkStream->write((int64_t*)&forMarshaling->primaryMajor, sizeof(int64_t));
+ vkStream->write((int64_t*)&forMarshaling->primaryMinor, sizeof(int64_t));
+ vkStream->write((int64_t*)&forMarshaling->renderMajor, sizeof(int64_t));
+ vkStream->write((int64_t*)&forMarshaling->renderMinor, sizeof(int64_t));
+}
+
+void unmarshal_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceDrmPropertiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->hasPrimary, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->hasRender, sizeof(VkBool32));
+ vkStream->read((int64_t*)&forUnmarshaling->primaryMajor, sizeof(int64_t));
+ vkStream->read((int64_t*)&forUnmarshaling->primaryMinor, sizeof(int64_t));
+ vkStream->read((int64_t*)&forUnmarshaling->renderMajor, sizeof(int64_t));
+ vkStream->read((int64_t*)&forUnmarshaling->renderMinor, sizeof(int64_t));
+}
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void marshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->primitiveTopologyListRestart, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->primitiveTopologyPatchListRestart, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->primitiveTopologyListRestart, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->primitiveTopologyPatchListRestart, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void marshal_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+ vkStream->write((zx_handle_t*)&forMarshaling->handle, sizeof(zx_handle_t));
+}
+
+void unmarshal_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImportMemoryZirconHandleInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkExternalMemoryHandleTypeFlagBits*)&forUnmarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+ vkStream->read((zx_handle_t*)&forUnmarshaling->handle, sizeof(zx_handle_t));
+}
+
+void marshal_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->memoryTypeBits, sizeof(uint32_t));
+}
+
+void unmarshal_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryZirconHandlePropertiesFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->memoryTypeBits, sizeof(uint32_t));
+}
+
+void marshal_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkDeviceMemory_u64(&forMarshaling->memory, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+}
+
+void unmarshal_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryGetZirconHandleInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkDeviceMemory(&cgen_var_0, (VkDeviceMemory*)&forUnmarshaling->memory, 1);
+ vkStream->read((VkExternalMemoryHandleTypeFlagBits*)&forUnmarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void marshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkSemaphore_u64(&forMarshaling->semaphore, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkSemaphoreImportFlags*)&forMarshaling->flags, sizeof(VkSemaphoreImportFlags));
+ vkStream->write((VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalSemaphoreHandleTypeFlagBits));
+ vkStream->write((zx_handle_t*)&forMarshaling->zirconHandle, sizeof(zx_handle_t));
+}
+
+void unmarshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkSemaphore(&cgen_var_0, (VkSemaphore*)&forUnmarshaling->semaphore, 1);
+ vkStream->read((VkSemaphoreImportFlags*)&forUnmarshaling->flags, sizeof(VkSemaphoreImportFlags));
+ vkStream->read((VkExternalSemaphoreHandleTypeFlagBits*)&forUnmarshaling->handleType, sizeof(VkExternalSemaphoreHandleTypeFlagBits));
+ vkStream->read((zx_handle_t*)&forUnmarshaling->zirconHandle, sizeof(zx_handle_t));
+}
+
+void marshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkSemaphore_u64(&forMarshaling->semaphore, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalSemaphoreHandleTypeFlagBits));
+}
+
+void unmarshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkSemaphore(&cgen_var_0, (VkSemaphore*)&forUnmarshaling->semaphore, 1);
+ vkStream->read((VkExternalSemaphoreHandleTypeFlagBits*)&forUnmarshaling->handleType, sizeof(VkExternalSemaphoreHandleTypeFlagBits));
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void marshal_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((zx_handle_t*)&forMarshaling->collectionToken, sizeof(zx_handle_t));
+}
+
+void unmarshal_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionCreateInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((zx_handle_t*)&forUnmarshaling->collectionToken, sizeof(zx_handle_t));
+}
+
+void marshal_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->collection;
+ vkStream->putBe64(cgen_var_0);
+ vkStream->write((uint32_t*)&forMarshaling->index, sizeof(uint32_t));
+}
+
+void unmarshal_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImportMemoryBufferCollectionFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->collection = (VkBufferCollectionFUCHSIA)vkStream->getBe64();
+ vkStream->read((uint32_t*)&forUnmarshaling->index, sizeof(uint32_t));
+}
+
+void marshal_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->collection;
+ vkStream->putBe64(cgen_var_0);
+ vkStream->write((uint32_t*)&forMarshaling->index, sizeof(uint32_t));
+}
+
+void unmarshal_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionImageCreateInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->collection = (VkBufferCollectionFUCHSIA)vkStream->getBe64();
+ vkStream->read((uint32_t*)&forUnmarshaling->index, sizeof(uint32_t));
+}
+
+void marshal_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->minBufferCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->maxBufferCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->minBufferCountForCamping, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->minBufferCountForDedicatedSlack, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->minBufferCountForSharedSlack, sizeof(uint32_t));
+}
+
+void unmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionConstraintsInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->minBufferCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxBufferCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->minBufferCountForCamping, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->minBufferCountForDedicatedSlack, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->minBufferCountForSharedSlack, sizeof(uint32_t));
+}
+
+void marshal_VkBufferConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkBufferCreateInfo(vkStream, rootType, (VkBufferCreateInfo*)(&forMarshaling->createInfo));
+ vkStream->write((VkFormatFeatureFlags*)&forMarshaling->requiredFormatFeatures, sizeof(VkFormatFeatureFlags));
+ marshal_VkBufferCollectionConstraintsInfoFUCHSIA(vkStream, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&forMarshaling->bufferCollectionConstraints));
+}
+
+void unmarshal_VkBufferConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferConstraintsInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkBufferCreateInfo(vkStream, rootType, (VkBufferCreateInfo*)(&forUnmarshaling->createInfo));
+ vkStream->read((VkFormatFeatureFlags*)&forUnmarshaling->requiredFormatFeatures, sizeof(VkFormatFeatureFlags));
+ unmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(vkStream, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&forUnmarshaling->bufferCollectionConstraints));
+}
+
+void marshal_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->collection;
+ vkStream->putBe64(cgen_var_0);
+ vkStream->write((uint32_t*)&forMarshaling->index, sizeof(uint32_t));
+}
+
+void unmarshal_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ forUnmarshaling->collection = (VkBufferCollectionFUCHSIA)vkStream->getBe64();
+ vkStream->read((uint32_t*)&forUnmarshaling->index, sizeof(uint32_t));
+}
+
+void marshal_VkSysmemColorSpaceFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->colorSpace, sizeof(uint32_t));
+}
+
+void unmarshal_VkSysmemColorSpaceFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSysmemColorSpaceFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->colorSpace, sizeof(uint32_t));
+}
+
+void marshal_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->memoryTypeBits, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->bufferCount, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->createInfoIndex, sizeof(uint32_t));
+ vkStream->write((uint64_t*)&forMarshaling->sysmemPixelFormat, sizeof(uint64_t));
+ vkStream->write((VkFormatFeatureFlags*)&forMarshaling->formatFeatures, sizeof(VkFormatFeatureFlags));
+ marshal_VkSysmemColorSpaceFUCHSIA(vkStream, rootType, (VkSysmemColorSpaceFUCHSIA*)(&forMarshaling->sysmemColorSpaceIndex));
+ marshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forMarshaling->samplerYcbcrConversionComponents));
+ vkStream->write((VkSamplerYcbcrModelConversion*)&forMarshaling->suggestedYcbcrModel, sizeof(VkSamplerYcbcrModelConversion));
+ vkStream->write((VkSamplerYcbcrRange*)&forMarshaling->suggestedYcbcrRange, sizeof(VkSamplerYcbcrRange));
+ vkStream->write((VkChromaLocation*)&forMarshaling->suggestedXChromaOffset, sizeof(VkChromaLocation));
+ vkStream->write((VkChromaLocation*)&forMarshaling->suggestedYChromaOffset, sizeof(VkChromaLocation));
+}
+
+void unmarshal_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionPropertiesFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->memoryTypeBits, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->bufferCount, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->createInfoIndex, sizeof(uint32_t));
+ vkStream->read((uint64_t*)&forUnmarshaling->sysmemPixelFormat, sizeof(uint64_t));
+ vkStream->read((VkFormatFeatureFlags*)&forUnmarshaling->formatFeatures, sizeof(VkFormatFeatureFlags));
+ unmarshal_VkSysmemColorSpaceFUCHSIA(vkStream, rootType, (VkSysmemColorSpaceFUCHSIA*)(&forUnmarshaling->sysmemColorSpaceIndex));
+ unmarshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forUnmarshaling->samplerYcbcrConversionComponents));
+ vkStream->read((VkSamplerYcbcrModelConversion*)&forUnmarshaling->suggestedYcbcrModel, sizeof(VkSamplerYcbcrModelConversion));
+ vkStream->read((VkSamplerYcbcrRange*)&forUnmarshaling->suggestedYcbcrRange, sizeof(VkSamplerYcbcrRange));
+ vkStream->read((VkChromaLocation*)&forUnmarshaling->suggestedXChromaOffset, sizeof(VkChromaLocation));
+ vkStream->read((VkChromaLocation*)&forUnmarshaling->suggestedYChromaOffset, sizeof(VkChromaLocation));
+}
+
+void marshal_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkImageCreateInfo(vkStream, rootType, (VkImageCreateInfo*)(&forMarshaling->imageCreateInfo));
+ vkStream->write((VkFormatFeatureFlags*)&forMarshaling->requiredFormatFeatures, sizeof(VkFormatFeatureFlags));
+ vkStream->write((VkImageFormatConstraintsFlagsFUCHSIA*)&forMarshaling->flags, sizeof(VkImageFormatConstraintsFlagsFUCHSIA));
+ vkStream->write((uint64_t*)&forMarshaling->sysmemPixelFormat, sizeof(uint64_t));
+ vkStream->write((uint32_t*)&forMarshaling->colorSpaceCount, sizeof(uint32_t));
+ marshal_VkSysmemColorSpaceFUCHSIA(vkStream, rootType, (const VkSysmemColorSpaceFUCHSIA*)(forMarshaling->pColorSpaces));
+}
+
+void unmarshal_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImageFormatConstraintsInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkImageCreateInfo(vkStream, rootType, (VkImageCreateInfo*)(&forUnmarshaling->imageCreateInfo));
+ vkStream->read((VkFormatFeatureFlags*)&forUnmarshaling->requiredFormatFeatures, sizeof(VkFormatFeatureFlags));
+ vkStream->read((VkImageFormatConstraintsFlagsFUCHSIA*)&forUnmarshaling->flags, sizeof(VkImageFormatConstraintsFlagsFUCHSIA));
+ vkStream->read((uint64_t*)&forUnmarshaling->sysmemPixelFormat, sizeof(uint64_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->colorSpaceCount, sizeof(uint32_t));
+ unmarshal_VkSysmemColorSpaceFUCHSIA(vkStream, rootType, (VkSysmemColorSpaceFUCHSIA*)(forUnmarshaling->pColorSpaces));
+}
+
+void marshal_VkImageConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->formatConstraintsCount, sizeof(uint32_t));
+ if (forMarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->formatConstraintsCount; ++i)
+ {
+ marshal_VkImageFormatConstraintsInfoFUCHSIA(vkStream, rootType, (const VkImageFormatConstraintsInfoFUCHSIA*)(forMarshaling->pFormatConstraints + i));
+ }
+ }
+ marshal_VkBufferCollectionConstraintsInfoFUCHSIA(vkStream, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&forMarshaling->bufferCollectionConstraints));
+ vkStream->write((VkImageConstraintsInfoFlagsFUCHSIA*)&forMarshaling->flags, sizeof(VkImageConstraintsInfoFlagsFUCHSIA));
+}
+
+void unmarshal_VkImageConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImageConstraintsInfoFUCHSIA* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->formatConstraintsCount, sizeof(uint32_t));
+ if (forUnmarshaling)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forUnmarshaling->formatConstraintsCount; ++i)
+ {
+ unmarshal_VkImageFormatConstraintsInfoFUCHSIA(vkStream, rootType, (VkImageFormatConstraintsInfoFUCHSIA*)(forUnmarshaling->pFormatConstraints + i));
+ }
+ }
+ unmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(vkStream, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&forUnmarshaling->bufferCollectionConstraints));
+ vkStream->read((VkImageConstraintsInfoFlagsFUCHSIA*)&forUnmarshaling->flags, sizeof(VkImageConstraintsInfoFlagsFUCHSIA));
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void marshal_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkRenderPass_u64(&forMarshaling->renderPass, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((uint32_t*)&forMarshaling->subpass, sizeof(uint32_t));
+}
+
+void unmarshal_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkRenderPass(&cgen_var_0, (VkRenderPass*)&forUnmarshaling->renderPass, 1);
+ vkStream->read((uint32_t*)&forUnmarshaling->subpass, sizeof(uint32_t));
+}
+
+void marshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->subpassShading, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->subpassShading, sizeof(VkBool32));
+}
+
+void marshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxSubpassShadingWorkgroupSizeAspectRatio, sizeof(uint32_t));
+}
+
+void unmarshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxSubpassShadingWorkgroupSizeAspectRatio, sizeof(uint32_t));
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void marshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->invocationMask, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->invocationMask, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void marshal_VkMemoryGetRemoteAddressInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ uint64_t cgen_var_0;
+ vkStream->handleMapping()->mapHandles_VkDeviceMemory_u64(&forMarshaling->memory, &cgen_var_0, 1);
+ vkStream->write((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->write((VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+}
+
+void unmarshal_VkMemoryGetRemoteAddressInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryGetRemoteAddressInfoNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ uint64_t cgen_var_0;
+ vkStream->read((uint64_t*)&cgen_var_0, 1 * 8);
+ vkStream->handleMapping()->mapHandles_u64_VkDeviceMemory(&cgen_var_0, (VkDeviceMemory*)&forUnmarshaling->memory, 1);
+ vkStream->read((VkExternalMemoryHandleTypeFlagBits*)&forUnmarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+}
+
+void marshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->externalMemoryRDMA, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->externalMemoryRDMA, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void marshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->extendedDynamicState2, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->extendedDynamicState2LogicOp, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->extendedDynamicState2PatchControlPoints, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->extendedDynamicState2, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->extendedDynamicState2LogicOp, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->extendedDynamicState2PatchControlPoints, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+void marshal_VkScreenSurfaceCreateInfoQNX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkScreenSurfaceCreateFlagsQNX*)&forMarshaling->flags, sizeof(VkScreenSurfaceCreateFlagsQNX));
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->context;
+ vkStream->putBe64(cgen_var_0);
+ if (forMarshaling->context)
+ {
+ vkStream->write((_screen_context*)forMarshaling->context, sizeof(_screen_context));
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->window;
+ vkStream->putBe64(cgen_var_1);
+ if (forMarshaling->window)
+ {
+ vkStream->write((_screen_window*)forMarshaling->window, sizeof(_screen_window));
+ }
+}
+
+void unmarshal_VkScreenSurfaceCreateInfoQNX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkScreenSurfaceCreateInfoQNX* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkScreenSurfaceCreateFlagsQNX*)&forUnmarshaling->flags, sizeof(VkScreenSurfaceCreateFlagsQNX));
+ // WARNING PTR CHECK
+ _screen_context* check_context;
+ check_context = (_screen_context*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->context)
+ {
+ if (!(check_context))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->context inconsistent between guest and host\n");
+ }
+ vkStream->read((_screen_context*)forUnmarshaling->context, sizeof(_screen_context));
+ }
+ // WARNING PTR CHECK
+ _screen_window* check_window;
+ check_window = (_screen_window*)(uintptr_t)vkStream->getBe64();
+ if (forUnmarshaling->window)
+ {
+ if (!(check_window))
+ {
+ fprintf(stderr, "fatal: forUnmarshaling->window inconsistent between guest and host\n");
+ }
+ vkStream->read((_screen_window*)forUnmarshaling->window, sizeof(_screen_window));
+ }
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void marshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->colorWriteEnable, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->colorWriteEnable, sizeof(VkBool32));
+}
+
+void marshal_VkPipelineColorWriteCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
+ vkStream->write((const VkBool32*)forMarshaling->pColorWriteEnables, forMarshaling->attachmentCount * sizeof(const VkBool32));
+}
+
+void unmarshal_VkPipelineColorWriteCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineColorWriteCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->attachmentCount, sizeof(uint32_t));
+ vkStream->read((VkBool32*)forUnmarshaling->pColorWriteEnables, forUnmarshaling->attachmentCount * sizeof(const VkBool32));
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void marshal_VkImportColorBufferGOOGLE(
VulkanStreamGuest* vkStream,
@@ -22046,6 +27792,274 @@
}
#endif
+#ifdef VK_EXT_global_priority_query
+void marshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->globalPriorityQuery, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->globalPriorityQuery, sizeof(VkBool32));
+}
+
+void marshal_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->priorityCount, sizeof(uint32_t));
+ vkStream->write((VkQueueGlobalPriorityEXT*)forMarshaling->priorities, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT * sizeof(VkQueueGlobalPriorityEXT));
+}
+
+void unmarshal_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->priorityCount, sizeof(uint32_t));
+ vkStream->read((VkQueueGlobalPriorityEXT*)forUnmarshaling->priorities, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT * sizeof(VkQueueGlobalPriorityEXT));
+}
+
+#endif
+#ifdef VK_EXT_multi_draw
+void marshal_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->multiDraw, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->multiDraw, sizeof(VkBool32));
+}
+
+void marshal_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((uint32_t*)&forMarshaling->maxMultiDrawCount, sizeof(uint32_t));
+}
+
+void unmarshal_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((uint32_t*)&forUnmarshaling->maxMultiDrawCount, sizeof(uint32_t));
+}
+
+void marshal_VkMultiDrawInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((uint32_t*)&forMarshaling->firstVertex, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->vertexCount, sizeof(uint32_t));
+}
+
+void unmarshal_VkMultiDrawInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMultiDrawInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((uint32_t*)&forUnmarshaling->firstVertex, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->vertexCount, sizeof(uint32_t));
+}
+
+void marshal_VkMultiDrawIndexedInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((uint32_t*)&forMarshaling->firstIndex, sizeof(uint32_t));
+ vkStream->write((uint32_t*)&forMarshaling->indexCount, sizeof(uint32_t));
+ vkStream->write((int32_t*)&forMarshaling->vertexOffset, sizeof(int32_t));
+}
+
+void unmarshal_VkMultiDrawIndexedInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMultiDrawIndexedInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((uint32_t*)&forUnmarshaling->firstIndex, sizeof(uint32_t));
+ vkStream->read((uint32_t*)&forUnmarshaling->indexCount, sizeof(uint32_t));
+ vkStream->read((int32_t*)&forUnmarshaling->vertexOffset, sizeof(int32_t));
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void marshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->borderColorSwizzle, sizeof(VkBool32));
+ vkStream->write((VkBool32*)&forMarshaling->borderColorSwizzleFromImage, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->borderColorSwizzle, sizeof(VkBool32));
+ vkStream->read((VkBool32*)&forUnmarshaling->borderColorSwizzleFromImage, sizeof(VkBool32));
+}
+
+void marshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ marshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forMarshaling->components));
+ vkStream->write((VkBool32*)&forMarshaling->srgb, sizeof(VkBool32));
+}
+
+void unmarshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ unmarshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forUnmarshaling->components));
+ vkStream->read((VkBool32*)&forUnmarshaling->srgb, sizeof(VkBool32));
+}
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void marshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* forMarshaling)
+{
+ (void)rootType;
+ vkStream->write((VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ marshal_extension_struct(vkStream, rootType, forMarshaling->pNext);
+ vkStream->write((VkBool32*)&forMarshaling->pageableDeviceLocalMemory, sizeof(VkBool32));
+}
+
+void unmarshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* forUnmarshaling)
+{
+ (void)rootType;
+ vkStream->read((VkStructureType*)&forUnmarshaling->sType, sizeof(VkStructureType));
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forUnmarshaling->sType;
+ }
+ unmarshal_extension_struct(vkStream, rootType, (void*)(forUnmarshaling->pNext));
+ vkStream->read((VkBool32*)&forUnmarshaling->pageableDeviceLocalMemory, sizeof(VkBool32));
+}
+
+#endif
#ifdef VK_KHR_acceleration_structure
void marshal_VkDeviceOrHostAddressKHR(
VulkanStreamGuest* vkStream,
@@ -22065,24 +28079,6 @@
vkStream->read((VkDeviceAddress*)&forUnmarshaling->deviceAddress, sizeof(VkDeviceAddress));
}
-void marshal_VkDeviceOrHostAddressConstKHR(
- VulkanStreamGuest* vkStream,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* forMarshaling)
-{
- (void)rootType;
- vkStream->write((VkDeviceAddress*)&forMarshaling->deviceAddress, sizeof(VkDeviceAddress));
-}
-
-void unmarshal_VkDeviceOrHostAddressConstKHR(
- VulkanStreamGuest* vkStream,
- VkStructureType rootType,
- VkDeviceOrHostAddressConstKHR* forUnmarshaling)
-{
- (void)rootType;
- vkStream->read((VkDeviceAddress*)&forUnmarshaling->deviceAddress, sizeof(VkDeviceAddress));
-}
-
void marshal_VkAccelerationStructureBuildRangeInfoKHR(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
@@ -23577,6 +29573,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ marshal_VkVideoQueueFamilyProperties2KHR(vkStream, rootType, reinterpret_cast<const VkVideoQueueFamilyProperties2KHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ marshal_VkVideoProfileKHR(vkStream, rootType, reinterpret_cast<const VkVideoProfileKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ marshal_VkVideoProfilesKHR(vkStream, rootType, reinterpret_cast<const VkVideoProfilesKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ marshal_VkPipelineRenderingCreateInfoKHR(vkStream, rootType, reinterpret_cast<const VkPipelineRenderingCreateInfoKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ marshal_VkCommandBufferInheritanceRenderingInfoKHR(vkStream, rootType, reinterpret_cast<const VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ marshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(vkStream, rootType, reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ marshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(vkStream, rootType, reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ marshal_VkAttachmentSampleCountInfoAMD(vkStream, rootType, reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ marshal_VkMultiviewPerViewAttributesInfoNVX(vkStream, rootType, reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -23720,6 +29770,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDevicePresentWaitFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -23727,6 +29784,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ marshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ marshal_VkPresentIdKHR(vkStream, rootType, reinterpret_cast<const VkPresentIdKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDevicePresentIdFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ marshal_VkVideoEncodeRateControlInfoKHR(vkStream, rootType, reinterpret_cast<const VkVideoEncodeRateControlInfoKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ marshal_VkMemoryBarrier2KHR(vkStream, rootType, reinterpret_cast<const VkMemoryBarrier2KHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceSynchronization2FeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ marshal_VkQueueFamilyCheckpointProperties2NV(vkStream, rootType, reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ marshal_VkFormatProperties3KHR(vkStream, rootType, reinterpret_cast<const VkFormatProperties3KHR*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ marshal_VkPhysicalDeviceMaintenance4FeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ marshal_VkPhysicalDeviceMaintenance4PropertiesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -23782,6 +29927,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ marshal_VkVideoEncodeH264CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH264SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH264SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH264VclFrameInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ marshal_VkVideoEncodeH264EmitPictureParametersEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ marshal_VkVideoEncodeH264ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264ProfileEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ marshal_VkVideoEncodeH265CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH265SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH265SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ marshal_VkVideoEncodeH265VclFrameInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ marshal_VkVideoEncodeH265EmitPictureParametersEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ marshal_VkVideoEncodeH265ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265ProfileEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ marshal_VkVideoDecodeH264ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264ProfileEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ marshal_VkVideoDecodeH264CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264CapabilitiesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH264SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH264SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH264PictureInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264PictureInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ marshal_VkVideoDecodeH264MvcEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264MvcEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH264DpbSlotInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -23964,6 +30225,11 @@
marshal_VkExternalFormatANDROID(vkStream, rootType, reinterpret_cast<const VkExternalFormatANDROID*>(structExtension));
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ marshal_VkAndroidHardwareBufferFormatProperties2ANDROID(vkStream, rootType, reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension));
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -24073,6 +30339,11 @@
marshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension));
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ marshal_VkDrmFormatModifierPropertiesList2EXT(vkStream, rootType, reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension));
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -24172,6 +30443,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ marshal_VkVideoDecodeH265ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265ProfileEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ marshal_VkVideoDecodeH265CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265CapabilitiesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH265SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH265SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH265PictureInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265PictureInfoEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ marshal_VkVideoDecodeH265DpbSlotInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -24494,6 +30802,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ marshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ marshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -24549,6 +30874,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -24573,6 +30905,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ marshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ marshal_VkCommandBufferInheritanceViewportScissorInfoNV(vkStream, rootType, reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -24686,6 +31030,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ marshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(vkStream, rootType, reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ marshal_VkAccelerationStructureMotionInfoNV(vkStream, rootType, reinterpret_cast<const VkAccelerationStructureMotionInfoNV*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ marshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -24719,6 +31087,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ marshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ marshal_VkMutableDescriptorTypeCreateInfoVALVE(vkStream, rootType, reinterpret_cast<const VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ marshal_VkPhysicalDeviceDrmPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ marshal_VkImportMemoryZirconHandleInfoFUCHSIA(vkStream, rootType, reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ marshal_VkImportMemoryBufferCollectionFUCHSIA(vkStream, rootType, reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ marshal_VkBufferCollectionImageCreateInfoFUCHSIA(vkStream, rootType, reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ marshal_VkBufferCollectionBufferCreateInfoFUCHSIA(vkStream, rootType, reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ marshal_VkSubpassShadingPipelineCreateInfoHUAWEI(vkStream, rootType, reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ marshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ marshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ marshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ marshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ marshal_VkPipelineColorWriteCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -24736,6 +31218,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ marshal_VkQueueFamilyGlobalPriorityPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceMultiDrawFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ marshal_VkPhysicalDeviceMultiDrawPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ marshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension));
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ marshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension));
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
@@ -25231,6 +31756,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ unmarshal_VkVideoQueueFamilyProperties2KHR(vkStream, rootType, reinterpret_cast<VkVideoQueueFamilyProperties2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ unmarshal_VkVideoProfileKHR(vkStream, rootType, reinterpret_cast<VkVideoProfileKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ unmarshal_VkVideoProfilesKHR(vkStream, rootType, reinterpret_cast<VkVideoProfilesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ unmarshal_VkPipelineRenderingCreateInfoKHR(vkStream, rootType, reinterpret_cast<VkPipelineRenderingCreateInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ unmarshal_VkCommandBufferInheritanceRenderingInfoKHR(vkStream, rootType, reinterpret_cast<VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ unmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(vkStream, rootType, reinterpret_cast<VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ unmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(vkStream, rootType, reinterpret_cast<VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ unmarshal_VkAttachmentSampleCountInfoAMD(vkStream, rootType, reinterpret_cast<VkAttachmentSampleCountInfoAMD*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ unmarshal_VkMultiviewPerViewAttributesInfoNVX(vkStream, rootType, reinterpret_cast<VkMultiviewPerViewAttributesInfoNVX*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -25374,6 +31953,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDevicePresentWaitFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -25381,6 +31967,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ unmarshal_VkPresentIdKHR(vkStream, rootType, reinterpret_cast<VkPresentIdKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDevicePresentIdFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ unmarshal_VkVideoEncodeRateControlInfoKHR(vkStream, rootType, reinterpret_cast<VkVideoEncodeRateControlInfoKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ unmarshal_VkMemoryBarrier2KHR(vkStream, rootType, reinterpret_cast<VkMemoryBarrier2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceSynchronization2FeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ unmarshal_VkQueueFamilyCheckpointProperties2NV(vkStream, rootType, reinterpret_cast<VkQueueFamilyCheckpointProperties2NV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ unmarshal_VkFormatProperties3KHR(vkStream, rootType, reinterpret_cast<VkFormatProperties3KHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceMaintenance4FeaturesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ unmarshal_VkPhysicalDeviceMaintenance4PropertiesKHR(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -25436,6 +32110,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ unmarshal_VkVideoEncodeH264CapabilitiesEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH264SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH264VclFrameInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ unmarshal_VkVideoEncodeH264EmitPictureParametersEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ unmarshal_VkVideoEncodeH264ProfileEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ unmarshal_VkVideoEncodeH265CapabilitiesEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH265SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ unmarshal_VkVideoEncodeH265VclFrameInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ unmarshal_VkVideoEncodeH265EmitPictureParametersEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ unmarshal_VkVideoEncodeH265ProfileEXT(vkStream, rootType, reinterpret_cast<VkVideoEncodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ unmarshal_VkVideoDecodeH264ProfileEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ unmarshal_VkVideoDecodeH264CapabilitiesEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH264SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH264PictureInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ unmarshal_VkVideoDecodeH264MvcEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264MvcEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH264DpbSlotInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -25618,6 +32408,11 @@
unmarshal_VkExternalFormatANDROID(vkStream, rootType, reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ unmarshal_VkAndroidHardwareBufferFormatProperties2ANDROID(vkStream, rootType, reinterpret_cast<VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -25727,6 +32522,11 @@
unmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ unmarshal_VkDrmFormatModifierPropertiesList2EXT(vkStream, rootType, reinterpret_cast<VkDrmFormatModifierPropertiesList2EXT*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -25826,6 +32626,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ unmarshal_VkVideoDecodeH265ProfileEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ unmarshal_VkVideoDecodeH265CapabilitiesEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH265SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH265PictureInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ unmarshal_VkVideoDecodeH265DpbSlotInfoEXT(vkStream, rootType, reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -26148,6 +32985,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ unmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -26203,6 +33057,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -26227,6 +33088,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ unmarshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ unmarshal_VkCommandBufferInheritanceViewportScissorInfoNV(vkStream, rootType, reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -26340,6 +33213,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ unmarshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(vkStream, rootType, reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ unmarshal_VkAccelerationStructureMotionInfoNV(vkStream, rootType, reinterpret_cast<VkAccelerationStructureMotionInfoNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ unmarshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -26373,6 +33270,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ unmarshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ unmarshal_VkMutableDescriptorTypeCreateInfoVALVE(vkStream, rootType, reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceDrmPropertiesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ unmarshal_VkImportMemoryZirconHandleInfoFUCHSIA(vkStream, rootType, reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ unmarshal_VkImportMemoryBufferCollectionFUCHSIA(vkStream, rootType, reinterpret_cast<VkImportMemoryBufferCollectionFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ unmarshal_VkBufferCollectionImageCreateInfoFUCHSIA(vkStream, rootType, reinterpret_cast<VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ unmarshal_VkBufferCollectionBufferCreateInfoFUCHSIA(vkStream, rootType, reinterpret_cast<VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ unmarshal_VkSubpassShadingPipelineCreateInfoHUAWEI(vkStream, rootType, reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ unmarshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ unmarshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ unmarshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ unmarshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ unmarshal_VkPipelineColorWriteCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkPipelineColorWriteCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -26390,6 +33401,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ unmarshal_VkQueueFamilyGlobalPriorityPropertiesEXT(vkStream, rootType, reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceMultiDrawFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceMultiDrawPropertiesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ unmarshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(vkStream, rootType, reinterpret_cast<VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ unmarshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(vkStream, rootType, reinterpret_cast<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
@@ -27887,12 +34941,36 @@
return "OP_vkQueueFlushCommandsGOOGLE";
}
#endif
+#ifdef VK_KHR_dynamic_rendering
+ case OP_vkCmdEndRenderingKHR:
+ {
+ return "OP_vkCmdEndRenderingKHR";
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case OP_vkAcquireFullScreenExclusiveModeEXT:
{
return "OP_vkAcquireFullScreenExclusiveModeEXT";
}
#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkCmdPipelineBarrier2KHR:
+ {
+ return "OP_vkCmdPipelineBarrier2KHR";
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case OP_vkGetDeviceBufferMemoryRequirementsKHR:
+ {
+ return "OP_vkGetDeviceBufferMemoryRequirementsKHR";
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case OP_vkCmdSetColorWriteEnableEXT:
+ {
+ return "OP_vkCmdSetColorWriteEnableEXT";
+ }
+#endif
#ifdef VK_NV_ray_tracing
case OP_vkBindAccelerationStructureMemoryNV:
{
@@ -27965,12 +35043,24 @@
return "OP_vkCmdDrawMeshTasksNV";
}
#endif
+#ifdef VK_NVX_binary_import
+ case OP_vkCreateCuFunctionNVX:
+ {
+ return "OP_vkCreateCuFunctionNVX";
+ }
+#endif
#ifdef VK_NV_ray_tracing
case OP_vkCmdWriteAccelerationStructuresPropertiesNV:
{
return "OP_vkCmdWriteAccelerationStructuresPropertiesNV";
}
#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case OP_vkCmdSetPatchControlPointsEXT:
+ {
+ return "OP_vkCmdSetPatchControlPointsEXT";
+ }
+#endif
#ifdef VK_EXT_private_data
case OP_vkDestroyPrivateDataSlotEXT:
{
@@ -27995,6 +35085,12 @@
return "OP_vkCmdCopyAccelerationStructureNV";
}
#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case OP_vkCmdSetVertexInputEXT:
+ {
+ return "OP_vkCmdSetVertexInputEXT";
+ }
+#endif
#ifdef VK_KHR_ray_tracing_pipeline
case OP_vkCmdTraceRaysIndirectKHR:
{
@@ -28007,6 +35103,18 @@
return "OP_vkCmdSetFrontFaceEXT";
}
#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case OP_vkSetBufferCollectionBufferConstraintsFUCHSIA:
+ {
+ return "OP_vkSetBufferCollectionBufferConstraintsFUCHSIA";
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case OP_vkGetMemoryZirconHandlePropertiesFUCHSIA:
+ {
+ return "OP_vkGetMemoryZirconHandlePropertiesFUCHSIA";
+ }
+#endif
#ifdef VK_INTEL_performance_query
case OP_vkGetPerformanceParameterINTEL:
{
@@ -28025,6 +35133,12 @@
return "OP_vkCmdTraceRaysKHR";
}
#endif
+#ifdef VK_FUCHSIA_external_memory
+ case OP_vkGetMemoryZirconHandleFUCHSIA:
+ {
+ return "OP_vkGetMemoryZirconHandleFUCHSIA";
+ }
+#endif
#ifdef VK_NV_shading_rate_image
case OP_vkCmdSetViewportShadingRatePaletteNV:
{
@@ -28036,6 +35150,14 @@
{
return "OP_vkDestroyDeferredOperationKHR";
}
+#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkBindVideoSessionMemoryKHR:
+ {
+ return "OP_vkBindVideoSessionMemoryKHR";
+ }
+#endif
+#ifdef VK_KHR_deferred_host_operations
case OP_vkDeferredOperationJoinKHR:
{
return "OP_vkDeferredOperationJoinKHR";
@@ -28059,12 +35181,24 @@
return "OP_vkGetAccelerationStructureBuildSizesKHR";
}
#endif
+#ifdef VK_NVX_binary_import
+ case OP_vkCmdCuLaunchKernelNVX:
+ {
+ return "OP_vkCmdCuLaunchKernelNVX";
+ }
+#endif
#ifdef VK_NV_ray_tracing
case OP_vkGetAccelerationStructureMemoryRequirementsNV:
{
return "OP_vkGetAccelerationStructureMemoryRequirementsNV";
}
#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case OP_vkCmdSubpassShadingHUAWEI:
+ {
+ return "OP_vkCmdSubpassShadingHUAWEI";
+ }
+#endif
#ifdef VK_EXT_directfb_surface
case OP_vkCreateDirectFBSurfaceEXT:
{
@@ -28123,24 +35257,54 @@
return "OP_vkDestroyAccelerationStructureKHR";
}
#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case OP_vkSetDeviceMemoryPriorityEXT:
+ {
+ return "OP_vkSetDeviceMemoryPriorityEXT";
+ }
+#endif
#ifdef VK_EXT_buffer_device_address
case OP_vkGetBufferDeviceAddressEXT:
{
return "OP_vkGetBufferDeviceAddressEXT";
}
#endif
+#ifdef VK_QNX_screen_surface
+ case OP_vkCreateScreenSurfaceQNX:
+ {
+ return "OP_vkCreateScreenSurfaceQNX";
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkCmdWriteBufferMarker2AMD:
+ {
+ return "OP_vkCmdWriteBufferMarker2AMD";
+ }
+#endif
#ifdef VK_VERSION_1_2
case OP_vkWaitSemaphores:
{
return "OP_vkWaitSemaphores";
}
#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case OP_vkDestroyBufferCollectionFUCHSIA:
+ {
+ return "OP_vkDestroyBufferCollectionFUCHSIA";
+ }
+#endif
#ifdef VK_EXT_private_data
case OP_vkSetPrivateDataEXT:
{
return "OP_vkSetPrivateDataEXT";
}
#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case OP_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI:
+ {
+ return "OP_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI";
+ }
+#endif
#ifdef VK_NV_scissor_exclusive
case OP_vkCmdSetExclusiveScissorNV:
{
@@ -28153,6 +35317,18 @@
return "OP_vkCmdCopyImage2KHR";
}
#endif
+#ifdef VK_NVX_binary_import
+ case OP_vkCreateCuModuleNVX:
+ {
+ return "OP_vkCreateCuModuleNVX";
+ }
+#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkCreateVideoSessionKHR:
+ {
+ return "OP_vkCreateVideoSessionKHR";
+ }
+#endif
#ifdef VK_KHR_timeline_semaphore
case OP_vkGetSemaphoreCounterValueKHR:
{
@@ -28200,6 +35376,14 @@
{
return "OP_vkCmdSetCoarseSampleOrderNV";
}
+#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkDestroyVideoSessionParametersKHR:
+ {
+ return "OP_vkDestroyVideoSessionParametersKHR";
+ }
+#endif
+#ifdef VK_NV_shading_rate_image
case OP_vkCmdBindShadingRateImageNV:
{
return "OP_vkCmdBindShadingRateImageNV";
@@ -28211,6 +35395,16 @@
return "OP_vkAcquireProfilingLockKHR";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkDestroyVideoSessionKHR:
+ {
+ return "OP_vkDestroyVideoSessionKHR";
+ }
+ case OP_vkCmdBeginVideoCodingKHR:
+ {
+ return "OP_vkCmdBeginVideoCodingKHR";
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case OP_vkCopyAccelerationStructureKHR:
{
@@ -28229,12 +35423,24 @@
return "OP_vkBuildAccelerationStructuresKHR";
}
#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case OP_vkGetBufferCollectionPropertiesFUCHSIA:
+ {
+ return "OP_vkGetBufferCollectionPropertiesFUCHSIA";
+ }
+#endif
#ifdef VK_EXT_host_query_reset
case OP_vkResetQueryPoolEXT:
{
return "OP_vkResetQueryPoolEXT";
}
#endif
+#ifdef VK_KHR_maintenance4
+ case OP_vkGetDeviceImageMemoryRequirementsKHR:
+ {
+ return "OP_vkGetDeviceImageMemoryRequirementsKHR";
+ }
+#endif
#ifdef VK_EXT_extended_dynamic_state
case OP_vkCmdBindVertexBuffers2EXT:
{
@@ -28252,11 +35458,25 @@
{
return "OP_vkCmdNextSubpass2";
}
+#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkCmdWaitEvents2KHR:
+ {
+ return "OP_vkCmdWaitEvents2KHR";
+ }
+#endif
+#ifdef VK_VERSION_1_2
case OP_vkCmdDrawIndexedIndirectCount:
{
return "OP_vkCmdDrawIndexedIndirectCount";
}
#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case OP_vkCmdSetRasterizerDiscardEnableEXT:
+ {
+ return "OP_vkCmdSetRasterizerDiscardEnableEXT";
+ }
+#endif
#ifdef VK_INTEL_performance_query
case OP_vkAcquirePerformanceConfigurationINTEL:
{
@@ -28280,6 +35500,20 @@
{
return "OP_vkCmdCopyBuffer2KHR";
}
+#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkGetPhysicalDeviceVideoCapabilitiesKHR:
+ {
+ return "OP_vkGetPhysicalDeviceVideoCapabilitiesKHR";
+ }
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+ case OP_vkGetSemaphoreZirconHandleFUCHSIA:
+ {
+ return "OP_vkGetSemaphoreZirconHandleFUCHSIA";
+ }
+#endif
+#ifdef VK_KHR_copy_commands2
case OP_vkCmdCopyBufferToImage2KHR:
{
return "OP_vkCmdCopyBufferToImage2KHR";
@@ -28291,6 +35525,12 @@
return "OP_vkGetGeneratedCommandsMemoryRequirementsNV";
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+ case OP_vkAcquireDrmDisplayEXT:
+ {
+ return "OP_vkAcquireDrmDisplayEXT";
+ }
+#endif
#ifdef VK_EXT_image_drm_format_modifier
case OP_vkGetImageDrmFormatModifierPropertiesEXT:
{
@@ -28315,6 +35555,12 @@
return "OP_vkCmdCopyImageToBuffer2KHR";
}
#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkCmdWriteTimestamp2KHR:
+ {
+ return "OP_vkCmdWriteTimestamp2KHR";
+ }
+#endif
#ifdef VK_NV_ray_tracing
case OP_vkDestroyAccelerationStructureNV:
{
@@ -28327,6 +35573,18 @@
return "OP_vkReleasePerformanceConfigurationINTEL";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkCmdControlVideoCodingKHR:
+ {
+ return "OP_vkCmdControlVideoCodingKHR";
+ }
+#endif
+#ifdef VK_NVX_binary_import
+ case OP_vkDestroyCuFunctionNVX:
+ {
+ return "OP_vkDestroyCuFunctionNVX";
+ }
+#endif
#ifdef VK_KHR_copy_commands2
case OP_vkCmdResolveImage2KHR:
{
@@ -28345,6 +35603,18 @@
return "OP_vkCopyAccelerationStructureToMemoryKHR";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkGetVideoSessionMemoryRequirementsKHR:
+ {
+ return "OP_vkGetVideoSessionMemoryRequirementsKHR";
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case OP_vkGetMemoryRemoteAddressNV:
+ {
+ return "OP_vkGetMemoryRemoteAddressNV";
+ }
+#endif
#ifdef VK_EXT_extended_dynamic_state
case OP_vkCmdSetViewportWithCountEXT:
{
@@ -28362,11 +35632,25 @@
{
return "OP_vkCmdBuildAccelerationStructuresIndirectKHR";
}
+#endif
+#ifdef VK_QNX_screen_surface
+ case OP_vkGetPhysicalDeviceScreenPresentationSupportQNX:
+ {
+ return "OP_vkGetPhysicalDeviceScreenPresentationSupportQNX";
+ }
+#endif
+#ifdef VK_KHR_acceleration_structure
case OP_vkCreateAccelerationStructureKHR:
{
return "OP_vkCreateAccelerationStructureKHR";
}
#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case OP_vkCmdSetDepthBiasEnableEXT:
+ {
+ return "OP_vkCmdSetDepthBiasEnableEXT";
+ }
+#endif
#ifdef VK_NV_ray_tracing
case OP_vkCreateAccelerationStructureNV:
{
@@ -28397,6 +35681,12 @@
return "OP_vkCmdSetPrimitiveTopologyEXT";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkUpdateVideoSessionParametersKHR:
+ {
+ return "OP_vkUpdateVideoSessionParametersKHR";
+ }
+#endif
#ifdef VK_INTEL_performance_query
case OP_vkCmdSetPerformanceStreamMarkerINTEL:
{
@@ -28415,6 +35705,24 @@
return "OP_vkCreateImagePipeSurfaceFUCHSIA";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkGetPhysicalDeviceVideoFormatPropertiesKHR:
+ {
+ return "OP_vkGetPhysicalDeviceVideoFormatPropertiesKHR";
+ }
+#endif
+#ifdef VK_KHR_present_wait
+ case OP_vkWaitForPresentKHR:
+ {
+ return "OP_vkWaitForPresentKHR";
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case OP_vkCmdDrawMultiEXT:
+ {
+ return "OP_vkCmdDrawMultiEXT";
+ }
+#endif
#ifdef VK_KHR_deferred_host_operations
case OP_vkGetDeferredOperationResultKHR:
{
@@ -28439,6 +35747,12 @@
return "OP_vkCmdSetFragmentShadingRateEnumNV";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkCreateVideoSessionParametersKHR:
+ {
+ return "OP_vkCreateVideoSessionParametersKHR";
+ }
+#endif
#ifdef VK_EXT_extended_dynamic_state
case OP_vkCmdSetCullModeEXT:
{
@@ -28457,6 +35771,12 @@
return "OP_vkGetSemaphoreCounterValue";
}
#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case OP_vkCmdSetLogicOpEXT:
+ {
+ return "OP_vkCmdSetLogicOpEXT";
+ }
+#endif
#ifdef VK_AMD_display_native_hdr
case OP_vkSetLocalDimmingAMD:
{
@@ -28517,6 +35837,12 @@
return "OP_vkCmdBindPipelineShaderGroupNV";
}
#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkCmdSetEvent2KHR:
+ {
+ return "OP_vkCmdSetEvent2KHR";
+ }
+#endif
#ifdef VK_VERSION_1_2
case OP_vkSignalSemaphore:
{
@@ -28559,6 +35885,12 @@
return "OP_vkGetPhysicalDeviceFragmentShadingRatesKHR";
}
#endif
+#ifdef VK_NVX_binary_import
+ case OP_vkDestroyCuModuleNVX:
+ {
+ return "OP_vkDestroyCuModuleNVX";
+ }
+#endif
#ifdef VK_NV_mesh_shader
case OP_vkCmdDrawMeshTasksIndirectNV:
{
@@ -28571,12 +35903,36 @@
return "OP_vkGetPipelineExecutableInternalRepresentationsKHR";
}
#endif
+#ifdef VK_NV_acquire_winrt_display
+ case OP_vkAcquireWinrtDisplayNV:
+ {
+ return "OP_vkAcquireWinrtDisplayNV";
+ }
+#endif
#ifdef VK_KHR_deferred_host_operations
case OP_vkCreateDeferredOperationKHR:
{
return "OP_vkCreateDeferredOperationKHR";
}
#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case OP_vkSetBufferCollectionImageConstraintsFUCHSIA:
+ {
+ return "OP_vkSetBufferCollectionImageConstraintsFUCHSIA";
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case OP_vkGetDeviceImageSparseMemoryRequirementsKHR:
+ {
+ return "OP_vkGetDeviceImageSparseMemoryRequirementsKHR";
+ }
+#endif
+#ifdef VK_KHR_video_decode_queue
+ case OP_vkCmdDecodeVideoKHR:
+ {
+ return "OP_vkCmdDecodeVideoKHR";
+ }
+#endif
#ifdef VK_EXT_transform_feedback
case OP_vkCmdBeginQueryIndexedEXT:
{
@@ -28589,6 +35945,12 @@
return "OP_vkCmdSetStencilOpEXT";
}
#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case OP_vkCreateBufferCollectionFUCHSIA:
+ {
+ return "OP_vkCreateBufferCollectionFUCHSIA";
+ }
+#endif
#ifdef VK_NV_ray_tracing
case OP_vkCompileDeferredNV:
{
@@ -28613,6 +35975,12 @@
return "OP_vkCmdEndQueryIndexedEXT";
}
#endif
+#ifdef VK_KHR_video_queue
+ case OP_vkCmdEndVideoCodingKHR:
+ {
+ return "OP_vkCmdEndVideoCodingKHR";
+ }
+#endif
#ifdef VK_KHR_performance_query
case OP_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR:
{
@@ -28625,12 +35993,30 @@
return "OP_vkGetPhysicalDeviceToolPropertiesEXT";
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+ case OP_vkGetDrmDisplayEXT:
+ {
+ return "OP_vkGetDrmDisplayEXT";
+ }
+#endif
#ifdef VK_VERSION_1_2
case OP_vkCmdDrawIndirectCount:
{
return "OP_vkCmdDrawIndirectCount";
}
#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkCmdResetEvent2KHR:
+ {
+ return "OP_vkCmdResetEvent2KHR";
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case OP_vkCmdDrawMultiIndexedEXT:
+ {
+ return "OP_vkCmdDrawMultiIndexedEXT";
+ }
+#endif
#ifdef VK_EXT_transform_feedback
case OP_vkCmdDrawIndirectByteCountEXT:
{
@@ -28685,12 +36071,30 @@
return "OP_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV";
}
#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkGetQueueCheckpointData2NV:
+ {
+ return "OP_vkGetQueueCheckpointData2NV";
+ }
+#endif
#ifdef VK_NV_device_generated_commands
case OP_vkDestroyIndirectCommandsLayoutNV:
{
return "OP_vkDestroyIndirectCommandsLayoutNV";
}
#endif
+#ifdef VK_KHR_synchronization2
+ case OP_vkQueueSubmit2KHR:
+ {
+ return "OP_vkQueueSubmit2KHR";
+ }
+#endif
+#ifdef VK_NV_acquire_winrt_display
+ case OP_vkGetWinrtDisplayNV:
+ {
+ return "OP_vkGetWinrtDisplayNV";
+ }
+#endif
#ifdef VK_EXT_transform_feedback
case OP_vkCmdBeginTransformFeedbackEXT:
{
@@ -28715,6 +36119,12 @@
return "OP_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT";
}
#endif
+#ifdef VK_KHR_video_encode_queue
+ case OP_vkCmdEncodeVideoKHR:
+ {
+ return "OP_vkCmdEncodeVideoKHR";
+ }
+#endif
#ifdef VK_INTEL_performance_query
case OP_vkUninitializePerformanceApiINTEL:
{
@@ -28727,6 +36137,12 @@
return "OP_vkCmdPreprocessGeneratedCommandsNV";
}
#endif
+#ifdef VK_KHR_dynamic_rendering
+ case OP_vkCmdBeginRenderingKHR:
+ {
+ return "OP_vkCmdBeginRenderingKHR";
+ }
+#endif
#ifdef VK_EXT_headless_surface
case OP_vkCreateHeadlessSurfaceEXT:
{
@@ -28739,6 +36155,24 @@
return "OP_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR";
}
#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case OP_vkCmdBindInvocationMaskHUAWEI:
+ {
+ return "OP_vkCmdBindInvocationMaskHUAWEI";
+ }
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+ case OP_vkImportSemaphoreZirconHandleFUCHSIA:
+ {
+ return "OP_vkImportSemaphoreZirconHandleFUCHSIA";
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case OP_vkCmdSetPrimitiveRestartEnableEXT:
+ {
+ return "OP_vkCmdSetPrimitiveRestartEnableEXT";
+ }
+#endif
default:
{
return "OP_UNKNOWN_API_CALL";
diff --git a/system/vulkan_enc/goldfish_vk_marshaling_guest.h b/system/vulkan_enc/goldfish_vk_marshaling_guest.h
index e4831e8..28058c4 100644
--- a/system/vulkan_enc/goldfish_vk_marshaling_guest.h
+++ b/system/vulkan_enc/goldfish_vk_marshaling_guest.h
@@ -184,6 +184,16 @@
VkStructureType rootType,
VkMemoryBarrier* forUnmarshaling);
+void marshal_VkPipelineCacheHeaderVersionOne(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* forMarshaling);
+
+void unmarshal_VkPipelineCacheHeaderVersionOne(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineCacheHeaderVersionOne* forUnmarshaling);
+
void marshal_VkAllocationCallbacks(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
@@ -2796,6 +2806,291 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void marshal_VkVideoQueueFamilyProperties2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* forMarshaling);
+
+void unmarshal_VkVideoQueueFamilyProperties2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoQueueFamilyProperties2KHR* forUnmarshaling);
+
+void marshal_VkVideoProfileKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* forMarshaling);
+
+void unmarshal_VkVideoProfileKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoProfileKHR* forUnmarshaling);
+
+void marshal_VkVideoProfilesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* forMarshaling);
+
+void unmarshal_VkVideoProfilesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoProfilesKHR* forUnmarshaling);
+
+void marshal_VkVideoCapabilitiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* forMarshaling);
+
+void unmarshal_VkVideoCapabilitiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoCapabilitiesKHR* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceVideoFormatInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoFormatPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* forMarshaling);
+
+void unmarshal_VkVideoFormatPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoFormatPropertiesKHR* forUnmarshaling);
+
+void marshal_VkVideoPictureResourceKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* forMarshaling);
+
+void unmarshal_VkVideoPictureResourceKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoPictureResourceKHR* forUnmarshaling);
+
+void marshal_VkVideoReferenceSlotKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* forMarshaling);
+
+void unmarshal_VkVideoReferenceSlotKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoReferenceSlotKHR* forUnmarshaling);
+
+void marshal_VkVideoGetMemoryPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* forMarshaling);
+
+void unmarshal_VkVideoGetMemoryPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoGetMemoryPropertiesKHR* forUnmarshaling);
+
+void marshal_VkVideoBindMemoryKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* forMarshaling);
+
+void unmarshal_VkVideoBindMemoryKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoBindMemoryKHR* forUnmarshaling);
+
+void marshal_VkVideoSessionCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoSessionCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoSessionCreateInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoSessionParametersCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoSessionParametersCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoSessionParametersCreateInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoSessionParametersUpdateInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoBeginCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoBeginCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoBeginCodingInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoEndCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoEndCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEndCodingInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoCodingControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoCodingControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoCodingControlInfoKHR* forUnmarshaling);
+
+#define OP_vkGetPhysicalDeviceVideoCapabilitiesKHR 248113462
+#define OP_vkGetPhysicalDeviceVideoFormatPropertiesKHR 261873967
+#define OP_vkCreateVideoSessionKHR 227974422
+#define OP_vkDestroyVideoSessionKHR 239043215
+#define OP_vkGetVideoSessionMemoryRequirementsKHR 256181716
+#define OP_vkBindVideoSessionMemoryKHR 215994619
+#define OP_vkCreateVideoSessionParametersKHR 265164680
+#define OP_vkUpdateVideoSessionParametersKHR 261262143
+#define OP_vkDestroyVideoSessionParametersKHR 237919724
+#define OP_vkCmdBeginVideoCodingKHR 239581372
+#define OP_vkCmdEndVideoCodingKHR 279828574
+#define OP_vkCmdControlVideoCodingKHR 252933003
+#endif
+#ifdef VK_KHR_video_decode_queue
+void marshal_VkVideoDecodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoDecodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeInfoKHR* forUnmarshaling);
+
+#define OP_vkCmdDecodeVideoKHR 275796951
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void marshal_VkRenderingAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* forMarshaling);
+
+void unmarshal_VkRenderingAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingAttachmentInfoKHR* forUnmarshaling);
+
+void marshal_VkRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* forMarshaling);
+
+void unmarshal_VkRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingInfoKHR* forUnmarshaling);
+
+void marshal_VkPipelineRenderingCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* forMarshaling);
+
+void unmarshal_VkPipelineRenderingCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineRenderingCreateInfoKHR* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* forUnmarshaling);
+
+void marshal_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* forMarshaling);
+
+void unmarshal_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCommandBufferInheritanceRenderingInfoKHR* forUnmarshaling);
+
+#define OP_vkCmdBeginRenderingKHR 298092805
+#define OP_vkCmdEndRenderingKHR 200651584
+void marshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* forMarshaling);
+
+void unmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* forUnmarshaling);
+
+void marshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling);
+
+void unmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* forUnmarshaling);
+
+void marshal_VkAttachmentSampleCountInfoAMD(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* forMarshaling);
+
+void unmarshal_VkAttachmentSampleCountInfoAMD(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAttachmentSampleCountInfoAMD* forUnmarshaling);
+
+DEFINE_ALIAS_FUNCTION(marshal_VkAttachmentSampleCountInfoAMD, marshal_VkAttachmentSampleCountInfoNV)
+
+DEFINE_ALIAS_FUNCTION(unmarshal_VkAttachmentSampleCountInfoAMD, unmarshal_VkAttachmentSampleCountInfoNV)
+
+void marshal_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* forMarshaling);
+
+void unmarshal_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMultiviewPerViewAttributesInfoNVX* forUnmarshaling);
+
+#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(marshal_VkRenderPassMultiviewCreateInfo, marshal_VkRenderPassMultiviewCreateInfoKHR)
@@ -3852,6 +4147,19 @@
DEFINE_ALIAS_FUNCTION(unmarshal_VkAttachmentDescriptionStencilLayout, unmarshal_VkAttachmentDescriptionStencilLayoutKHR)
#endif
+#ifdef VK_KHR_present_wait
+void marshal_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePresentWaitFeaturesKHR* forUnmarshaling);
+
+#define OP_vkWaitForPresentKHR 263215580
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(marshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, marshal_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR)
@@ -3965,6 +4273,28 @@
#define OP_vkGetPipelineExecutableStatisticsKHR 271191699
#define OP_vkGetPipelineExecutableInternalRepresentationsKHR 274148497
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void marshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* forUnmarshaling);
+
+#endif
#ifdef VK_KHR_pipeline_library
void marshal_VkPipelineLibraryCreateInfoKHR(
VulkanStreamGuest* vkStream,
@@ -3979,6 +4309,197 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void marshal_VkPresentIdKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPresentIdKHR* forMarshaling);
+
+void unmarshal_VkPresentIdKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPresentIdKHR* forUnmarshaling);
+
+void marshal_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePresentIdFeaturesKHR* forUnmarshaling);
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void marshal_VkVideoEncodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoEncodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeInfoKHR* forUnmarshaling);
+
+void marshal_VkVideoEncodeRateControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* forMarshaling);
+
+void unmarshal_VkVideoEncodeRateControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeRateControlInfoKHR* forUnmarshaling);
+
+#define OP_vkCmdEncodeVideoKHR 295869356
+#endif
+#ifdef VK_KHR_synchronization2
+void marshal_VkMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* forMarshaling);
+
+void unmarshal_VkMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryBarrier2KHR* forUnmarshaling);
+
+void marshal_VkBufferMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* forMarshaling);
+
+void unmarshal_VkBufferMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferMemoryBarrier2KHR* forUnmarshaling);
+
+void marshal_VkImageMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* forMarshaling);
+
+void unmarshal_VkImageMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImageMemoryBarrier2KHR* forUnmarshaling);
+
+void marshal_VkDependencyInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* forMarshaling);
+
+void unmarshal_VkDependencyInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDependencyInfoKHR* forUnmarshaling);
+
+void marshal_VkSemaphoreSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* forMarshaling);
+
+void unmarshal_VkSemaphoreSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSemaphoreSubmitInfoKHR* forUnmarshaling);
+
+void marshal_VkCommandBufferSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* forMarshaling);
+
+void unmarshal_VkCommandBufferSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCommandBufferSubmitInfoKHR* forUnmarshaling);
+
+void marshal_VkSubmitInfo2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* forMarshaling);
+
+void unmarshal_VkSubmitInfo2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSubmitInfo2KHR* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* forUnmarshaling);
+
+#define OP_vkCmdSetEvent2KHR 270411360
+#define OP_vkCmdResetEvent2KHR 283215906
+#define OP_vkCmdWaitEvents2KHR 244967758
+#define OP_vkCmdPipelineBarrier2KHR 201310066
+#define OP_vkCmdWriteTimestamp2KHR 252552241
+#define OP_vkQueueSubmit2KHR 293024240
+#define OP_vkCmdWriteBufferMarker2AMD 224701394
+void marshal_VkQueueFamilyCheckpointProperties2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* forMarshaling);
+
+void unmarshal_VkQueueFamilyCheckpointProperties2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkQueueFamilyCheckpointProperties2NV* forUnmarshaling);
+
+void marshal_VkCheckpointData2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* forMarshaling);
+
+void unmarshal_VkCheckpointData2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCheckpointData2NV* forUnmarshaling);
+
+#define OP_vkGetQueueCheckpointData2NV 292063036
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void marshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* forUnmarshaling);
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void marshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* forUnmarshaling);
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void marshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* forUnmarshaling);
+
+#endif
#ifdef VK_KHR_copy_commands2
void marshal_VkBufferCopy2KHR(
VulkanStreamGuest* vkStream,
@@ -4097,6 +4618,63 @@
#define OP_vkCmdBlitImage2KHR 259838288
#define OP_vkCmdResolveImage2KHR 254857232
#endif
+#ifdef VK_KHR_format_feature_flags2
+void marshal_VkFormatProperties3KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* forMarshaling);
+
+void unmarshal_VkFormatProperties3KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkFormatProperties3KHR* forUnmarshaling);
+
+#endif
+#ifdef VK_KHR_maintenance4
+void marshal_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* forUnmarshaling);
+
+void marshal_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* forMarshaling);
+
+void unmarshal_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDeviceBufferMemoryRequirementsKHR* forUnmarshaling);
+
+void marshal_VkDeviceImageMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* forMarshaling);
+
+void unmarshal_VkDeviceImageMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDeviceImageMemoryRequirementsKHR* forUnmarshaling);
+
+#define OP_vkGetDeviceBufferMemoryRequirementsKHR 201613635
+#define OP_vkGetDeviceImageMemoryRequirementsKHR 243155021
+#define OP_vkGetDeviceImageSparseMemoryRequirementsKHR 275585477
+#endif
#ifdef VK_ANDROID_native_buffer
void marshal_VkNativeBufferANDROID(
VulkanStreamGuest* vkStream,
@@ -4258,6 +4836,43 @@
#define OP_vkCmdEndQueryIndexedEXT 279821337
#define OP_vkCmdDrawIndirectByteCountEXT 285235943
#endif
+#ifdef VK_NVX_binary_import
+void marshal_VkCuModuleCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* forMarshaling);
+
+void unmarshal_VkCuModuleCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCuModuleCreateInfoNVX* forUnmarshaling);
+
+void marshal_VkCuFunctionCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* forMarshaling);
+
+void unmarshal_VkCuFunctionCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCuFunctionCreateInfoNVX* forUnmarshaling);
+
+void marshal_VkCuLaunchInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* forMarshaling);
+
+void unmarshal_VkCuLaunchInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCuLaunchInfoNVX* forUnmarshaling);
+
+#define OP_vkCreateCuModuleNVX 227747396
+#define OP_vkCreateCuFunctionNVX 207930440
+#define OP_vkDestroyCuModuleNVX 273754594
+#define OP_vkDestroyCuFunctionNVX 253295828
+#define OP_vkCmdCuLaunchKernelNVX 219961351
+#endif
#ifdef VK_NVX_image_view_handle
void marshal_VkImageViewHandleInfoNVX(
VulkanStreamGuest* vkStream,
@@ -4292,6 +4907,282 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void marshal_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264CapabilitiesEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264SessionCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264DpbSlotInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264NaluSliceEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264VclFrameInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264EmitPictureParametersEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH264ProfileEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void marshal_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265CapabilitiesEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265SessionCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265DpbSlotInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265ReferenceListsEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265NaluSliceEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265VclFrameInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265EmitPictureParametersEXT* forUnmarshaling);
+
+void marshal_VkVideoEncodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* forMarshaling);
+
+void unmarshal_VkVideoEncodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoEncodeH265ProfileEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void marshal_VkVideoDecodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264ProfileEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264CapabilitiesEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264SessionCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264PictureInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264MvcEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264MvcEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264MvcEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH264DpbSlotInfoEXT* forUnmarshaling);
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void marshal_VkTextureLODGatherFormatPropertiesAMD(
VulkanStreamGuest* vkStream,
@@ -4952,6 +5843,16 @@
#define OP_vkGetAndroidHardwareBufferPropertiesANDROID 20305
#define OP_vkGetMemoryAndroidHardwareBufferANDROID 20306
+void marshal_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* forMarshaling);
+
+void unmarshal_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* forUnmarshaling);
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(marshal_VkSamplerReductionModeCreateInfo, marshal_VkSamplerReductionModeCreateInfoEXT)
@@ -5241,6 +6142,26 @@
VkImageDrmFormatModifierPropertiesEXT* forUnmarshaling);
#define OP_vkGetImageDrmFormatModifierPropertiesEXT 251301237
+void marshal_VkDrmFormatModifierProperties2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* forMarshaling);
+
+void unmarshal_VkDrmFormatModifierProperties2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDrmFormatModifierProperties2EXT* forUnmarshaling);
+
+void marshal_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* forMarshaling);
+
+void unmarshal_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDrmFormatModifierPropertiesList2EXT* forUnmarshaling);
+
#endif
#ifdef VK_EXT_validation_cache
void marshal_VkValidationCacheCreateInfoEXT(
@@ -5676,6 +6597,78 @@
VkPhysicalDeviceShaderCorePropertiesAMD* forUnmarshaling);
#endif
+#ifdef VK_EXT_video_decode_h265
+void marshal_VkVideoDecodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265ProfileEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265CapabilitiesEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265SessionCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH265PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265PictureInfoEXT* forUnmarshaling);
+
+void marshal_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* forMarshaling);
+
+void unmarshal_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVideoDecodeH265DpbSlotInfoEXT* forUnmarshaling);
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void marshal_VkDeviceMemoryOverallocationCreateInfoAMD(
VulkanStreamGuest* vkStream,
@@ -6360,6 +7353,38 @@
VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* forUnmarshaling);
#endif
+#ifdef VK_EXT_provoking_vertex
+void marshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* forUnmarshaling);
+
+void marshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forUnmarshaling);
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void marshal_VkSurfaceFullScreenExclusiveInfoEXT(
VulkanStreamGuest* vkStream,
@@ -6497,6 +7522,18 @@
#define OP_vkCmdSetStencilTestEnableEXT 286438749
#define OP_vkCmdSetStencilOpEXT 277159578
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void marshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* forUnmarshaling);
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void marshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -6647,6 +7684,28 @@
#define OP_vkCreateIndirectCommandsLayoutNV 285310710
#define OP_vkDestroyIndirectCommandsLayoutNV 292584135
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void marshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* forUnmarshaling);
+
+void marshal_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* forMarshaling);
+
+void unmarshal_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkCommandBufferInheritanceViewportScissorInfoNV* forUnmarshaling);
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void marshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -6723,6 +7782,10 @@
VkDeviceDeviceMemoryReportCreateInfoEXT* forUnmarshaling);
#endif
+#ifdef VK_EXT_acquire_drm_display
+#define OP_vkAcquireDrmDisplayEXT 249820259
+#define OP_vkGetDrmDisplayEXT 282532459
+#endif
#ifdef VK_EXT_robustness2
void marshal_VkPhysicalDeviceRobustness2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -6884,6 +7947,110 @@
#define OP_vkCmdSetFragmentShadingRateEnumNV 264649847
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void marshal_VkDeviceOrHostAddressConstKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* forMarshaling);
+
+void unmarshal_VkDeviceOrHostAddressConstKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkDeviceOrHostAddressConstKHR* forUnmarshaling);
+
+void marshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* forMarshaling);
+
+void unmarshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* forUnmarshaling);
+
+void marshal_VkAccelerationStructureMotionInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* forMarshaling);
+
+void unmarshal_VkAccelerationStructureMotionInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMotionInfoNV* forUnmarshaling);
+
+void marshal_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* forMarshaling);
+
+void unmarshal_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMatrixMotionInstanceNV* forUnmarshaling);
+
+void marshal_VkSRTDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSRTDataNV* forMarshaling);
+
+void unmarshal_VkSRTDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSRTDataNV* forUnmarshaling);
+
+void marshal_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* forMarshaling);
+
+void unmarshal_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureSRTMotionInstanceNV* forUnmarshaling);
+
+void marshal_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* forMarshaling);
+
+void unmarshal_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMotionInstanceDataNV* forUnmarshaling);
+
+void marshal_VkAccelerationStructureMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* forMarshaling);
+
+void unmarshal_VkAccelerationStructureMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkAccelerationStructureMotionInstanceNV* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void marshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forUnmarshaling);
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void marshal_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -6942,6 +8109,22 @@
VkPhysicalDevice4444FormatsFeaturesEXT* forUnmarshaling);
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void marshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#define OP_vkAcquireWinrtDisplayNV 274295059
+#define OP_vkGetWinrtDisplayNV 294381219
+#endif
#ifdef VK_EXT_directfb_surface
void marshal_VkDirectFBSurfaceCreateInfoEXT(
VulkanStreamGuest* vkStream,
@@ -6956,6 +8139,384 @@
#define OP_vkCreateDirectFBSurfaceEXT 220792403
#define OP_vkGetPhysicalDeviceDirectFBPresentationSupportEXT 285441990
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void marshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* forUnmarshaling);
+
+void marshal_VkMutableDescriptorTypeListVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* forMarshaling);
+
+void unmarshal_VkMutableDescriptorTypeListVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMutableDescriptorTypeListVALVE* forUnmarshaling);
+
+void marshal_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* forMarshaling);
+
+void unmarshal_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMutableDescriptorTypeCreateInfoVALVE* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void marshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* forUnmarshaling);
+
+void marshal_VkVertexInputBindingDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* forMarshaling);
+
+void unmarshal_VkVertexInputBindingDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVertexInputBindingDescription2EXT* forUnmarshaling);
+
+void marshal_VkVertexInputAttributeDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* forMarshaling);
+
+void unmarshal_VkVertexInputAttributeDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkVertexInputAttributeDescription2EXT* forUnmarshaling);
+
+#define OP_vkCmdSetVertexInputEXT 211522810
+#endif
+#ifdef VK_EXT_physical_device_drm
+void marshal_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceDrmPropertiesEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void marshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void marshal_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImportMemoryZirconHandleInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* forMarshaling);
+
+void unmarshal_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryZirconHandlePropertiesFUCHSIA* forUnmarshaling);
+
+void marshal_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryGetZirconHandleInfoFUCHSIA* forUnmarshaling);
+
+#define OP_vkGetMemoryZirconHandleFUCHSIA 215089868
+#define OP_vkGetMemoryZirconHandlePropertiesFUCHSIA 213247019
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void marshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* forUnmarshaling);
+
+#define OP_vkImportSemaphoreZirconHandleFUCHSIA 299314530
+#define OP_vkGetSemaphoreZirconHandleFUCHSIA 248728905
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void marshal_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionCreateInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* forMarshaling);
+
+void unmarshal_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImportMemoryBufferCollectionFUCHSIA* forUnmarshaling);
+
+void marshal_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionImageCreateInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionConstraintsInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkBufferConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkBufferConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferConstraintsInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkSysmemColorSpaceFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* forMarshaling);
+
+void unmarshal_VkSysmemColorSpaceFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSysmemColorSpaceFUCHSIA* forUnmarshaling);
+
+void marshal_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* forMarshaling);
+
+void unmarshal_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkBufferCollectionPropertiesFUCHSIA* forUnmarshaling);
+
+void marshal_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImageFormatConstraintsInfoFUCHSIA* forUnmarshaling);
+
+void marshal_VkImageConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* forMarshaling);
+
+void unmarshal_VkImageConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkImageConstraintsInfoFUCHSIA* forUnmarshaling);
+
+#define OP_vkCreateBufferCollectionFUCHSIA 277502099
+#define OP_vkSetBufferCollectionImageConstraintsFUCHSIA 274938613
+#define OP_vkSetBufferCollectionBufferConstraintsFUCHSIA 212810472
+#define OP_vkDestroyBufferCollectionFUCHSIA 224938328
+#define OP_vkGetBufferCollectionPropertiesFUCHSIA 242149782
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void marshal_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* forMarshaling);
+
+void unmarshal_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* forUnmarshaling);
+
+#define OP_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI 225288634
+#define OP_vkCmdSubpassShadingHUAWEI 220327607
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void marshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* forUnmarshaling);
+
+#define OP_vkCmdBindInvocationMaskHUAWEI 299305130
+#endif
+#ifdef VK_NV_external_memory_rdma
+void marshal_VkMemoryGetRemoteAddressInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* forMarshaling);
+
+void unmarshal_VkMemoryGetRemoteAddressInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMemoryGetRemoteAddressInfoNV* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* forUnmarshaling);
+
+#define OP_vkGetMemoryRemoteAddressNV 256917597
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void marshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forUnmarshaling);
+
+#define OP_vkCmdSetPatchControlPointsEXT 208680354
+#define OP_vkCmdSetRasterizerDiscardEnableEXT 245221405
+#define OP_vkCmdSetDepthBiasEnableEXT 259472348
+#define OP_vkCmdSetLogicOpEXT 267481927
+#define OP_vkCmdSetPrimitiveRestartEnableEXT 299567883
+#endif
+#ifdef VK_QNX_screen_surface
+void marshal_VkScreenSurfaceCreateInfoQNX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* forMarshaling);
+
+void unmarshal_VkScreenSurfaceCreateInfoQNX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkScreenSurfaceCreateInfoQNX* forUnmarshaling);
+
+#define OP_vkCreateScreenSurfaceQNX 224377168
+#define OP_vkGetPhysicalDeviceScreenPresentationSupportQNX 258528902
+#endif
+#ifdef VK_EXT_color_write_enable
+void marshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* forUnmarshaling);
+
+void marshal_VkPipelineColorWriteCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkPipelineColorWriteCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPipelineColorWriteCreateInfoEXT* forUnmarshaling);
+
+#define OP_vkCmdSetColorWriteEnableEXT 202223297
+#endif
#ifdef VK_GOOGLE_gfxstream
void marshal_VkImportColorBufferGOOGLE(
VulkanStreamGuest* vkStream,
@@ -7009,6 +8570,109 @@
#define OP_vkCollectDescriptorPoolIdsGOOGLE 213659202
#define OP_vkQueueSignalReleaseImageANDROIDAsyncGOOGLE 243985229
#endif
+#ifdef VK_EXT_global_priority_query
+void marshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* forUnmarshaling);
+
+void marshal_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* forMarshaling);
+
+void unmarshal_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_multi_draw
+void marshal_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* forUnmarshaling);
+
+void marshal_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* forUnmarshaling);
+
+void marshal_VkMultiDrawInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* forMarshaling);
+
+void unmarshal_VkMultiDrawInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMultiDrawInfoEXT* forUnmarshaling);
+
+void marshal_VkMultiDrawIndexedInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* forMarshaling);
+
+void unmarshal_VkMultiDrawIndexedInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkMultiDrawIndexedInfoEXT* forUnmarshaling);
+
+#define OP_vkCmdDrawMultiEXT 263629455
+#define OP_vkCmdDrawMultiIndexedEXT 284764463
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void marshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* forUnmarshaling);
+
+void marshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* forMarshaling);
+
+void unmarshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* forUnmarshaling);
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void marshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* forMarshaling);
+
+void unmarshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* forUnmarshaling);
+
+#define OP_vkSetDeviceMemoryPriorityEXT 223991870
+#endif
#ifdef VK_KHR_acceleration_structure
void marshal_VkDeviceOrHostAddressKHR(
VulkanStreamGuest* vkStream,
@@ -7020,16 +8684,6 @@
VkStructureType rootType,
VkDeviceOrHostAddressKHR* forUnmarshaling);
-void marshal_VkDeviceOrHostAddressConstKHR(
- VulkanStreamGuest* vkStream,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* forMarshaling);
-
-void unmarshal_VkDeviceOrHostAddressConstKHR(
- VulkanStreamGuest* vkStream,
- VkStructureType rootType,
- VkDeviceOrHostAddressConstKHR* forUnmarshaling);
-
void marshal_VkAccelerationStructureBuildRangeInfoKHR(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
diff --git a/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.cpp b/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.cpp
index c09d716..3627a05 100644
--- a/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.cpp
@@ -314,6 +314,26 @@
*ptr += sizeof(VkAccessFlags);
}
+void reservedmarshal_VkPipelineCacheHeaderVersionOne(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->headerSize, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkPipelineCacheHeaderVersion*)&forMarshaling->headerVersion, sizeof(VkPipelineCacheHeaderVersion));
+ *ptr += sizeof(VkPipelineCacheHeaderVersion);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->vendorID, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->deviceID, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint8_t*)forMarshaling->pipelineCacheUUID, VK_UUID_SIZE * sizeof(uint8_t));
+ *ptr += VK_UUID_SIZE * sizeof(uint8_t);
+}
+
void reservedmarshal_VkAllocationCallbacks(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
@@ -7043,6 +7063,682 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void reservedmarshal_VkVideoQueueFamilyProperties2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoCodecOperationFlagsKHR*)&forMarshaling->videoCodecOperations, sizeof(VkVideoCodecOperationFlagsKHR));
+ *ptr += sizeof(VkVideoCodecOperationFlagsKHR);
+}
+
+void reservedmarshal_VkVideoProfileKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoCodecOperationFlagBitsKHR*)&forMarshaling->videoCodecOperation, sizeof(VkVideoCodecOperationFlagBitsKHR));
+ *ptr += sizeof(VkVideoCodecOperationFlagBitsKHR);
+ memcpy(*ptr, (VkVideoChromaSubsamplingFlagsKHR*)&forMarshaling->chromaSubsampling, sizeof(VkVideoChromaSubsamplingFlagsKHR));
+ *ptr += sizeof(VkVideoChromaSubsamplingFlagsKHR);
+ memcpy(*ptr, (VkVideoComponentBitDepthFlagsKHR*)&forMarshaling->lumaBitDepth, sizeof(VkVideoComponentBitDepthFlagsKHR));
+ *ptr += sizeof(VkVideoComponentBitDepthFlagsKHR);
+ memcpy(*ptr, (VkVideoComponentBitDepthFlagsKHR*)&forMarshaling->chromaBitDepth, sizeof(VkVideoComponentBitDepthFlagsKHR));
+ *ptr += sizeof(VkVideoComponentBitDepthFlagsKHR);
+}
+
+void reservedmarshal_VkVideoProfilesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->profileCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ reservedmarshal_VkVideoProfileKHR(vkStream, rootType, (const VkVideoProfileKHR*)(forMarshaling->pProfiles), ptr);
+}
+
+void reservedmarshal_VkVideoCapabilitiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoCapabilityFlagsKHR*)&forMarshaling->capabilityFlags, sizeof(VkVideoCapabilityFlagsKHR));
+ *ptr += sizeof(VkVideoCapabilityFlagsKHR);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minBitstreamBufferOffsetAlignment, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->minBitstreamBufferSizeAlignment, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->videoPictureExtentGranularity), ptr);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->minExtent), ptr);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxExtent), ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxReferencePicturesSlotsCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxReferencePicturesActiveCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkImageUsageFlags*)&forMarshaling->imageUsage, sizeof(VkImageUsageFlags));
+ *ptr += sizeof(VkImageUsageFlags);
+ reservedmarshal_VkVideoProfilesKHR(vkStream, rootType, (const VkVideoProfilesKHR*)(forMarshaling->pVideoProfiles), ptr);
+}
+
+void reservedmarshal_VkVideoFormatPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+}
+
+void reservedmarshal_VkVideoPictureResourceKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->codedOffset), ptr);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->codedExtent), ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->baseArrayLayer, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageViewBinding));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+}
+
+void reservedmarshal_VkVideoReferenceSlotKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (int8_t*)&forMarshaling->slotIndex, sizeof(int8_t));
+ *ptr += sizeof(int8_t);
+ reservedmarshal_VkVideoPictureResourceKHR(vkStream, rootType, (const VkVideoPictureResourceKHR*)(forMarshaling->pPictureResource), ptr);
+}
+
+void reservedmarshal_VkVideoGetMemoryPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->memoryBindIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ reservedmarshal_VkMemoryRequirements2(vkStream, rootType, (VkMemoryRequirements2*)(forMarshaling->pMemoryRequirements), ptr);
+}
+
+void reservedmarshal_VkVideoBindMemoryKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->memoryBindIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memoryOffset, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->memorySize, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+}
+
+void reservedmarshal_VkVideoSessionCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->queueFamilyIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkVideoSessionCreateFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoSessionCreateFlagsKHR));
+ *ptr += sizeof(VkVideoSessionCreateFlagsKHR);
+ reservedmarshal_VkVideoProfileKHR(vkStream, rootType, (const VkVideoProfileKHR*)(forMarshaling->pVideoProfile), ptr);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->pictureFormat, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxCodedExtent), ptr);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->referencePicturesFormat, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxReferencePicturesSlotsCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxReferencePicturesActiveCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkVideoSessionParametersCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->videoSessionParametersTemplate;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ uint64_t cgen_var_1 = (uint64_t)forMarshaling->videoSession;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+}
+
+void reservedmarshal_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->updateSequenceCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkVideoBeginCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoBeginCodingFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoBeginCodingFlagsKHR));
+ *ptr += sizeof(VkVideoBeginCodingFlagsKHR);
+ memcpy(*ptr, (VkVideoCodingQualityPresetFlagsKHR*)&forMarshaling->codecQualityPreset, sizeof(VkVideoCodingQualityPresetFlagsKHR));
+ *ptr += sizeof(VkVideoCodingQualityPresetFlagsKHR);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->videoSession;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ uint64_t cgen_var_1 = (uint64_t)forMarshaling->videoSessionParameters;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->referenceSlotCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceSlotCount; ++i)
+ {
+ reservedmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pReferenceSlots + i), ptr);
+ }
+}
+
+void reservedmarshal_VkVideoEndCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEndCodingFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoEndCodingFlagsKHR));
+ *ptr += sizeof(VkVideoEndCodingFlagsKHR);
+}
+
+void reservedmarshal_VkVideoCodingControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoCodingControlFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoCodingControlFlagsKHR));
+ *ptr += sizeof(VkVideoCodingControlFlagsKHR);
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void reservedmarshal_VkVideoDecodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoDecodeFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoDecodeFlagsKHR));
+ *ptr += sizeof(VkVideoDecodeFlagsKHR);
+ reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->codedOffset), ptr);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->codedExtent), ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->srcBuffer));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->srcBufferOffset, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->srcBufferRange, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ reservedmarshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(&forMarshaling->dstPictureResource), ptr);
+ reservedmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pSetupReferenceSlot), ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->referenceSlotCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceSlotCount; ++i)
+ {
+ reservedmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pReferenceSlots + i), ptr);
+ }
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void reservedmarshal_VkRenderingAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
+ *ptr += sizeof(VkImageLayout);
+ memcpy(*ptr, (VkResolveModeFlagBits*)&forMarshaling->resolveMode, sizeof(VkResolveModeFlagBits));
+ *ptr += sizeof(VkResolveModeFlagBits);
+ uint64_t cgen_var_1;
+ *&cgen_var_1 = get_host_u64_VkImageView((*&forMarshaling->resolveImageView));
+ memcpy(*ptr, (uint64_t*)&cgen_var_1, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkImageLayout*)&forMarshaling->resolveImageLayout, sizeof(VkImageLayout));
+ *ptr += sizeof(VkImageLayout);
+ memcpy(*ptr, (VkAttachmentLoadOp*)&forMarshaling->loadOp, sizeof(VkAttachmentLoadOp));
+ *ptr += sizeof(VkAttachmentLoadOp);
+ memcpy(*ptr, (VkAttachmentStoreOp*)&forMarshaling->storeOp, sizeof(VkAttachmentStoreOp));
+ *ptr += sizeof(VkAttachmentStoreOp);
+ reservedmarshal_VkClearValue(vkStream, rootType, (VkClearValue*)(&forMarshaling->clearValue), ptr);
+}
+
+void reservedmarshal_VkRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkRenderingFlagsKHR*)&forMarshaling->flags, sizeof(VkRenderingFlagsKHR));
+ *ptr += sizeof(VkRenderingFlagsKHR);
+ reservedmarshal_VkRect2D(vkStream, rootType, (VkRect2D*)(&forMarshaling->renderArea), ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->layerCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->colorAttachmentCount; ++i)
+ {
+ reservedmarshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (const VkRenderingAttachmentInfoKHR*)(forMarshaling->pColorAttachments + i), ptr);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDepthAttachment;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pDepthAttachment)
+ {
+ reservedmarshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (const VkRenderingAttachmentInfoKHR*)(forMarshaling->pDepthAttachment), ptr);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pStencilAttachment;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pStencilAttachment)
+ {
+ reservedmarshal_VkRenderingAttachmentInfoKHR(vkStream, rootType, (const VkRenderingAttachmentInfoKHR*)(forMarshaling->pStencilAttachment), ptr);
+ }
+}
+
+void reservedmarshal_VkPipelineRenderingCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats, forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
+ *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+}
+
+void reservedmarshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->dynamicRendering, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkRenderingFlagsKHR*)&forMarshaling->flags, sizeof(VkRenderingFlagsKHR));
+ *ptr += sizeof(VkRenderingFlagsKHR);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->viewMask, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const VkFormat*)forMarshaling->pColorAttachmentFormats, forMarshaling->colorAttachmentCount * sizeof(const VkFormat));
+ *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkFormat);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->depthAttachmentFormat, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->stencilAttachmentFormat, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->rasterizationSamples, sizeof(VkSampleCountFlagBits));
+ *ptr += sizeof(VkSampleCountFlagBits);
+}
+
+void reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
+ *ptr += sizeof(VkImageLayout);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->shadingRateAttachmentTexelSize), ptr);
+}
+
+void reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkImageView((*&forMarshaling->imageView));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkImageLayout*)&forMarshaling->imageLayout, sizeof(VkImageLayout));
+ *ptr += sizeof(VkImageLayout);
+}
+
+void reservedmarshal_VkAttachmentSampleCountInfoAMD(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->colorAttachmentCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pColorAttachmentSamples;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pColorAttachmentSamples)
+ {
+ memcpy(*ptr, (const VkSampleCountFlagBits*)forMarshaling->pColorAttachmentSamples, forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits));
+ *ptr += forMarshaling->colorAttachmentCount * sizeof(const VkSampleCountFlagBits);
+ }
+ memcpy(*ptr, (VkSampleCountFlagBits*)&forMarshaling->depthStencilAttachmentSamples, sizeof(VkSampleCountFlagBits));
+ *ptr += sizeof(VkSampleCountFlagBits);
+}
+
+void reservedmarshal_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->perViewAttributes, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->perViewAttributesPositionXOnly, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -8214,7 +8910,15 @@
rootType = forMarshaling->sType;
}
reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
- reservedmarshal_VkAttachmentReference2(vkStream, rootType, (const VkAttachmentReference2*)(forMarshaling->pFragmentShadingRateAttachment), ptr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pFragmentShadingRateAttachment;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pFragmentShadingRateAttachment)
+ {
+ reservedmarshal_VkAttachmentReference2(vkStream, rootType, (const VkAttachmentReference2*)(forMarshaling->pFragmentShadingRateAttachment), ptr);
+ }
reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->shadingRateAttachmentTexelSize), ptr);
}
@@ -8355,6 +9059,27 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+void reservedmarshal_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->presentWait, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -8524,6 +9249,104 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderIntegerDotProduct, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct8BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct4x8BitPackedMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct16BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct32BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProduct64BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitUnsignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitSignedAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_pipeline_library
void reservedmarshal_VkPipelineLibraryCreateInfoKHR(
VulkanStreamGuest* vkStream,
@@ -8560,6 +9383,489 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void reservedmarshal_VkPresentIdKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPresentIdKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->swapchainCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pPresentIds;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pPresentIds)
+ {
+ memcpy(*ptr, (const uint64_t*)forMarshaling->pPresentIds, forMarshaling->swapchainCount * sizeof(const uint64_t));
+ *ptr += forMarshaling->swapchainCount * sizeof(const uint64_t);
+ }
+}
+
+void reservedmarshal_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->presentId, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void reservedmarshal_VkVideoEncodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEncodeFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoEncodeFlagsKHR));
+ *ptr += sizeof(VkVideoEncodeFlagsKHR);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->qualityLevel, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->codedExtent), ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->dstBitstreamBuffer));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->dstBitstreamBufferOffset, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->dstBitstreamBufferMaxRange, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ reservedmarshal_VkVideoPictureResourceKHR(vkStream, rootType, (VkVideoPictureResourceKHR*)(&forMarshaling->srcPictureResource), ptr);
+ reservedmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pSetupReferenceSlot), ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->referenceSlotCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceSlotCount; ++i)
+ {
+ reservedmarshal_VkVideoReferenceSlotKHR(vkStream, rootType, (const VkVideoReferenceSlotKHR*)(forMarshaling->pReferenceSlots + i), ptr);
+ }
+}
+
+void reservedmarshal_VkVideoEncodeRateControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEncodeRateControlFlagsKHR*)&forMarshaling->flags, sizeof(VkVideoEncodeRateControlFlagsKHR));
+ *ptr += sizeof(VkVideoEncodeRateControlFlagsKHR);
+ memcpy(*ptr, (VkVideoEncodeRateControlModeFlagBitsKHR*)&forMarshaling->rateControlMode, sizeof(VkVideoEncodeRateControlModeFlagBitsKHR));
+ *ptr += sizeof(VkVideoEncodeRateControlModeFlagBitsKHR);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->averageBitrate, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint16_t*)&forMarshaling->peakToAverageBitrateRatio, sizeof(uint16_t));
+ *ptr += sizeof(uint16_t);
+ memcpy(*ptr, (uint16_t*)&forMarshaling->frameRateNumerator, sizeof(uint16_t));
+ *ptr += sizeof(uint16_t);
+ memcpy(*ptr, (uint16_t*)&forMarshaling->frameRateDenominator, sizeof(uint16_t));
+ *ptr += sizeof(uint16_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->virtualBufferSizeInMs, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void reservedmarshal_VkMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (VkAccessFlags2KHR*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ *ptr += sizeof(VkAccessFlags2KHR);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (VkAccessFlags2KHR*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ *ptr += sizeof(VkAccessFlags2KHR);
+}
+
+void reservedmarshal_VkBufferMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (VkAccessFlags2KHR*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ *ptr += sizeof(VkAccessFlags2KHR);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (VkAccessFlags2KHR*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ *ptr += sizeof(VkAccessFlags2KHR);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkBuffer((*&forMarshaling->buffer));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->offset, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->size, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+}
+
+void reservedmarshal_VkImageMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->srcStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (VkAccessFlags2KHR*)&forMarshaling->srcAccessMask, sizeof(VkAccessFlags2KHR));
+ *ptr += sizeof(VkAccessFlags2KHR);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->dstStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (VkAccessFlags2KHR*)&forMarshaling->dstAccessMask, sizeof(VkAccessFlags2KHR));
+ *ptr += sizeof(VkAccessFlags2KHR);
+ memcpy(*ptr, (VkImageLayout*)&forMarshaling->oldLayout, sizeof(VkImageLayout));
+ *ptr += sizeof(VkImageLayout);
+ memcpy(*ptr, (VkImageLayout*)&forMarshaling->newLayout, sizeof(VkImageLayout));
+ *ptr += sizeof(VkImageLayout);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->srcQueueFamilyIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->dstQueueFamilyIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkImage((*&forMarshaling->image));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ reservedmarshal_VkImageSubresourceRange(vkStream, rootType, (VkImageSubresourceRange*)(&forMarshaling->subresourceRange), ptr);
+}
+
+void reservedmarshal_VkDependencyInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkDependencyFlags*)&forMarshaling->dependencyFlags, sizeof(VkDependencyFlags));
+ *ptr += sizeof(VkDependencyFlags);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->memoryBarrierCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->memoryBarrierCount; ++i)
+ {
+ reservedmarshal_VkMemoryBarrier2KHR(vkStream, rootType, (const VkMemoryBarrier2KHR*)(forMarshaling->pMemoryBarriers + i), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->bufferMemoryBarrierCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->bufferMemoryBarrierCount; ++i)
+ {
+ reservedmarshal_VkBufferMemoryBarrier2KHR(vkStream, rootType, (const VkBufferMemoryBarrier2KHR*)(forMarshaling->pBufferMemoryBarriers + i), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->imageMemoryBarrierCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->imageMemoryBarrierCount; ++i)
+ {
+ reservedmarshal_VkImageMemoryBarrier2KHR(vkStream, rootType, (const VkImageMemoryBarrier2KHR*)(forMarshaling->pImageMemoryBarriers + i), ptr);
+ }
+}
+
+void reservedmarshal_VkSemaphoreSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (uint64_t*)&forMarshaling->value, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->stageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->deviceIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkCommandBufferSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkCommandBuffer((*&forMarshaling->commandBuffer));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->deviceMask, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkSubmitInfo2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkSubmitFlagsKHR*)&forMarshaling->flags, sizeof(VkSubmitFlagsKHR));
+ *ptr += sizeof(VkSubmitFlagsKHR);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->waitSemaphoreInfoCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->waitSemaphoreInfoCount; ++i)
+ {
+ reservedmarshal_VkSemaphoreSubmitInfoKHR(vkStream, rootType, (const VkSemaphoreSubmitInfoKHR*)(forMarshaling->pWaitSemaphoreInfos + i), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->commandBufferInfoCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->commandBufferInfoCount; ++i)
+ {
+ reservedmarshal_VkCommandBufferSubmitInfoKHR(vkStream, rootType, (const VkCommandBufferSubmitInfoKHR*)(forMarshaling->pCommandBufferInfos + i), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->signalSemaphoreInfoCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->signalSemaphoreInfoCount; ++i)
+ {
+ reservedmarshal_VkSemaphoreSubmitInfoKHR(vkStream, rootType, (const VkSemaphoreSubmitInfoKHR*)(forMarshaling->pSignalSemaphoreInfos + i), ptr);
+ }
+}
+
+void reservedmarshal_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->synchronization2, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkQueueFamilyCheckpointProperties2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->checkpointExecutionStageMask, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+}
+
+void reservedmarshal_VkCheckpointData2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkPipelineStageFlags2KHR*)&forMarshaling->stage, sizeof(VkPipelineStageFlags2KHR));
+ *ptr += sizeof(VkPipelineStageFlags2KHR);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pCheckpointMarker;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pCheckpointMarker)
+ {
+ memcpy(*ptr, (void*)forMarshaling->pCheckpointMarker, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ }
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void reservedmarshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSubgroupUniformControlFlow, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderZeroInitializeWorkgroupMemory, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void reservedmarshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->workgroupMemoryExplicitLayout, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->workgroupMemoryExplicitLayoutScalarBlockLayout, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->workgroupMemoryExplicitLayout8BitAccess, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->workgroupMemoryExplicitLayout16BitAccess, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_copy_commands2
void reservedmarshal_VkBufferCopy2KHR(
VulkanStreamGuest* vkStream,
@@ -8886,6 +10192,109 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+void reservedmarshal_VkFormatProperties3KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkFormatFeatureFlags2KHR*)&forMarshaling->linearTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ *ptr += sizeof(VkFormatFeatureFlags2KHR);
+ memcpy(*ptr, (VkFormatFeatureFlags2KHR*)&forMarshaling->optimalTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ *ptr += sizeof(VkFormatFeatureFlags2KHR);
+ memcpy(*ptr, (VkFormatFeatureFlags2KHR*)&forMarshaling->bufferFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ *ptr += sizeof(VkFormatFeatureFlags2KHR);
+}
+
+#endif
+#ifdef VK_KHR_maintenance4
+void reservedmarshal_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->maintenance4, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkDeviceSize*)&forMarshaling->maxBufferSize, sizeof(VkDeviceSize));
+ *ptr += sizeof(VkDeviceSize);
+}
+
+void reservedmarshal_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkBufferCreateInfo(vkStream, rootType, (const VkBufferCreateInfo*)(forMarshaling->pCreateInfo), ptr);
+}
+
+void reservedmarshal_VkDeviceImageMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkImageCreateInfo(vkStream, rootType, (const VkImageCreateInfo*)(forMarshaling->pCreateInfo), ptr);
+ memcpy(*ptr, (VkImageAspectFlagBits*)&forMarshaling->planeAspect, sizeof(VkImageAspectFlagBits));
+ *ptr += sizeof(VkImageAspectFlagBits);
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
void reservedmarshal_VkNativeBufferANDROID(
VulkanStreamGuest* vkStream,
@@ -9226,6 +10635,103 @@
}
#endif
+#ifdef VK_NVX_binary_import
+void reservedmarshal_VkCuModuleCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->dataSize;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ memcpy(*ptr, (const void*)forMarshaling->pData, forMarshaling->dataSize * sizeof(const uint8_t));
+ *ptr += forMarshaling->dataSize * sizeof(const uint8_t);
+}
+
+void reservedmarshal_VkCuFunctionCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->module;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ {
+ uint32_t l = forMarshaling->pName ? strlen(forMarshaling->pName): 0;
+ memcpy(*ptr, (uint32_t*)&l, sizeof(uint32_t));
+ android::base::Stream::toBe32((uint8_t*)*ptr);
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (char*)forMarshaling->pName, l);
+ *ptr += l;
+ }
+}
+
+void reservedmarshal_VkCuLaunchInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->function;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->gridDimX, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->gridDimY, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->gridDimZ, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->blockDimX, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->blockDimY, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->blockDimZ, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->sharedMemBytes, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ uint64_t cgen_var_1 = (uint64_t)forMarshaling->paramCount;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ uint64_t cgen_var_2 = (uint64_t)forMarshaling->extraCount;
+ memcpy((*ptr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
void reservedmarshal_VkImageViewHandleInfoNVX(
VulkanStreamGuest* vkStream,
@@ -9284,6 +10790,779 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void reservedmarshal_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEncodeH264CapabilityFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH264CapabilityFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH264CapabilityFlagsEXT);
+ memcpy(*ptr, (VkVideoEncodeH264InputModeFlagsEXT*)&forMarshaling->inputModeFlags, sizeof(VkVideoEncodeH264InputModeFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH264InputModeFlagsEXT);
+ memcpy(*ptr, (VkVideoEncodeH264OutputModeFlagsEXT*)&forMarshaling->outputModeFlags, sizeof(VkVideoEncodeH264OutputModeFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH264OutputModeFlagsEXT);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->minPictureSizeInMbs), ptr);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxPictureSizeInMbs), ptr);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->inputImageDataAlignment), ptr);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumL0ReferenceForP, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumL0ReferenceForB, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumL1Reference, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->qualityLevelCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEncodeH264CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH264CreateFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH264CreateFlagsEXT);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->maxPictureSizeInMbs), ptr);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pSpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH264SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ *ptr += forMarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pPpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH264PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ *ptr += forMarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet);
+ }
+}
+
+void reservedmarshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pParametersAddInfo)
+ {
+ reservedmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoEncodeH264SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo), ptr);
+ }
+}
+
+void reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (int8_t*)&forMarshaling->slotIndex, sizeof(int8_t));
+ *ptr += sizeof(int8_t);
+ memcpy(*ptr, (const StdVideoEncodeH264PictureInfo*)forMarshaling->pStdPictureInfo, sizeof(const StdVideoEncodeH264PictureInfo));
+ *ptr += sizeof(const StdVideoEncodeH264PictureInfo);
+}
+
+void reservedmarshal_VkVideoEncodeH264NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (const StdVideoEncodeH264SliceHeader*)forMarshaling->pSliceHeaderStd, sizeof(const StdVideoEncodeH264SliceHeader));
+ *ptr += sizeof(const StdVideoEncodeH264SliceHeader);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->mbCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->refFinalList0EntryCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refFinalList0EntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefFinalList0Entries + i), ptr);
+ }
+ memcpy(*ptr, (uint8_t*)&forMarshaling->refFinalList1EntryCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refFinalList1EntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefFinalList1Entries + i), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->precedingNaluBytes, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->minQp, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxQp, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+}
+
+void reservedmarshal_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->refDefaultFinalList0EntryCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refDefaultFinalList0EntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefDefaultFinalList0Entries + i), ptr);
+ }
+ memcpy(*ptr, (uint8_t*)&forMarshaling->refDefaultFinalList1EntryCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->refDefaultFinalList1EntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pRefDefaultFinalList1Entries + i), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->naluSliceEntryCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->naluSliceEntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH264NaluSliceEXT(vkStream, rootType, (const VkVideoEncodeH264NaluSliceEXT*)(forMarshaling->pNaluSliceEntries + i), ptr);
+ }
+ reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH264DpbSlotInfoEXT*)(forMarshaling->pCurrentPictureInfo), ptr);
+}
+
+void reservedmarshal_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->spsId, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->emitSpsEnable, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ppsIdEntryCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const uint8_t*)forMarshaling->ppsIdEntries, forMarshaling->ppsIdEntryCount * sizeof(const uint8_t));
+ *ptr += forMarshaling->ppsIdEntryCount * sizeof(const uint8_t);
+}
+
+void reservedmarshal_VkVideoEncodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (StdVideoH264ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH264ProfileIdc));
+ *ptr += sizeof(StdVideoH264ProfileIdc);
+}
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void reservedmarshal_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEncodeH265CapabilityFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH265CapabilityFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH265CapabilityFlagsEXT);
+ memcpy(*ptr, (VkVideoEncodeH265InputModeFlagsEXT*)&forMarshaling->inputModeFlags, sizeof(VkVideoEncodeH265InputModeFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH265InputModeFlagsEXT);
+ memcpy(*ptr, (VkVideoEncodeH265OutputModeFlagsEXT*)&forMarshaling->outputModeFlags, sizeof(VkVideoEncodeH265OutputModeFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH265OutputModeFlagsEXT);
+ memcpy(*ptr, (VkVideoEncodeH265CtbSizeFlagsEXT*)&forMarshaling->ctbSizes, sizeof(VkVideoEncodeH265CtbSizeFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH265CtbSizeFlagsEXT);
+ reservedmarshal_VkExtent2D(vkStream, rootType, (VkExtent2D*)(&forMarshaling->inputImageDataAlignment), ptr);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumL0ReferenceForP, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumL0ReferenceForB, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumL1Reference, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->maxNumSubLayers, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->qualityLevelCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoEncodeH265CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoEncodeH265CreateFlagsEXT));
+ *ptr += sizeof(VkVideoEncodeH265CreateFlagsEXT);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->vpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pVpsStd;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pVpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH265VideoParameterSet*)forMarshaling->pVpsStd, forMarshaling->vpsStdCount * sizeof(const StdVideoH265VideoParameterSet));
+ *ptr += forMarshaling->vpsStdCount * sizeof(const StdVideoH265VideoParameterSet);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pSpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH265SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ *ptr += forMarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_2 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ memcpy((*ptr), &cgen_var_2, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pPpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH265PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ *ptr += forMarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet);
+ }
+}
+
+void reservedmarshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxVpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pParametersAddInfo)
+ {
+ reservedmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoEncodeH265SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo), ptr);
+ }
+}
+
+void reservedmarshal_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (int8_t*)&forMarshaling->slotIndex, sizeof(int8_t));
+ *ptr += sizeof(int8_t);
+ memcpy(*ptr, (const StdVideoEncodeH265ReferenceInfo*)forMarshaling->pStdReferenceInfo, sizeof(const StdVideoEncodeH265ReferenceInfo));
+ *ptr += sizeof(const StdVideoEncodeH265ReferenceInfo);
+}
+
+void reservedmarshal_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->referenceList0EntryCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceList0EntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH265DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH265DpbSlotInfoEXT*)(forMarshaling->pReferenceList0Entries + i), ptr);
+ }
+ memcpy(*ptr, (uint8_t*)&forMarshaling->referenceList1EntryCount, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->referenceList1EntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH265DpbSlotInfoEXT(vkStream, rootType, (const VkVideoEncodeH265DpbSlotInfoEXT*)(forMarshaling->pReferenceList1Entries + i), ptr);
+ }
+ memcpy(*ptr, (const StdVideoEncodeH265ReferenceModifications*)forMarshaling->pReferenceModifications, sizeof(const StdVideoEncodeH265ReferenceModifications));
+ *ptr += sizeof(const StdVideoEncodeH265ReferenceModifications);
+}
+
+void reservedmarshal_VkVideoEncodeH265NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ctbCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pReferenceFinalLists;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pReferenceFinalLists)
+ {
+ reservedmarshal_VkVideoEncodeH265ReferenceListsEXT(vkStream, rootType, (const VkVideoEncodeH265ReferenceListsEXT*)(forMarshaling->pReferenceFinalLists), ptr);
+ }
+ memcpy(*ptr, (const StdVideoEncodeH265SliceHeader*)forMarshaling->pSliceHeaderStd, sizeof(const StdVideoEncodeH265SliceHeader));
+ *ptr += sizeof(const StdVideoEncodeH265SliceHeader);
+}
+
+void reservedmarshal_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pReferenceFinalLists;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pReferenceFinalLists)
+ {
+ reservedmarshal_VkVideoEncodeH265ReferenceListsEXT(vkStream, rootType, (const VkVideoEncodeH265ReferenceListsEXT*)(forMarshaling->pReferenceFinalLists), ptr);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->naluSliceEntryCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->naluSliceEntryCount; ++i)
+ {
+ reservedmarshal_VkVideoEncodeH265NaluSliceEXT(vkStream, rootType, (const VkVideoEncodeH265NaluSliceEXT*)(forMarshaling->pNaluSliceEntries + i), ptr);
+ }
+ memcpy(*ptr, (const StdVideoEncodeH265PictureInfo*)forMarshaling->pCurrentPictureInfo, sizeof(const StdVideoEncodeH265PictureInfo));
+ *ptr += sizeof(const StdVideoEncodeH265PictureInfo);
+}
+
+void reservedmarshal_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->vpsId, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (uint8_t*)&forMarshaling->spsId, sizeof(uint8_t));
+ *ptr += sizeof(uint8_t);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->emitVpsEnable, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->emitSpsEnable, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ppsIdEntryCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const uint8_t*)forMarshaling->ppsIdEntries, forMarshaling->ppsIdEntryCount * sizeof(const uint8_t));
+ *ptr += forMarshaling->ppsIdEntryCount * sizeof(const uint8_t);
+}
+
+void reservedmarshal_VkVideoEncodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (StdVideoH265ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH265ProfileIdc));
+ *ptr += sizeof(StdVideoH265ProfileIdc);
+}
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void reservedmarshal_VkVideoDecodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (StdVideoH264ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH264ProfileIdc));
+ *ptr += sizeof(StdVideoH264ProfileIdc);
+ memcpy(*ptr, (VkVideoDecodeH264PictureLayoutFlagsEXT*)&forMarshaling->pictureLayout, sizeof(VkVideoDecodeH264PictureLayoutFlagsEXT));
+ *ptr += sizeof(VkVideoDecodeH264PictureLayoutFlagsEXT);
+}
+
+void reservedmarshal_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxLevel, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ reservedmarshal_VkOffset2D(vkStream, rootType, (VkOffset2D*)(&forMarshaling->fieldOffsetGranularity), ptr);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoDecodeH264CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoDecodeH264CreateFlagsEXT));
+ *ptr += sizeof(VkVideoDecodeH264CreateFlagsEXT);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pSpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH264SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet));
+ *ptr += forMarshaling->spsStdCount * sizeof(const StdVideoH264SequenceParameterSet);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pPpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH264PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet));
+ *ptr += forMarshaling->ppsStdCount * sizeof(const StdVideoH264PictureParameterSet);
+ }
+}
+
+void reservedmarshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pParametersAddInfo)
+ {
+ reservedmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoDecodeH264SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo), ptr);
+ }
+}
+
+void reservedmarshal_VkVideoDecodeH264PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (const StdVideoDecodeH264PictureInfo*)forMarshaling->pStdPictureInfo, sizeof(const StdVideoDecodeH264PictureInfo));
+ *ptr += sizeof(const StdVideoDecodeH264PictureInfo);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->slicesCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const uint32_t*)forMarshaling->pSlicesDataOffsets, forMarshaling->slicesCount * sizeof(const uint32_t));
+ *ptr += forMarshaling->slicesCount * sizeof(const uint32_t);
+}
+
+void reservedmarshal_VkVideoDecodeH264MvcEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (const StdVideoDecodeH264Mvc*)forMarshaling->pStdMvc, sizeof(const StdVideoDecodeH264Mvc));
+ *ptr += sizeof(const StdVideoDecodeH264Mvc);
+}
+
+void reservedmarshal_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (const StdVideoDecodeH264ReferenceInfo*)forMarshaling->pStdReferenceInfo, sizeof(const StdVideoDecodeH264ReferenceInfo));
+ *ptr += sizeof(const StdVideoDecodeH264ReferenceInfo);
+}
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void reservedmarshal_VkTextureLODGatherFormatPropertiesAMD(
VulkanStreamGuest* vkStream,
@@ -10734,6 +13013,38 @@
*ptr += sizeof(uint64_t);
}
+void reservedmarshal_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ memcpy(*ptr, (uint64_t*)&forMarshaling->externalFormat, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+ memcpy(*ptr, (VkFormatFeatureFlags2KHR*)&forMarshaling->formatFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ *ptr += sizeof(VkFormatFeatureFlags2KHR);
+ reservedmarshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forMarshaling->samplerYcbcrConversionComponents), ptr);
+ memcpy(*ptr, (VkSamplerYcbcrModelConversion*)&forMarshaling->suggestedYcbcrModel, sizeof(VkSamplerYcbcrModelConversion));
+ *ptr += sizeof(VkSamplerYcbcrModelConversion);
+ memcpy(*ptr, (VkSamplerYcbcrRange*)&forMarshaling->suggestedYcbcrRange, sizeof(VkSamplerYcbcrRange));
+ *ptr += sizeof(VkSamplerYcbcrRange);
+ memcpy(*ptr, (VkChromaLocation*)&forMarshaling->suggestedXChromaOffset, sizeof(VkChromaLocation));
+ *ptr += sizeof(VkChromaLocation);
+ memcpy(*ptr, (VkChromaLocation*)&forMarshaling->suggestedYChromaOffset, sizeof(VkChromaLocation));
+ *ptr += sizeof(VkChromaLocation);
+}
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
#endif
@@ -11323,6 +13634,53 @@
*ptr += sizeof(uint64_t);
}
+void reservedmarshal_VkDrmFormatModifierProperties2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (uint64_t*)&forMarshaling->drmFormatModifier, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierPlaneCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkFormatFeatureFlags2KHR*)&forMarshaling->drmFormatModifierTilingFeatures, sizeof(VkFormatFeatureFlags2KHR));
+ *ptr += sizeof(VkFormatFeatureFlags2KHR);
+}
+
+void reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->drmFormatModifierCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pDrmFormatModifierProperties;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pDrmFormatModifierProperties)
+ {
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->drmFormatModifierCount; ++i)
+ {
+ reservedmarshal_VkDrmFormatModifierProperties2EXT(vkStream, rootType, (VkDrmFormatModifierProperties2EXT*)(forMarshaling->pDrmFormatModifierProperties + i), ptr);
+ }
+ }
+}
+
#endif
#ifdef VK_EXT_validation_cache
void reservedmarshal_VkValidationCacheCreateInfoEXT(
@@ -12207,6 +14565,180 @@
}
#endif
+#ifdef VK_EXT_video_decode_h265
+void reservedmarshal_VkVideoDecodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (StdVideoH265ProfileIdc*)&forMarshaling->stdProfileIdc, sizeof(StdVideoH265ProfileIdc));
+ *ptr += sizeof(StdVideoH265ProfileIdc);
+}
+
+void reservedmarshal_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxLevel, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (VkExtensionProperties*)(&forMarshaling->stdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkVideoDecodeH265CreateFlagsEXT*)&forMarshaling->flags, sizeof(VkVideoDecodeH265CreateFlagsEXT));
+ *ptr += sizeof(VkVideoDecodeH265CreateFlagsEXT);
+ reservedmarshal_VkExtensionProperties(vkStream, rootType, (const VkExtensionProperties*)(forMarshaling->pStdExtensionVersion), ptr);
+}
+
+void reservedmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->spsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pSpsStd;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pSpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH265SequenceParameterSet*)forMarshaling->pSpsStd, forMarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet));
+ *ptr += forMarshaling->spsStdCount * sizeof(const StdVideoH265SequenceParameterSet);
+ }
+ memcpy(*ptr, (uint32_t*)&forMarshaling->ppsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->pPpsStd;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pPpsStd)
+ {
+ memcpy(*ptr, (const StdVideoH265PictureParameterSet*)forMarshaling->pPpsStd, forMarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet));
+ *ptr += forMarshaling->ppsStdCount * sizeof(const StdVideoH265PictureParameterSet);
+ }
+}
+
+void reservedmarshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxSpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxPpsStdCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pParametersAddInfo;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pParametersAddInfo)
+ {
+ reservedmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(vkStream, rootType, (const VkVideoDecodeH265SessionParametersAddInfoEXT*)(forMarshaling->pParametersAddInfo), ptr);
+ }
+}
+
+void reservedmarshal_VkVideoDecodeH265PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (StdVideoDecodeH265PictureInfo*)forMarshaling->pStdPictureInfo, sizeof(StdVideoDecodeH265PictureInfo));
+ *ptr += sizeof(StdVideoDecodeH265PictureInfo);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->slicesCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const uint32_t*)forMarshaling->pSlicesDataOffsets, forMarshaling->slicesCount * sizeof(const uint32_t));
+ *ptr += forMarshaling->slicesCount * sizeof(const uint32_t);
+}
+
+void reservedmarshal_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (const StdVideoDecodeH265ReferenceInfo*)forMarshaling->pStdReferenceInfo, sizeof(const StdVideoDecodeH265ReferenceInfo));
+ *ptr += sizeof(const StdVideoDecodeH265ReferenceInfo);
+}
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void reservedmarshal_VkDeviceMemoryOverallocationCreateInfoAMD(
VulkanStreamGuest* vkStream,
@@ -13473,6 +16005,69 @@
}
#endif
+#ifdef VK_EXT_provoking_vertex
+void reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexLast, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesProvokingVertex, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->provokingVertexModePerPipeline, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->transformFeedbackPreservesTriangleFanProvokingVertex, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkProvokingVertexModeEXT*)&forMarshaling->provokingVertexMode, sizeof(VkProvokingVertexModeEXT));
+ *ptr += sizeof(VkProvokingVertexModeEXT);
+}
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void reservedmarshal_VkSurfaceFullScreenExclusiveInfoEXT(
VulkanStreamGuest* vkStream,
@@ -13715,6 +16310,49 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void reservedmarshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferFloat16Atomics, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferFloat16AtomicAdd, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferFloat16AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferFloat32AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderBufferFloat64AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedFloat16Atomics, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedFloat16AtomicAdd, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedFloat16AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedFloat32AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderSharedFloat64AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->shaderImageFloat32AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->sparseImageFloat32AtomicMinMax, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -14103,6 +16741,57 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void reservedmarshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->inheritedViewportScissor2D, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->viewportScissor2D, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->viewportDepthCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->pViewportDepths;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->pViewportDepths)
+ {
+ reservedmarshal_VkViewport(vkStream, rootType, (const VkViewport*)(forMarshaling->pViewportDepths), ptr);
+ }
+}
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -14267,6 +16956,8 @@
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -14566,6 +17257,223 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void reservedmarshal_VkDeviceOrHostAddressConstKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkDeviceAddress*)&forMarshaling->deviceAddress, sizeof(VkDeviceAddress));
+ *ptr += sizeof(VkDeviceAddress);
+}
+
+void reservedmarshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkDeviceOrHostAddressConstKHR(vkStream, rootType, (VkDeviceOrHostAddressConstKHR*)(&forMarshaling->vertexData), ptr);
+}
+
+void reservedmarshal_VkAccelerationStructureMotionInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxInstances, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkAccelerationStructureMotionInfoFlagsNV*)&forMarshaling->flags, sizeof(VkAccelerationStructureMotionInfoFlagsNV));
+ *ptr += sizeof(VkAccelerationStructureMotionInfoFlagsNV);
+}
+
+void reservedmarshal_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* forMarshaling,
+ uint8_t** ptr)
+{
+
+ typedef struct VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields {
+ VkTransformMatrixKHR transformT0;
+ VkTransformMatrixKHR transformT1;
+ uint32_t dwords[2];
+ uint64_t accelerationStructureReference;
+ } VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields;
+
+ (void)vkStream;
+ const VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields* forMarshaling_new = (const VkAccelerationStructureMatrixMotionInstanceNVWithoutBitFields*)(forMarshaling);
+ reservedmarshal_VkTransformMatrixKHR(vkStream, rootType, (VkTransformMatrixKHR*)(&forMarshaling_new->transformT0), ptr);
+ reservedmarshal_VkTransformMatrixKHR(vkStream, rootType, (VkTransformMatrixKHR*)(&forMarshaling_new->transformT1), ptr);
+ for (uint32_t i = 0; i < 2; i++) {
+ memcpy(*ptr, (uint32_t*)&(forMarshaling_new->dwords[i]), sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ }
+ memcpy(*ptr, (uint64_t*)&forMarshaling_new->accelerationStructureReference, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+
+}
+
+void reservedmarshal_VkSRTDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSRTDataNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (float*)&forMarshaling->sx, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->a, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->b, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->pvx, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->sy, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->c, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->pvy, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->sz, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->pvz, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->qx, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->qy, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->qz, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->qw, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->tx, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->ty, sizeof(float));
+ *ptr += sizeof(float);
+ memcpy(*ptr, (float*)&forMarshaling->tz, sizeof(float));
+ *ptr += sizeof(float);
+}
+
+void reservedmarshal_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* forMarshaling,
+ uint8_t** ptr)
+{
+
+ typedef struct VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields {
+ VkSRTDataNV transformT0;
+ VkSRTDataNV transformT1;
+ uint32_t dwords[2];
+ uint64_t accelerationStructureReference;
+ } VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields;
+
+ (void)vkStream;
+ const VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields* forMarshaling_new = (const VkAccelerationStructureSRTMotionInstanceNVWithoutBitFields*)(forMarshaling);
+ reservedmarshal_VkSRTDataNV(vkStream, rootType, (VkSRTDataNV*)(&forMarshaling_new->transformT0), ptr);
+ reservedmarshal_VkSRTDataNV(vkStream, rootType, (VkSRTDataNV*)(&forMarshaling_new->transformT1), ptr);
+ for (uint32_t i = 0; i < 2; i++) {
+ memcpy(*ptr, (uint32_t*)&(forMarshaling_new->dwords[i]), sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ }
+ memcpy(*ptr, (uint64_t*)&forMarshaling_new->accelerationStructureReference, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+
+}
+
+void reservedmarshal_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ reservedmarshal_VkAccelerationStructureInstanceKHR(vkStream, rootType, (VkAccelerationStructureInstanceKHR*)(&forMarshaling->staticInstance), ptr);
+}
+
+void reservedmarshal_VkAccelerationStructureMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkAccelerationStructureMotionInstanceTypeNV*)&forMarshaling->type, sizeof(VkAccelerationStructureMotionInstanceTypeNV));
+ *ptr += sizeof(VkAccelerationStructureMotionInstanceTypeNV);
+ memcpy(*ptr, (VkAccelerationStructureMotionInstanceFlagsNV*)&forMarshaling->flags, sizeof(VkAccelerationStructureMotionInstanceFlagsNV));
+ *ptr += sizeof(VkAccelerationStructureMotionInstanceFlagsNV);
+ reservedmarshal_VkAccelerationStructureMotionInstanceDataNV(vkStream, rootType, (VkAccelerationStructureMotionInstanceDataNV*)(&forMarshaling->data), ptr);
+}
+
+void reservedmarshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->rayTracingMotionBlur, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->rayTracingMotionBlurPipelineTraceRaysIndirect, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->ycbcr2plane444Formats, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void reservedmarshal_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -14677,6 +17585,29 @@
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void reservedmarshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->formatRgba10x6WithoutYCbCrSampler, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void reservedmarshal_VkDirectFBSurfaceCreateInfoEXT(
VulkanStreamGuest* vkStream,
@@ -14718,6 +17649,789 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void reservedmarshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->mutableDescriptorType, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkMutableDescriptorTypeListVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->descriptorTypeCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const VkDescriptorType*)forMarshaling->pDescriptorTypes, forMarshaling->descriptorTypeCount * sizeof(const VkDescriptorType));
+ *ptr += forMarshaling->descriptorTypeCount * sizeof(const VkDescriptorType);
+}
+
+void reservedmarshal_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->mutableDescriptorTypeListCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->mutableDescriptorTypeListCount; ++i)
+ {
+ reservedmarshal_VkMutableDescriptorTypeListVALVE(vkStream, rootType, (const VkMutableDescriptorTypeListVALVE*)(forMarshaling->pMutableDescriptorTypeLists + i), ptr);
+ }
+}
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void reservedmarshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->vertexInputDynamicState, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkVertexInputBindingDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->stride, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkVertexInputRate*)&forMarshaling->inputRate, sizeof(VkVertexInputRate));
+ *ptr += sizeof(VkVertexInputRate);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->divisor, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkVertexInputAttributeDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->location, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->binding, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkFormat*)&forMarshaling->format, sizeof(VkFormat));
+ *ptr += sizeof(VkFormat);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->offset, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void reservedmarshal_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->hasPrimary, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->hasRender, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (int64_t*)&forMarshaling->primaryMajor, sizeof(int64_t));
+ *ptr += sizeof(int64_t);
+ memcpy(*ptr, (int64_t*)&forMarshaling->primaryMinor, sizeof(int64_t));
+ *ptr += sizeof(int64_t);
+ memcpy(*ptr, (int64_t*)&forMarshaling->renderMajor, sizeof(int64_t));
+ *ptr += sizeof(int64_t);
+ memcpy(*ptr, (int64_t*)&forMarshaling->renderMinor, sizeof(int64_t));
+ *ptr += sizeof(int64_t);
+}
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyListRestart, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->primitiveTopologyPatchListRestart, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void reservedmarshal_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+ *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits);
+ memcpy(*ptr, (zx_handle_t*)&forMarshaling->handle, sizeof(zx_handle_t));
+ *ptr += sizeof(zx_handle_t);
+}
+
+void reservedmarshal_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeBits, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+ *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits);
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void reservedmarshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkSemaphoreImportFlags*)&forMarshaling->flags, sizeof(VkSemaphoreImportFlags));
+ *ptr += sizeof(VkSemaphoreImportFlags);
+ memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalSemaphoreHandleTypeFlagBits));
+ *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
+ memcpy(*ptr, (zx_handle_t*)&forMarshaling->zirconHandle, sizeof(zx_handle_t));
+ *ptr += sizeof(zx_handle_t);
+}
+
+void reservedmarshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkSemaphore((*&forMarshaling->semaphore));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkExternalSemaphoreHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalSemaphoreHandleTypeFlagBits));
+ *ptr += sizeof(VkExternalSemaphoreHandleTypeFlagBits);
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void reservedmarshal_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (zx_handle_t*)&forMarshaling->collectionToken, sizeof(zx_handle_t));
+ *ptr += sizeof(zx_handle_t);
+}
+
+void reservedmarshal_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->collection;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->index, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->collection;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->index, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->minBufferCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxBufferCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->minBufferCountForCamping, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->minBufferCountForDedicatedSlack, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->minBufferCountForSharedSlack, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkBufferConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkBufferCreateInfo(vkStream, rootType, (VkBufferCreateInfo*)(&forMarshaling->createInfo), ptr);
+ memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->requiredFormatFeatures, sizeof(VkFormatFeatureFlags));
+ *ptr += sizeof(VkFormatFeatureFlags);
+ reservedmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(vkStream, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&forMarshaling->bufferCollectionConstraints), ptr);
+}
+
+void reservedmarshal_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0 = (uint64_t)forMarshaling->collection;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->index, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkSysmemColorSpaceFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->colorSpace, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->memoryTypeBits, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->bufferCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->createInfoIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint64_t*)&forMarshaling->sysmemPixelFormat, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+ memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->formatFeatures, sizeof(VkFormatFeatureFlags));
+ *ptr += sizeof(VkFormatFeatureFlags);
+ reservedmarshal_VkSysmemColorSpaceFUCHSIA(vkStream, rootType, (VkSysmemColorSpaceFUCHSIA*)(&forMarshaling->sysmemColorSpaceIndex), ptr);
+ reservedmarshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forMarshaling->samplerYcbcrConversionComponents), ptr);
+ memcpy(*ptr, (VkSamplerYcbcrModelConversion*)&forMarshaling->suggestedYcbcrModel, sizeof(VkSamplerYcbcrModelConversion));
+ *ptr += sizeof(VkSamplerYcbcrModelConversion);
+ memcpy(*ptr, (VkSamplerYcbcrRange*)&forMarshaling->suggestedYcbcrRange, sizeof(VkSamplerYcbcrRange));
+ *ptr += sizeof(VkSamplerYcbcrRange);
+ memcpy(*ptr, (VkChromaLocation*)&forMarshaling->suggestedXChromaOffset, sizeof(VkChromaLocation));
+ *ptr += sizeof(VkChromaLocation);
+ memcpy(*ptr, (VkChromaLocation*)&forMarshaling->suggestedYChromaOffset, sizeof(VkChromaLocation));
+ *ptr += sizeof(VkChromaLocation);
+}
+
+void reservedmarshal_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkImageCreateInfo(vkStream, rootType, (VkImageCreateInfo*)(&forMarshaling->imageCreateInfo), ptr);
+ memcpy(*ptr, (VkFormatFeatureFlags*)&forMarshaling->requiredFormatFeatures, sizeof(VkFormatFeatureFlags));
+ *ptr += sizeof(VkFormatFeatureFlags);
+ memcpy(*ptr, (VkImageFormatConstraintsFlagsFUCHSIA*)&forMarshaling->flags, sizeof(VkImageFormatConstraintsFlagsFUCHSIA));
+ *ptr += sizeof(VkImageFormatConstraintsFlagsFUCHSIA);
+ memcpy(*ptr, (uint64_t*)&forMarshaling->sysmemPixelFormat, sizeof(uint64_t));
+ *ptr += sizeof(uint64_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->colorSpaceCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ reservedmarshal_VkSysmemColorSpaceFUCHSIA(vkStream, rootType, (const VkSysmemColorSpaceFUCHSIA*)(forMarshaling->pColorSpaces), ptr);
+}
+
+void reservedmarshal_VkImageConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->formatConstraintsCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ for (uint32_t i = 0; i < (uint32_t)forMarshaling->formatConstraintsCount; ++i)
+ {
+ reservedmarshal_VkImageFormatConstraintsInfoFUCHSIA(vkStream, rootType, (const VkImageFormatConstraintsInfoFUCHSIA*)(forMarshaling->pFormatConstraints + i), ptr);
+ }
+ reservedmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(vkStream, rootType, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&forMarshaling->bufferCollectionConstraints), ptr);
+ memcpy(*ptr, (VkImageConstraintsInfoFlagsFUCHSIA*)&forMarshaling->flags, sizeof(VkImageConstraintsInfoFlagsFUCHSIA));
+ *ptr += sizeof(VkImageConstraintsInfoFlagsFUCHSIA);
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void reservedmarshal_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkRenderPass((*&forMarshaling->renderPass));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->subpass, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->subpassShading, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxSubpassShadingWorkgroupSizeAspectRatio, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void reservedmarshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->invocationMask, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void reservedmarshal_VkMemoryGetRemoteAddressInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ uint64_t cgen_var_0;
+ *&cgen_var_0 = get_host_u64_VkDeviceMemory((*&forMarshaling->memory));
+ memcpy(*ptr, (uint64_t*)&cgen_var_0, 1 * 8);
+ *ptr += 1 * 8;
+ memcpy(*ptr, (VkExternalMemoryHandleTypeFlagBits*)&forMarshaling->handleType, sizeof(VkExternalMemoryHandleTypeFlagBits));
+ *ptr += sizeof(VkExternalMemoryHandleTypeFlagBits);
+}
+
+void reservedmarshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->externalMemoryRDMA, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2LogicOp, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->extendedDynamicState2PatchControlPoints, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+void reservedmarshal_VkScreenSurfaceCreateInfoQNX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkScreenSurfaceCreateFlagsQNX*)&forMarshaling->flags, sizeof(VkScreenSurfaceCreateFlagsQNX));
+ *ptr += sizeof(VkScreenSurfaceCreateFlagsQNX);
+ // WARNING PTR CHECK
+ uint64_t cgen_var_0 = (uint64_t)(uintptr_t)forMarshaling->context;
+ memcpy((*ptr), &cgen_var_0, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->context)
+ {
+ memcpy(*ptr, (_screen_context*)forMarshaling->context, sizeof(_screen_context));
+ *ptr += sizeof(_screen_context);
+ }
+ // WARNING PTR CHECK
+ uint64_t cgen_var_1 = (uint64_t)(uintptr_t)forMarshaling->window;
+ memcpy((*ptr), &cgen_var_1, 8);
+ android::base::Stream::toBe64((uint8_t*)(*ptr));
+ *ptr += 8;
+ if (forMarshaling->window)
+ {
+ memcpy(*ptr, (_screen_window*)forMarshaling->window, sizeof(_screen_window));
+ *ptr += sizeof(_screen_window);
+ }
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->colorWriteEnable, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPipelineColorWriteCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->attachmentCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (const VkBool32*)forMarshaling->pColorWriteEnables, forMarshaling->attachmentCount * sizeof(const VkBool32));
+ *ptr += forMarshaling->attachmentCount * sizeof(const VkBool32);
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void reservedmarshal_VkImportColorBufferGOOGLE(
VulkanStreamGuest* vkStream,
@@ -14785,6 +18499,184 @@
}
#endif
+#ifdef VK_EXT_global_priority_query
+void reservedmarshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->globalPriorityQuery, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->priorityCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (VkQueueGlobalPriorityEXT*)forMarshaling->priorities, VK_MAX_GLOBAL_PRIORITY_SIZE_EXT * sizeof(VkQueueGlobalPriorityEXT));
+ *ptr += VK_MAX_GLOBAL_PRIORITY_SIZE_EXT * sizeof(VkQueueGlobalPriorityEXT);
+}
+
+#endif
+#ifdef VK_EXT_multi_draw
+void reservedmarshal_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->multiDraw, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->maxMultiDrawCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkMultiDrawInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->firstVertex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->vertexCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+}
+
+void reservedmarshal_VkMultiDrawIndexedInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (uint32_t*)&forMarshaling->firstIndex, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (uint32_t*)&forMarshaling->indexCount, sizeof(uint32_t));
+ *ptr += sizeof(uint32_t);
+ memcpy(*ptr, (int32_t*)&forMarshaling->vertexOffset, sizeof(int32_t));
+ *ptr += sizeof(int32_t);
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void reservedmarshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->borderColorSwizzle, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->borderColorSwizzleFromImage, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+void reservedmarshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ reservedmarshal_VkComponentMapping(vkStream, rootType, (VkComponentMapping*)(&forMarshaling->components), ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->srgb, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void reservedmarshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* forMarshaling,
+ uint8_t** ptr)
+{
+ (void)vkStream;
+ (void)rootType;
+ memcpy(*ptr, (VkStructureType*)&forMarshaling->sType, sizeof(VkStructureType));
+ *ptr += sizeof(VkStructureType);
+ if (rootType == VK_STRUCTURE_TYPE_MAX_ENUM)
+ {
+ rootType = forMarshaling->sType;
+ }
+ reservedmarshal_extension_struct(vkStream, rootType, forMarshaling->pNext, ptr);
+ memcpy(*ptr, (VkBool32*)&forMarshaling->pageableDeviceLocalMemory, sizeof(VkBool32));
+ *ptr += sizeof(VkBool32);
+}
+
+#endif
#ifdef VK_KHR_acceleration_structure
void reservedmarshal_VkDeviceOrHostAddressKHR(
VulkanStreamGuest* vkStream,
@@ -14798,18 +18690,6 @@
*ptr += sizeof(VkDeviceAddress);
}
-void reservedmarshal_VkDeviceOrHostAddressConstKHR(
- VulkanStreamGuest* vkStream,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* forMarshaling,
- uint8_t** ptr)
-{
- (void)vkStream;
- (void)rootType;
- memcpy(*ptr, (VkDeviceAddress*)&forMarshaling->deviceAddress, sizeof(VkDeviceAddress));
- *ptr += sizeof(VkDeviceAddress);
-}
-
void reservedmarshal_VkAccelerationStructureBuildRangeInfoKHR(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
@@ -15939,6 +19819,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ reservedmarshal_VkVideoQueueFamilyProperties2KHR(vkStream, rootType, reinterpret_cast<const VkVideoQueueFamilyProperties2KHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ reservedmarshal_VkVideoProfileKHR(vkStream, rootType, reinterpret_cast<const VkVideoProfileKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ reservedmarshal_VkVideoProfilesKHR(vkStream, rootType, reinterpret_cast<const VkVideoProfilesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ reservedmarshal_VkPipelineRenderingCreateInfoKHR(vkStream, rootType, reinterpret_cast<const VkPipelineRenderingCreateInfoKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ reservedmarshal_VkCommandBufferInheritanceRenderingInfoKHR(vkStream, rootType, reinterpret_cast<const VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(vkStream, rootType, reinterpret_cast<const VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(vkStream, rootType, reinterpret_cast<const VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ reservedmarshal_VkAttachmentSampleCountInfoAMD(vkStream, rootType, reinterpret_cast<const VkAttachmentSampleCountInfoAMD*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ reservedmarshal_VkMultiviewPerViewAttributesInfoNVX(vkStream, rootType, reinterpret_cast<const VkMultiviewPerViewAttributesInfoNVX*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -16082,6 +20016,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDevicePresentWaitFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -16089,6 +20030,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ reservedmarshal_VkPresentIdKHR(vkStream, rootType, reinterpret_cast<const VkPresentIdKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDevicePresentIdFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ reservedmarshal_VkVideoEncodeRateControlInfoKHR(vkStream, rootType, reinterpret_cast<const VkVideoEncodeRateControlInfoKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ reservedmarshal_VkMemoryBarrier2KHR(vkStream, rootType, reinterpret_cast<const VkMemoryBarrier2KHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceSynchronization2FeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ reservedmarshal_VkQueueFamilyCheckpointProperties2NV(vkStream, rootType, reinterpret_cast<const VkQueueFamilyCheckpointProperties2NV*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ reservedmarshal_VkFormatProperties3KHR(vkStream, rootType, reinterpret_cast<const VkFormatProperties3KHR*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceMaintenance4FeaturesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ reservedmarshal_VkPhysicalDeviceMaintenance4PropertiesKHR(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -16144,6 +20173,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264CapabilitiesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264VclFrameInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264VclFrameInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264EmitPictureParametersEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH264ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH264ProfileEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265CapabilitiesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265VclFrameInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265VclFrameInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265EmitPictureParametersEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ reservedmarshal_VkVideoEncodeH265ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoEncodeH265ProfileEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264ProfileEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264CapabilitiesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264PictureInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264PictureInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264MvcEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264MvcEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH264DpbSlotInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -16326,6 +20471,11 @@
reservedmarshal_VkExternalFormatANDROID(vkStream, rootType, reinterpret_cast<const VkExternalFormatANDROID*>(structExtension), ptr);
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ reservedmarshal_VkAndroidHardwareBufferFormatProperties2ANDROID(vkStream, rootType, reinterpret_cast<const VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension), ptr);
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -16435,6 +20585,11 @@
reservedmarshal_VkImageDrmFormatModifierExplicitCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension), ptr);
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(vkStream, rootType, reinterpret_cast<const VkDrmFormatModifierPropertiesList2EXT*>(structExtension), ptr);
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -16534,6 +20689,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265ProfileEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265ProfileEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265CapabilitiesEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265CapabilitiesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265SessionCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265PictureInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265PictureInfoEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ reservedmarshal_VkVideoDecodeH265DpbSlotInfoEXT(vkStream, rootType, reinterpret_cast<const VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -16856,6 +21048,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -16911,6 +21120,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -16935,6 +21151,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ reservedmarshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ reservedmarshal_VkCommandBufferInheritanceViewportScissorInfoNV(vkStream, rootType, reinterpret_cast<const VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -17048,6 +21276,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ reservedmarshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(vkStream, rootType, reinterpret_cast<const VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ reservedmarshal_VkAccelerationStructureMotionInfoNV(vkStream, rootType, reinterpret_cast<const VkAccelerationStructureMotionInfoNV*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ reservedmarshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -17081,6 +21333,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ reservedmarshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ reservedmarshal_VkMutableDescriptorTypeCreateInfoVALVE(vkStream, rootType, reinterpret_cast<const VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceDrmPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceDrmPropertiesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ reservedmarshal_VkImportMemoryZirconHandleInfoFUCHSIA(vkStream, rootType, reinterpret_cast<const VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ reservedmarshal_VkImportMemoryBufferCollectionFUCHSIA(vkStream, rootType, reinterpret_cast<const VkImportMemoryBufferCollectionFUCHSIA*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ reservedmarshal_VkBufferCollectionImageCreateInfoFUCHSIA(vkStream, rootType, reinterpret_cast<const VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ reservedmarshal_VkBufferCollectionBufferCreateInfoFUCHSIA(vkStream, rootType, reinterpret_cast<const VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ reservedmarshal_VkSubpassShadingPipelineCreateInfoHUAWEI(vkStream, rootType, reinterpret_cast<const VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ reservedmarshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ reservedmarshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ reservedmarshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ reservedmarshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkPipelineColorWriteCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkPipelineColorWriteCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -17098,6 +21464,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ reservedmarshal_VkQueueFamilyGlobalPriorityPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceMultiDrawFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceMultiDrawPropertiesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ reservedmarshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(vkStream, rootType, reinterpret_cast<const VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ reservedmarshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(vkStream, rootType, reinterpret_cast<const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension), ptr);
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
diff --git a/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.h b/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.h
index 9395165..6b09067 100644
--- a/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.h
+++ b/system/vulkan_enc/goldfish_vk_reserved_marshaling_guest.h
@@ -128,6 +128,12 @@
const VkMemoryBarrier* forMarshaling,
uint8_t** ptr);
+void reservedmarshal_VkPipelineCacheHeaderVersionOne(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineCacheHeaderVersionOne* forMarshaling,
+ uint8_t** ptr);
+
void reservedmarshal_VkAllocationCallbacks(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
@@ -1579,6 +1585,170 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void reservedmarshal_VkVideoQueueFamilyProperties2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoQueueFamilyProperties2KHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoProfileKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfileKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoProfilesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoProfilesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoCapabilitiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCapabilitiesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceVideoFormatInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVideoFormatInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoFormatPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoFormatPropertiesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoPictureResourceKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoPictureResourceKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoReferenceSlotKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoReferenceSlotKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoGetMemoryPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoGetMemoryPropertiesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoBindMemoryKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBindMemoryKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoSessionCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionCreateInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoSessionParametersCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersCreateInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoSessionParametersUpdateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoSessionParametersUpdateInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoBeginCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoBeginCodingInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEndCodingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEndCodingInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoCodingControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoCodingControlInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void reservedmarshal_VkVideoDecodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void reservedmarshal_VkRenderingAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingAttachmentInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPipelineRenderingCreateInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRenderingCreateInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDynamicRenderingFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkCommandBufferInheritanceRenderingInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceRenderingInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentShadingRateAttachmentInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkRenderingFragmentDensityMapAttachmentInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAttachmentSampleCountInfoAMD(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAttachmentSampleCountInfoAMD* forMarshaling,
+ uint8_t** ptr);
+
+DEFINE_ALIAS_FUNCTION(reservedmarshal_VkAttachmentSampleCountInfoAMD, reservedmarshal_VkAttachmentSampleCountInfoNV)
+
+void reservedmarshal_VkMultiviewPerViewAttributesInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiviewPerViewAttributesInfoNVX* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(reservedmarshal_VkRenderPassMultiviewCreateInfo, reservedmarshal_VkRenderPassMultiviewCreateInfoKHR)
@@ -2183,6 +2353,14 @@
DEFINE_ALIAS_FUNCTION(reservedmarshal_VkAttachmentDescriptionStencilLayout, reservedmarshal_VkAttachmentDescriptionStencilLayoutKHR)
#endif
+#ifdef VK_KHR_present_wait
+void reservedmarshal_VkPhysicalDevicePresentWaitFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentWaitFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, reservedmarshal_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR)
@@ -2245,6 +2423,20 @@
uint8_t** ptr);
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_KHR_pipeline_library
void reservedmarshal_VkPipelineLibraryCreateInfoKHR(
VulkanStreamGuest* vkStream,
@@ -2255,6 +2447,120 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void reservedmarshal_VkPresentIdKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPresentIdKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDevicePresentIdFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePresentIdFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void reservedmarshal_VkVideoEncodeInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeRateControlInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeRateControlInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_synchronization2
+void reservedmarshal_VkMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryBarrier2KHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkBufferMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferMemoryBarrier2KHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkImageMemoryBarrier2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageMemoryBarrier2KHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkDependencyInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDependencyInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkSemaphoreSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreSubmitInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkCommandBufferSubmitInfoKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferSubmitInfoKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkSubmitInfo2KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubmitInfo2KHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSynchronization2FeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkQueueFamilyCheckpointProperties2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyCheckpointProperties2NV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkCheckpointData2NV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCheckpointData2NV* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void reservedmarshal_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void reservedmarshal_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void reservedmarshal_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_KHR_copy_commands2
void reservedmarshal_VkBufferCopy2KHR(
VulkanStreamGuest* vkStream,
@@ -2323,6 +2629,40 @@
uint8_t** ptr);
#endif
+#ifdef VK_KHR_format_feature_flags2
+void reservedmarshal_VkFormatProperties3KHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkFormatProperties3KHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_KHR_maintenance4
+void reservedmarshal_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4FeaturesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMaintenance4PropertiesKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkDeviceBufferMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceBufferMemoryRequirementsKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkDeviceImageMemoryRequirementsKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceImageMemoryRequirementsKHR* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_ANDROID_native_buffer
void reservedmarshal_VkNativeBufferANDROID(
VulkanStreamGuest* vkStream,
@@ -2419,6 +2759,26 @@
uint8_t** ptr);
#endif
+#ifdef VK_NVX_binary_import
+void reservedmarshal_VkCuModuleCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuModuleCreateInfoNVX* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkCuFunctionCreateInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuFunctionCreateInfoNVX* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkCuLaunchInfoNVX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCuLaunchInfoNVX* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_NVX_image_view_handle
void reservedmarshal_VkImageViewHandleInfoNVX(
VulkanStreamGuest* vkStream,
@@ -2441,6 +2801,174 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void reservedmarshal_VkVideoEncodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264NaluSliceEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264VclFrameInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264EmitPictureParametersEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH264ProfileEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void reservedmarshal_VkVideoEncodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265ReferenceListsEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ReferenceListsEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265NaluSliceEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265NaluSliceEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265VclFrameInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265VclFrameInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265EmitPictureParametersEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265EmitPictureParametersEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoEncodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoEncodeH265ProfileEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void reservedmarshal_VkVideoDecodeH264ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264ProfileEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264PictureInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264MvcEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264MvcEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH264DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH264DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void reservedmarshal_VkTextureLODGatherFormatPropertiesAMD(
VulkanStreamGuest* vkStream,
@@ -2844,6 +3372,12 @@
const VkExternalFormatANDROID* forMarshaling,
uint8_t** ptr);
+void reservedmarshal_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAndroidHardwareBufferFormatProperties2ANDROID* forMarshaling,
+ uint8_t** ptr);
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(reservedmarshal_VkSamplerReductionModeCreateInfo, reservedmarshal_VkSamplerReductionModeCreateInfoEXT)
@@ -3026,6 +3560,18 @@
const VkImageDrmFormatModifierPropertiesEXT* forMarshaling,
uint8_t** ptr);
+void reservedmarshal_VkDrmFormatModifierProperties2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierProperties2EXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkDrmFormatModifierPropertiesList2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDrmFormatModifierPropertiesList2EXT* forMarshaling,
+ uint8_t** ptr);
+
#endif
#ifdef VK_EXT_validation_cache
void reservedmarshal_VkValidationCacheCreateInfoEXT(
@@ -3281,6 +3827,50 @@
uint8_t** ptr);
#endif
+#ifdef VK_EXT_video_decode_h265
+void reservedmarshal_VkVideoDecodeH265ProfileEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265ProfileEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH265CapabilitiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265CapabilitiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH265SessionCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersAddInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265SessionParametersCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH265PictureInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265PictureInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVideoDecodeH265DpbSlotInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVideoDecodeH265DpbSlotInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void reservedmarshal_VkDeviceMemoryOverallocationCreateInfoAMD(
VulkanStreamGuest* vkStream,
@@ -3705,6 +4295,26 @@
uint8_t** ptr);
#endif
+#ifdef VK_EXT_provoking_vertex
+void reservedmarshal_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceProvokingVertexPropertiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void reservedmarshal_VkSurfaceFullScreenExclusiveInfoEXT(
VulkanStreamGuest* vkStream,
@@ -3781,6 +4391,14 @@
uint8_t** ptr);
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void reservedmarshal_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void reservedmarshal_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -3869,6 +4487,20 @@
uint8_t** ptr);
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void reservedmarshal_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInheritedViewportScissorFeaturesNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkCommandBufferInheritanceViewportScissorInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkCommandBufferInheritanceViewportScissorInfoNV* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void reservedmarshal_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -3917,6 +4549,8 @@
uint8_t** ptr);
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void reservedmarshal_VkPhysicalDeviceRobustness2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -4017,6 +4651,70 @@
uint8_t** ptr);
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void reservedmarshal_VkDeviceOrHostAddressConstKHR(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkDeviceOrHostAddressConstKHR* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureGeometryMotionTrianglesDataNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAccelerationStructureMotionInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInfoNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAccelerationStructureMatrixMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMatrixMotionInstanceNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkSRTDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSRTDataNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAccelerationStructureSRTMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureSRTMotionInstanceNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAccelerationStructureMotionInstanceDataNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceDataNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkAccelerationStructureMotionInstanceNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkAccelerationStructureMotionInstanceNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void reservedmarshal_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void reservedmarshal_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
VulkanStreamGuest* vkStream,
@@ -4055,6 +4753,16 @@
uint8_t** ptr);
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void reservedmarshal_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void reservedmarshal_VkDirectFBSurfaceCreateInfoEXT(
VulkanStreamGuest* vkStream,
@@ -4063,6 +4771,230 @@
uint8_t** ptr);
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void reservedmarshal_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkMutableDescriptorTypeListVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeListVALVE* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkMutableDescriptorTypeCreateInfoVALVE(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMutableDescriptorTypeCreateInfoVALVE* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void reservedmarshal_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVertexInputBindingDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputBindingDescription2EXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkVertexInputAttributeDescription2EXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkVertexInputAttributeDescription2EXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void reservedmarshal_VkPhysicalDeviceDrmPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceDrmPropertiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void reservedmarshal_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void reservedmarshal_VkImportMemoryZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkMemoryZirconHandlePropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryZirconHandlePropertiesFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkMemoryGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void reservedmarshal_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportSemaphoreZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSemaphoreGetZirconHandleInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void reservedmarshal_VkBufferCollectionCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionCreateInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkImportMemoryBufferCollectionFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImportMemoryBufferCollectionFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkBufferCollectionImageCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionImageCreateInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkBufferCollectionConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkBufferConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionBufferCreateInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkSysmemColorSpaceFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSysmemColorSpaceFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkBufferCollectionPropertiesFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkBufferCollectionPropertiesFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkImageFormatConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageFormatConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkImageConstraintsInfoFUCHSIA(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkImageConstraintsInfoFUCHSIA* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void reservedmarshal_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSubpassShadingPipelineCreateInfoHUAWEI* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void reservedmarshal_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void reservedmarshal_VkMemoryGetRemoteAddressInfoNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMemoryGetRemoteAddressInfoNV* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void reservedmarshal_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_QNX_screen_surface
+void reservedmarshal_VkScreenSurfaceCreateInfoQNX(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkScreenSurfaceCreateInfoQNX* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void reservedmarshal_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceColorWriteEnableFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPipelineColorWriteCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPipelineColorWriteCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void reservedmarshal_VkImportColorBufferGOOGLE(
VulkanStreamGuest* vkStream,
@@ -4083,6 +5015,70 @@
uint8_t** ptr);
#endif
+#ifdef VK_EXT_global_priority_query
+void reservedmarshal_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkQueueFamilyGlobalPriorityPropertiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_multi_draw
+void reservedmarshal_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceMultiDrawPropertiesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkMultiDrawInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkMultiDrawIndexedInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkMultiDrawIndexedInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void reservedmarshal_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+void reservedmarshal_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkSamplerBorderColorComponentMappingCreateInfoEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void reservedmarshal_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ VulkanStreamGuest* vkStream,
+ VkStructureType rootType,
+ const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* forMarshaling,
+ uint8_t** ptr);
+
+#endif
#ifdef VK_KHR_acceleration_structure
void reservedmarshal_VkDeviceOrHostAddressKHR(
VulkanStreamGuest* vkStream,
@@ -4090,12 +5086,6 @@
const VkDeviceOrHostAddressKHR* forMarshaling,
uint8_t** ptr);
-void reservedmarshal_VkDeviceOrHostAddressConstKHR(
- VulkanStreamGuest* vkStream,
- VkStructureType rootType,
- const VkDeviceOrHostAddressConstKHR* forMarshaling,
- uint8_t** ptr);
-
void reservedmarshal_VkAccelerationStructureBuildRangeInfoKHR(
VulkanStreamGuest* vkStream,
VkStructureType rootType,
diff --git a/system/vulkan_enc/goldfish_vk_transform_guest.cpp b/system/vulkan_enc/goldfish_vk_transform_guest.cpp
index bcc896b..b86ee88 100644
--- a/system/vulkan_enc/goldfish_vk_transform_guest.cpp
+++ b/system/vulkan_enc/goldfish_vk_transform_guest.cpp
@@ -312,6 +312,22 @@
}
}
+void transform_tohost_VkPipelineCacheHeaderVersionOne(
+ ResourceTracker* resourceTracker,
+ VkPipelineCacheHeaderVersionOne* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkPipelineCacheHeaderVersionOne(
+ ResourceTracker* resourceTracker,
+ VkPipelineCacheHeaderVersionOne* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
void transform_tohost_VkAllocationCallbacks(
ResourceTracker* resourceTracker,
VkAllocationCallbacks* toTransform)
@@ -6587,6 +6603,784 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void transform_tohost_VkVideoQueueFamilyProperties2KHR(
+ ResourceTracker* resourceTracker,
+ VkVideoQueueFamilyProperties2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoQueueFamilyProperties2KHR(
+ ResourceTracker* resourceTracker,
+ VkVideoQueueFamilyProperties2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoProfileKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfileKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoProfileKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfileKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoProfilesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfilesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pProfiles)
+ {
+ transform_tohost_VkVideoProfileKHR(resourceTracker, (VkVideoProfileKHR*)(toTransform->pProfiles));
+ }
+}
+
+void transform_fromhost_VkVideoProfilesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfilesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pProfiles)
+ {
+ transform_fromhost_VkVideoProfileKHR(resourceTracker, (VkVideoProfileKHR*)(toTransform->pProfiles));
+ }
+}
+
+void transform_tohost_VkVideoCapabilitiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCapabilitiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->videoPictureExtentGranularity));
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minExtent));
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxExtent));
+}
+
+void transform_fromhost_VkVideoCapabilitiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCapabilitiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->videoPictureExtentGranularity));
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minExtent));
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxExtent));
+}
+
+void transform_tohost_VkPhysicalDeviceVideoFormatInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVideoFormatInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pVideoProfiles)
+ {
+ transform_tohost_VkVideoProfilesKHR(resourceTracker, (VkVideoProfilesKHR*)(toTransform->pVideoProfiles));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceVideoFormatInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVideoFormatInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pVideoProfiles)
+ {
+ transform_fromhost_VkVideoProfilesKHR(resourceTracker, (VkVideoProfilesKHR*)(toTransform->pVideoProfiles));
+ }
+}
+
+void transform_tohost_VkVideoFormatPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoFormatPropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoFormatPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoFormatPropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoPictureResourceKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoPictureResourceKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->codedOffset));
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->codedExtent));
+}
+
+void transform_fromhost_VkVideoPictureResourceKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoPictureResourceKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->codedOffset));
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->codedExtent));
+}
+
+void transform_tohost_VkVideoReferenceSlotKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoReferenceSlotKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pPictureResource)
+ {
+ transform_tohost_VkVideoPictureResourceKHR(resourceTracker, (VkVideoPictureResourceKHR*)(toTransform->pPictureResource));
+ }
+}
+
+void transform_fromhost_VkVideoReferenceSlotKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoReferenceSlotKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pPictureResource)
+ {
+ transform_fromhost_VkVideoPictureResourceKHR(resourceTracker, (VkVideoPictureResourceKHR*)(toTransform->pPictureResource));
+ }
+}
+
+void transform_tohost_VkVideoGetMemoryPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoGetMemoryPropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pMemoryRequirements)
+ {
+ transform_tohost_VkMemoryRequirements2(resourceTracker, (VkMemoryRequirements2*)(toTransform->pMemoryRequirements));
+ }
+}
+
+void transform_fromhost_VkVideoGetMemoryPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoGetMemoryPropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pMemoryRequirements)
+ {
+ transform_fromhost_VkMemoryRequirements2(resourceTracker, (VkMemoryRequirements2*)(toTransform->pMemoryRequirements));
+ }
+}
+
+void transform_tohost_VkVideoBindMemoryKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBindMemoryKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoBindMemoryKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBindMemoryKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoSessionCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionCreateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pVideoProfile)
+ {
+ transform_tohost_VkVideoProfileKHR(resourceTracker, (VkVideoProfileKHR*)(toTransform->pVideoProfile));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxCodedExtent));
+}
+
+void transform_fromhost_VkVideoSessionCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionCreateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pVideoProfile)
+ {
+ transform_fromhost_VkVideoProfileKHR(resourceTracker, (VkVideoProfileKHR*)(toTransform->pVideoProfile));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxCodedExtent));
+}
+
+void transform_tohost_VkVideoSessionParametersCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersCreateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoSessionParametersCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersCreateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoSessionParametersUpdateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersUpdateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoSessionParametersUpdateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersUpdateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoBeginCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBeginCodingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceSlotCount; ++i)
+ {
+ transform_tohost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkVideoBeginCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBeginCodingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceSlotCount; ++i)
+ {
+ transform_fromhost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkVideoEndCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEndCodingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEndCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEndCodingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoCodingControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCodingControlInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoCodingControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCodingControlInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void transform_tohost_VkVideoDecodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->codedOffset));
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->codedExtent));
+ transform_tohost_VkVideoPictureResourceKHR(resourceTracker, (VkVideoPictureResourceKHR*)(&toTransform->dstPictureResource));
+ if (toTransform->pSetupReferenceSlot)
+ {
+ transform_tohost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pSetupReferenceSlot));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceSlotCount; ++i)
+ {
+ transform_tohost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkVideoDecodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->codedOffset));
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->codedExtent));
+ transform_fromhost_VkVideoPictureResourceKHR(resourceTracker, (VkVideoPictureResourceKHR*)(&toTransform->dstPictureResource));
+ if (toTransform->pSetupReferenceSlot)
+ {
+ transform_fromhost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pSetupReferenceSlot));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceSlotCount; ++i)
+ {
+ transform_fromhost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void transform_tohost_VkRenderingAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingAttachmentInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkClearValue(resourceTracker, (VkClearValue*)(&toTransform->clearValue));
+}
+
+void transform_fromhost_VkRenderingAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingAttachmentInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkClearValue(resourceTracker, (VkClearValue*)(&toTransform->clearValue));
+}
+
+void transform_tohost_VkRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->renderArea));
+ if (toTransform)
+ {
+ if (toTransform->pColorAttachments)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
+ {
+ transform_tohost_VkRenderingAttachmentInfoKHR(resourceTracker, (VkRenderingAttachmentInfoKHR*)(toTransform->pColorAttachments + i));
+ }
+ }
+ }
+ if (toTransform->pDepthAttachment)
+ {
+ transform_tohost_VkRenderingAttachmentInfoKHR(resourceTracker, (VkRenderingAttachmentInfoKHR*)(toTransform->pDepthAttachment));
+ }
+ if (toTransform->pStencilAttachment)
+ {
+ transform_tohost_VkRenderingAttachmentInfoKHR(resourceTracker, (VkRenderingAttachmentInfoKHR*)(toTransform->pStencilAttachment));
+ }
+}
+
+void transform_fromhost_VkRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkRect2D(resourceTracker, (VkRect2D*)(&toTransform->renderArea));
+ if (toTransform)
+ {
+ if (toTransform->pColorAttachments)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->colorAttachmentCount; ++i)
+ {
+ transform_fromhost_VkRenderingAttachmentInfoKHR(resourceTracker, (VkRenderingAttachmentInfoKHR*)(toTransform->pColorAttachments + i));
+ }
+ }
+ }
+ if (toTransform->pDepthAttachment)
+ {
+ transform_fromhost_VkRenderingAttachmentInfoKHR(resourceTracker, (VkRenderingAttachmentInfoKHR*)(toTransform->pDepthAttachment));
+ }
+ if (toTransform->pStencilAttachment)
+ {
+ transform_fromhost_VkRenderingAttachmentInfoKHR(resourceTracker, (VkRenderingAttachmentInfoKHR*)(toTransform->pStencilAttachment));
+ }
+}
+
+void transform_tohost_VkPipelineRenderingCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPipelineRenderingCreateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPipelineRenderingCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPipelineRenderingCreateInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkCommandBufferInheritanceRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceRenderingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkCommandBufferInheritanceRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceRenderingInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->shadingRateAttachmentTexelSize));
+}
+
+void transform_fromhost_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->shadingRateAttachmentTexelSize));
+}
+
+void transform_tohost_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkAttachmentSampleCountInfoAMD(
+ ResourceTracker* resourceTracker,
+ VkAttachmentSampleCountInfoAMD* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkAttachmentSampleCountInfoAMD(
+ ResourceTracker* resourceTracker,
+ VkAttachmentSampleCountInfoAMD* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkMultiviewPerViewAttributesInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkMultiviewPerViewAttributesInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkMultiviewPerViewAttributesInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkMultiviewPerViewAttributesInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_multiview
#endif
#ifdef VK_KHR_get_physical_device_properties2
@@ -7963,6 +8757,32 @@
#endif
#ifdef VK_KHR_separate_depth_stencil_layouts
#endif
+#ifdef VK_KHR_present_wait
+void transform_tohost_VkPhysicalDevicePresentWaitFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentWaitFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDevicePresentWaitFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentWaitFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
#endif
#ifdef VK_KHR_buffer_device_address
@@ -8133,6 +8953,56 @@
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void transform_tohost_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_pipeline_library
void transform_tohost_VkPipelineLibraryCreateInfoKHR(
ResourceTracker* resourceTracker,
@@ -8161,6 +9031,580 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void transform_tohost_VkPresentIdKHR(
+ ResourceTracker* resourceTracker,
+ VkPresentIdKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPresentIdKHR(
+ ResourceTracker* resourceTracker,
+ VkPresentIdKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDevicePresentIdFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentIdFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDevicePresentIdFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentIdFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void transform_tohost_VkVideoEncodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->codedExtent));
+ transform_tohost_VkVideoPictureResourceKHR(resourceTracker, (VkVideoPictureResourceKHR*)(&toTransform->srcPictureResource));
+ if (toTransform->pSetupReferenceSlot)
+ {
+ transform_tohost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pSetupReferenceSlot));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceSlotCount; ++i)
+ {
+ transform_tohost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkVideoEncodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->codedExtent));
+ transform_fromhost_VkVideoPictureResourceKHR(resourceTracker, (VkVideoPictureResourceKHR*)(&toTransform->srcPictureResource));
+ if (toTransform->pSetupReferenceSlot)
+ {
+ transform_fromhost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pSetupReferenceSlot));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceSlots)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceSlotCount; ++i)
+ {
+ transform_fromhost_VkVideoReferenceSlotKHR(resourceTracker, (VkVideoReferenceSlotKHR*)(toTransform->pReferenceSlots + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkVideoEncodeRateControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeRateControlInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeRateControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeRateControlInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_synchronization2
+void transform_tohost_VkMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkMemoryBarrier2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkMemoryBarrier2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkBufferMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkBufferMemoryBarrier2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkBufferMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkBufferMemoryBarrier2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkImageMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkImageMemoryBarrier2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkImageSubresourceRange(resourceTracker, (VkImageSubresourceRange*)(&toTransform->subresourceRange));
+}
+
+void transform_fromhost_VkImageMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkImageMemoryBarrier2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkImageSubresourceRange(resourceTracker, (VkImageSubresourceRange*)(&toTransform->subresourceRange));
+}
+
+void transform_tohost_VkDependencyInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkDependencyInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->memoryBarrierCount; ++i)
+ {
+ transform_tohost_VkMemoryBarrier2KHR(resourceTracker, (VkMemoryBarrier2KHR*)(toTransform->pMemoryBarriers + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pBufferMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->bufferMemoryBarrierCount; ++i)
+ {
+ transform_tohost_VkBufferMemoryBarrier2KHR(resourceTracker, (VkBufferMemoryBarrier2KHR*)(toTransform->pBufferMemoryBarriers + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pImageMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->imageMemoryBarrierCount; ++i)
+ {
+ transform_tohost_VkImageMemoryBarrier2KHR(resourceTracker, (VkImageMemoryBarrier2KHR*)(toTransform->pImageMemoryBarriers + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkDependencyInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkDependencyInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->memoryBarrierCount; ++i)
+ {
+ transform_fromhost_VkMemoryBarrier2KHR(resourceTracker, (VkMemoryBarrier2KHR*)(toTransform->pMemoryBarriers + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pBufferMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->bufferMemoryBarrierCount; ++i)
+ {
+ transform_fromhost_VkBufferMemoryBarrier2KHR(resourceTracker, (VkBufferMemoryBarrier2KHR*)(toTransform->pBufferMemoryBarriers + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pImageMemoryBarriers)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->imageMemoryBarrierCount; ++i)
+ {
+ transform_fromhost_VkImageMemoryBarrier2KHR(resourceTracker, (VkImageMemoryBarrier2KHR*)(toTransform->pImageMemoryBarriers + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkSemaphoreSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreSubmitInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkSemaphoreSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreSubmitInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkCommandBufferSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferSubmitInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkCommandBufferSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferSubmitInfoKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkSubmitInfo2KHR(
+ ResourceTracker* resourceTracker,
+ VkSubmitInfo2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pWaitSemaphoreInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->waitSemaphoreInfoCount; ++i)
+ {
+ transform_tohost_VkSemaphoreSubmitInfoKHR(resourceTracker, (VkSemaphoreSubmitInfoKHR*)(toTransform->pWaitSemaphoreInfos + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pCommandBufferInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->commandBufferInfoCount; ++i)
+ {
+ transform_tohost_VkCommandBufferSubmitInfoKHR(resourceTracker, (VkCommandBufferSubmitInfoKHR*)(toTransform->pCommandBufferInfos + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pSignalSemaphoreInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->signalSemaphoreInfoCount; ++i)
+ {
+ transform_tohost_VkSemaphoreSubmitInfoKHR(resourceTracker, (VkSemaphoreSubmitInfoKHR*)(toTransform->pSignalSemaphoreInfos + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkSubmitInfo2KHR(
+ ResourceTracker* resourceTracker,
+ VkSubmitInfo2KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pWaitSemaphoreInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->waitSemaphoreInfoCount; ++i)
+ {
+ transform_fromhost_VkSemaphoreSubmitInfoKHR(resourceTracker, (VkSemaphoreSubmitInfoKHR*)(toTransform->pWaitSemaphoreInfos + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pCommandBufferInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->commandBufferInfoCount; ++i)
+ {
+ transform_fromhost_VkCommandBufferSubmitInfoKHR(resourceTracker, (VkCommandBufferSubmitInfoKHR*)(toTransform->pCommandBufferInfos + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pSignalSemaphoreInfos)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->signalSemaphoreInfoCount; ++i)
+ {
+ transform_fromhost_VkSemaphoreSubmitInfoKHR(resourceTracker, (VkSemaphoreSubmitInfoKHR*)(toTransform->pSignalSemaphoreInfos + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkQueueFamilyCheckpointProperties2NV(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyCheckpointProperties2NV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkQueueFamilyCheckpointProperties2NV(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyCheckpointProperties2NV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkCheckpointData2NV(
+ ResourceTracker* resourceTracker,
+ VkCheckpointData2NV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkCheckpointData2NV(
+ ResourceTracker* resourceTracker,
+ VkCheckpointData2NV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void transform_tohost_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void transform_tohost_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void transform_tohost_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_copy_commands2
void transform_tohost_VkBufferCopy2KHR(
ResourceTracker* resourceTracker,
@@ -8593,6 +10037,148 @@
}
#endif
+#ifdef VK_KHR_format_feature_flags2
+void transform_tohost_VkFormatProperties3KHR(
+ ResourceTracker* resourceTracker,
+ VkFormatProperties3KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkFormatProperties3KHR(
+ ResourceTracker* resourceTracker,
+ VkFormatProperties3KHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_KHR_maintenance4
+void transform_tohost_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkDeviceBufferMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceBufferMemoryRequirementsKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pCreateInfo)
+ {
+ transform_tohost_VkBufferCreateInfo(resourceTracker, (VkBufferCreateInfo*)(toTransform->pCreateInfo));
+ }
+}
+
+void transform_fromhost_VkDeviceBufferMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceBufferMemoryRequirementsKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pCreateInfo)
+ {
+ transform_fromhost_VkBufferCreateInfo(resourceTracker, (VkBufferCreateInfo*)(toTransform->pCreateInfo));
+ }
+}
+
+void transform_tohost_VkDeviceImageMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceImageMemoryRequirementsKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pCreateInfo)
+ {
+ resourceTracker->transformImpl_VkImageCreateInfo_tohost(toTransform->pCreateInfo, 1);
+ transform_tohost_VkImageCreateInfo(resourceTracker, (VkImageCreateInfo*)(toTransform->pCreateInfo));
+ }
+}
+
+void transform_fromhost_VkDeviceImageMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceImageMemoryRequirementsKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pCreateInfo)
+ {
+ resourceTracker->transformImpl_VkImageCreateInfo_fromhost(toTransform->pCreateInfo, 1);
+ transform_fromhost_VkImageCreateInfo(resourceTracker, (VkImageCreateInfo*)(toTransform->pCreateInfo));
+ }
+}
+
+#endif
#ifdef VK_ANDROID_native_buffer
void transform_tohost_VkNativeBufferANDROID(
ResourceTracker* resourceTracker,
@@ -8905,6 +10491,80 @@
}
#endif
+#ifdef VK_NVX_binary_import
+void transform_tohost_VkCuModuleCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuModuleCreateInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkCuModuleCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuModuleCreateInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkCuFunctionCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuFunctionCreateInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkCuFunctionCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuFunctionCreateInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkCuLaunchInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuLaunchInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkCuLaunchInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuLaunchInfoNVX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_NVX_image_view_handle
void transform_tohost_VkImageViewHandleInfoNVX(
ResourceTracker* resourceTracker,
@@ -8963,6 +10623,910 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void transform_tohost_VkVideoEncodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minPictureSizeInMbs));
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxPictureSizeInMbs));
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->inputImageDataAlignment));
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_fromhost_VkVideoEncodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->minPictureSizeInMbs));
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxPictureSizeInMbs));
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->inputImageDataAlignment));
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_tohost_VkVideoEncodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxPictureSizeInMbs));
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->maxPictureSizeInMbs));
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_tohost_VkVideoEncodeH264SessionParametersAddInfoEXT(resourceTracker, (VkVideoEncodeH264SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_fromhost_VkVideoEncodeH264SessionParametersAddInfoEXT(resourceTracker, (VkVideoEncodeH264SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264NaluSliceEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefFinalList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refFinalList0EntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefFinalList0Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefFinalList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refFinalList1EntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefFinalList1Entries + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264NaluSliceEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefFinalList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refFinalList0EntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefFinalList0Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefFinalList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refFinalList1EntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefFinalList1Entries + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264VclFrameInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefDefaultFinalList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refDefaultFinalList0EntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefDefaultFinalList0Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefDefaultFinalList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refDefaultFinalList1EntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefDefaultFinalList1Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pNaluSliceEntries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->naluSliceEntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH264NaluSliceEXT(resourceTracker, (VkVideoEncodeH264NaluSliceEXT*)(toTransform->pNaluSliceEntries + i));
+ }
+ }
+ }
+ if (toTransform->pCurrentPictureInfo)
+ {
+ transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pCurrentPictureInfo));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264VclFrameInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefDefaultFinalList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refDefaultFinalList0EntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefDefaultFinalList0Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pRefDefaultFinalList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->refDefaultFinalList1EntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pRefDefaultFinalList1Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pNaluSliceEntries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->naluSliceEntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH264NaluSliceEXT(resourceTracker, (VkVideoEncodeH264NaluSliceEXT*)(toTransform->pNaluSliceEntries + i));
+ }
+ }
+ }
+ if (toTransform->pCurrentPictureInfo)
+ {
+ transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH264DpbSlotInfoEXT*)(toTransform->pCurrentPictureInfo));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264EmitPictureParametersEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264EmitPictureParametersEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void transform_tohost_VkVideoEncodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->inputImageDataAlignment));
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_fromhost_VkVideoEncodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtent2D(resourceTracker, (VkExtent2D*)(&toTransform->inputImageDataAlignment));
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_tohost_VkVideoEncodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_tohost_VkVideoEncodeH265SessionParametersAddInfoEXT(resourceTracker, (VkVideoEncodeH265SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_fromhost_VkVideoEncodeH265SessionParametersAddInfoEXT(resourceTracker, (VkVideoEncodeH265SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265ReferenceListsEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ReferenceListsEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceList0EntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH265DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH265DpbSlotInfoEXT*)(toTransform->pReferenceList0Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceList1EntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH265DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH265DpbSlotInfoEXT*)(toTransform->pReferenceList1Entries + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265ReferenceListsEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ReferenceListsEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceList0Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceList0EntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH265DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH265DpbSlotInfoEXT*)(toTransform->pReferenceList0Entries + i));
+ }
+ }
+ }
+ if (toTransform)
+ {
+ if (toTransform->pReferenceList1Entries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->referenceList1EntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH265DpbSlotInfoEXT(resourceTracker, (VkVideoEncodeH265DpbSlotInfoEXT*)(toTransform->pReferenceList1Entries + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265NaluSliceEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pReferenceFinalLists)
+ {
+ transform_tohost_VkVideoEncodeH265ReferenceListsEXT(resourceTracker, (VkVideoEncodeH265ReferenceListsEXT*)(toTransform->pReferenceFinalLists));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265NaluSliceEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pReferenceFinalLists)
+ {
+ transform_fromhost_VkVideoEncodeH265ReferenceListsEXT(resourceTracker, (VkVideoEncodeH265ReferenceListsEXT*)(toTransform->pReferenceFinalLists));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265VclFrameInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pReferenceFinalLists)
+ {
+ transform_tohost_VkVideoEncodeH265ReferenceListsEXT(resourceTracker, (VkVideoEncodeH265ReferenceListsEXT*)(toTransform->pReferenceFinalLists));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pNaluSliceEntries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->naluSliceEntryCount; ++i)
+ {
+ transform_tohost_VkVideoEncodeH265NaluSliceEXT(resourceTracker, (VkVideoEncodeH265NaluSliceEXT*)(toTransform->pNaluSliceEntries + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265VclFrameInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pReferenceFinalLists)
+ {
+ transform_fromhost_VkVideoEncodeH265ReferenceListsEXT(resourceTracker, (VkVideoEncodeH265ReferenceListsEXT*)(toTransform->pReferenceFinalLists));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pNaluSliceEntries)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->naluSliceEntryCount; ++i)
+ {
+ transform_fromhost_VkVideoEncodeH265NaluSliceEXT(resourceTracker, (VkVideoEncodeH265NaluSliceEXT*)(toTransform->pNaluSliceEntries + i));
+ }
+ }
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265EmitPictureParametersEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265EmitPictureParametersEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoEncodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoEncodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void transform_tohost_VkVideoDecodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->fieldOffsetGranularity));
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_fromhost_VkVideoDecodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkOffset2D(resourceTracker, (VkOffset2D*)(&toTransform->fieldOffsetGranularity));
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_tohost_VkVideoDecodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_tohost_VkVideoDecodeH264SessionParametersAddInfoEXT(resourceTracker, (VkVideoDecodeH264SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_fromhost_VkVideoDecodeH264SessionParametersAddInfoEXT(resourceTracker, (VkVideoDecodeH264SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH264PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264PictureInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264PictureInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH264MvcEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264MvcEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264MvcEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264MvcEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void transform_tohost_VkTextureLODGatherFormatPropertiesAMD(
ResourceTracker* resourceTracker,
@@ -10432,6 +12996,32 @@
}
}
+void transform_tohost_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ ResourceTracker* resourceTracker,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->samplerYcbcrConversionComponents));
+}
+
+void transform_fromhost_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ ResourceTracker* resourceTracker,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->samplerYcbcrConversionComponents));
+}
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
#endif
@@ -11140,6 +13730,66 @@
}
}
+void transform_tohost_VkDrmFormatModifierProperties2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierProperties2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkDrmFormatModifierProperties2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierProperties2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_tohost_VkDrmFormatModifierPropertiesList2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierPropertiesList2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pDrmFormatModifierProperties)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->drmFormatModifierCount; ++i)
+ {
+ transform_tohost_VkDrmFormatModifierProperties2EXT(resourceTracker, (VkDrmFormatModifierProperties2EXT*)(toTransform->pDrmFormatModifierProperties + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkDrmFormatModifierPropertiesList2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierPropertiesList2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pDrmFormatModifierProperties)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->drmFormatModifierCount; ++i)
+ {
+ transform_fromhost_VkDrmFormatModifierProperties2EXT(resourceTracker, (VkDrmFormatModifierProperties2EXT*)(toTransform->pDrmFormatModifierProperties + i));
+ }
+ }
+ }
+}
+
#endif
#ifdef VK_EXT_validation_cache
void transform_tohost_VkValidationCacheCreateInfoEXT(
@@ -12089,6 +14739,194 @@
}
#endif
+#ifdef VK_EXT_video_decode_h265
+void transform_tohost_VkVideoDecodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265ProfileEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_fromhost_VkVideoDecodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265CapabilitiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(&toTransform->stdExtensionVersion));
+}
+
+void transform_tohost_VkVideoDecodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_tohost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pStdExtensionVersion)
+ {
+ transform_fromhost_VkExtensionProperties(resourceTracker, (VkExtensionProperties*)(toTransform->pStdExtensionVersion));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_tohost_VkVideoDecodeH265SessionParametersAddInfoEXT(resourceTracker, (VkVideoDecodeH265SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pParametersAddInfo)
+ {
+ transform_fromhost_VkVideoDecodeH265SessionParametersAddInfoEXT(resourceTracker, (VkVideoDecodeH265SessionParametersAddInfoEXT*)(toTransform->pParametersAddInfo));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH265PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265PictureInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH265PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265PictureInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVideoDecodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVideoDecodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265DpbSlotInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void transform_tohost_VkDeviceMemoryOverallocationCreateInfoAMD(
ResourceTracker* resourceTracker,
@@ -13565,6 +16403,80 @@
}
#endif
+#ifdef VK_EXT_provoking_vertex
+void transform_tohost_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void transform_tohost_VkSurfaceFullScreenExclusiveInfoEXT(
ResourceTracker* resourceTracker,
@@ -13819,6 +16731,32 @@
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void transform_tohost_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void transform_tohost_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
ResourceTracker* resourceTracker,
@@ -14215,6 +17153,64 @@
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void transform_tohost_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkCommandBufferInheritanceViewportScissorInfoNV(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceViewportScissorInfoNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pViewportDepths)
+ {
+ transform_tohost_VkViewport(resourceTracker, (VkViewport*)(toTransform->pViewportDepths));
+ }
+}
+
+void transform_fromhost_VkCommandBufferInheritanceViewportScissorInfoNV(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceViewportScissorInfoNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform->pViewportDepths)
+ {
+ transform_fromhost_VkViewport(resourceTracker, (VkViewport*)(toTransform->pViewportDepths));
+ }
+}
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void transform_tohost_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
ResourceTracker* resourceTracker,
@@ -14391,6 +17387,8 @@
}
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void transform_tohost_VkPhysicalDeviceRobustness2FeaturesEXT(
ResourceTracker* resourceTracker,
@@ -14745,6 +17743,220 @@
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void transform_tohost_VkDeviceOrHostAddressConstKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceOrHostAddressConstKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkDeviceOrHostAddressConstKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceOrHostAddressConstKHR* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_tohost_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkDeviceOrHostAddressConstKHR(resourceTracker, (VkDeviceOrHostAddressConstKHR*)(&toTransform->vertexData));
+}
+
+void transform_fromhost_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkDeviceOrHostAddressConstKHR(resourceTracker, (VkDeviceOrHostAddressConstKHR*)(&toTransform->vertexData));
+}
+
+void transform_tohost_VkAccelerationStructureMotionInfoNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInfoNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkAccelerationStructureMotionInfoNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInfoNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkAccelerationStructureMatrixMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMatrixMotionInstanceNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_tohost_VkTransformMatrixKHR(resourceTracker, (VkTransformMatrixKHR*)(&toTransform->transformT0));
+ transform_tohost_VkTransformMatrixKHR(resourceTracker, (VkTransformMatrixKHR*)(&toTransform->transformT1));
+}
+
+void transform_fromhost_VkAccelerationStructureMatrixMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMatrixMotionInstanceNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_fromhost_VkTransformMatrixKHR(resourceTracker, (VkTransformMatrixKHR*)(&toTransform->transformT0));
+ transform_fromhost_VkTransformMatrixKHR(resourceTracker, (VkTransformMatrixKHR*)(&toTransform->transformT1));
+}
+
+void transform_tohost_VkSRTDataNV(
+ ResourceTracker* resourceTracker,
+ VkSRTDataNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkSRTDataNV(
+ ResourceTracker* resourceTracker,
+ VkSRTDataNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_tohost_VkAccelerationStructureSRTMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureSRTMotionInstanceNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_tohost_VkSRTDataNV(resourceTracker, (VkSRTDataNV*)(&toTransform->transformT0));
+ transform_tohost_VkSRTDataNV(resourceTracker, (VkSRTDataNV*)(&toTransform->transformT1));
+}
+
+void transform_fromhost_VkAccelerationStructureSRTMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureSRTMotionInstanceNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_fromhost_VkSRTDataNV(resourceTracker, (VkSRTDataNV*)(&toTransform->transformT0));
+ transform_fromhost_VkSRTDataNV(resourceTracker, (VkSRTDataNV*)(&toTransform->transformT1));
+}
+
+void transform_tohost_VkAccelerationStructureMotionInstanceDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceDataNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_tohost_VkAccelerationStructureInstanceKHR(resourceTracker, (VkAccelerationStructureInstanceKHR*)(&toTransform->staticInstance));
+ transform_tohost_VkAccelerationStructureMatrixMotionInstanceNV(resourceTracker, (VkAccelerationStructureMatrixMotionInstanceNV*)(&toTransform->matrixMotionInstance));
+ transform_tohost_VkAccelerationStructureSRTMotionInstanceNV(resourceTracker, (VkAccelerationStructureSRTMotionInstanceNV*)(&toTransform->srtMotionInstance));
+}
+
+void transform_fromhost_VkAccelerationStructureMotionInstanceDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceDataNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_fromhost_VkAccelerationStructureInstanceKHR(resourceTracker, (VkAccelerationStructureInstanceKHR*)(&toTransform->staticInstance));
+ transform_fromhost_VkAccelerationStructureMatrixMotionInstanceNV(resourceTracker, (VkAccelerationStructureMatrixMotionInstanceNV*)(&toTransform->matrixMotionInstance));
+ transform_fromhost_VkAccelerationStructureSRTMotionInstanceNV(resourceTracker, (VkAccelerationStructureSRTMotionInstanceNV*)(&toTransform->srtMotionInstance));
+}
+
+void transform_tohost_VkAccelerationStructureMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_tohost_VkAccelerationStructureMotionInstanceDataNV(resourceTracker, (VkAccelerationStructureMotionInstanceDataNV*)(&toTransform->data));
+}
+
+void transform_fromhost_VkAccelerationStructureMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ transform_fromhost_VkAccelerationStructureMotionInstanceDataNV(resourceTracker, (VkAccelerationStructureMotionInstanceDataNV*)(&toTransform->data));
+}
+
+void transform_tohost_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void transform_tohost_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void transform_tohost_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
ResourceTracker* resourceTracker,
@@ -14873,6 +18085,34 @@
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void transform_tohost_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void transform_tohost_VkDirectFBSurfaceCreateInfoEXT(
ResourceTracker* resourceTracker,
@@ -14899,6 +18139,878 @@
}
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void transform_tohost_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkMutableDescriptorTypeListVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeListVALVE* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkMutableDescriptorTypeListVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeListVALVE* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_tohost_VkMutableDescriptorTypeCreateInfoVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeCreateInfoVALVE* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pMutableDescriptorTypeLists)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->mutableDescriptorTypeListCount; ++i)
+ {
+ transform_tohost_VkMutableDescriptorTypeListVALVE(resourceTracker, (VkMutableDescriptorTypeListVALVE*)(toTransform->pMutableDescriptorTypeLists + i));
+ }
+ }
+ }
+}
+
+void transform_fromhost_VkMutableDescriptorTypeCreateInfoVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeCreateInfoVALVE* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pMutableDescriptorTypeLists)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->mutableDescriptorTypeListCount; ++i)
+ {
+ transform_fromhost_VkMutableDescriptorTypeListVALVE(resourceTracker, (VkMutableDescriptorTypeListVALVE*)(toTransform->pMutableDescriptorTypeLists + i));
+ }
+ }
+ }
+}
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void transform_tohost_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVertexInputBindingDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputBindingDescription2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVertexInputBindingDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputBindingDescription2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkVertexInputAttributeDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputAttributeDescription2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkVertexInputAttributeDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputAttributeDescription2EXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void transform_tohost_VkPhysicalDeviceDrmPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDrmPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceDrmPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDrmPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void transform_tohost_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void transform_tohost_VkImportMemoryZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkImportMemoryZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkMemoryZirconHandlePropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryZirconHandlePropertiesFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkMemoryZirconHandlePropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryZirconHandlePropertiesFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkMemoryGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkMemoryGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void transform_tohost_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void transform_tohost_VkBufferCollectionCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionCreateInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkBufferCollectionCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionCreateInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkImportMemoryBufferCollectionFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryBufferCollectionFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkImportMemoryBufferCollectionFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryBufferCollectionFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkBufferCollectionImageCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionImageCreateInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkBufferCollectionImageCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionImageCreateInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkBufferCollectionConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkBufferCollectionConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkBufferConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkBufferCreateInfo(resourceTracker, (VkBufferCreateInfo*)(&toTransform->createInfo));
+ transform_tohost_VkBufferCollectionConstraintsInfoFUCHSIA(resourceTracker, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toTransform->bufferCollectionConstraints));
+}
+
+void transform_fromhost_VkBufferConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkBufferCreateInfo(resourceTracker, (VkBufferCreateInfo*)(&toTransform->createInfo));
+ transform_fromhost_VkBufferCollectionConstraintsInfoFUCHSIA(resourceTracker, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toTransform->bufferCollectionConstraints));
+}
+
+void transform_tohost_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkSysmemColorSpaceFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSysmemColorSpaceFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkSysmemColorSpaceFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSysmemColorSpaceFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkBufferCollectionPropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionPropertiesFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkSysmemColorSpaceFUCHSIA(resourceTracker, (VkSysmemColorSpaceFUCHSIA*)(&toTransform->sysmemColorSpaceIndex));
+ transform_tohost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->samplerYcbcrConversionComponents));
+}
+
+void transform_fromhost_VkBufferCollectionPropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionPropertiesFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkSysmemColorSpaceFUCHSIA(resourceTracker, (VkSysmemColorSpaceFUCHSIA*)(&toTransform->sysmemColorSpaceIndex));
+ transform_fromhost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->samplerYcbcrConversionComponents));
+}
+
+void transform_tohost_VkImageFormatConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageFormatConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ resourceTracker->transformImpl_VkImageCreateInfo_tohost(&toTransform->imageCreateInfo, 1);
+ transform_tohost_VkImageCreateInfo(resourceTracker, (VkImageCreateInfo*)(&toTransform->imageCreateInfo));
+ if (toTransform->pColorSpaces)
+ {
+ transform_tohost_VkSysmemColorSpaceFUCHSIA(resourceTracker, (VkSysmemColorSpaceFUCHSIA*)(toTransform->pColorSpaces));
+ }
+}
+
+void transform_fromhost_VkImageFormatConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageFormatConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ resourceTracker->transformImpl_VkImageCreateInfo_fromhost(&toTransform->imageCreateInfo, 1);
+ transform_fromhost_VkImageCreateInfo(resourceTracker, (VkImageCreateInfo*)(&toTransform->imageCreateInfo));
+ if (toTransform->pColorSpaces)
+ {
+ transform_fromhost_VkSysmemColorSpaceFUCHSIA(resourceTracker, (VkSysmemColorSpaceFUCHSIA*)(toTransform->pColorSpaces));
+ }
+}
+
+void transform_tohost_VkImageConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pFormatConstraints)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->formatConstraintsCount; ++i)
+ {
+ transform_tohost_VkImageFormatConstraintsInfoFUCHSIA(resourceTracker, (VkImageFormatConstraintsInfoFUCHSIA*)(toTransform->pFormatConstraints + i));
+ }
+ }
+ }
+ transform_tohost_VkBufferCollectionConstraintsInfoFUCHSIA(resourceTracker, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toTransform->bufferCollectionConstraints));
+}
+
+void transform_fromhost_VkImageConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageConstraintsInfoFUCHSIA* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ if (toTransform)
+ {
+ if (toTransform->pFormatConstraints)
+ {
+ for (uint32_t i = 0; i < (uint32_t)toTransform->formatConstraintsCount; ++i)
+ {
+ transform_fromhost_VkImageFormatConstraintsInfoFUCHSIA(resourceTracker, (VkImageFormatConstraintsInfoFUCHSIA*)(toTransform->pFormatConstraints + i));
+ }
+ }
+ }
+ transform_fromhost_VkBufferCollectionConstraintsInfoFUCHSIA(resourceTracker, (VkBufferCollectionConstraintsInfoFUCHSIA*)(&toTransform->bufferCollectionConstraints));
+}
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void transform_tohost_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void transform_tohost_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void transform_tohost_VkMemoryGetRemoteAddressInfoNV(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetRemoteAddressInfoNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkMemoryGetRemoteAddressInfoNV(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetRemoteAddressInfoNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void transform_tohost_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_QNX_screen_surface
+void transform_tohost_VkScreenSurfaceCreateInfoQNX(
+ ResourceTracker* resourceTracker,
+ VkScreenSurfaceCreateInfoQNX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkScreenSurfaceCreateInfoQNX(
+ ResourceTracker* resourceTracker,
+ VkScreenSurfaceCreateInfoQNX* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void transform_tohost_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPipelineColorWriteCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineColorWriteCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPipelineColorWriteCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineColorWriteCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void transform_tohost_VkImportColorBufferGOOGLE(
ResourceTracker* resourceTracker,
@@ -14973,6 +19085,218 @@
}
#endif
+#ifdef VK_EXT_global_priority_query
+void transform_tohost_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
+#ifdef VK_EXT_multi_draw
+void transform_tohost_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkMultiDrawInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkMultiDrawInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_tohost_VkMultiDrawIndexedInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawIndexedInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+void transform_fromhost_VkMultiDrawIndexedInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawIndexedInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+}
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void transform_tohost_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_tohost_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_tohost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->components));
+}
+
+void transform_fromhost_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+ transform_fromhost_VkComponentMapping(resourceTracker, (VkComponentMapping*)(&toTransform->components));
+}
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void transform_tohost_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_tohost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+void transform_fromhost_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toTransform)
+{
+ (void)resourceTracker;
+ (void)toTransform;
+ if (toTransform->pNext)
+ {
+ transform_fromhost_extension_struct(resourceTracker, (void*)(toTransform->pNext));
+ }
+}
+
+#endif
#ifdef VK_KHR_acceleration_structure
void transform_tohost_VkDeviceOrHostAddressKHR(
ResourceTracker* resourceTracker,
@@ -14990,22 +19314,6 @@
(void)toTransform;
}
-void transform_tohost_VkDeviceOrHostAddressConstKHR(
- ResourceTracker* resourceTracker,
- VkDeviceOrHostAddressConstKHR* toTransform)
-{
- (void)resourceTracker;
- (void)toTransform;
-}
-
-void transform_fromhost_VkDeviceOrHostAddressConstKHR(
- ResourceTracker* resourceTracker,
- VkDeviceOrHostAddressConstKHR* toTransform)
-{
- (void)resourceTracker;
- (void)toTransform;
-}
-
void transform_tohost_VkAccelerationStructureBuildRangeInfoKHR(
ResourceTracker* resourceTracker,
VkAccelerationStructureBuildRangeInfoKHR* toTransform)
@@ -16121,6 +20429,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ transform_tohost_VkVideoQueueFamilyProperties2KHR(resourceTracker, reinterpret_cast<VkVideoQueueFamilyProperties2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ transform_tohost_VkVideoProfileKHR(resourceTracker, reinterpret_cast<VkVideoProfileKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ transform_tohost_VkVideoProfilesKHR(resourceTracker, reinterpret_cast<VkVideoProfilesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ transform_tohost_VkPipelineRenderingCreateInfoKHR(resourceTracker, reinterpret_cast<VkPipelineRenderingCreateInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceDynamicRenderingFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ transform_tohost_VkCommandBufferInheritanceRenderingInfoKHR(resourceTracker, reinterpret_cast<VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ transform_tohost_VkRenderingFragmentShadingRateAttachmentInfoKHR(resourceTracker, reinterpret_cast<VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ transform_tohost_VkRenderingFragmentDensityMapAttachmentInfoEXT(resourceTracker, reinterpret_cast<VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ transform_tohost_VkAttachmentSampleCountInfoAMD(resourceTracker, reinterpret_cast<VkAttachmentSampleCountInfoAMD*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ transform_tohost_VkMultiviewPerViewAttributesInfoNVX(resourceTracker, reinterpret_cast<VkMultiviewPerViewAttributesInfoNVX*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -16264,6 +20626,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDevicePresentWaitFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -16271,6 +20640,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ transform_tohost_VkPresentIdKHR(resourceTracker, reinterpret_cast<VkPresentIdKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDevicePresentIdFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ transform_tohost_VkVideoEncodeRateControlInfoKHR(resourceTracker, reinterpret_cast<VkVideoEncodeRateControlInfoKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ transform_tohost_VkMemoryBarrier2KHR(resourceTracker, reinterpret_cast<VkMemoryBarrier2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceSynchronization2FeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ transform_tohost_VkQueueFamilyCheckpointProperties2NV(resourceTracker, reinterpret_cast<VkQueueFamilyCheckpointProperties2NV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ transform_tohost_VkFormatProperties3KHR(resourceTracker, reinterpret_cast<VkFormatProperties3KHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceMaintenance4FeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ transform_tohost_VkPhysicalDeviceMaintenance4PropertiesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -16326,6 +20783,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264VclFrameInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264EmitPictureParametersEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ transform_tohost_VkVideoEncodeH264ProfileEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265VclFrameInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265EmitPictureParametersEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ transform_tohost_VkVideoEncodeH265ProfileEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264ProfileEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264PictureInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264MvcEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264MvcEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH264DpbSlotInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -16508,6 +21081,11 @@
transform_tohost_VkExternalFormatANDROID(resourceTracker, reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ transform_tohost_VkAndroidHardwareBufferFormatProperties2ANDROID(resourceTracker, reinterpret_cast<VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -16617,6 +21195,11 @@
transform_tohost_VkImageDrmFormatModifierExplicitCreateInfoEXT(resourceTracker, reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ transform_tohost_VkDrmFormatModifierPropertiesList2EXT(resourceTracker, reinterpret_cast<VkDrmFormatModifierPropertiesList2EXT*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -16716,6 +21299,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265ProfileEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265PictureInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ transform_tohost_VkVideoDecodeH265DpbSlotInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -16977,6 +21597,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceProvokingVertexFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceProvokingVertexPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -17032,6 +21669,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -17056,6 +21700,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ transform_tohost_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(resourceTracker, reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ transform_tohost_VkCommandBufferInheritanceViewportScissorInfoNV(resourceTracker, reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -17169,6 +21825,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ transform_tohost_VkAccelerationStructureGeometryMotionTrianglesDataNV(resourceTracker, reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ transform_tohost_VkAccelerationStructureMotionInfoNV(resourceTracker, reinterpret_cast<VkAccelerationStructureMotionInfoNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ transform_tohost_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(resourceTracker, reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -17202,6 +21882,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ transform_tohost_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(resourceTracker, reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ transform_tohost_VkMutableDescriptorTypeCreateInfoVALVE(resourceTracker, reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceDrmPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ transform_tohost_VkImportMemoryZirconHandleInfoFUCHSIA(resourceTracker, reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ transform_tohost_VkImportMemoryBufferCollectionFUCHSIA(resourceTracker, reinterpret_cast<VkImportMemoryBufferCollectionFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ transform_tohost_VkBufferCollectionImageCreateInfoFUCHSIA(resourceTracker, reinterpret_cast<VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ transform_tohost_VkBufferCollectionBufferCreateInfoFUCHSIA(resourceTracker, reinterpret_cast<VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ transform_tohost_VkSubpassShadingPipelineCreateInfoHUAWEI(resourceTracker, reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ transform_tohost_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(resourceTracker, reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ transform_tohost_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(resourceTracker, reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ transform_tohost_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(resourceTracker, reinterpret_cast<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ transform_tohost_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(resourceTracker, reinterpret_cast<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceColorWriteEnableFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkPipelineColorWriteCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineColorWriteCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -17219,6 +22013,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ transform_tohost_VkQueueFamilyGlobalPriorityPropertiesEXT(resourceTracker, reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceMultiDrawFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceMultiDrawPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ transform_tohost_VkSamplerBorderColorComponentMappingCreateInfoEXT(resourceTracker, reinterpret_cast<VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ transform_tohost_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
@@ -17696,6 +22533,60 @@
break;
}
#endif
+#ifdef VK_KHR_video_queue
+ case VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR:
+ {
+ transform_fromhost_VkVideoQueueFamilyProperties2KHR(resourceTracker, reinterpret_cast<VkVideoQueueFamilyProperties2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR:
+ {
+ transform_fromhost_VkVideoProfileKHR(resourceTracker, reinterpret_cast<VkVideoProfileKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR:
+ {
+ transform_fromhost_VkVideoProfilesKHR(resourceTracker, reinterpret_cast<VkVideoProfilesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_dynamic_rendering
+ case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR:
+ {
+ transform_fromhost_VkPipelineRenderingCreateInfoKHR(resourceTracker, reinterpret_cast<VkPipelineRenderingCreateInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceDynamicRenderingFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceDynamicRenderingFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR:
+ {
+ transform_fromhost_VkCommandBufferInheritanceRenderingInfoKHR(resourceTracker, reinterpret_cast<VkCommandBufferInheritanceRenderingInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR:
+ {
+ transform_fromhost_VkRenderingFragmentShadingRateAttachmentInfoKHR(resourceTracker, reinterpret_cast<VkRenderingFragmentShadingRateAttachmentInfoKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT:
+ {
+ transform_fromhost_VkRenderingFragmentDensityMapAttachmentInfoEXT(resourceTracker, reinterpret_cast<VkRenderingFragmentDensityMapAttachmentInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD:
+ {
+ transform_fromhost_VkAttachmentSampleCountInfoAMD(resourceTracker, reinterpret_cast<VkAttachmentSampleCountInfoAMD*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX:
+ {
+ transform_fromhost_VkMultiviewPerViewAttributesInfoNVX(resourceTracker, reinterpret_cast<VkMultiviewPerViewAttributesInfoNVX*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_external_memory_win32
case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR:
{
@@ -17839,6 +22730,13 @@
break;
}
#endif
+#ifdef VK_KHR_present_wait
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDevicePresentWaitFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevicePresentWaitFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_pipeline_executable_properties
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR:
{
@@ -17846,6 +22744,94 @@
break;
}
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_present_id
+ case VK_STRUCTURE_TYPE_PRESENT_ID_KHR:
+ {
+ transform_fromhost_VkPresentIdKHR(resourceTracker, reinterpret_cast<VkPresentIdKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDevicePresentIdFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDevicePresentIdFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_video_encode_queue
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR:
+ {
+ transform_fromhost_VkVideoEncodeRateControlInfoKHR(resourceTracker, reinterpret_cast<VkVideoEncodeRateControlInfoKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_synchronization2
+ case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR:
+ {
+ transform_fromhost_VkMemoryBarrier2KHR(resourceTracker, reinterpret_cast<VkMemoryBarrier2KHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceSynchronization2FeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceSynchronization2FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV:
+ {
+ transform_fromhost_VkQueueFamilyCheckpointProperties2NV(resourceTracker, reinterpret_cast<VkQueueFamilyCheckpointProperties2NV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_format_feature_flags2
+ case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR:
+ {
+ transform_fromhost_VkFormatProperties3KHR(resourceTracker, reinterpret_cast<VkFormatProperties3KHR*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_KHR_maintenance4
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceMaintenance4FeaturesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceMaintenance4FeaturesKHR*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR:
+ {
+ transform_fromhost_VkPhysicalDeviceMaintenance4PropertiesKHR(resourceTracker, reinterpret_cast<VkPhysicalDeviceMaintenance4PropertiesKHR*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_ANDROID_native_buffer
case VK_STRUCTURE_TYPE_NATIVE_BUFFER_ANDROID:
{
@@ -17901,6 +22887,122 @@
break;
}
#endif
+#ifdef VK_EXT_video_encode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264VclFrameInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264EmitPictureParametersEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH264ProfileEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_encode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265VclFrameInfoEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265VclFrameInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265EmitPictureParametersEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265EmitPictureParametersEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT:
+ {
+ transform_fromhost_VkVideoEncodeH265ProfileEXT(resourceTracker, reinterpret_cast<VkVideoEncodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_video_decode_h264
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264ProfileEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264PictureInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264MvcEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264MvcEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH264DpbSlotInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH264DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD:
{
@@ -18083,6 +23185,11 @@
transform_fromhost_VkExternalFormatANDROID(resourceTracker, reinterpret_cast<VkExternalFormatANDROID*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID:
+ {
+ transform_fromhost_VkAndroidHardwareBufferFormatProperties2ANDROID(resourceTracker, reinterpret_cast<VkAndroidHardwareBufferFormatProperties2ANDROID*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_inline_uniform_block
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT:
@@ -18192,6 +23299,11 @@
transform_fromhost_VkImageDrmFormatModifierExplicitCreateInfoEXT(resourceTracker, reinterpret_cast<VkImageDrmFormatModifierExplicitCreateInfoEXT*>(structExtension_out));
break;
}
+ case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT:
+ {
+ transform_fromhost_VkDrmFormatModifierPropertiesList2EXT(resourceTracker, reinterpret_cast<VkDrmFormatModifierPropertiesList2EXT*>(structExtension_out));
+ break;
+ }
#endif
#ifdef VK_EXT_validation_cache
case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT:
@@ -18291,6 +23403,43 @@
break;
}
#endif
+#ifdef VK_EXT_video_decode_h265
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265ProfileEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265ProfileEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265CapabilitiesEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265CapabilitiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265SessionCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265SessionCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265SessionParametersAddInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265SessionParametersAddInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265SessionParametersCreateInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265SessionParametersCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265PictureInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265PictureInfoEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT:
+ {
+ transform_fromhost_VkVideoDecodeH265DpbSlotInfoEXT(resourceTracker, reinterpret_cast<VkVideoDecodeH265DpbSlotInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD:
{
@@ -18552,6 +23701,23 @@
break;
}
#endif
+#ifdef VK_EXT_provoking_vertex
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceProvokingVertexFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceProvokingVertexFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceProvokingVertexPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceProvokingVertexPropertiesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineRasterizationProvokingVertexStateCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_full_screen_exclusive
case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT:
{
@@ -18607,6 +23773,13 @@
break;
}
#endif
+#ifdef VK_EXT_shader_atomic_float2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT:
{
@@ -18631,6 +23804,18 @@
break;
}
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV:
+ {
+ transform_fromhost_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(resourceTracker, reinterpret_cast<VkPhysicalDeviceInheritedViewportScissorFeaturesNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV:
+ {
+ transform_fromhost_VkCommandBufferInheritanceViewportScissorInfoNV(resourceTracker, reinterpret_cast<VkCommandBufferInheritanceViewportScissorInfoNV*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_texel_buffer_alignment
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT:
{
@@ -18744,6 +23929,30 @@
break;
}
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV:
+ {
+ transform_fromhost_VkAccelerationStructureGeometryMotionTrianglesDataNV(resourceTracker, reinterpret_cast<VkAccelerationStructureGeometryMotionTrianglesDataNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV:
+ {
+ transform_fromhost_VkAccelerationStructureMotionInfoNV(resourceTracker, reinterpret_cast<VkAccelerationStructureMotionInfoNV*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV:
+ {
+ transform_fromhost_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(resourceTracker, reinterpret_cast<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_EXT_fragment_density_map2
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT:
{
@@ -18777,6 +23986,120 @@
break;
}
#endif
+#ifdef VK_EXT_rgba10x6_formats
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE:
+ {
+ transform_fromhost_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(resourceTracker, reinterpret_cast<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE:
+ {
+ transform_fromhost_VkMutableDescriptorTypeCreateInfoVALVE(resourceTracker, reinterpret_cast<VkMutableDescriptorTypeCreateInfoVALVE*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_physical_device_drm
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceDrmPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceDrmPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_external_memory
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA:
+ {
+ transform_fromhost_VkImportMemoryZirconHandleInfoFUCHSIA(resourceTracker, reinterpret_cast<VkImportMemoryZirconHandleInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+ case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA:
+ {
+ transform_fromhost_VkImportMemoryBufferCollectionFUCHSIA(resourceTracker, reinterpret_cast<VkImportMemoryBufferCollectionFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA:
+ {
+ transform_fromhost_VkBufferCollectionImageCreateInfoFUCHSIA(resourceTracker, reinterpret_cast<VkBufferCollectionImageCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA:
+ {
+ transform_fromhost_VkBufferCollectionBufferCreateInfoFUCHSIA(resourceTracker, reinterpret_cast<VkBufferCollectionBufferCreateInfoFUCHSIA*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+ case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI:
+ {
+ transform_fromhost_VkSubpassShadingPipelineCreateInfoHUAWEI(resourceTracker, reinterpret_cast<VkSubpassShadingPipelineCreateInfoHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI:
+ {
+ transform_fromhost_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(resourceTracker, reinterpret_cast<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI:
+ {
+ transform_fromhost_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(resourceTracker, reinterpret_cast<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI:
+ {
+ transform_fromhost_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(resourceTracker, reinterpret_cast<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_NV_external_memory_rdma
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV:
+ {
+ transform_fromhost_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(resourceTracker, reinterpret_cast<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_color_write_enable
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceColorWriteEnableFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceColorWriteEnableFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkPipelineColorWriteCreateInfoEXT(resourceTracker, reinterpret_cast<VkPipelineColorWriteCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_GOOGLE_gfxstream
case VK_STRUCTURE_TYPE_IMPORT_COLOR_BUFFER_GOOGLE:
{
@@ -18794,6 +24117,49 @@
break;
}
#endif
+#ifdef VK_EXT_global_priority_query
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT:
+ {
+ transform_fromhost_VkQueueFamilyGlobalPriorityPropertiesEXT(resourceTracker, reinterpret_cast<VkQueueFamilyGlobalPriorityPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_multi_draw
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceMultiDrawFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiDrawFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceMultiDrawPropertiesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceMultiDrawPropertiesEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_border_color_swizzle
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT*>(structExtension_out));
+ break;
+ }
+ case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT:
+ {
+ transform_fromhost_VkSamplerBorderColorComponentMappingCreateInfoEXT(resourceTracker, reinterpret_cast<VkSamplerBorderColorComponentMappingCreateInfoEXT*>(structExtension_out));
+ break;
+ }
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT:
+ {
+ transform_fromhost_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(resourceTracker, reinterpret_cast<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT*>(structExtension_out));
+ break;
+ }
+#endif
#ifdef VK_KHR_acceleration_structure
case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR:
{
diff --git a/system/vulkan_enc/goldfish_vk_transform_guest.h b/system/vulkan_enc/goldfish_vk_transform_guest.h
index c1fd0b9..cba6f67 100644
--- a/system/vulkan_enc/goldfish_vk_transform_guest.h
+++ b/system/vulkan_enc/goldfish_vk_transform_guest.h
@@ -165,6 +165,14 @@
ResourceTracker* resourceTracker,
VkMemoryBarrier* toTransform);
+void transform_tohost_VkPipelineCacheHeaderVersionOne(
+ ResourceTracker* resourceTracker,
+ VkPipelineCacheHeaderVersionOne* toTransform);
+
+void transform_fromhost_VkPipelineCacheHeaderVersionOne(
+ ResourceTracker* resourceTracker,
+ VkPipelineCacheHeaderVersionOne* toTransform);
+
void transform_tohost_VkAllocationCallbacks(
ResourceTracker* resourceTracker,
VkAllocationCallbacks* toTransform);
@@ -2094,6 +2102,224 @@
#endif
#ifdef VK_KHR_sampler_mirror_clamp_to_edge
#endif
+#ifdef VK_KHR_video_queue
+void transform_tohost_VkVideoQueueFamilyProperties2KHR(
+ ResourceTracker* resourceTracker,
+ VkVideoQueueFamilyProperties2KHR* toTransform);
+
+void transform_fromhost_VkVideoQueueFamilyProperties2KHR(
+ ResourceTracker* resourceTracker,
+ VkVideoQueueFamilyProperties2KHR* toTransform);
+
+void transform_tohost_VkVideoProfileKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfileKHR* toTransform);
+
+void transform_fromhost_VkVideoProfileKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfileKHR* toTransform);
+
+void transform_tohost_VkVideoProfilesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfilesKHR* toTransform);
+
+void transform_fromhost_VkVideoProfilesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoProfilesKHR* toTransform);
+
+void transform_tohost_VkVideoCapabilitiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCapabilitiesKHR* toTransform);
+
+void transform_fromhost_VkVideoCapabilitiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCapabilitiesKHR* toTransform);
+
+void transform_tohost_VkPhysicalDeviceVideoFormatInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVideoFormatInfoKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceVideoFormatInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVideoFormatInfoKHR* toTransform);
+
+void transform_tohost_VkVideoFormatPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoFormatPropertiesKHR* toTransform);
+
+void transform_fromhost_VkVideoFormatPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoFormatPropertiesKHR* toTransform);
+
+void transform_tohost_VkVideoPictureResourceKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoPictureResourceKHR* toTransform);
+
+void transform_fromhost_VkVideoPictureResourceKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoPictureResourceKHR* toTransform);
+
+void transform_tohost_VkVideoReferenceSlotKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoReferenceSlotKHR* toTransform);
+
+void transform_fromhost_VkVideoReferenceSlotKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoReferenceSlotKHR* toTransform);
+
+void transform_tohost_VkVideoGetMemoryPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoGetMemoryPropertiesKHR* toTransform);
+
+void transform_fromhost_VkVideoGetMemoryPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoGetMemoryPropertiesKHR* toTransform);
+
+void transform_tohost_VkVideoBindMemoryKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBindMemoryKHR* toTransform);
+
+void transform_fromhost_VkVideoBindMemoryKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBindMemoryKHR* toTransform);
+
+void transform_tohost_VkVideoSessionCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionCreateInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoSessionCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionCreateInfoKHR* toTransform);
+
+void transform_tohost_VkVideoSessionParametersCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersCreateInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoSessionParametersCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersCreateInfoKHR* toTransform);
+
+void transform_tohost_VkVideoSessionParametersUpdateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersUpdateInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoSessionParametersUpdateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoSessionParametersUpdateInfoKHR* toTransform);
+
+void transform_tohost_VkVideoBeginCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBeginCodingInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoBeginCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoBeginCodingInfoKHR* toTransform);
+
+void transform_tohost_VkVideoEndCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEndCodingInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoEndCodingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEndCodingInfoKHR* toTransform);
+
+void transform_tohost_VkVideoCodingControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCodingControlInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoCodingControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoCodingControlInfoKHR* toTransform);
+
+#endif
+#ifdef VK_KHR_video_decode_queue
+void transform_tohost_VkVideoDecodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoDecodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeInfoKHR* toTransform);
+
+#endif
+#ifdef VK_KHR_dynamic_rendering
+void transform_tohost_VkRenderingAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingAttachmentInfoKHR* toTransform);
+
+void transform_fromhost_VkRenderingAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingAttachmentInfoKHR* toTransform);
+
+void transform_tohost_VkRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingInfoKHR* toTransform);
+
+void transform_fromhost_VkRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingInfoKHR* toTransform);
+
+void transform_tohost_VkPipelineRenderingCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPipelineRenderingCreateInfoKHR* toTransform);
+
+void transform_fromhost_VkPipelineRenderingCreateInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkPipelineRenderingCreateInfoKHR* toTransform);
+
+void transform_tohost_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceDynamicRenderingFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDynamicRenderingFeaturesKHR* toTransform);
+
+void transform_tohost_VkCommandBufferInheritanceRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceRenderingInfoKHR* toTransform);
+
+void transform_fromhost_VkCommandBufferInheritanceRenderingInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceRenderingInfoKHR* toTransform);
+
+void transform_tohost_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* toTransform);
+
+void transform_fromhost_VkRenderingFragmentShadingRateAttachmentInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentShadingRateAttachmentInfoKHR* toTransform);
+
+void transform_tohost_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* toTransform);
+
+void transform_fromhost_VkRenderingFragmentDensityMapAttachmentInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkRenderingFragmentDensityMapAttachmentInfoEXT* toTransform);
+
+void transform_tohost_VkAttachmentSampleCountInfoAMD(
+ ResourceTracker* resourceTracker,
+ VkAttachmentSampleCountInfoAMD* toTransform);
+
+void transform_fromhost_VkAttachmentSampleCountInfoAMD(
+ ResourceTracker* resourceTracker,
+ VkAttachmentSampleCountInfoAMD* toTransform);
+
+DEFINE_ALIAS_FUNCTION(transform_tohost_VkAttachmentSampleCountInfoAMD, transform_tohost_VkAttachmentSampleCountInfoNV)
+
+DEFINE_ALIAS_FUNCTION(transform_fromhost_VkAttachmentSampleCountInfoAMD, transform_fromhost_VkAttachmentSampleCountInfoNV)
+
+void transform_tohost_VkMultiviewPerViewAttributesInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkMultiviewPerViewAttributesInfoNVX* toTransform);
+
+void transform_fromhost_VkMultiviewPerViewAttributesInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkMultiviewPerViewAttributesInfoNVX* toTransform);
+
+#endif
#ifdef VK_KHR_multiview
DEFINE_ALIAS_FUNCTION(transform_tohost_VkRenderPassMultiviewCreateInfo, transform_tohost_VkRenderPassMultiviewCreateInfoKHR)
@@ -2988,6 +3214,16 @@
DEFINE_ALIAS_FUNCTION(transform_fromhost_VkAttachmentDescriptionStencilLayout, transform_fromhost_VkAttachmentDescriptionStencilLayoutKHR)
#endif
+#ifdef VK_KHR_present_wait
+void transform_tohost_VkPhysicalDevicePresentWaitFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentWaitFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDevicePresentWaitFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentWaitFeaturesKHR* toTransform);
+
+#endif
#ifdef VK_KHR_uniform_buffer_standard_layout
DEFINE_ALIAS_FUNCTION(transform_tohost_VkPhysicalDeviceUniformBufferStandardLayoutFeatures, transform_tohost_VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR)
@@ -3076,6 +3312,24 @@
VkPipelineExecutableInternalRepresentationKHR* toTransform);
#endif
+#ifdef VK_KHR_shader_integer_dot_product
+void transform_tohost_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR* toTransform);
+
+void transform_tohost_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR* toTransform);
+
+#endif
#ifdef VK_KHR_pipeline_library
void transform_tohost_VkPipelineLibraryCreateInfoKHR(
ResourceTracker* resourceTracker,
@@ -3088,6 +3342,154 @@
#endif
#ifdef VK_KHR_shader_non_semantic_info
#endif
+#ifdef VK_KHR_present_id
+void transform_tohost_VkPresentIdKHR(
+ ResourceTracker* resourceTracker,
+ VkPresentIdKHR* toTransform);
+
+void transform_fromhost_VkPresentIdKHR(
+ ResourceTracker* resourceTracker,
+ VkPresentIdKHR* toTransform);
+
+void transform_tohost_VkPhysicalDevicePresentIdFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentIdFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDevicePresentIdFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePresentIdFeaturesKHR* toTransform);
+
+#endif
+#ifdef VK_KHR_video_encode_queue
+void transform_tohost_VkVideoEncodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoEncodeInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeInfoKHR* toTransform);
+
+void transform_tohost_VkVideoEncodeRateControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeRateControlInfoKHR* toTransform);
+
+void transform_fromhost_VkVideoEncodeRateControlInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeRateControlInfoKHR* toTransform);
+
+#endif
+#ifdef VK_KHR_synchronization2
+void transform_tohost_VkMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkMemoryBarrier2KHR* toTransform);
+
+void transform_fromhost_VkMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkMemoryBarrier2KHR* toTransform);
+
+void transform_tohost_VkBufferMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkBufferMemoryBarrier2KHR* toTransform);
+
+void transform_fromhost_VkBufferMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkBufferMemoryBarrier2KHR* toTransform);
+
+void transform_tohost_VkImageMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkImageMemoryBarrier2KHR* toTransform);
+
+void transform_fromhost_VkImageMemoryBarrier2KHR(
+ ResourceTracker* resourceTracker,
+ VkImageMemoryBarrier2KHR* toTransform);
+
+void transform_tohost_VkDependencyInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkDependencyInfoKHR* toTransform);
+
+void transform_fromhost_VkDependencyInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkDependencyInfoKHR* toTransform);
+
+void transform_tohost_VkSemaphoreSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreSubmitInfoKHR* toTransform);
+
+void transform_fromhost_VkSemaphoreSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreSubmitInfoKHR* toTransform);
+
+void transform_tohost_VkCommandBufferSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferSubmitInfoKHR* toTransform);
+
+void transform_fromhost_VkCommandBufferSubmitInfoKHR(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferSubmitInfoKHR* toTransform);
+
+void transform_tohost_VkSubmitInfo2KHR(
+ ResourceTracker* resourceTracker,
+ VkSubmitInfo2KHR* toTransform);
+
+void transform_fromhost_VkSubmitInfo2KHR(
+ ResourceTracker* resourceTracker,
+ VkSubmitInfo2KHR* toTransform);
+
+void transform_tohost_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceSynchronization2FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSynchronization2FeaturesKHR* toTransform);
+
+void transform_tohost_VkQueueFamilyCheckpointProperties2NV(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyCheckpointProperties2NV* toTransform);
+
+void transform_fromhost_VkQueueFamilyCheckpointProperties2NV(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyCheckpointProperties2NV* toTransform);
+
+void transform_tohost_VkCheckpointData2NV(
+ ResourceTracker* resourceTracker,
+ VkCheckpointData2NV* toTransform);
+
+void transform_fromhost_VkCheckpointData2NV(
+ ResourceTracker* resourceTracker,
+ VkCheckpointData2NV* toTransform);
+
+#endif
+#ifdef VK_KHR_shader_subgroup_uniform_control_flow
+void transform_tohost_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR* toTransform);
+
+#endif
+#ifdef VK_KHR_zero_initialize_workgroup_memory
+void transform_tohost_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR* toTransform);
+
+#endif
+#ifdef VK_KHR_workgroup_memory_explicit_layout
+void transform_tohost_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR* toTransform);
+
+#endif
#ifdef VK_KHR_copy_commands2
void transform_tohost_VkBufferCopy2KHR(
ResourceTracker* resourceTracker,
@@ -3178,6 +3580,50 @@
VkResolveImageInfo2KHR* toTransform);
#endif
+#ifdef VK_KHR_format_feature_flags2
+void transform_tohost_VkFormatProperties3KHR(
+ ResourceTracker* resourceTracker,
+ VkFormatProperties3KHR* toTransform);
+
+void transform_fromhost_VkFormatProperties3KHR(
+ ResourceTracker* resourceTracker,
+ VkFormatProperties3KHR* toTransform);
+
+#endif
+#ifdef VK_KHR_maintenance4
+void transform_tohost_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceMaintenance4FeaturesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4FeaturesKHR* toTransform);
+
+void transform_tohost_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceMaintenance4PropertiesKHR(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMaintenance4PropertiesKHR* toTransform);
+
+void transform_tohost_VkDeviceBufferMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceBufferMemoryRequirementsKHR* toTransform);
+
+void transform_fromhost_VkDeviceBufferMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceBufferMemoryRequirementsKHR* toTransform);
+
+void transform_tohost_VkDeviceImageMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceImageMemoryRequirementsKHR* toTransform);
+
+void transform_fromhost_VkDeviceImageMemoryRequirementsKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceImageMemoryRequirementsKHR* toTransform);
+
+#endif
#ifdef VK_ANDROID_native_buffer
void transform_tohost_VkNativeBufferANDROID(
ResourceTracker* resourceTracker,
@@ -3298,6 +3744,32 @@
VkPipelineRasterizationStateStreamCreateInfoEXT* toTransform);
#endif
+#ifdef VK_NVX_binary_import
+void transform_tohost_VkCuModuleCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuModuleCreateInfoNVX* toTransform);
+
+void transform_fromhost_VkCuModuleCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuModuleCreateInfoNVX* toTransform);
+
+void transform_tohost_VkCuFunctionCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuFunctionCreateInfoNVX* toTransform);
+
+void transform_fromhost_VkCuFunctionCreateInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuFunctionCreateInfoNVX* toTransform);
+
+void transform_tohost_VkCuLaunchInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuLaunchInfoNVX* toTransform);
+
+void transform_fromhost_VkCuLaunchInfoNVX(
+ ResourceTracker* resourceTracker,
+ VkCuLaunchInfoNVX* toTransform);
+
+#endif
#ifdef VK_NVX_image_view_handle
void transform_tohost_VkImageViewHandleInfoNVX(
ResourceTracker* resourceTracker,
@@ -3324,6 +3796,228 @@
#endif
#ifdef VK_AMD_shader_ballot
#endif
+#ifdef VK_EXT_video_encode_h264
+void transform_tohost_VkVideoEncodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264CapabilitiesEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264CapabilitiesEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersAddInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264SessionParametersCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264DpbSlotInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264DpbSlotInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264NaluSliceEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264NaluSliceEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264VclFrameInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264VclFrameInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264EmitPictureParametersEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264EmitPictureParametersEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264ProfileEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH264ProfileEXT* toTransform);
+
+#endif
+#ifdef VK_EXT_video_encode_h265
+void transform_tohost_VkVideoEncodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265CapabilitiesEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265CapabilitiesEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersAddInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265SessionParametersCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265DpbSlotInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265DpbSlotInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265ReferenceListsEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ReferenceListsEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265ReferenceListsEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ReferenceListsEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265NaluSliceEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265NaluSliceEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265NaluSliceEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265VclFrameInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265VclFrameInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265VclFrameInfoEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265EmitPictureParametersEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265EmitPictureParametersEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265EmitPictureParametersEXT* toTransform);
+
+void transform_tohost_VkVideoEncodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ProfileEXT* toTransform);
+
+void transform_fromhost_VkVideoEncodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoEncodeH265ProfileEXT* toTransform);
+
+#endif
+#ifdef VK_EXT_video_decode_h264
+void transform_tohost_VkVideoDecodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264ProfileEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264ProfileEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264CapabilitiesEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264CapabilitiesEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersAddInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264SessionParametersCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264PictureInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264PictureInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264MvcEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264MvcEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264MvcEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264MvcEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264DpbSlotInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH264DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH264DpbSlotInfoEXT* toTransform);
+
+#endif
#ifdef VK_AMD_texture_gather_bias_lod
void transform_tohost_VkTextureLODGatherFormatPropertiesAMD(
ResourceTracker* resourceTracker,
@@ -3835,6 +4529,14 @@
ResourceTracker* resourceTracker,
VkExternalFormatANDROID* toTransform);
+void transform_tohost_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ ResourceTracker* resourceTracker,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* toTransform);
+
+void transform_fromhost_VkAndroidHardwareBufferFormatProperties2ANDROID(
+ ResourceTracker* resourceTracker,
+ VkAndroidHardwareBufferFormatProperties2ANDROID* toTransform);
+
#endif
#ifdef VK_EXT_sampler_filter_minmax
DEFINE_ALIAS_FUNCTION(transform_tohost_VkSamplerReductionModeCreateInfo, transform_tohost_VkSamplerReductionModeCreateInfoEXT)
@@ -4071,6 +4773,22 @@
ResourceTracker* resourceTracker,
VkImageDrmFormatModifierPropertiesEXT* toTransform);
+void transform_tohost_VkDrmFormatModifierProperties2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierProperties2EXT* toTransform);
+
+void transform_fromhost_VkDrmFormatModifierProperties2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierProperties2EXT* toTransform);
+
+void transform_tohost_VkDrmFormatModifierPropertiesList2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierPropertiesList2EXT* toTransform);
+
+void transform_fromhost_VkDrmFormatModifierPropertiesList2EXT(
+ ResourceTracker* resourceTracker,
+ VkDrmFormatModifierPropertiesList2EXT* toTransform);
+
#endif
#ifdef VK_EXT_validation_cache
void transform_tohost_VkValidationCacheCreateInfoEXT(
@@ -4412,6 +5130,64 @@
VkPhysicalDeviceShaderCorePropertiesAMD* toTransform);
#endif
+#ifdef VK_EXT_video_decode_h265
+void transform_tohost_VkVideoDecodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265ProfileEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265ProfileEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265ProfileEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265CapabilitiesEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265CapabilitiesEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265CapabilitiesEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265SessionCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265SessionParametersAddInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersAddInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265SessionParametersCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265SessionParametersCreateInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH265PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265PictureInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265PictureInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265PictureInfoEXT* toTransform);
+
+void transform_tohost_VkVideoDecodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265DpbSlotInfoEXT* toTransform);
+
+void transform_fromhost_VkVideoDecodeH265DpbSlotInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkVideoDecodeH265DpbSlotInfoEXT* toTransform);
+
+#endif
#ifdef VK_AMD_memory_overallocation_behavior
void transform_tohost_VkDeviceMemoryOverallocationCreateInfoAMD(
ResourceTracker* resourceTracker,
@@ -4960,6 +5736,32 @@
VkPhysicalDeviceYcbcrImageArraysFeaturesEXT* toTransform);
#endif
+#ifdef VK_EXT_provoking_vertex
+void transform_tohost_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceProvokingVertexFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexFeaturesEXT* toTransform);
+
+void transform_tohost_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceProvokingVertexPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceProvokingVertexPropertiesEXT* toTransform);
+
+void transform_tohost_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineRasterizationProvokingVertexStateCreateInfoEXT* toTransform);
+
+#endif
#ifdef VK_EXT_full_screen_exclusive
void transform_tohost_VkSurfaceFullScreenExclusiveInfoEXT(
ResourceTracker* resourceTracker,
@@ -5058,6 +5860,16 @@
VkPhysicalDeviceExtendedDynamicStateFeaturesEXT* toTransform);
#endif
+#ifdef VK_EXT_shader_atomic_float2
+void transform_tohost_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT* toTransform);
+
+#endif
#ifdef VK_EXT_shader_demote_to_helper_invocation
void transform_tohost_VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT(
ResourceTracker* resourceTracker,
@@ -5174,6 +5986,24 @@
VkGeneratedCommandsMemoryRequirementsInfoNV* toTransform);
#endif
+#ifdef VK_NV_inherited_viewport_scissor
+void transform_tohost_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInheritedViewportScissorFeaturesNV* toTransform);
+
+void transform_tohost_VkCommandBufferInheritanceViewportScissorInfoNV(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceViewportScissorInfoNV* toTransform);
+
+void transform_fromhost_VkCommandBufferInheritanceViewportScissorInfoNV(
+ ResourceTracker* resourceTracker,
+ VkCommandBufferInheritanceViewportScissorInfoNV* toTransform);
+
+#endif
#ifdef VK_EXT_texel_buffer_alignment
void transform_tohost_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(
ResourceTracker* resourceTracker,
@@ -5236,6 +6066,8 @@
VkDeviceDeviceMemoryReportCreateInfoEXT* toTransform);
#endif
+#ifdef VK_EXT_acquire_drm_display
+#endif
#ifdef VK_EXT_robustness2
void transform_tohost_VkPhysicalDeviceRobustness2FeaturesEXT(
ResourceTracker* resourceTracker,
@@ -5364,6 +6196,90 @@
VkPipelineFragmentShadingRateEnumStateCreateInfoNV* toTransform);
#endif
+#ifdef VK_NV_ray_tracing_motion_blur
+void transform_tohost_VkDeviceOrHostAddressConstKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceOrHostAddressConstKHR* toTransform);
+
+void transform_fromhost_VkDeviceOrHostAddressConstKHR(
+ ResourceTracker* resourceTracker,
+ VkDeviceOrHostAddressConstKHR* toTransform);
+
+void transform_tohost_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* toTransform);
+
+void transform_fromhost_VkAccelerationStructureGeometryMotionTrianglesDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureGeometryMotionTrianglesDataNV* toTransform);
+
+void transform_tohost_VkAccelerationStructureMotionInfoNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInfoNV* toTransform);
+
+void transform_fromhost_VkAccelerationStructureMotionInfoNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInfoNV* toTransform);
+
+void transform_tohost_VkAccelerationStructureMatrixMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMatrixMotionInstanceNV* toTransform);
+
+void transform_fromhost_VkAccelerationStructureMatrixMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMatrixMotionInstanceNV* toTransform);
+
+void transform_tohost_VkSRTDataNV(
+ ResourceTracker* resourceTracker,
+ VkSRTDataNV* toTransform);
+
+void transform_fromhost_VkSRTDataNV(
+ ResourceTracker* resourceTracker,
+ VkSRTDataNV* toTransform);
+
+void transform_tohost_VkAccelerationStructureSRTMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureSRTMotionInstanceNV* toTransform);
+
+void transform_fromhost_VkAccelerationStructureSRTMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureSRTMotionInstanceNV* toTransform);
+
+void transform_tohost_VkAccelerationStructureMotionInstanceDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceDataNV* toTransform);
+
+void transform_fromhost_VkAccelerationStructureMotionInstanceDataNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceDataNV* toTransform);
+
+void transform_tohost_VkAccelerationStructureMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceNV* toTransform);
+
+void transform_fromhost_VkAccelerationStructureMotionInstanceNV(
+ ResourceTracker* resourceTracker,
+ VkAccelerationStructureMotionInstanceNV* toTransform);
+
+void transform_tohost_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRayTracingMotionBlurFeaturesNV* toTransform);
+
+#endif
+#ifdef VK_EXT_ycbcr_2plane_444_formats
+void transform_tohost_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT* toTransform);
+
+#endif
#ifdef VK_EXT_fragment_density_map2
void transform_tohost_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(
ResourceTracker* resourceTracker,
@@ -5412,6 +6328,18 @@
VkPhysicalDevice4444FormatsFeaturesEXT* toTransform);
#endif
+#ifdef VK_EXT_rgba10x6_formats
+void transform_tohost_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT* toTransform);
+
+#endif
+#ifdef VK_NV_acquire_winrt_display
+#endif
#ifdef VK_EXT_directfb_surface
void transform_tohost_VkDirectFBSurfaceCreateInfoEXT(
ResourceTracker* resourceTracker,
@@ -5422,6 +6350,296 @@
VkDirectFBSurfaceCreateInfoEXT* toTransform);
#endif
+#ifdef VK_VALVE_mutable_descriptor_type
+void transform_tohost_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE* toTransform);
+
+void transform_tohost_VkMutableDescriptorTypeListVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeListVALVE* toTransform);
+
+void transform_fromhost_VkMutableDescriptorTypeListVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeListVALVE* toTransform);
+
+void transform_tohost_VkMutableDescriptorTypeCreateInfoVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeCreateInfoVALVE* toTransform);
+
+void transform_fromhost_VkMutableDescriptorTypeCreateInfoVALVE(
+ ResourceTracker* resourceTracker,
+ VkMutableDescriptorTypeCreateInfoVALVE* toTransform);
+
+#endif
+#ifdef VK_EXT_vertex_input_dynamic_state
+void transform_tohost_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT* toTransform);
+
+void transform_tohost_VkVertexInputBindingDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputBindingDescription2EXT* toTransform);
+
+void transform_fromhost_VkVertexInputBindingDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputBindingDescription2EXT* toTransform);
+
+void transform_tohost_VkVertexInputAttributeDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputAttributeDescription2EXT* toTransform);
+
+void transform_fromhost_VkVertexInputAttributeDescription2EXT(
+ ResourceTracker* resourceTracker,
+ VkVertexInputAttributeDescription2EXT* toTransform);
+
+#endif
+#ifdef VK_EXT_physical_device_drm
+void transform_tohost_VkPhysicalDeviceDrmPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDrmPropertiesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceDrmPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceDrmPropertiesEXT* toTransform);
+
+#endif
+#ifdef VK_EXT_primitive_topology_list_restart
+void transform_tohost_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT* toTransform);
+
+#endif
+#ifdef VK_FUCHSIA_external_memory
+void transform_tohost_VkImportMemoryZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryZirconHandleInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkImportMemoryZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryZirconHandleInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkMemoryZirconHandlePropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryZirconHandlePropertiesFUCHSIA* toTransform);
+
+void transform_fromhost_VkMemoryZirconHandlePropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryZirconHandlePropertiesFUCHSIA* toTransform);
+
+void transform_tohost_VkMemoryGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetZirconHandleInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkMemoryGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetZirconHandleInfoFUCHSIA* toTransform);
+
+#endif
+#ifdef VK_FUCHSIA_external_semaphore
+void transform_tohost_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkImportSemaphoreZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportSemaphoreZirconHandleInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkSemaphoreGetZirconHandleInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSemaphoreGetZirconHandleInfoFUCHSIA* toTransform);
+
+#endif
+#ifdef VK_FUCHSIA_buffer_collection
+void transform_tohost_VkBufferCollectionCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionCreateInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkBufferCollectionCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionCreateInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkImportMemoryBufferCollectionFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryBufferCollectionFUCHSIA* toTransform);
+
+void transform_fromhost_VkImportMemoryBufferCollectionFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImportMemoryBufferCollectionFUCHSIA* toTransform);
+
+void transform_tohost_VkBufferCollectionImageCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionImageCreateInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkBufferCollectionImageCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionImageCreateInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkBufferCollectionConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionConstraintsInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkBufferCollectionConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionConstraintsInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkBufferConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferConstraintsInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkBufferConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferConstraintsInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkBufferCollectionBufferCreateInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionBufferCreateInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkSysmemColorSpaceFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSysmemColorSpaceFUCHSIA* toTransform);
+
+void transform_fromhost_VkSysmemColorSpaceFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkSysmemColorSpaceFUCHSIA* toTransform);
+
+void transform_tohost_VkBufferCollectionPropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionPropertiesFUCHSIA* toTransform);
+
+void transform_fromhost_VkBufferCollectionPropertiesFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkBufferCollectionPropertiesFUCHSIA* toTransform);
+
+void transform_tohost_VkImageFormatConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageFormatConstraintsInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkImageFormatConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageFormatConstraintsInfoFUCHSIA* toTransform);
+
+void transform_tohost_VkImageConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageConstraintsInfoFUCHSIA* toTransform);
+
+void transform_fromhost_VkImageConstraintsInfoFUCHSIA(
+ ResourceTracker* resourceTracker,
+ VkImageConstraintsInfoFUCHSIA* toTransform);
+
+#endif
+#ifdef VK_HUAWEI_subpass_shading
+void transform_tohost_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* toTransform);
+
+void transform_fromhost_VkSubpassShadingPipelineCreateInfoHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkSubpassShadingPipelineCreateInfoHUAWEI* toTransform);
+
+void transform_tohost_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingFeaturesHUAWEI* toTransform);
+
+void transform_tohost_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceSubpassShadingPropertiesHUAWEI* toTransform);
+
+#endif
+#ifdef VK_HUAWEI_invocation_mask
+void transform_tohost_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceInvocationMaskFeaturesHUAWEI* toTransform);
+
+#endif
+#ifdef VK_NV_external_memory_rdma
+void transform_tohost_VkMemoryGetRemoteAddressInfoNV(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetRemoteAddressInfoNV* toTransform);
+
+void transform_fromhost_VkMemoryGetRemoteAddressInfoNV(
+ ResourceTracker* resourceTracker,
+ VkMemoryGetRemoteAddressInfoNV* toTransform);
+
+void transform_tohost_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExternalMemoryRDMAFeaturesNV* toTransform);
+
+#endif
+#ifdef VK_EXT_extended_dynamic_state2
+void transform_tohost_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceExtendedDynamicState2FeaturesEXT* toTransform);
+
+#endif
+#ifdef VK_QNX_screen_surface
+void transform_tohost_VkScreenSurfaceCreateInfoQNX(
+ ResourceTracker* resourceTracker,
+ VkScreenSurfaceCreateInfoQNX* toTransform);
+
+void transform_fromhost_VkScreenSurfaceCreateInfoQNX(
+ ResourceTracker* resourceTracker,
+ VkScreenSurfaceCreateInfoQNX* toTransform);
+
+#endif
+#ifdef VK_EXT_color_write_enable
+void transform_tohost_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceColorWriteEnableFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceColorWriteEnableFeaturesEXT* toTransform);
+
+void transform_tohost_VkPipelineColorWriteCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineColorWriteCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkPipelineColorWriteCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkPipelineColorWriteCreateInfoEXT* toTransform);
+
+#endif
#ifdef VK_GOOGLE_gfxstream
void transform_tohost_VkImportColorBufferGOOGLE(
ResourceTracker* resourceTracker,
@@ -5448,6 +6666,88 @@
VkImportPhysicalAddressGOOGLE* toTransform);
#endif
+#ifdef VK_EXT_global_priority_query
+void transform_tohost_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT* toTransform);
+
+void transform_tohost_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* toTransform);
+
+void transform_fromhost_VkQueueFamilyGlobalPriorityPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkQueueFamilyGlobalPriorityPropertiesEXT* toTransform);
+
+#endif
+#ifdef VK_EXT_multi_draw
+void transform_tohost_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceMultiDrawFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawFeaturesEXT* toTransform);
+
+void transform_tohost_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceMultiDrawPropertiesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceMultiDrawPropertiesEXT* toTransform);
+
+void transform_tohost_VkMultiDrawInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawInfoEXT* toTransform);
+
+void transform_fromhost_VkMultiDrawInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawInfoEXT* toTransform);
+
+void transform_tohost_VkMultiDrawIndexedInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawIndexedInfoEXT* toTransform);
+
+void transform_fromhost_VkMultiDrawIndexedInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkMultiDrawIndexedInfoEXT* toTransform);
+
+#endif
+#ifdef VK_EXT_load_store_op_none
+#endif
+#ifdef VK_EXT_border_color_swizzle
+void transform_tohost_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDeviceBorderColorSwizzleFeaturesEXT* toTransform);
+
+void transform_tohost_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* toTransform);
+
+void transform_fromhost_VkSamplerBorderColorComponentMappingCreateInfoEXT(
+ ResourceTracker* resourceTracker,
+ VkSamplerBorderColorComponentMappingCreateInfoEXT* toTransform);
+
+#endif
+#ifdef VK_EXT_pageable_device_local_memory
+void transform_tohost_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toTransform);
+
+void transform_fromhost_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(
+ ResourceTracker* resourceTracker,
+ VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT* toTransform);
+
+#endif
#ifdef VK_KHR_acceleration_structure
void transform_tohost_VkDeviceOrHostAddressKHR(
ResourceTracker* resourceTracker,
@@ -5457,14 +6757,6 @@
ResourceTracker* resourceTracker,
VkDeviceOrHostAddressKHR* toTransform);
-void transform_tohost_VkDeviceOrHostAddressConstKHR(
- ResourceTracker* resourceTracker,
- VkDeviceOrHostAddressConstKHR* toTransform);
-
-void transform_fromhost_VkDeviceOrHostAddressConstKHR(
- ResourceTracker* resourceTracker,
- VkDeviceOrHostAddressConstKHR* toTransform);
-
void transform_tohost_VkAccelerationStructureBuildRangeInfoKHR(
ResourceTracker* resourceTracker,
VkAccelerationStructureBuildRangeInfoKHR* toTransform);