// *** THIS FILE IS GENERATED - DO NOT EDIT *** // See safe_struct_generator.py for modifications /*************************************************************************** * * Copyright (c) 2015-2025 The Khronos Group Inc. * Copyright (c) 2015-2025 Valve Corporation * Copyright (c) 2015-2025 LunarG, Inc. * Copyright (c) 2015-2025 Google Inc. * * SPDX-License-Identifier: Apache-2.0 * ****************************************************************************/ // NOLINTBEGIN #include #include #include #include namespace vku { char *SafeStringCopy(const char *in_string) { if (nullptr == in_string) return nullptr; size_t len = std::strlen(in_string); char *dest = new char[len + 1]; dest[len] = '\0'; std::memcpy(dest, in_string, len); return dest; } // clang-format off void *SafePnextCopy(const void *pNext, PNextCopyState* copy_state) { void *first_pNext{}; VkBaseOutStructure *prev_pNext{}; void *safe_pNext{}; while (pNext) { const VkBaseOutStructure *header = reinterpret_cast(pNext); switch (header->sType) { // Add special-case code to copy beloved secret loader structs // Special-case Loader Instance Struct passed to/from layer in pNext chain case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO: { VkLayerInstanceCreateInfo *struct_copy = new VkLayerInstanceCreateInfo; // TODO: Uses original VkLayerInstanceLink* chain, which should be okay for our uses memcpy(struct_copy, pNext, sizeof(VkLayerInstanceCreateInfo)); safe_pNext = struct_copy; break; } // Special-case Loader Device Struct passed to/from layer in pNext chain case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO: { VkLayerDeviceCreateInfo *struct_copy = new VkLayerDeviceCreateInfo; // TODO: Uses original VkLayerDeviceLink*, which should be okay for our uses memcpy(struct_copy, pNext, sizeof(VkLayerDeviceCreateInfo)); safe_pNext = struct_copy; break; } case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: safe_pNext = new safe_VkShaderModuleCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO: safe_pNext = new safe_VkComputePipelineCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO: safe_pNext = new safe_VkGraphicsPipelineCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: safe_pNext = new safe_VkPipelineLayoutCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceSubgroupProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: safe_pNext = new safe_VkPhysicalDevice16BitStorageFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: safe_pNext = new safe_VkMemoryDedicatedRequirements(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: safe_pNext = new safe_VkMemoryDedicatedAllocateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: safe_pNext = new safe_VkMemoryAllocateFlagsInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: safe_pNext = new safe_VkDeviceGroupRenderPassBeginInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: safe_pNext = new safe_VkDeviceGroupCommandBufferBeginInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: safe_pNext = new safe_VkDeviceGroupSubmitInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: safe_pNext = new safe_VkDeviceGroupBindSparseInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: safe_pNext = new safe_VkBindBufferMemoryDeviceGroupInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: safe_pNext = new safe_VkBindImageMemoryDeviceGroupInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: safe_pNext = new safe_VkDeviceGroupDeviceCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: safe_pNext = new safe_VkPhysicalDeviceFeatures2(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: safe_pNext = new safe_VkPhysicalDevicePointClippingProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: safe_pNext = new safe_VkRenderPassInputAttachmentAspectCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: safe_pNext = new safe_VkImageViewUsageCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: safe_pNext = new safe_VkPipelineTessellationDomainOriginStateCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: safe_pNext = new safe_VkRenderPassMultiviewCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: safe_pNext = new safe_VkPhysicalDeviceMultiviewFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceMultiviewProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVariablePointersFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: safe_pNext = new safe_VkPhysicalDeviceProtectedMemoryFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceProtectedMemoryProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: safe_pNext = new safe_VkProtectedSubmitInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: safe_pNext = new safe_VkSamplerYcbcrConversionInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: safe_pNext = new safe_VkBindImagePlaneMemoryInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: safe_pNext = new safe_VkImagePlaneMemoryRequirementsInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: safe_pNext = new safe_VkPhysicalDeviceSamplerYcbcrConversionFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: safe_pNext = new safe_VkSamplerYcbcrConversionImageFormatProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: safe_pNext = new safe_VkPhysicalDeviceExternalImageFormatInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: safe_pNext = new safe_VkExternalImageFormatProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceIDProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: safe_pNext = new safe_VkExternalMemoryImageCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: safe_pNext = new safe_VkExternalMemoryBufferCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: safe_pNext = new safe_VkExportMemoryAllocateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: safe_pNext = new safe_VkExportFenceCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: safe_pNext = new safe_VkExportSemaphoreCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceMaintenance3Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderDrawParametersFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVulkan11Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceVulkan11Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVulkan12Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceVulkan12Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO: safe_pNext = new safe_VkImageFormatListCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: safe_pNext = new safe_VkPhysicalDevice8BitStorageFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceDriverProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderAtomicInt64Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderFloat16Int8Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceFloatControlsProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO: safe_pNext = new safe_VkDescriptorSetLayoutBindingFlagsCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES: safe_pNext = new safe_VkPhysicalDeviceDescriptorIndexingFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceDescriptorIndexingProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO: safe_pNext = new safe_VkDescriptorSetVariableDescriptorCountAllocateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT: safe_pNext = new safe_VkDescriptorSetVariableDescriptorCountLayoutSupport(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE: safe_pNext = new safe_VkSubpassDescriptionDepthStencilResolve(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceDepthStencilResolveProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES: safe_pNext = new safe_VkPhysicalDeviceScalarBlockLayoutFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO: safe_pNext = new safe_VkImageStencilUsageCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO: safe_pNext = new safe_VkSamplerReductionModeCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceSamplerFilterMinmaxProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVulkanMemoryModelFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES: safe_pNext = new safe_VkPhysicalDeviceImagelessFramebufferFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO: safe_pNext = new safe_VkFramebufferAttachmentsCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO: safe_pNext = new safe_VkRenderPassAttachmentBeginInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES: safe_pNext = new safe_VkPhysicalDeviceUniformBufferStandardLayoutFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES: safe_pNext = new safe_VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT: safe_pNext = new safe_VkAttachmentReferenceStencilLayout(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT: safe_pNext = new safe_VkAttachmentDescriptionStencilLayout(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES: safe_pNext = new safe_VkPhysicalDeviceHostQueryResetFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES: safe_pNext = new safe_VkPhysicalDeviceTimelineSemaphoreFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceTimelineSemaphoreProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO: safe_pNext = new safe_VkSemaphoreTypeCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO: safe_pNext = new safe_VkTimelineSemaphoreSubmitInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES: safe_pNext = new safe_VkPhysicalDeviceBufferDeviceAddressFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO: safe_pNext = new safe_VkBufferOpaqueCaptureAddressCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO: safe_pNext = new safe_VkMemoryOpaqueCaptureAddressAllocateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVulkan13Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceVulkan13Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO: safe_pNext = new safe_VkPipelineCreationFeedbackCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderTerminateInvocationFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: safe_pNext = new safe_VkPhysicalDevicePrivateDataFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO: safe_pNext = new safe_VkDevicePrivateDataCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES: safe_pNext = new safe_VkPhysicalDevicePipelineCreationCacheControlFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2: safe_pNext = new safe_VkMemoryBarrier2(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES: safe_pNext = new safe_VkPhysicalDeviceSynchronization2Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES: safe_pNext = new safe_VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES: safe_pNext = new safe_VkPhysicalDeviceImageRobustnessFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES: safe_pNext = new safe_VkPhysicalDeviceSubgroupSizeControlFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceSubgroupSizeControlProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO: safe_pNext = new safe_VkPipelineShaderStageRequiredSubgroupSizeCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES: safe_pNext = new safe_VkPhysicalDeviceInlineUniformBlockFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceInlineUniformBlockProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK: safe_pNext = new safe_VkWriteDescriptorSetInlineUniformBlock(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO: safe_pNext = new safe_VkDescriptorPoolInlineUniformBlockCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES: safe_pNext = new safe_VkPhysicalDeviceTextureCompressionASTCHDRFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO: safe_pNext = new safe_VkPipelineRenderingCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES: safe_pNext = new safe_VkPhysicalDeviceDynamicRenderingFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO: safe_pNext = new safe_VkCommandBufferInheritanceRenderingInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderIntegerDotProductFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceShaderIntegerDotProductProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceTexelBufferAlignmentProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3: safe_pNext = new safe_VkFormatProperties3(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES: safe_pNext = new safe_VkPhysicalDeviceMaintenance4Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceMaintenance4Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVulkan14Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceVulkan14Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO: safe_pNext = new safe_VkDeviceQueueGlobalPriorityCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES: safe_pNext = new safe_VkPhysicalDeviceGlobalPriorityQueryFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES: safe_pNext = new safe_VkQueueFamilyGlobalPriorityProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderSubgroupRotateFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderFloatControls2Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES: safe_pNext = new safe_VkPhysicalDeviceShaderExpectAssumeFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES: safe_pNext = new safe_VkPhysicalDeviceLineRasterizationFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceLineRasterizationProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO: safe_pNext = new safe_VkPipelineRasterizationLineStateCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceVertexAttributeDivisorProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO: safe_pNext = new safe_VkPipelineVertexInputDivisorStateCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES: safe_pNext = new safe_VkPhysicalDeviceVertexAttributeDivisorFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES: safe_pNext = new safe_VkPhysicalDeviceIndexTypeUint8Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES: safe_pNext = new safe_VkPhysicalDeviceMaintenance5Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceMaintenance5Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO: safe_pNext = new safe_VkPipelineCreateFlags2CreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO: safe_pNext = new safe_VkBufferUsageFlags2CreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES: safe_pNext = new safe_VkPhysicalDevicePushDescriptorProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES: safe_pNext = new safe_VkPhysicalDeviceDynamicRenderingLocalReadFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO: safe_pNext = new safe_VkRenderingAttachmentLocationInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO: safe_pNext = new safe_VkRenderingInputAttachmentIndexInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES: safe_pNext = new safe_VkPhysicalDeviceMaintenance6Features(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceMaintenance6Properties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS: safe_pNext = new safe_VkBindMemoryStatus(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES: safe_pNext = new safe_VkPhysicalDevicePipelineProtectedAccessFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES: safe_pNext = new safe_VkPhysicalDevicePipelineRobustnessFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES: safe_pNext = new safe_VkPhysicalDevicePipelineRobustnessProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO: safe_pNext = new safe_VkPipelineRobustnessCreateInfo(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES: safe_pNext = new safe_VkPhysicalDeviceHostImageCopyFeatures(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES: safe_pNext = new safe_VkPhysicalDeviceHostImageCopyProperties(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE: safe_pNext = new safe_VkSubresourceHostMemcpySize(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY: safe_pNext = new safe_VkHostImageCopyDevicePerformanceQuery(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR: safe_pNext = new safe_VkImageSwapchainCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR: safe_pNext = new safe_VkBindImageMemorySwapchainInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR: safe_pNext = new safe_VkDeviceGroupPresentInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR: safe_pNext = new safe_VkDeviceGroupSwapchainCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR: safe_pNext = new safe_VkDisplayPresentInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR: safe_pNext = new safe_VkQueueFamilyQueryResultStatusPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR: safe_pNext = new safe_VkQueueFamilyVideoPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR: safe_pNext = new safe_VkVideoProfileListInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoDecodeCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeUsageInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeH264CapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_KHR: safe_pNext = new safe_VkVideoEncodeH264QualityLevelPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264SessionCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264SessionParametersAddInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264SessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264SessionParametersGetInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264SessionParametersFeedbackInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PICTURE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264PictureInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264DpbSlotInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264ProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264RateControlInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264RateControlLayerInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH264GopRemainingFrameInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeH265CapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265SessionCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_KHR: safe_pNext = new safe_VkVideoEncodeH265QualityLevelPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265SessionParametersAddInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265SessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265SessionParametersGetInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265SessionParametersFeedbackInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PICTURE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265PictureInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265DpbSlotInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265ProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265RateControlInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265RateControlLayerInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_KHR: safe_pNext = new safe_VkVideoEncodeH265GopRemainingFrameInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH264ProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoDecodeH264CapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH264SessionParametersAddInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH264SessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH264PictureInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH264DpbSlotInfoKHR(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR: safe_pNext = new safe_VkImportMemoryWin32HandleInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR: safe_pNext = new safe_VkExportMemoryWin32HandleInfoKHR(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR: safe_pNext = new safe_VkImportMemoryFdInfoKHR(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR: safe_pNext = new safe_VkWin32KeyedMutexAcquireReleaseInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: safe_pNext = new safe_VkExportSemaphoreWin32HandleInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR: safe_pNext = new safe_VkD3D12FenceSubmitInfoKHR(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: safe_pNext = new safe_VkPresentRegionsKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR: safe_pNext = new safe_VkSharedPresentSurfaceCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR: safe_pNext = new safe_VkExportFenceWin32HandleInfoKHR(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDevicePerformanceQueryFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDevicePerformanceQueryPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR: safe_pNext = new safe_VkQueryPoolPerformanceCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR: safe_pNext = new safe_VkPerformanceQuerySubmitInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_BFLOAT16_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceShaderBfloat16FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDevicePortabilitySubsetFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDevicePortabilitySubsetPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceShaderClockFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH265ProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoDecodeH265CapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH265SessionParametersAddInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH265SessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH265PictureInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH265DpbSlotInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: safe_pNext = new safe_VkFragmentShadingRateAttachmentInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR: safe_pNext = new safe_VkPipelineFragmentShadingRateStateCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceFragmentShadingRateFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceFragmentShadingRatePropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: safe_pNext = new safe_VkRenderingFragmentShadingRateAttachmentInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceShaderQuadControlFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR: safe_pNext = new safe_VkSurfaceProtectedCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDevicePresentWaitFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR: safe_pNext = new safe_VkPipelineLibraryCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PRESENT_ID_KHR: safe_pNext = new safe_VkPresentIdKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDevicePresentIdFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR: safe_pNext = new safe_VkQueryPoolVideoEncodeFeedbackCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeUsageInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR: safe_pNext = new safe_VkVideoEncodeRateControlInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR: safe_pNext = new safe_VkVideoEncodeQualityLevelInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MAXIMAL_RECONVERGENCE_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDevicePipelineBinaryFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDevicePipelineBinaryPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR: safe_pNext = new safe_VkDevicePipelineBinaryInternalCacheControlKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_BINARY_INFO_KHR: safe_pNext = new safe_VkPipelineBinaryInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrixFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrixPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeAV1ProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoDecodeAV1CapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeAV1SessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_KHR: safe_pNext = new safe_VkVideoDecodeAV1PictureInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR: safe_pNext = new safe_VkVideoDecodeAV1DpbSlotInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_AV1_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceVideoEncodeAV1FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeAV1CapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_QUALITY_LEVEL_PROPERTIES_KHR: safe_pNext = new safe_VkVideoEncodeAV1QualityLevelPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_SESSION_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1SessionCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1SessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_PICTURE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1PictureInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_DPB_SLOT_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1DpbSlotInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_PROFILE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1ProfileInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_GOP_REMAINING_FRAME_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1GopRemainingFrameInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_RATE_CONTROL_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1RateControlInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_RATE_CONTROL_LAYER_INFO_KHR: safe_pNext = new safe_VkVideoEncodeAV1RateControlLayerInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_1_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceVideoMaintenance1FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_INLINE_QUERY_INFO_KHR: safe_pNext = new safe_VkVideoInlineQueryInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeQuantizationMapCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_FORMAT_QUANTIZATION_MAP_PROPERTIES_KHR: safe_pNext = new safe_VkVideoFormatQuantizationMapPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_INFO_KHR: safe_pNext = new safe_VkVideoEncodeQuantizationMapInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_SESSION_PARAMETERS_CREATE_INFO_KHR: safe_pNext = new safe_VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUANTIZATION_MAP_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUANTIZATION_MAP_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeH264QuantizationMapCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUANTIZATION_MAP_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeH265QuantizationMapCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_FORMAT_H265_QUANTIZATION_MAP_PROPERTIES_KHR: safe_pNext = new safe_VkVideoFormatH265QuantizationMapPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_QUANTIZATION_MAP_CAPABILITIES_KHR: safe_pNext = new safe_VkVideoEncodeAV1QuantizationMapCapabilitiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_FORMAT_AV1_QUANTIZATION_MAP_PROPERTIES_KHR: safe_pNext = new safe_VkVideoFormatAV1QuantizationMapPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceMaintenance7FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceMaintenance7PropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR: safe_pNext = new safe_VkPhysicalDeviceLayeredApiPropertiesListKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_VULKAN_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceLayeredApiVulkanPropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_8_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceMaintenance8FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_BARRIER_ACCESS_FLAGS_3_KHR: safe_pNext = new safe_VkMemoryBarrierAccessFlags3KHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_2_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceVideoMaintenance2FeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_INLINE_SESSION_PARAMETERS_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH264InlineSessionParametersInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_INLINE_SESSION_PARAMETERS_INFO_KHR: safe_pNext = new safe_VkVideoDecodeH265InlineSessionParametersInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_INLINE_SESSION_PARAMETERS_INFO_KHR: safe_pNext = new safe_VkVideoDecodeAV1InlineSessionParametersInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceDepthClampZeroOneFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT: safe_pNext = new safe_VkDebugReportCallbackCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD: safe_pNext = new safe_VkPipelineRasterizationStateRasterizationOrderAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV: safe_pNext = new safe_VkDedicatedAllocationImageCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV: safe_pNext = new safe_VkDedicatedAllocationBufferCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV: safe_pNext = new safe_VkDedicatedAllocationMemoryAllocateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceTransformFeedbackFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceTransformFeedbackPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineRasterizationStateStreamCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_CU_MODULE_TEXTURING_MODE_CREATE_INFO_NVX: safe_pNext = new safe_VkCuModuleTexturingModeCreateInfoNVX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD: safe_pNext = new safe_VkTextureLODGatherFormatPropertiesAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCornerSampledImageFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV: safe_pNext = new safe_VkExternalMemoryImageCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV: safe_pNext = new safe_VkExportMemoryAllocateInfoNV(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV: safe_pNext = new safe_VkImportMemoryWin32HandleInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV: safe_pNext = new safe_VkExportMemoryWin32HandleInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV: safe_pNext = new safe_VkWin32KeyedMutexAcquireReleaseInfoNV(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT: safe_pNext = new safe_VkValidationFlagsEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT: safe_pNext = new safe_VkImageViewASTCDecodeModeEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceASTCDecodeFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceConditionalRenderingFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT: safe_pNext = new safe_VkCommandBufferInheritanceConditionalRenderingInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineViewportWScalingStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT: safe_pNext = new safe_VkSwapchainCounterCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE: safe_pNext = new safe_VkPresentTimesInfoGOOGLE(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX: safe_pNext = new safe_VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX: safe_pNext = new safe_VkMultiviewPerViewAttributesInfoNVX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineViewportSwizzleStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceDiscardRectanglePropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineDiscardRectangleStateCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceConservativeRasterizationPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineRasterizationConservativeStateCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDepthClipEnableFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineRasterizationDepthClipStateCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RELAXED_LINE_RASTERIZATION_FEATURES_IMG: safe_pNext = new safe_VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT: safe_pNext = new safe_VkDebugUtilsObjectNameInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT: safe_pNext = new safe_VkDebugUtilsMessengerCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_ANDROID_KHR case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID: safe_pNext = new safe_VkAndroidHardwareBufferUsageANDROID(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID: safe_pNext = new safe_VkAndroidHardwareBufferFormatPropertiesANDROID(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID: safe_pNext = new safe_VkImportAndroidHardwareBufferInfoANDROID(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID: safe_pNext = new safe_VkExternalFormatANDROID(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID: safe_pNext = new safe_VkAndroidHardwareBufferFormatProperties2ANDROID(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_ANDROID_KHR #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX: safe_pNext = new safe_VkPhysicalDeviceShaderEnqueueFeaturesAMDX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX: safe_pNext = new safe_VkPhysicalDeviceShaderEnqueuePropertiesAMDX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX: safe_pNext = new safe_VkExecutionGraphPipelineCreateInfoAMDX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX: safe_pNext = new safe_VkPipelineShaderStageNodeCreateInfoAMDX(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD: safe_pNext = new safe_VkAttachmentSampleCountInfoAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT: safe_pNext = new safe_VkSampleLocationsInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT: safe_pNext = new safe_VkRenderPassSampleLocationsBeginInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineSampleLocationsStateCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceSampleLocationsPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineColorBlendAdvancedStateCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineCoverageToColorStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineCoverageModulationStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceShaderSMBuiltinsPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceShaderSMBuiltinsFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT: safe_pNext = new safe_VkDrmFormatModifierPropertiesListEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT: safe_pNext = new safe_VkPhysicalDeviceImageDrmFormatModifierInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT: safe_pNext = new safe_VkImageDrmFormatModifierListCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT: safe_pNext = new safe_VkImageDrmFormatModifierExplicitCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT: safe_pNext = new safe_VkDrmFormatModifierPropertiesList2EXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT: safe_pNext = new safe_VkShaderModuleValidationCacheCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineViewportShadingRateImageStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceShadingRateImageFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceShadingRateImagePropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineViewportCoarseSampleOrderStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV: safe_pNext = new safe_VkWriteDescriptorSetAccelerationStructureNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceRayTracingPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineRepresentativeFragmentTestStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT: safe_pNext = new safe_VkPhysicalDeviceImageViewImageFormatInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT: safe_pNext = new safe_VkFilterCubicImageViewImageFormatPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT: safe_pNext = new safe_VkImportMemoryHostPointerInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceExternalMemoryHostPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD: safe_pNext = new safe_VkPipelineCompilerControlCreateInfoAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD: safe_pNext = new safe_VkPhysicalDeviceShaderCorePropertiesAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD: safe_pNext = new safe_VkDeviceMemoryOverallocationCreateInfoAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_GGP case VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP: safe_pNext = new safe_VkPresentFrameTokenGGP(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_GGP case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceMeshShaderFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceMeshShaderPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceShaderImageFootprintFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineViewportExclusiveScissorStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceExclusiveScissorFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV: safe_pNext = new safe_VkQueueFamilyCheckpointPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV: safe_pNext = new safe_VkQueueFamilyCheckpointProperties2NV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL: safe_pNext = new safe_VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL: safe_pNext = new safe_VkQueryPoolPerformanceQueryCreateInfoINTEL(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDevicePCIBusInfoPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD: safe_pNext = new safe_VkDisplayNativeHdrSurfaceCapabilitiesAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD: safe_pNext = new safe_VkSwapchainDisplayNativeHdrCreateInfoAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentDensityMapFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentDensityMapPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT: safe_pNext = new safe_VkRenderPassFragmentDensityMapCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT: safe_pNext = new safe_VkRenderingFragmentDensityMapAttachmentInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD: safe_pNext = new safe_VkPhysicalDeviceShaderCoreProperties2AMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD: safe_pNext = new safe_VkPhysicalDeviceCoherentMemoryFeaturesAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceMemoryBudgetPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceMemoryPriorityFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT: safe_pNext = new safe_VkMemoryPriorityAllocateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceBufferDeviceAddressFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT: safe_pNext = new safe_VkBufferDeviceAddressCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT: safe_pNext = new safe_VkValidationFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrixFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrixPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCoverageReductionModeFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineCoverageReductionStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceYcbcrImageArraysFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceProvokingVertexFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceProvokingVertexPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineRasterizationProvokingVertexStateCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT: safe_pNext = new safe_VkSurfaceFullScreenExclusiveInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT: safe_pNext = new safe_VkSurfaceCapabilitiesFullScreenExclusiveEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT: safe_pNext = new safe_VkSurfaceFullScreenExclusiveWin32InfoEXT(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderAtomicFloatFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceExtendedDynamicStateFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAP_MEMORY_PLACED_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceMapMemoryPlacedFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAP_MEMORY_PLACED_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceMapMemoryPlacedPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MEMORY_MAP_PLACED_INFO_EXT: safe_pNext = new safe_VkMemoryMapPlacedInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT: safe_pNext = new safe_VkSurfacePresentModeEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT: safe_pNext = new safe_VkSurfacePresentScalingCapabilitiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT: safe_pNext = new safe_VkSurfacePresentModeCompatibilityEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT: safe_pNext = new safe_VkSwapchainPresentFenceInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT: safe_pNext = new safe_VkSwapchainPresentModesCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT: safe_pNext = new safe_VkSwapchainPresentModeInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT: safe_pNext = new safe_VkSwapchainPresentScalingCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV: safe_pNext = new safe_VkGraphicsPipelineShaderGroupsCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceInheritedViewportScissorFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV: safe_pNext = new safe_VkCommandBufferInheritanceViewportScissorInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM: safe_pNext = new safe_VkRenderPassTransformBeginInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM: safe_pNext = new safe_VkCommandBufferInheritanceRenderPassTransformInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDepthBiasControlFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEPTH_BIAS_REPRESENTATION_INFO_EXT: safe_pNext = new safe_VkDepthBiasRepresentationInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDeviceMemoryReportFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT: safe_pNext = new safe_VkDeviceDeviceMemoryReportCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceRobustness2FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceRobustness2PropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT: safe_pNext = new safe_VkSamplerCustomBorderColorCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceCustomBorderColorPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceCustomBorderColorFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV: safe_pNext = new safe_VkPhysicalDevicePresentBarrierFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV: safe_pNext = new safe_VkSurfaceCapabilitiesPresentBarrierNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV: safe_pNext = new safe_VkSwapchainPresentBarrierCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceDiagnosticsConfigFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV: safe_pNext = new safe_VkDeviceDiagnosticsConfigCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCudaKernelLaunchFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceCudaKernelLaunchPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV: safe_pNext = new safe_VkQueryLowLatencySupportNV(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT: safe_pNext = new safe_VkExportMetalObjectCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT: safe_pNext = new safe_VkExportMetalDeviceInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT: safe_pNext = new safe_VkExportMetalCommandQueueInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT: safe_pNext = new safe_VkExportMetalBufferInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT: safe_pNext = new safe_VkImportMetalBufferInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT: safe_pNext = new safe_VkExportMetalTextureInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT: safe_pNext = new safe_VkImportMetalTextureInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT: safe_pNext = new safe_VkExportMetalIOSurfaceInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT: safe_pNext = new safe_VkImportMetalIOSurfaceInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT: safe_pNext = new safe_VkExportMetalSharedEventInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT: safe_pNext = new safe_VkImportMetalSharedEventInfoEXT(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceDescriptorBufferPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDescriptorBufferFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT: safe_pNext = new safe_VkDescriptorBufferBindingPushDescriptorBufferHandleEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT: safe_pNext = new safe_VkOpaqueCaptureDescriptorDataCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT: safe_pNext = new safe_VkGraphicsPipelineLibraryCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD: safe_pNext = new safe_VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV: safe_pNext = new safe_VkPipelineFragmentShadingRateEnumStateCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV: safe_pNext = new safe_VkAccelerationStructureGeometryMotionTrianglesDataNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV: safe_pNext = new safe_VkAccelerationStructureMotionInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceRayTracingMotionBlurFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentDensityMap2FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentDensityMap2PropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM: safe_pNext = new safe_VkCopyCommandTransformInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceImageCompressionControlFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT: safe_pNext = new safe_VkImageCompressionControlEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: safe_pNext = new safe_VkImageCompressionPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevice4444FormatsFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceFaultFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT: safe_pNext = new safe_VkMutableDescriptorTypeCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceDrmPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceAddressBindingReportFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT: safe_pNext = new safe_VkDeviceAddressBindingCallbackDataEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDepthClipControlFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineViewportDepthClipControlCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_FUCHSIA case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA: safe_pNext = new safe_VkImportMemoryZirconHandleInfoFUCHSIA(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA: safe_pNext = new safe_VkImportMemoryBufferCollectionFUCHSIA(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA: safe_pNext = new safe_VkBufferCollectionImageCreateInfoFUCHSIA(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA: safe_pNext = new safe_VkBufferCollectionBufferCreateInfoFUCHSIA(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_FUCHSIA case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI: safe_pNext = new safe_VkSubpassShadingPipelineCreateInfoHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceSubpassShadingFeaturesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceSubpassShadingPropertiesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceInvocationMaskFeaturesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceExternalMemoryRDMAFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevicePipelinePropertiesFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAME_BOUNDARY_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceFrameBoundaryFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_FRAME_BOUNDARY_EXT: safe_pNext = new safe_VkFrameBoundaryEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT: safe_pNext = new safe_VkSubpassResolvePerformanceQueryEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT: safe_pNext = new safe_VkMultisampledRenderToSingleSampledInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceExtendedDynamicState2FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceColorWriteEnableFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineColorWriteCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceImageViewMinLodFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT: safe_pNext = new safe_VkImageViewMinLodCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceMultiDrawFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceMultiDrawPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceImage2DViewOf3DFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderTileImageFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderTileImagePropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceOpacityMicromapFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceOpacityMicromapPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT: safe_pNext = new safe_VkAccelerationStructureTrianglesOpacityMicromapEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceDisplacementMicromapFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceDisplacementMicromapPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV: safe_pNext = new safe_VkAccelerationStructureTrianglesDisplacementMicromapNV(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_VRS_FEATURES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceBorderColorSwizzleFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT: safe_pNext = new safe_VkSamplerBorderColorComponentMappingCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM: safe_pNext = new safe_VkPhysicalDeviceShaderCorePropertiesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DEVICE_QUEUE_SHADER_CORE_CONTROL_CREATE_INFO_ARM: safe_pNext = new safe_VkDeviceQueueShaderCoreControlCreateInfoARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_FEATURES_ARM: safe_pNext = new safe_VkPhysicalDeviceSchedulingControlsFeaturesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_PROPERTIES_ARM: safe_pNext = new safe_VkPhysicalDeviceSchedulingControlsPropertiesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT: safe_pNext = new safe_VkImageViewSlicedCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE: safe_pNext = new safe_VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_FEATURES_ARM: safe_pNext = new safe_VkPhysicalDeviceRenderPassStripedFeaturesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_PROPERTIES_ARM: safe_pNext = new safe_VkPhysicalDeviceRenderPassStripedPropertiesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_BEGIN_INFO_ARM: safe_pNext = new safe_VkRenderPassStripeBeginInfoARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_SUBMIT_INFO_ARM: safe_pNext = new safe_VkRenderPassStripeSubmitInfoARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT: safe_pNext = new safe_VkRenderPassFragmentDensityMapOffsetEndInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCopyMemoryIndirectFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceCopyMemoryIndirectPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceMemoryDecompressionFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceMemoryDecompressionPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV: safe_pNext = new safe_VkComputePipelineIndirectBufferInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_LINEAR_SWEPT_SPHERES_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_LINEAR_SWEPT_SPHERES_DATA_NV: safe_pNext = new safe_VkAccelerationStructureGeometryLinearSweptSpheresDataNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_SPHERES_DATA_NV: safe_pNext = new safe_VkAccelerationStructureGeometrySpheresDataNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceLinearColorAttachmentFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM: safe_pNext = new safe_VkImageViewSampleWeightCreateInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceImageProcessingFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM: safe_pNext = new safe_VkPhysicalDeviceImageProcessingPropertiesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceNestedCommandBufferFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceNestedCommandBufferPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT: safe_pNext = new safe_VkExternalMemoryAcquireUnmodifiedEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceExtendedDynamicState3FeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceExtendedDynamicState3PropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT: safe_pNext = new safe_VkRenderPassCreationControlEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT: safe_pNext = new safe_VkRenderPassCreationFeedbackCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT: safe_pNext = new safe_VkRenderPassSubpassFeedbackCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG: safe_pNext = new safe_VkDirectDriverLoadingListLUNARG(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineShaderStageModuleIdentifierCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceOpticalFlowFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceOpticalFlowPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV: safe_pNext = new safe_VkOpticalFlowImageFormatInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV: safe_pNext = new safe_VkOpticalFlowSessionCreatePrivateDataInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceLegacyDitheringFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_ANDROID_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_FEATURES_ANDROID: safe_pNext = new safe_VkPhysicalDeviceExternalFormatResolveFeaturesANDROID(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID: safe_pNext = new safe_VkPhysicalDeviceExternalFormatResolvePropertiesANDROID(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_RESOLVE_PROPERTIES_ANDROID: safe_pNext = new safe_VkAndroidHardwareBufferFormatResolvePropertiesANDROID(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_ANDROID_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD: safe_pNext = new safe_VkPhysicalDeviceAntiLagFeaturesAMD(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderObjectFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderObjectPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceTilePropertiesFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC: safe_pNext = new safe_VkPhysicalDeviceAmigoProfilingFeaturesSEC(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC: safe_pNext = new safe_VkAmigoProfilingSubmitInfoSEC(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeVectorPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeVectorFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT: safe_pNext = new safe_VkLayerSettingsCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM: safe_pNext = new safe_VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM: safe_pNext = new safe_VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_LATENCY_SUBMISSION_PRESENT_ID_NV: safe_pNext = new safe_VkLatencySubmissionPresentIdNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_LATENCY_CREATE_INFO_NV: safe_pNext = new safe_VkSwapchainLatencyCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_LATENCY_SURFACE_CAPABILITIES_NV: safe_pNext = new safe_VkLatencySurfaceCapabilitiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM: safe_pNext = new safe_VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PER_STAGE_DESCRIPTOR_SET_FEATURES_NV: safe_pNext = new safe_VkPhysicalDevicePerStageDescriptorSetFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_2_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceImageProcessing2FeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_2_PROPERTIES_QCOM: safe_pNext = new safe_VkPhysicalDeviceImageProcessing2PropertiesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_BLOCK_MATCH_WINDOW_CREATE_INFO_QCOM: safe_pNext = new safe_VkSamplerBlockMatchWindowCreateInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_WEIGHTS_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceCubicWeightsFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_CUBIC_WEIGHTS_CREATE_INFO_QCOM: safe_pNext = new safe_VkSamplerCubicWeightsCreateInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_BLIT_IMAGE_CUBIC_WEIGHTS_INFO_QCOM: safe_pNext = new safe_VkBlitImageCubicWeightsInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_DEGAMMA_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceYcbcrDegammaFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_YCBCR_DEGAMMA_CREATE_INFO_QCOM: safe_pNext = new safe_VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_CLAMP_FEATURES_QCOM: safe_pNext = new safe_VkPhysicalDeviceCubicClampFeaturesQCOM(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_SCREEN_QNX case VK_STRUCTURE_TYPE_SCREEN_BUFFER_FORMAT_PROPERTIES_QNX: safe_pNext = new safe_VkScreenBufferFormatPropertiesQNX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMPORT_SCREEN_BUFFER_INFO_QNX: safe_pNext = new safe_VkImportScreenBufferInfoQNX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_QNX: safe_pNext = new safe_VkExternalFormatQNX(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX: safe_pNext = new safe_VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_SCREEN_QNX case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_DRIVER_PROPERTIES_MSFT: safe_pNext = new safe_VkPhysicalDeviceLayeredDriverPropertiesMSFT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_STEREO_CREATE_INFO_NV: safe_pNext = new safe_VkDisplaySurfaceStereoCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_DISPLAY_MODE_STEREO_PROPERTIES_NV: safe_pNext = new safe_VkDisplayModeStereoPropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAW_ACCESS_CHAINS_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceRawAccessChainsFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCommandBufferInheritanceFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT16_VECTOR_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_REPLICATED_COMPOSITES_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_VALIDATION_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceRayTracingValidationFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceClusterAccelerationStructureFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceClusterAccelerationStructurePropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CLUSTER_ACCELERATION_STRUCTURE_CREATE_INFO_NV: safe_pNext = new safe_VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_FEATURES_NV: safe_pNext = new safe_VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PARTITIONED_ACCELERATION_STRUCTURE_FLAGS_NV: safe_pNext = new safe_VkPartitionedAccelerationStructureFlagsNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_PARTITIONED_ACCELERATION_STRUCTURE_NV: safe_pNext = new safe_VkWriteDescriptorSetPartitionedAccelerationStructureNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_PIPELINE_INFO_EXT: safe_pNext = new safe_VkGeneratedCommandsPipelineInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_SHADER_INFO_EXT: safe_pNext = new safe_VkGeneratedCommandsShaderInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA: safe_pNext = new safe_VkPhysicalDeviceImageAlignmentControlFeaturesMESA(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA: safe_pNext = new safe_VkPhysicalDeviceImageAlignmentControlPropertiesMESA(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA: safe_pNext = new safe_VkImageAlignmentControlCreateInfoMESA(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_CONTROL_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceDepthClampControlFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT: safe_pNext = new safe_VkPipelineViewportDepthClampControlCreateInfoEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HDR_VIVID_FEATURES_HUAWEI: safe_pNext = new safe_VkPhysicalDeviceHdrVividFeaturesHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_HDR_VIVID_DYNAMIC_METADATA_HUAWEI: safe_pNext = new safe_VkHdrVividDynamicMetadataHUAWEI(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_FEATURES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrix2FeaturesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_PROPERTIES_NV: safe_pNext = new safe_VkPhysicalDeviceCooperativeMatrix2PropertiesNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_OPACITY_MICROMAP_FEATURES_ARM: safe_pNext = new safe_VkPhysicalDevicePipelineOpacityMicromapFeaturesARM(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_IMPORT_MEMORY_METAL_HANDLE_INFO_EXT: safe_pNext = new safe_VkImportMemoryMetalHandleInfoEXT(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_ROBUSTNESS_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_SET_PRESENT_CONFIG_NV: safe_pNext = new safe_VkSetPresentConfigNV(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_METERING_FEATURES_NV: safe_pNext = new safe_VkPhysicalDevicePresentMeteringFeaturesNV(reinterpret_cast(pNext), copy_state, false); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR: safe_pNext = new safe_VkWriteDescriptorSetAccelerationStructureKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceAccelerationStructureFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceAccelerationStructurePropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR: safe_pNext = new safe_VkRayTracingPipelineCreateInfoKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceRayTracingPipelineFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR: safe_pNext = new safe_VkPhysicalDeviceRayTracingPipelinePropertiesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR: safe_pNext = new safe_VkPhysicalDeviceRayQueryFeaturesKHR(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT: safe_pNext = new safe_VkPhysicalDeviceMeshShaderFeaturesEXT(reinterpret_cast(pNext), copy_state, false); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT: safe_pNext = new safe_VkPhysicalDeviceMeshShaderPropertiesEXT(reinterpret_cast(pNext), copy_state, false); break; default: // Encountered an unknown sType -- skip (do not copy) this entry in the chain // If sType is in custom list, construct blind copy for (auto item : GetCustomStypeInfo()) { if (item.first == static_cast(header->sType)) { safe_pNext = malloc(item.second); memcpy(safe_pNext, header, item.second); } } break; } if (!first_pNext) { first_pNext = safe_pNext; } pNext = header->pNext; if (prev_pNext && safe_pNext) { prev_pNext->pNext = (VkBaseOutStructure*)safe_pNext; } if (safe_pNext) { prev_pNext = (VkBaseOutStructure*)safe_pNext; } safe_pNext = nullptr; } return first_pNext; } void FreePnextChain(const void *pNext) { // The pNext parameter is const for convenience, since it is called by code // for many structures where the pNext field is const. void *current = const_cast(pNext); while (current) { auto header = reinterpret_cast(current); void *next = header->pNext; // prevent destructors from recursing behind our backs. header->pNext = nullptr; switch (header->sType) { // Special-case Loader Instance Struct passed to/from layer in pNext chain case VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO: delete reinterpret_cast(current); break; // Special-case Loader Device Struct passed to/from layer in pNext chain case VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO: delete reinterpret_cast(current); break; case VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_BARRIER_2: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PICTURE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PICTURE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_BFLOAT16_FEATURES_KHR: delete reinterpret_cast(header); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR: delete reinterpret_cast(header); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PRESENT_ID_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MAXIMAL_RECONVERGENCE_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_BINARY_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_AV1_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_QUALITY_LEVEL_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_SESSION_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_PICTURE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_DPB_SLOT_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_PROFILE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_GOP_REMAINING_FRAME_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_RATE_CONTROL_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_RATE_CONTROL_LAYER_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_1_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_INLINE_QUERY_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_FORMAT_QUANTIZATION_MAP_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_SESSION_PARAMETERS_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUANTIZATION_MAP_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUANTIZATION_MAP_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUANTIZATION_MAP_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_FORMAT_H265_QUANTIZATION_MAP_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_QUANTIZATION_MAP_CAPABILITIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_FORMAT_AV1_QUANTIZATION_MAP_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_VULKAN_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_8_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_BARRIER_ACCESS_FLAGS_3_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_2_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_INLINE_SESSION_PARAMETERS_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_INLINE_SESSION_PARAMETERS_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_INLINE_SESSION_PARAMETERS_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_CU_MODULE_TEXTURING_MODE_CREATE_INFO_NVX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RELAXED_LINE_RASTERIZATION_FEATURES_IMG: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_ANDROID_KHR case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_ANDROID_KHR #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX: delete reinterpret_cast(header); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_GGP case VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_GGP case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_WIN32_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAP_MEMORY_PLACED_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAP_MEMORY_PLACED_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MEMORY_MAP_PLACED_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEPTH_BIAS_REPRESENTATION_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV: delete reinterpret_cast(header); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUDA_KERNEL_LAUNCH_PROPERTIES_NV: delete reinterpret_cast(header); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_EXT: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_FUCHSIA case VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_FUCHSIA case VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAME_BOUNDARY_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_FRAME_BOUNDARY_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT: delete reinterpret_cast(header); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_DISPLACEMENT_MICROMAP_NV: delete reinterpret_cast(header); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_VRS_FEATURES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DEVICE_QUEUE_SHADER_CORE_CONTROL_CREATE_INFO_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_FEATURES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_PROPERTIES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_FEATURES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_PROPERTIES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_BEGIN_INFO_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_SUBMIT_INFO_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_LINEAR_SWEPT_SPHERES_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_LINEAR_SWEPT_SPHERES_DATA_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_SPHERES_DATA_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_ANDROID_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_FEATURES_ANDROID: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_RESOLVE_PROPERTIES_ANDROID: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_ANDROID_KHR case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_LATENCY_SUBMISSION_PRESENT_ID_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SWAPCHAIN_LATENCY_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_LATENCY_SURFACE_CAPABILITIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PER_STAGE_DESCRIPTOR_SET_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_2_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_2_PROPERTIES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_BLOCK_MATCH_WINDOW_CREATE_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_WEIGHTS_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_CUBIC_WEIGHTS_CREATE_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_BLIT_IMAGE_CUBIC_WEIGHTS_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_DEGAMMA_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_YCBCR_DEGAMMA_CREATE_INFO_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_CLAMP_FEATURES_QCOM: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_SCREEN_QNX case VK_STRUCTURE_TYPE_SCREEN_BUFFER_FORMAT_PROPERTIES_QNX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMPORT_SCREEN_BUFFER_INFO_QNX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_QNX: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_SCREEN_QNX case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_DRIVER_PROPERTIES_MSFT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DISPLAY_SURFACE_STEREO_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_DISPLAY_MODE_STEREO_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAW_ACCESS_CHAINS_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT16_VECTOR_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_REPLICATED_COMPOSITES_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_VALIDATION_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CLUSTER_ACCELERATION_STRUCTURE_CREATE_INFO_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PARTITIONED_ACCELERATION_STRUCTURE_FLAGS_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_PARTITIONED_ACCELERATION_STRUCTURE_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_PIPELINE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_GENERATED_COMMANDS_SHADER_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_CONTROL_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HDR_VIVID_FEATURES_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_HDR_VIVID_DYNAMIC_METADATA_HUAWEI: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_FEATURES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_PROPERTIES_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_OPACITY_MICROMAP_FEATURES_ARM: delete reinterpret_cast(header); break; #ifdef VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_IMPORT_MEMORY_METAL_HANDLE_INFO_EXT: delete reinterpret_cast(header); break; #endif // VK_USE_PLATFORM_METAL_EXT case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_ROBUSTNESS_FEATURES_EXT: delete reinterpret_cast(header); break; #ifdef VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_SET_PRESENT_CONFIG_NV: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_METERING_FEATURES_NV: delete reinterpret_cast(header); break; #endif // VK_ENABLE_BETA_EXTENSIONS case VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT: delete reinterpret_cast(header); break; case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT: delete reinterpret_cast(header); break; default: // Encountered an unknown sType // If sType is in custom list, free custom struct memory and clean up for (auto item : GetCustomStypeInfo() ) { if (item.first == static_cast(header->sType)) { free(current); break; } } break; } current = next; } } // clang-format on } // namespace vku // NOLINTEND