1 // Copyright 2015-2022 The Khronos Group Inc. 2 // 3 // SPDX-License-Identifier: Apache-2.0 OR MIT 4 // 5 6 // This header is generated from the Khronos Vulkan XML API Registry. 7 8 #ifndef VULKAN_ENUMS_HPP 9 # define VULKAN_ENUMS_HPP 10 11 namespace VULKAN_HPP_NAMESPACE 12 { 13 template <typename EnumType, EnumType value> 14 struct CppType 15 {}; 16 17 //============= 18 //=== ENUMs === 19 //============= 20 21 22 //=== VK_VERSION_1_0 === 23 24 enum class Result 25 { 26 eSuccess = VK_SUCCESS, 27 eNotReady = VK_NOT_READY, 28 eTimeout = VK_TIMEOUT, 29 eEventSet = VK_EVENT_SET, 30 eEventReset = VK_EVENT_RESET, 31 eIncomplete = VK_INCOMPLETE, 32 eErrorOutOfHostMemory = VK_ERROR_OUT_OF_HOST_MEMORY, 33 eErrorOutOfDeviceMemory = VK_ERROR_OUT_OF_DEVICE_MEMORY, 34 eErrorInitializationFailed = VK_ERROR_INITIALIZATION_FAILED, 35 eErrorDeviceLost = VK_ERROR_DEVICE_LOST, 36 eErrorMemoryMapFailed = VK_ERROR_MEMORY_MAP_FAILED, 37 eErrorLayerNotPresent = VK_ERROR_LAYER_NOT_PRESENT, 38 eErrorExtensionNotPresent = VK_ERROR_EXTENSION_NOT_PRESENT, 39 eErrorFeatureNotPresent = VK_ERROR_FEATURE_NOT_PRESENT, 40 eErrorIncompatibleDriver = VK_ERROR_INCOMPATIBLE_DRIVER, 41 eErrorTooManyObjects = VK_ERROR_TOO_MANY_OBJECTS, 42 eErrorFormatNotSupported = VK_ERROR_FORMAT_NOT_SUPPORTED, 43 eErrorFragmentedPool = VK_ERROR_FRAGMENTED_POOL, 44 eErrorUnknown = VK_ERROR_UNKNOWN, 45 eErrorOutOfPoolMemory = VK_ERROR_OUT_OF_POOL_MEMORY, 46 eErrorInvalidExternalHandle = VK_ERROR_INVALID_EXTERNAL_HANDLE, 47 eErrorFragmentation = VK_ERROR_FRAGMENTATION, 48 eErrorInvalidOpaqueCaptureAddress = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS, 49 ePipelineCompileRequired = VK_PIPELINE_COMPILE_REQUIRED, 50 eErrorSurfaceLostKHR = VK_ERROR_SURFACE_LOST_KHR, 51 eErrorNativeWindowInUseKHR = VK_ERROR_NATIVE_WINDOW_IN_USE_KHR, 52 eSuboptimalKHR = VK_SUBOPTIMAL_KHR, 53 eErrorOutOfDateKHR = VK_ERROR_OUT_OF_DATE_KHR, 54 eErrorIncompatibleDisplayKHR = VK_ERROR_INCOMPATIBLE_DISPLAY_KHR, 55 eErrorValidationFailedEXT = VK_ERROR_VALIDATION_FAILED_EXT, 56 eErrorInvalidShaderNV = VK_ERROR_INVALID_SHADER_NV, 57 eErrorImageUsageNotSupportedKHR = VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR, 58 eErrorVideoPictureLayoutNotSupportedKHR = VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR, 59 eErrorVideoProfileOperationNotSupportedKHR = VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR, 60 eErrorVideoProfileFormatNotSupportedKHR = VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR, 61 eErrorVideoProfileCodecNotSupportedKHR = VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR, 62 eErrorVideoStdVersionNotSupportedKHR = VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR, 63 eErrorInvalidDrmFormatModifierPlaneLayoutEXT = VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT, 64 eErrorNotPermittedKHR = VK_ERROR_NOT_PERMITTED_KHR, 65 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 66 eErrorFullScreenExclusiveModeLostEXT = VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT, 67 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 68 eThreadIdleKHR = VK_THREAD_IDLE_KHR, 69 eThreadDoneKHR = VK_THREAD_DONE_KHR, 70 eOperationDeferredKHR = VK_OPERATION_DEFERRED_KHR, 71 eOperationNotDeferredKHR = VK_OPERATION_NOT_DEFERRED_KHR, 72 eErrorCompressionExhaustedEXT = VK_ERROR_COMPRESSION_EXHAUSTED_EXT, 73 eErrorFragmentationEXT = VK_ERROR_FRAGMENTATION_EXT, 74 eErrorInvalidDeviceAddressEXT = VK_ERROR_INVALID_DEVICE_ADDRESS_EXT, 75 eErrorInvalidExternalHandleKHR = VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR, 76 eErrorInvalidOpaqueCaptureAddressKHR = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR, 77 eErrorNotPermittedEXT = VK_ERROR_NOT_PERMITTED_EXT, 78 eErrorOutOfPoolMemoryKHR = VK_ERROR_OUT_OF_POOL_MEMORY_KHR, 79 eErrorPipelineCompileRequiredEXT = VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT, 80 ePipelineCompileRequiredEXT = VK_PIPELINE_COMPILE_REQUIRED_EXT 81 }; 82 83 enum class StructureType 84 { 85 eApplicationInfo = VK_STRUCTURE_TYPE_APPLICATION_INFO, 86 eInstanceCreateInfo = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO, 87 eDeviceQueueCreateInfo = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO, 88 eDeviceCreateInfo = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO, 89 eSubmitInfo = VK_STRUCTURE_TYPE_SUBMIT_INFO, 90 eMemoryAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO, 91 eMappedMemoryRange = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE, 92 eBindSparseInfo = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO, 93 eFenceCreateInfo = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO, 94 eSemaphoreCreateInfo = VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO, 95 eEventCreateInfo = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO, 96 eQueryPoolCreateInfo = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO, 97 eBufferCreateInfo = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO, 98 eBufferViewCreateInfo = VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO, 99 eImageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO, 100 eImageViewCreateInfo = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO, 101 eShaderModuleCreateInfo = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO, 102 ePipelineCacheCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO, 103 ePipelineShaderStageCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO, 104 ePipelineVertexInputStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO, 105 ePipelineInputAssemblyStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO, 106 ePipelineTessellationStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO, 107 ePipelineViewportStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO, 108 ePipelineRasterizationStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO, 109 ePipelineMultisampleStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO, 110 ePipelineDepthStencilStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO, 111 ePipelineColorBlendStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO, 112 ePipelineDynamicStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO, 113 eGraphicsPipelineCreateInfo = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO, 114 eComputePipelineCreateInfo = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO, 115 ePipelineLayoutCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO, 116 eSamplerCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO, 117 eDescriptorSetLayoutCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO, 118 eDescriptorPoolCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO, 119 eDescriptorSetAllocateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO, 120 eWriteDescriptorSet = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET, 121 eCopyDescriptorSet = VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET, 122 eFramebufferCreateInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO, 123 eRenderPassCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO, 124 eCommandPoolCreateInfo = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO, 125 eCommandBufferAllocateInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO, 126 eCommandBufferInheritanceInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO, 127 eCommandBufferBeginInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO, 128 eRenderPassBeginInfo = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO, 129 eBufferMemoryBarrier = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER, 130 eImageMemoryBarrier = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER, 131 eMemoryBarrier = VK_STRUCTURE_TYPE_MEMORY_BARRIER, 132 eLoaderInstanceCreateInfo = VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO, 133 eLoaderDeviceCreateInfo = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO, 134 ePhysicalDeviceSubgroupProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES, 135 eBindBufferMemoryInfo = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO, 136 eBindImageMemoryInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO, 137 ePhysicalDevice16BitStorageFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES, 138 eMemoryDedicatedRequirements = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS, 139 eMemoryDedicatedAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO, 140 eMemoryAllocateFlagsInfo = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO, 141 eDeviceGroupRenderPassBeginInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO, 142 eDeviceGroupCommandBufferBeginInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO, 143 eDeviceGroupSubmitInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO, 144 eDeviceGroupBindSparseInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO, 145 eBindBufferMemoryDeviceGroupInfo = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO, 146 eBindImageMemoryDeviceGroupInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO, 147 ePhysicalDeviceGroupProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES, 148 eDeviceGroupDeviceCreateInfo = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO, 149 eBufferMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2, 150 eImageMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2, 151 eImageSparseMemoryRequirementsInfo2 = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2, 152 eMemoryRequirements2 = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2, 153 eSparseImageMemoryRequirements2 = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2, 154 ePhysicalDeviceFeatures2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2, 155 ePhysicalDeviceProperties2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2, 156 eFormatProperties2 = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2, 157 eImageFormatProperties2 = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2, 158 ePhysicalDeviceImageFormatInfo2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2, 159 eQueueFamilyProperties2 = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2, 160 ePhysicalDeviceMemoryProperties2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2, 161 eSparseImageFormatProperties2 = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2, 162 ePhysicalDeviceSparseImageFormatInfo2 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2, 163 ePhysicalDevicePointClippingProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES, 164 eRenderPassInputAttachmentAspectCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO, 165 eImageViewUsageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO, 166 ePipelineTessellationDomainOriginStateCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO, 167 eRenderPassMultiviewCreateInfo = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO, 168 ePhysicalDeviceMultiviewFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES, 169 ePhysicalDeviceMultiviewProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES, 170 ePhysicalDeviceVariablePointersFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES, 171 eProtectedSubmitInfo = VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO, 172 ePhysicalDeviceProtectedMemoryFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, 173 ePhysicalDeviceProtectedMemoryProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, 174 eDeviceQueueInfo2 = VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2, 175 eSamplerYcbcrConversionCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO, 176 eSamplerYcbcrConversionInfo = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO, 177 eBindImagePlaneMemoryInfo = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO, 178 eImagePlaneMemoryRequirementsInfo = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO, 179 ePhysicalDeviceSamplerYcbcrConversionFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES, 180 eSamplerYcbcrConversionImageFormatProperties = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES, 181 eDescriptorUpdateTemplateCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO, 182 ePhysicalDeviceExternalImageFormatInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO, 183 eExternalImageFormatProperties = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES, 184 ePhysicalDeviceExternalBufferInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO, 185 eExternalBufferProperties = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES, 186 ePhysicalDeviceIdProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES, 187 eExternalMemoryBufferCreateInfo = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO, 188 eExternalMemoryImageCreateInfo = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO, 189 eExportMemoryAllocateInfo = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO, 190 ePhysicalDeviceExternalFenceInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO, 191 eExternalFenceProperties = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES, 192 eExportFenceCreateInfo = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO, 193 eExportSemaphoreCreateInfo = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO, 194 ePhysicalDeviceExternalSemaphoreInfo = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO, 195 eExternalSemaphoreProperties = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES, 196 ePhysicalDeviceMaintenance3Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES, 197 eDescriptorSetLayoutSupport = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT, 198 ePhysicalDeviceShaderDrawParametersFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, 199 ePhysicalDeviceVulkan11Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES, 200 ePhysicalDeviceVulkan11Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES, 201 ePhysicalDeviceVulkan12Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES, 202 ePhysicalDeviceVulkan12Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES, 203 eImageFormatListCreateInfo = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO, 204 eAttachmentDescription2 = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2, 205 eAttachmentReference2 = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2, 206 eSubpassDescription2 = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2, 207 eSubpassDependency2 = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2, 208 eRenderPassCreateInfo2 = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2, 209 eSubpassBeginInfo = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO, 210 eSubpassEndInfo = VK_STRUCTURE_TYPE_SUBPASS_END_INFO, 211 ePhysicalDevice8BitStorageFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES, 212 ePhysicalDeviceDriverProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES, 213 ePhysicalDeviceShaderAtomicInt64Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES, 214 ePhysicalDeviceShaderFloat16Int8Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES, 215 ePhysicalDeviceFloatControlsProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES, 216 eDescriptorSetLayoutBindingFlagsCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO, 217 ePhysicalDeviceDescriptorIndexingFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES, 218 ePhysicalDeviceDescriptorIndexingProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES, 219 eDescriptorSetVariableDescriptorCountAllocateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO, 220 eDescriptorSetVariableDescriptorCountLayoutSupport = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT, 221 ePhysicalDeviceDepthStencilResolveProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES, 222 eSubpassDescriptionDepthStencilResolve = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE, 223 ePhysicalDeviceScalarBlockLayoutFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES, 224 eImageStencilUsageCreateInfo = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO, 225 ePhysicalDeviceSamplerFilterMinmaxProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES, 226 eSamplerReductionModeCreateInfo = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO, 227 ePhysicalDeviceVulkanMemoryModelFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES, 228 ePhysicalDeviceImagelessFramebufferFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES, 229 eFramebufferAttachmentsCreateInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO, 230 eFramebufferAttachmentImageInfo = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO, 231 eRenderPassAttachmentBeginInfo = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO, 232 ePhysicalDeviceUniformBufferStandardLayoutFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES, 233 ePhysicalDeviceShaderSubgroupExtendedTypesFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES, 234 ePhysicalDeviceSeparateDepthStencilLayoutsFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES, 235 eAttachmentReferenceStencilLayout = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT, 236 eAttachmentDescriptionStencilLayout = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT, 237 ePhysicalDeviceHostQueryResetFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES, 238 ePhysicalDeviceTimelineSemaphoreFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES, 239 ePhysicalDeviceTimelineSemaphoreProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES, 240 eSemaphoreTypeCreateInfo = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO, 241 eTimelineSemaphoreSubmitInfo = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO, 242 eSemaphoreWaitInfo = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO, 243 eSemaphoreSignalInfo = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO, 244 ePhysicalDeviceBufferDeviceAddressFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES, 245 eBufferDeviceAddressInfo = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO, 246 eBufferOpaqueCaptureAddressCreateInfo = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO, 247 eMemoryOpaqueCaptureAddressAllocateInfo = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO, 248 eDeviceMemoryOpaqueCaptureAddressInfo = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO, 249 ePhysicalDeviceVulkan13Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES, 250 ePhysicalDeviceVulkan13Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES, 251 ePipelineCreationFeedbackCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO, 252 ePhysicalDeviceShaderTerminateInvocationFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES, 253 ePhysicalDeviceToolProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES, 254 ePhysicalDeviceShaderDemoteToHelperInvocationFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES, 255 ePhysicalDevicePrivateDataFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES, 256 eDevicePrivateDataCreateInfo = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO, 257 ePrivateDataSlotCreateInfo = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO, 258 ePhysicalDevicePipelineCreationCacheControlFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES, 259 eMemoryBarrier2 = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2, 260 eBufferMemoryBarrier2 = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2, 261 eImageMemoryBarrier2 = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2, 262 eDependencyInfo = VK_STRUCTURE_TYPE_DEPENDENCY_INFO, 263 eSubmitInfo2 = VK_STRUCTURE_TYPE_SUBMIT_INFO_2, 264 eSemaphoreSubmitInfo = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO, 265 eCommandBufferSubmitInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO, 266 ePhysicalDeviceSynchronization2Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES, 267 ePhysicalDeviceZeroInitializeWorkgroupMemoryFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES, 268 ePhysicalDeviceImageRobustnessFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES, 269 eCopyBufferInfo2 = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2, 270 eCopyImageInfo2 = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2, 271 eCopyBufferToImageInfo2 = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2, 272 eCopyImageToBufferInfo2 = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2, 273 eBlitImageInfo2 = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2, 274 eResolveImageInfo2 = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2, 275 eBufferCopy2 = VK_STRUCTURE_TYPE_BUFFER_COPY_2, 276 eImageCopy2 = VK_STRUCTURE_TYPE_IMAGE_COPY_2, 277 eImageBlit2 = VK_STRUCTURE_TYPE_IMAGE_BLIT_2, 278 eBufferImageCopy2 = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2, 279 eImageResolve2 = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2, 280 ePhysicalDeviceSubgroupSizeControlProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES, 281 ePipelineShaderStageRequiredSubgroupSizeCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO, 282 ePhysicalDeviceSubgroupSizeControlFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES, 283 ePhysicalDeviceInlineUniformBlockFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES, 284 ePhysicalDeviceInlineUniformBlockProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES, 285 eWriteDescriptorSetInlineUniformBlock = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK, 286 eDescriptorPoolInlineUniformBlockCreateInfo = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO, 287 ePhysicalDeviceTextureCompressionAstcHdrFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES, 288 eRenderingInfo = VK_STRUCTURE_TYPE_RENDERING_INFO, 289 eRenderingAttachmentInfo = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO, 290 ePipelineRenderingCreateInfo = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO, 291 ePhysicalDeviceDynamicRenderingFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES, 292 eCommandBufferInheritanceRenderingInfo = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO, 293 ePhysicalDeviceShaderIntegerDotProductFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES, 294 ePhysicalDeviceShaderIntegerDotProductProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES, 295 ePhysicalDeviceTexelBufferAlignmentProperties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES, 296 eFormatProperties3 = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3, 297 ePhysicalDeviceMaintenance4Features = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES, 298 ePhysicalDeviceMaintenance4Properties = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES, 299 eDeviceBufferMemoryRequirements = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS, 300 eDeviceImageMemoryRequirements = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS, 301 eSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR, 302 ePresentInfoKHR = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR, 303 eDeviceGroupPresentCapabilitiesKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR, 304 eImageSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR, 305 eBindImageMemorySwapchainInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR, 306 eAcquireNextImageInfoKHR = VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR, 307 eDeviceGroupPresentInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR, 308 eDeviceGroupSwapchainCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR, 309 eDisplayModeCreateInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR, 310 eDisplaySurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR, 311 eDisplayPresentInfoKHR = VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR, 312 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 313 eXlibSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR, 314 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 315 #if defined( VK_USE_PLATFORM_XCB_KHR ) 316 eXcbSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR, 317 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 318 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 319 eWaylandSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR, 320 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 321 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 322 eAndroidSurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR, 323 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 324 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 325 eWin32SurfaceCreateInfoKHR = VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR, 326 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 327 eDebugReportCallbackCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT, 328 ePipelineRasterizationStateRasterizationOrderAMD = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD, 329 eDebugMarkerObjectNameInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT, 330 eDebugMarkerObjectTagInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT, 331 eDebugMarkerMarkerInfoEXT = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT, 332 eVideoProfileInfoKHR = VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR, 333 eVideoCapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR, 334 eVideoPictureResourceInfoKHR = VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR, 335 eVideoSessionMemoryRequirementsKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR, 336 eBindVideoSessionMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR, 337 eVideoSessionCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR, 338 eVideoSessionParametersCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR, 339 eVideoSessionParametersUpdateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR, 340 eVideoBeginCodingInfoKHR = VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR, 341 eVideoEndCodingInfoKHR = VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR, 342 eVideoCodingControlInfoKHR = VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR, 343 eVideoReferenceSlotInfoKHR = VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR, 344 eQueueFamilyVideoPropertiesKHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR, 345 eVideoProfileListInfoKHR = VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR, 346 ePhysicalDeviceVideoFormatInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR, 347 eVideoFormatPropertiesKHR = VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR, 348 eQueueFamilyQueryResultStatusPropertiesKHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR, 349 eVideoDecodeInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR, 350 eVideoDecodeCapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR, 351 eVideoDecodeUsageInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR, 352 eDedicatedAllocationImageCreateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV, 353 eDedicatedAllocationBufferCreateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV, 354 eDedicatedAllocationMemoryAllocateInfoNV = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV, 355 ePhysicalDeviceTransformFeedbackFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT, 356 ePhysicalDeviceTransformFeedbackPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT, 357 ePipelineRasterizationStateStreamCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT, 358 eCuModuleCreateInfoNVX = VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX, 359 eCuFunctionCreateInfoNVX = VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX, 360 eCuLaunchInfoNVX = VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX, 361 eImageViewHandleInfoNVX = VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX, 362 eImageViewAddressPropertiesNVX = VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX, 363 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 364 eVideoEncodeH264CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT, 365 eVideoEncodeH264SessionParametersCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT, 366 eVideoEncodeH264SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT, 367 eVideoEncodeH264VclFrameInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT, 368 eVideoEncodeH264DpbSlotInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT, 369 eVideoEncodeH264NaluSliceInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_EXT, 370 eVideoEncodeH264EmitPictureParametersInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_INFO_EXT, 371 eVideoEncodeH264ProfileInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_EXT, 372 eVideoEncodeH264RateControlInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT, 373 eVideoEncodeH264RateControlLayerInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT, 374 eVideoEncodeH264ReferenceListsInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_INFO_EXT, 375 eVideoEncodeH265CapabilitiesEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT, 376 eVideoEncodeH265SessionParametersCreateInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT, 377 eVideoEncodeH265SessionParametersAddInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT, 378 eVideoEncodeH265VclFrameInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT, 379 eVideoEncodeH265DpbSlotInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT, 380 eVideoEncodeH265NaluSliceSegmentInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_EXT, 381 eVideoEncodeH265EmitPictureParametersInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_INFO_EXT, 382 eVideoEncodeH265ProfileInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_EXT, 383 eVideoEncodeH265ReferenceListsInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_INFO_EXT, 384 eVideoEncodeH265RateControlInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT, 385 eVideoEncodeH265RateControlLayerInfoEXT = VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT, 386 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 387 eVideoDecodeH264CapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR, 388 eVideoDecodeH264PictureInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR, 389 eVideoDecodeH264ProfileInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR, 390 eVideoDecodeH264SessionParametersCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR, 391 eVideoDecodeH264SessionParametersAddInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR, 392 eVideoDecodeH264DpbSlotInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR, 393 eTextureLodGatherFormatPropertiesAMD = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD, 394 eRenderingFragmentShadingRateAttachmentInfoKHR = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR, 395 eRenderingFragmentDensityMapAttachmentInfoEXT = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT, 396 eAttachmentSampleCountInfoAMD = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD, 397 eMultiviewPerViewAttributesInfoNVX = VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX, 398 #if defined( VK_USE_PLATFORM_GGP ) 399 eStreamDescriptorSurfaceCreateInfoGGP = VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP, 400 #endif /*VK_USE_PLATFORM_GGP*/ 401 ePhysicalDeviceCornerSampledImageFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, 402 eExternalMemoryImageCreateInfoNV = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV, 403 eExportMemoryAllocateInfoNV = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV, 404 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 405 eImportMemoryWin32HandleInfoNV = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV, 406 eExportMemoryWin32HandleInfoNV = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV, 407 eWin32KeyedMutexAcquireReleaseInfoNV = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV, 408 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 409 eValidationFlagsEXT = VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT, 410 #if defined( VK_USE_PLATFORM_VI_NN ) 411 eViSurfaceCreateInfoNN = VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN, 412 #endif /*VK_USE_PLATFORM_VI_NN*/ 413 eImageViewAstcDecodeModeEXT = VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT, 414 ePhysicalDeviceAstcDecodeFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, 415 ePipelineRobustnessCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT, 416 ePhysicalDevicePipelineRobustnessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT, 417 ePhysicalDevicePipelineRobustnessPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT, 418 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 419 eImportMemoryWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR, 420 eExportMemoryWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR, 421 eMemoryWin32HandlePropertiesKHR = VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR, 422 eMemoryGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR, 423 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 424 eImportMemoryFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR, 425 eMemoryFdPropertiesKHR = VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR, 426 eMemoryGetFdInfoKHR = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR, 427 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 428 eWin32KeyedMutexAcquireReleaseInfoKHR = VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR, 429 eImportSemaphoreWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR, 430 eExportSemaphoreWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR, 431 eD3D12FenceSubmitInfoKHR = VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR, 432 eSemaphoreGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR, 433 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 434 eImportSemaphoreFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR, 435 eSemaphoreGetFdInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR, 436 ePhysicalDevicePushDescriptorPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, 437 eCommandBufferInheritanceConditionalRenderingInfoEXT = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT, 438 ePhysicalDeviceConditionalRenderingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, 439 eConditionalRenderingBeginInfoEXT = VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT, 440 ePresentRegionsKHR = VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR, 441 ePipelineViewportWScalingStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV, 442 eSurfaceCapabilities2EXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT, 443 eDisplayPowerInfoEXT = VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT, 444 eDeviceEventInfoEXT = VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT, 445 eDisplayEventInfoEXT = VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT, 446 eSwapchainCounterCreateInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT, 447 ePresentTimesInfoGOOGLE = VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE, 448 ePhysicalDeviceMultiviewPerViewAttributesPropertiesNVX = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, 449 ePipelineViewportSwizzleStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV, 450 ePhysicalDeviceDiscardRectanglePropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, 451 ePipelineDiscardRectangleStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT, 452 ePhysicalDeviceConservativeRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, 453 ePipelineRasterizationConservativeStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT, 454 ePhysicalDeviceDepthClipEnableFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, 455 ePipelineRasterizationDepthClipStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT, 456 eHdrMetadataEXT = VK_STRUCTURE_TYPE_HDR_METADATA_EXT, 457 eSharedPresentSurfaceCapabilitiesKHR = VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR, 458 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 459 eImportFenceWin32HandleInfoKHR = VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR, 460 eExportFenceWin32HandleInfoKHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR, 461 eFenceGetWin32HandleInfoKHR = VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR, 462 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 463 eImportFenceFdInfoKHR = VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR, 464 eFenceGetFdInfoKHR = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR, 465 ePhysicalDevicePerformanceQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, 466 ePhysicalDevicePerformanceQueryPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, 467 eQueryPoolPerformanceCreateInfoKHR = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR, 468 ePerformanceQuerySubmitInfoKHR = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR, 469 eAcquireProfilingLockInfoKHR = VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR, 470 ePerformanceCounterKHR = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR, 471 ePerformanceCounterDescriptionKHR = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR, 472 ePhysicalDeviceSurfaceInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR, 473 eSurfaceCapabilities2KHR = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR, 474 eSurfaceFormat2KHR = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR, 475 eDisplayProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR, 476 eDisplayPlaneProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR, 477 eDisplayModeProperties2KHR = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR, 478 eDisplayPlaneInfo2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR, 479 eDisplayPlaneCapabilities2KHR = VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR, 480 #if defined( VK_USE_PLATFORM_IOS_MVK ) 481 eIosSurfaceCreateInfoMVK = VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK, 482 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 483 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 484 eMacosSurfaceCreateInfoMVK = VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK, 485 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 486 eDebugUtilsObjectNameInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT, 487 eDebugUtilsObjectTagInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT, 488 eDebugUtilsLabelEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT, 489 eDebugUtilsMessengerCallbackDataEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT, 490 eDebugUtilsMessengerCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT, 491 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 492 eAndroidHardwareBufferUsageANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID, 493 eAndroidHardwareBufferPropertiesANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID, 494 eAndroidHardwareBufferFormatPropertiesANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID, 495 eImportAndroidHardwareBufferInfoANDROID = VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID, 496 eMemoryGetAndroidHardwareBufferInfoANDROID = VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID, 497 eExternalFormatANDROID = VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID, 498 eAndroidHardwareBufferFormatProperties2ANDROID = VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID, 499 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 500 eSampleLocationsInfoEXT = VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT, 501 eRenderPassSampleLocationsBeginInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT, 502 ePipelineSampleLocationsStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT, 503 ePhysicalDeviceSampleLocationsPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, 504 eMultisamplePropertiesEXT = VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT, 505 ePhysicalDeviceBlendOperationAdvancedFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, 506 ePhysicalDeviceBlendOperationAdvancedPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, 507 ePipelineColorBlendAdvancedStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT, 508 ePipelineCoverageToColorStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV, 509 eWriteDescriptorSetAccelerationStructureKHR = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR, 510 eAccelerationStructureBuildGeometryInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR, 511 eAccelerationStructureDeviceAddressInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR, 512 eAccelerationStructureGeometryAabbsDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR, 513 eAccelerationStructureGeometryInstancesDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR, 514 eAccelerationStructureGeometryTrianglesDataKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR, 515 eAccelerationStructureGeometryKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR, 516 eAccelerationStructureVersionInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR, 517 eCopyAccelerationStructureInfoKHR = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR, 518 eCopyAccelerationStructureToMemoryInfoKHR = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR, 519 eCopyMemoryToAccelerationStructureInfoKHR = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR, 520 ePhysicalDeviceAccelerationStructureFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, 521 ePhysicalDeviceAccelerationStructurePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, 522 eAccelerationStructureCreateInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR, 523 eAccelerationStructureBuildSizesInfoKHR = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR, 524 ePhysicalDeviceRayTracingPipelineFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, 525 ePhysicalDeviceRayTracingPipelinePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, 526 eRayTracingPipelineCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR, 527 eRayTracingShaderGroupCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR, 528 eRayTracingPipelineInterfaceCreateInfoKHR = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR, 529 ePhysicalDeviceRayQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, 530 ePipelineCoverageModulationStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV, 531 ePhysicalDeviceShaderSmBuiltinsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, 532 ePhysicalDeviceShaderSmBuiltinsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV, 533 eDrmFormatModifierPropertiesListEXT = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT, 534 ePhysicalDeviceImageDrmFormatModifierInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT, 535 eImageDrmFormatModifierListCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT, 536 eImageDrmFormatModifierExplicitCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT, 537 eImageDrmFormatModifierPropertiesEXT = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT, 538 eDrmFormatModifierPropertiesList2EXT = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT, 539 eValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT, 540 eShaderModuleValidationCacheCreateInfoEXT = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT, 541 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 542 ePhysicalDevicePortabilitySubsetFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, 543 ePhysicalDevicePortabilitySubsetPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, 544 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 545 ePipelineViewportShadingRateImageStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV, 546 ePhysicalDeviceShadingRateImageFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, 547 ePhysicalDeviceShadingRateImagePropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV, 548 ePipelineViewportCoarseSampleOrderStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV, 549 eRayTracingPipelineCreateInfoNV = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV, 550 eAccelerationStructureCreateInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV, 551 eGeometryNV = VK_STRUCTURE_TYPE_GEOMETRY_NV, 552 eGeometryTrianglesNV = VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV, 553 eGeometryAabbNV = VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV, 554 eBindAccelerationStructureMemoryInfoNV = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV, 555 eWriteDescriptorSetAccelerationStructureNV = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV, 556 eAccelerationStructureMemoryRequirementsInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV, 557 ePhysicalDeviceRayTracingPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, 558 eRayTracingShaderGroupCreateInfoNV = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV, 559 eAccelerationStructureInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV, 560 ePhysicalDeviceRepresentativeFragmentTestFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, 561 ePipelineRepresentativeFragmentTestStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV, 562 ePhysicalDeviceImageViewImageFormatInfoEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT, 563 eFilterCubicImageViewImageFormatPropertiesEXT = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT, 564 eImportMemoryHostPointerInfoEXT = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT, 565 eMemoryHostPointerPropertiesEXT = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT, 566 ePhysicalDeviceExternalMemoryHostPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, 567 ePhysicalDeviceShaderClockFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, 568 ePipelineCompilerControlCreateInfoAMD = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD, 569 eCalibratedTimestampInfoEXT = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT, 570 ePhysicalDeviceShaderCorePropertiesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, 571 eVideoDecodeH265CapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR, 572 eVideoDecodeH265SessionParametersCreateInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR, 573 eVideoDecodeH265SessionParametersAddInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR, 574 eVideoDecodeH265ProfileInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR, 575 eVideoDecodeH265PictureInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR, 576 eVideoDecodeH265DpbSlotInfoKHR = VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR, 577 eDeviceQueueGlobalPriorityCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR, 578 ePhysicalDeviceGlobalPriorityQueryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, 579 eQueueFamilyGlobalPriorityPropertiesKHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR, 580 eDeviceMemoryOverallocationCreateInfoAMD = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD, 581 ePhysicalDeviceVertexAttributeDivisorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT, 582 ePipelineVertexInputDivisorStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT, 583 ePhysicalDeviceVertexAttributeDivisorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT, 584 #if defined( VK_USE_PLATFORM_GGP ) 585 ePresentFrameTokenGGP = VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP, 586 #endif /*VK_USE_PLATFORM_GGP*/ 587 ePhysicalDeviceComputeShaderDerivativesFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, 588 ePhysicalDeviceMeshShaderFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, 589 ePhysicalDeviceMeshShaderPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, 590 ePhysicalDeviceShaderImageFootprintFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, 591 ePipelineViewportExclusiveScissorStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV, 592 ePhysicalDeviceExclusiveScissorFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, 593 eCheckpointDataNV = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV, 594 eQueueFamilyCheckpointPropertiesNV = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV, 595 ePhysicalDeviceShaderIntegerFunctions2FeaturesINTEL = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, 596 eQueryPoolPerformanceQueryCreateInfoINTEL = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL, 597 eInitializePerformanceApiInfoINTEL = VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL, 598 ePerformanceMarkerInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL, 599 ePerformanceStreamMarkerInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL, 600 ePerformanceOverrideInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL, 601 ePerformanceConfigurationAcquireInfoINTEL = VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL, 602 ePhysicalDevicePciBusInfoPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT, 603 eDisplayNativeHdrSurfaceCapabilitiesAMD = VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD, 604 eSwapchainDisplayNativeHdrCreateInfoAMD = VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD, 605 #if defined( VK_USE_PLATFORM_FUCHSIA ) 606 eImagepipeSurfaceCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA, 607 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 608 #if defined( VK_USE_PLATFORM_METAL_EXT ) 609 eMetalSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT, 610 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 611 ePhysicalDeviceFragmentDensityMapFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, 612 ePhysicalDeviceFragmentDensityMapPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, 613 eRenderPassFragmentDensityMapCreateInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT, 614 eFragmentShadingRateAttachmentInfoKHR = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR, 615 ePipelineFragmentShadingRateStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR, 616 ePhysicalDeviceFragmentShadingRatePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, 617 ePhysicalDeviceFragmentShadingRateFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, 618 ePhysicalDeviceFragmentShadingRateKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR, 619 ePhysicalDeviceShaderCoreProperties2AMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, 620 ePhysicalDeviceCoherentMemoryFeaturesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, 621 ePhysicalDeviceShaderImageAtomicInt64FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, 622 ePhysicalDeviceMemoryBudgetPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT, 623 ePhysicalDeviceMemoryPriorityFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, 624 eMemoryPriorityAllocateInfoEXT = VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT, 625 eSurfaceProtectedCapabilitiesKHR = VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR, 626 ePhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, 627 ePhysicalDeviceBufferDeviceAddressFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, 628 eBufferDeviceAddressCreateInfoEXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT, 629 eValidationFeaturesEXT = VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT, 630 ePhysicalDevicePresentWaitFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, 631 ePhysicalDeviceCooperativeMatrixFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, 632 eCooperativeMatrixPropertiesNV = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV, 633 ePhysicalDeviceCooperativeMatrixPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, 634 ePhysicalDeviceCoverageReductionModeFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, 635 ePipelineCoverageReductionStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV, 636 eFramebufferMixedSamplesCombinationNV = VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV, 637 ePhysicalDeviceFragmentShaderInterlockFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, 638 ePhysicalDeviceYcbcrImageArraysFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT, 639 ePhysicalDeviceProvokingVertexFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, 640 ePipelineRasterizationProvokingVertexStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT, 641 ePhysicalDeviceProvokingVertexPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, 642 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 643 eSurfaceFullScreenExclusiveInfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT, 644 eSurfaceCapabilitiesFullScreenExclusiveEXT = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT, 645 eSurfaceFullScreenExclusiveWin32InfoEXT = VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT, 646 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 647 eHeadlessSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT, 648 ePhysicalDeviceLineRasterizationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, 649 ePipelineRasterizationLineStateCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT, 650 ePhysicalDeviceLineRasterizationPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, 651 ePhysicalDeviceShaderAtomicFloatFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, 652 ePhysicalDeviceIndexTypeUint8FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, 653 ePhysicalDeviceExtendedDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, 654 ePhysicalDevicePipelineExecutablePropertiesFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, 655 ePipelineInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR, 656 ePipelineExecutablePropertiesKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR, 657 ePipelineExecutableInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR, 658 ePipelineExecutableStatisticKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR, 659 ePipelineExecutableInternalRepresentationKHR = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR, 660 ePhysicalDeviceShaderAtomicFloat2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, 661 eSurfacePresentModeEXT = VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT, 662 eSurfacePresentScalingCapabilitiesEXT = VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT, 663 eSurfacePresentModeCompatibilityEXT = VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT, 664 ePhysicalDeviceSwapchainMaintenance1FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT, 665 eSwapchainPresentFenceInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT, 666 eSwapchainPresentModesCreateInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT, 667 eSwapchainPresentModeInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT, 668 eSwapchainPresentScalingCreateInfoEXT = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT, 669 eReleaseSwapchainImagesInfoEXT = VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT, 670 ePhysicalDeviceDeviceGeneratedCommandsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, 671 eGraphicsShaderGroupCreateInfoNV = VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV, 672 eGraphicsPipelineShaderGroupsCreateInfoNV = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV, 673 eIndirectCommandsLayoutTokenNV = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV, 674 eIndirectCommandsLayoutCreateInfoNV = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV, 675 eGeneratedCommandsInfoNV = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV, 676 eGeneratedCommandsMemoryRequirementsInfoNV = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV, 677 ePhysicalDeviceDeviceGeneratedCommandsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, 678 ePhysicalDeviceInheritedViewportScissorFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, 679 eCommandBufferInheritanceViewportScissorInfoNV = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV, 680 ePhysicalDeviceTexelBufferAlignmentFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, 681 eCommandBufferInheritanceRenderPassTransformInfoQCOM = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM, 682 eRenderPassTransformBeginInfoQCOM = VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM, 683 ePhysicalDeviceDeviceMemoryReportFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, 684 eDeviceDeviceMemoryReportCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT, 685 eDeviceMemoryReportCallbackDataEXT = VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT, 686 ePhysicalDeviceRobustness2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, 687 ePhysicalDeviceRobustness2PropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, 688 eSamplerCustomBorderColorCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT, 689 ePhysicalDeviceCustomBorderColorPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, 690 ePhysicalDeviceCustomBorderColorFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, 691 ePipelineLibraryCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR, 692 ePhysicalDevicePresentBarrierFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV, 693 eSurfaceCapabilitiesPresentBarrierNV = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV, 694 eSwapchainPresentBarrierCreateInfoNV = VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV, 695 ePresentIdKHR = VK_STRUCTURE_TYPE_PRESENT_ID_KHR, 696 ePhysicalDevicePresentIdFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, 697 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 698 eVideoEncodeInfoKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR, 699 eVideoEncodeRateControlInfoKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR, 700 eVideoEncodeRateControlLayerInfoKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR, 701 eVideoEncodeCapabilitiesKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR, 702 eVideoEncodeUsageInfoKHR = VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR, 703 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 704 ePhysicalDeviceDiagnosticsConfigFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, 705 eDeviceDiagnosticsConfigCreateInfoNV = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV, 706 #if defined( VK_USE_PLATFORM_METAL_EXT ) 707 eExportMetalObjectCreateInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT, 708 eExportMetalObjectsInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT, 709 eExportMetalDeviceInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT, 710 eExportMetalCommandQueueInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT, 711 eExportMetalBufferInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT, 712 eImportMetalBufferInfoEXT = VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT, 713 eExportMetalTextureInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT, 714 eImportMetalTextureInfoEXT = VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT, 715 eExportMetalIoSurfaceInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT, 716 eImportMetalIoSurfaceInfoEXT = VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT, 717 eExportMetalSharedEventInfoEXT = VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT, 718 eImportMetalSharedEventInfoEXT = VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT, 719 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 720 eQueueFamilyCheckpointProperties2NV = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV, 721 eCheckpointData2NV = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV, 722 ePhysicalDeviceDescriptorBufferPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT, 723 ePhysicalDeviceDescriptorBufferDensityMapPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT, 724 ePhysicalDeviceDescriptorBufferFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT, 725 eDescriptorAddressInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT, 726 eDescriptorGetInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT, 727 eBufferCaptureDescriptorDataInfoEXT = VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, 728 eImageCaptureDescriptorDataInfoEXT = VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, 729 eImageViewCaptureDescriptorDataInfoEXT = VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, 730 eSamplerCaptureDescriptorDataInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, 731 eOpaqueCaptureDescriptorDataCreateInfoEXT = VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT, 732 eDescriptorBufferBindingInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT, 733 eDescriptorBufferBindingPushDescriptorBufferHandleEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT, 734 eAccelerationStructureCaptureDescriptorDataInfoEXT = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT, 735 ePhysicalDeviceGraphicsPipelineLibraryFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, 736 ePhysicalDeviceGraphicsPipelineLibraryPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, 737 eGraphicsPipelineLibraryCreateInfoEXT = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT, 738 ePhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD, 739 ePhysicalDeviceFragmentShaderBarycentricFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, 740 ePhysicalDeviceFragmentShaderBarycentricPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR, 741 ePhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, 742 ePhysicalDeviceFragmentShadingRateEnumsPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, 743 ePhysicalDeviceFragmentShadingRateEnumsFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, 744 ePipelineFragmentShadingRateEnumStateCreateInfoNV = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV, 745 eAccelerationStructureGeometryMotionTrianglesDataNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV, 746 ePhysicalDeviceRayTracingMotionBlurFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, 747 eAccelerationStructureMotionInfoNV = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV, 748 ePhysicalDeviceMeshShaderFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT, 749 ePhysicalDeviceMeshShaderPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT, 750 ePhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT, 751 ePhysicalDeviceFragmentDensityMap2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, 752 ePhysicalDeviceFragmentDensityMap2PropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, 753 eCopyCommandTransformInfoQCOM = VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM, 754 ePhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR, 755 ePhysicalDeviceImageCompressionControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT, 756 eImageCompressionControlEXT = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT, 757 eSubresourceLayout2EXT = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT, 758 eImageSubresource2EXT = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT, 759 eImageCompressionPropertiesEXT = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT, 760 ePhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT, 761 ePhysicalDevice4444FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, 762 ePhysicalDeviceFaultFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT, 763 eDeviceFaultCountsEXT = VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT, 764 eDeviceFaultInfoEXT = VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT, 765 ePhysicalDeviceRgba10X6FormatsFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, 766 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 767 eDirectfbSurfaceCreateInfoEXT = VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT, 768 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 769 ePhysicalDeviceVertexInputDynamicStateFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT, 770 eVertexInputBindingDescription2EXT = VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT, 771 eVertexInputAttributeDescription2EXT = VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT, 772 ePhysicalDeviceDrmPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, 773 ePhysicalDeviceAddressBindingReportFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT, 774 eDeviceAddressBindingCallbackDataEXT = VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT, 775 ePhysicalDeviceDepthClipControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, 776 ePipelineViewportDepthClipControlCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT, 777 ePhysicalDevicePrimitiveTopologyListRestartFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, 778 #if defined( VK_USE_PLATFORM_FUCHSIA ) 779 eImportMemoryZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA, 780 eMemoryZirconHandlePropertiesFUCHSIA = VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA, 781 eMemoryGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA, 782 eImportSemaphoreZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA, 783 eSemaphoreGetZirconHandleInfoFUCHSIA = VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA, 784 eBufferCollectionCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA, 785 eImportMemoryBufferCollectionFUCHSIA = VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA, 786 eBufferCollectionImageCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA, 787 eBufferCollectionPropertiesFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA, 788 eBufferConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA, 789 eBufferCollectionBufferCreateInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA, 790 eImageConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA, 791 eImageFormatConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA, 792 eSysmemColorSpaceFUCHSIA = VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA, 793 eBufferCollectionConstraintsInfoFUCHSIA = VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA, 794 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 795 eSubpassShadingPipelineCreateInfoHUAWEI = VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI, 796 ePhysicalDeviceSubpassShadingFeaturesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, 797 ePhysicalDeviceSubpassShadingPropertiesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI, 798 ePhysicalDeviceInvocationMaskFeaturesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, 799 eMemoryGetRemoteAddressInfoNV = VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV, 800 ePhysicalDeviceExternalMemoryRdmaFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, 801 ePipelinePropertiesIdentifierEXT = VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT, 802 ePhysicalDevicePipelinePropertiesFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT, 803 ePhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT, 804 eSubpassResolvePerformanceQueryEXT = VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT, 805 eMultisampledRenderToSingleSampledInfoEXT = VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT, 806 ePhysicalDeviceExtendedDynamicState2FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, 807 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 808 eScreenSurfaceCreateInfoQNX = VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX, 809 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 810 ePhysicalDeviceColorWriteEnableFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, 811 ePipelineColorWriteCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT, 812 ePhysicalDevicePrimitivesGeneratedQueryFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, 813 ePhysicalDeviceRayTracingMaintenance1FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR, 814 ePhysicalDeviceImageViewMinLodFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, 815 eImageViewMinLodCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT, 816 ePhysicalDeviceMultiDrawFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, 817 ePhysicalDeviceMultiDrawPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, 818 ePhysicalDeviceImage2DViewOf3DFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, 819 eMicromapBuildInfoEXT = VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT, 820 eMicromapVersionInfoEXT = VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT, 821 eCopyMicromapInfoEXT = VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT, 822 eCopyMicromapToMemoryInfoEXT = VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT, 823 eCopyMemoryToMicromapInfoEXT = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT, 824 ePhysicalDeviceOpacityMicromapFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT, 825 ePhysicalDeviceOpacityMicromapPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT, 826 eMicromapCreateInfoEXT = VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT, 827 eMicromapBuildSizesInfoEXT = VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT, 828 eAccelerationStructureTrianglesOpacityMicromapEXT = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT, 829 ePhysicalDeviceClusterCullingShaderFeaturesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI, 830 ePhysicalDeviceClusterCullingShaderPropertiesHUAWEI = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI, 831 ePhysicalDeviceBorderColorSwizzleFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, 832 eSamplerBorderColorComponentMappingCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT, 833 ePhysicalDevicePageableDeviceLocalMemoryFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, 834 ePhysicalDeviceDescriptorSetHostMappingFeaturesVALVE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, 835 eDescriptorSetBindingReferenceVALVE = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE, 836 eDescriptorSetLayoutHostMappingInfoVALVE = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE, 837 ePhysicalDeviceDepthClampZeroOneFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT, 838 ePhysicalDeviceNonSeamlessCubeMapFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT, 839 ePhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, 840 ePhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, 841 eSubpassFragmentDensityMapOffsetEndInfoQCOM = VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM, 842 ePhysicalDeviceCopyMemoryIndirectFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV, 843 ePhysicalDeviceCopyMemoryIndirectPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV, 844 ePhysicalDeviceMemoryDecompressionFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV, 845 ePhysicalDeviceMemoryDecompressionPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV, 846 ePhysicalDeviceLinearColorAttachmentFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, 847 ePhysicalDeviceImageCompressionControlSwapchainFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT, 848 ePhysicalDeviceImageProcessingFeaturesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM, 849 ePhysicalDeviceImageProcessingPropertiesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM, 850 eImageViewSampleWeightCreateInfoQCOM = VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM, 851 ePhysicalDeviceExtendedDynamicState3FeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT, 852 ePhysicalDeviceExtendedDynamicState3PropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT, 853 ePhysicalDeviceSubpassMergeFeedbackFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT, 854 eRenderPassCreationControlEXT = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT, 855 eRenderPassCreationFeedbackCreateInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT, 856 eRenderPassSubpassFeedbackCreateInfoEXT = VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT, 857 eDirectDriverLoadingInfoLUNARG = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG, 858 eDirectDriverLoadingListLUNARG = VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG, 859 ePhysicalDeviceShaderModuleIdentifierFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT, 860 ePhysicalDeviceShaderModuleIdentifierPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT, 861 ePipelineShaderStageModuleIdentifierCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT, 862 eShaderModuleIdentifierEXT = VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT, 863 ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT, 864 ePhysicalDeviceOpticalFlowFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV, 865 ePhysicalDeviceOpticalFlowPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV, 866 eOpticalFlowImageFormatInfoNV = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV, 867 eOpticalFlowImageFormatPropertiesNV = VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV, 868 eOpticalFlowSessionCreateInfoNV = VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV, 869 eOpticalFlowExecuteInfoNV = VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV, 870 eOpticalFlowSessionCreatePrivateDataInfoNV = VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV, 871 ePhysicalDeviceLegacyDitheringFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT, 872 ePhysicalDevicePipelineProtectedAccessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT, 873 ePhysicalDeviceTilePropertiesFeaturesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM, 874 eTilePropertiesQCOM = VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM, 875 ePhysicalDeviceAmigoProfilingFeaturesSEC = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC, 876 eAmigoProfilingSubmitInfoSEC = VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC, 877 ePhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM, 878 ePhysicalDeviceRayTracingInvocationReorderFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV, 879 ePhysicalDeviceRayTracingInvocationReorderPropertiesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV, 880 ePhysicalDeviceMutableDescriptorTypeFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT, 881 eMutableDescriptorTypeCreateInfoEXT = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT, 882 ePhysicalDeviceShaderCoreBuiltinsFeaturesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM, 883 ePhysicalDeviceShaderCoreBuiltinsPropertiesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM, 884 eAttachmentDescription2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR, 885 eAttachmentDescriptionStencilLayoutKHR = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR, 886 eAttachmentReference2KHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR, 887 eAttachmentReferenceStencilLayoutKHR = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR, 888 eAttachmentSampleCountInfoNV = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV, 889 eBindBufferMemoryDeviceGroupInfoKHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR, 890 eBindBufferMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR, 891 eBindImageMemoryDeviceGroupInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR, 892 eBindImageMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR, 893 eBindImagePlaneMemoryInfoKHR = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR, 894 eBlitImageInfo2KHR = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR, 895 eBufferCopy2KHR = VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR, 896 eBufferDeviceAddressInfoEXT = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT, 897 eBufferDeviceAddressInfoKHR = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR, 898 eBufferImageCopy2KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR, 899 eBufferMemoryBarrier2KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR, 900 eBufferMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR, 901 eBufferOpaqueCaptureAddressCreateInfoKHR = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR, 902 eCommandBufferInheritanceRenderingInfoKHR = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR, 903 eCommandBufferSubmitInfoKHR = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR, 904 eCopyBufferInfo2KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR, 905 eCopyBufferToImageInfo2KHR = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR, 906 eCopyImageInfo2KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR, 907 eCopyImageToBufferInfo2KHR = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR, 908 eDebugReportCreateInfoEXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT, 909 eDependencyInfoKHR = VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR, 910 eDescriptorPoolInlineUniformBlockCreateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT, 911 eDescriptorSetLayoutBindingFlagsCreateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT, 912 eDescriptorSetLayoutSupportKHR = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR, 913 eDescriptorSetVariableDescriptorCountAllocateInfoEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT, 914 eDescriptorSetVariableDescriptorCountLayoutSupportEXT = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT, 915 eDescriptorUpdateTemplateCreateInfoKHR = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR, 916 eDeviceBufferMemoryRequirementsKHR = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR, 917 eDeviceGroupBindSparseInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR, 918 eDeviceGroupCommandBufferBeginInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR, 919 eDeviceGroupDeviceCreateInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR, 920 eDeviceGroupRenderPassBeginInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR, 921 eDeviceGroupSubmitInfoKHR = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR, 922 eDeviceImageMemoryRequirementsKHR = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR, 923 eDeviceMemoryOpaqueCaptureAddressInfoKHR = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR, 924 eDevicePrivateDataCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT, 925 eDeviceQueueGlobalPriorityCreateInfoEXT = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT, 926 eExportFenceCreateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR, 927 eExportMemoryAllocateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR, 928 eExportSemaphoreCreateInfoKHR = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR, 929 eExternalBufferPropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR, 930 eExternalFencePropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR, 931 eExternalImageFormatPropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR, 932 eExternalMemoryBufferCreateInfoKHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR, 933 eExternalMemoryImageCreateInfoKHR = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR, 934 eExternalSemaphorePropertiesKHR = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR, 935 eFormatProperties2KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR, 936 eFormatProperties3KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR, 937 eFramebufferAttachmentsCreateInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR, 938 eFramebufferAttachmentImageInfoKHR = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR, 939 eImageBlit2KHR = VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR, 940 eImageCopy2KHR = VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR, 941 eImageFormatListCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR, 942 eImageFormatProperties2KHR = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR, 943 eImageMemoryBarrier2KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR, 944 eImageMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR, 945 eImagePlaneMemoryRequirementsInfoKHR = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR, 946 eImageResolve2KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR, 947 eImageSparseMemoryRequirementsInfo2KHR = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR, 948 eImageStencilUsageCreateInfoEXT = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT, 949 eImageViewUsageCreateInfoKHR = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR, 950 eMemoryAllocateFlagsInfoKHR = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR, 951 eMemoryBarrier2KHR = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR, 952 eMemoryDedicatedAllocateInfoKHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR, 953 eMemoryDedicatedRequirementsKHR = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR, 954 eMemoryOpaqueCaptureAddressAllocateInfoKHR = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR, 955 eMemoryRequirements2KHR = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR, 956 eMutableDescriptorTypeCreateInfoVALVE = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE, 957 ePhysicalDevice16BitStorageFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR, 958 ePhysicalDevice8BitStorageFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR, 959 ePhysicalDeviceBufferAddressFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT, 960 ePhysicalDeviceBufferDeviceAddressFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR, 961 ePhysicalDeviceDepthStencilResolvePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR, 962 ePhysicalDeviceDescriptorIndexingFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT, 963 ePhysicalDeviceDescriptorIndexingPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT, 964 ePhysicalDeviceDriverPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR, 965 ePhysicalDeviceDynamicRenderingFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR, 966 ePhysicalDeviceExternalBufferInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR, 967 ePhysicalDeviceExternalFenceInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR, 968 ePhysicalDeviceExternalImageFormatInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR, 969 ePhysicalDeviceExternalSemaphoreInfoKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR, 970 ePhysicalDeviceFeatures2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR, 971 ePhysicalDeviceFloat16Int8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR, 972 ePhysicalDeviceFloatControlsPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR, 973 ePhysicalDeviceFragmentShaderBarycentricFeaturesNV = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV, 974 ePhysicalDeviceGlobalPriorityQueryFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT, 975 ePhysicalDeviceGroupPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR, 976 ePhysicalDeviceHostQueryResetFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT, 977 ePhysicalDeviceIdPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR, 978 ePhysicalDeviceImagelessFramebufferFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR, 979 ePhysicalDeviceImageFormatInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR, 980 ePhysicalDeviceImageRobustnessFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT, 981 ePhysicalDeviceInlineUniformBlockFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT, 982 ePhysicalDeviceInlineUniformBlockPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT, 983 ePhysicalDeviceMaintenance3PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR, 984 ePhysicalDeviceMaintenance4FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR, 985 ePhysicalDeviceMaintenance4PropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR, 986 ePhysicalDeviceMemoryProperties2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR, 987 ePhysicalDeviceMultiviewFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR, 988 ePhysicalDeviceMultiviewPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR, 989 ePhysicalDeviceMutableDescriptorTypeFeaturesVALVE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE, 990 ePhysicalDevicePipelineCreationCacheControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT, 991 ePhysicalDevicePointClippingPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR, 992 ePhysicalDevicePrivateDataFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT, 993 ePhysicalDeviceProperties2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR, 994 ePhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM, 995 ePhysicalDeviceSamplerFilterMinmaxPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT, 996 ePhysicalDeviceSamplerYcbcrConversionFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR, 997 ePhysicalDeviceScalarBlockLayoutFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT, 998 ePhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR, 999 ePhysicalDeviceShaderAtomicInt64FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR, 1000 ePhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT, 1001 ePhysicalDeviceShaderDrawParameterFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES, 1002 ePhysicalDeviceShaderFloat16Int8FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR, 1003 ePhysicalDeviceShaderIntegerDotProductFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR, 1004 ePhysicalDeviceShaderIntegerDotProductPropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR, 1005 ePhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR, 1006 ePhysicalDeviceShaderTerminateInvocationFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR, 1007 ePhysicalDeviceSparseImageFormatInfo2KHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR, 1008 ePhysicalDeviceSubgroupSizeControlFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT, 1009 ePhysicalDeviceSubgroupSizeControlPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT, 1010 ePhysicalDeviceSynchronization2FeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR, 1011 ePhysicalDeviceTexelBufferAlignmentPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT, 1012 ePhysicalDeviceTextureCompressionAstcHdrFeaturesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT, 1013 ePhysicalDeviceTimelineSemaphoreFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR, 1014 ePhysicalDeviceTimelineSemaphorePropertiesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR, 1015 ePhysicalDeviceToolPropertiesEXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT, 1016 ePhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR, 1017 ePhysicalDeviceVariablePointersFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR, 1018 ePhysicalDeviceVariablePointerFeatures = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES, 1019 ePhysicalDeviceVariablePointerFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR, 1020 ePhysicalDeviceVulkanMemoryModelFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR, 1021 ePhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR, 1022 ePipelineCreationFeedbackCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT, 1023 ePipelineInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT, 1024 ePipelineRenderingCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR, 1025 ePipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT, 1026 ePipelineTessellationDomainOriginStateCreateInfoKHR = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR, 1027 ePrivateDataSlotCreateInfoEXT = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT, 1028 eQueryPoolCreateInfoINTEL = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL, 1029 eQueueFamilyGlobalPriorityPropertiesEXT = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT, 1030 eQueueFamilyProperties2KHR = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR, 1031 eRenderingAttachmentInfoKHR = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR, 1032 eRenderingInfoKHR = VK_STRUCTURE_TYPE_RENDERING_INFO_KHR, 1033 eRenderPassAttachmentBeginInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR, 1034 eRenderPassCreateInfo2KHR = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR, 1035 eRenderPassInputAttachmentAspectCreateInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR, 1036 eRenderPassMultiviewCreateInfoKHR = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR, 1037 eResolveImageInfo2KHR = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR, 1038 eSamplerReductionModeCreateInfoEXT = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT, 1039 eSamplerYcbcrConversionCreateInfoKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR, 1040 eSamplerYcbcrConversionImageFormatPropertiesKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR, 1041 eSamplerYcbcrConversionInfoKHR = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR, 1042 eSemaphoreSignalInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR, 1043 eSemaphoreSubmitInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR, 1044 eSemaphoreTypeCreateInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR, 1045 eSemaphoreWaitInfoKHR = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR, 1046 eSparseImageFormatProperties2KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR, 1047 eSparseImageMemoryRequirements2KHR = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR, 1048 eSubmitInfo2KHR = VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR, 1049 eSubpassBeginInfoKHR = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR, 1050 eSubpassDependency2KHR = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR, 1051 eSubpassDescription2KHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR, 1052 eSubpassDescriptionDepthStencilResolveKHR = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR, 1053 eSubpassEndInfoKHR = VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR, 1054 eTimelineSemaphoreSubmitInfoKHR = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR, 1055 eWriteDescriptorSetInlineUniformBlockEXT = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT 1056 }; 1057 1058 enum class PipelineCacheHeaderVersion 1059 { 1060 eOne = VK_PIPELINE_CACHE_HEADER_VERSION_ONE 1061 }; 1062 1063 enum class ObjectType 1064 { 1065 eUnknown = VK_OBJECT_TYPE_UNKNOWN, 1066 eInstance = VK_OBJECT_TYPE_INSTANCE, 1067 ePhysicalDevice = VK_OBJECT_TYPE_PHYSICAL_DEVICE, 1068 eDevice = VK_OBJECT_TYPE_DEVICE, 1069 eQueue = VK_OBJECT_TYPE_QUEUE, 1070 eSemaphore = VK_OBJECT_TYPE_SEMAPHORE, 1071 eCommandBuffer = VK_OBJECT_TYPE_COMMAND_BUFFER, 1072 eFence = VK_OBJECT_TYPE_FENCE, 1073 eDeviceMemory = VK_OBJECT_TYPE_DEVICE_MEMORY, 1074 eBuffer = VK_OBJECT_TYPE_BUFFER, 1075 eImage = VK_OBJECT_TYPE_IMAGE, 1076 eEvent = VK_OBJECT_TYPE_EVENT, 1077 eQueryPool = VK_OBJECT_TYPE_QUERY_POOL, 1078 eBufferView = VK_OBJECT_TYPE_BUFFER_VIEW, 1079 eImageView = VK_OBJECT_TYPE_IMAGE_VIEW, 1080 eShaderModule = VK_OBJECT_TYPE_SHADER_MODULE, 1081 ePipelineCache = VK_OBJECT_TYPE_PIPELINE_CACHE, 1082 ePipelineLayout = VK_OBJECT_TYPE_PIPELINE_LAYOUT, 1083 eRenderPass = VK_OBJECT_TYPE_RENDER_PASS, 1084 ePipeline = VK_OBJECT_TYPE_PIPELINE, 1085 eDescriptorSetLayout = VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT, 1086 eSampler = VK_OBJECT_TYPE_SAMPLER, 1087 eDescriptorPool = VK_OBJECT_TYPE_DESCRIPTOR_POOL, 1088 eDescriptorSet = VK_OBJECT_TYPE_DESCRIPTOR_SET, 1089 eFramebuffer = VK_OBJECT_TYPE_FRAMEBUFFER, 1090 eCommandPool = VK_OBJECT_TYPE_COMMAND_POOL, 1091 eSamplerYcbcrConversion = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION, 1092 eDescriptorUpdateTemplate = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE, 1093 ePrivateDataSlot = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT, 1094 eSurfaceKHR = VK_OBJECT_TYPE_SURFACE_KHR, 1095 eSwapchainKHR = VK_OBJECT_TYPE_SWAPCHAIN_KHR, 1096 eDisplayKHR = VK_OBJECT_TYPE_DISPLAY_KHR, 1097 eDisplayModeKHR = VK_OBJECT_TYPE_DISPLAY_MODE_KHR, 1098 eDebugReportCallbackEXT = VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT, 1099 eVideoSessionKHR = VK_OBJECT_TYPE_VIDEO_SESSION_KHR, 1100 eVideoSessionParametersKHR = VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR, 1101 eCuModuleNVX = VK_OBJECT_TYPE_CU_MODULE_NVX, 1102 eCuFunctionNVX = VK_OBJECT_TYPE_CU_FUNCTION_NVX, 1103 eDebugUtilsMessengerEXT = VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT, 1104 eAccelerationStructureKHR = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR, 1105 eValidationCacheEXT = VK_OBJECT_TYPE_VALIDATION_CACHE_EXT, 1106 eAccelerationStructureNV = VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV, 1107 ePerformanceConfigurationINTEL = VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL, 1108 eDeferredOperationKHR = VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR, 1109 eIndirectCommandsLayoutNV = VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV, 1110 #if defined( VK_USE_PLATFORM_FUCHSIA ) 1111 eBufferCollectionFUCHSIA = VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA, 1112 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 1113 eMicromapEXT = VK_OBJECT_TYPE_MICROMAP_EXT, 1114 eOpticalFlowSessionNV = VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV, 1115 eDescriptorUpdateTemplateKHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR, 1116 ePrivateDataSlotEXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT, 1117 eSamplerYcbcrConversionKHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR 1118 }; 1119 1120 enum class VendorId 1121 { 1122 eVIV = VK_VENDOR_ID_VIV, 1123 eVSI = VK_VENDOR_ID_VSI, 1124 eKazan = VK_VENDOR_ID_KAZAN, 1125 eCodeplay = VK_VENDOR_ID_CODEPLAY, 1126 eMESA = VK_VENDOR_ID_MESA, 1127 ePocl = VK_VENDOR_ID_POCL 1128 }; 1129 1130 enum class Format 1131 { 1132 eUndefined = VK_FORMAT_UNDEFINED, 1133 eR4G4UnormPack8 = VK_FORMAT_R4G4_UNORM_PACK8, 1134 eR4G4B4A4UnormPack16 = VK_FORMAT_R4G4B4A4_UNORM_PACK16, 1135 eB4G4R4A4UnormPack16 = VK_FORMAT_B4G4R4A4_UNORM_PACK16, 1136 eR5G6B5UnormPack16 = VK_FORMAT_R5G6B5_UNORM_PACK16, 1137 eB5G6R5UnormPack16 = VK_FORMAT_B5G6R5_UNORM_PACK16, 1138 eR5G5B5A1UnormPack16 = VK_FORMAT_R5G5B5A1_UNORM_PACK16, 1139 eB5G5R5A1UnormPack16 = VK_FORMAT_B5G5R5A1_UNORM_PACK16, 1140 eA1R5G5B5UnormPack16 = VK_FORMAT_A1R5G5B5_UNORM_PACK16, 1141 eR8Unorm = VK_FORMAT_R8_UNORM, 1142 eR8Snorm = VK_FORMAT_R8_SNORM, 1143 eR8Uscaled = VK_FORMAT_R8_USCALED, 1144 eR8Sscaled = VK_FORMAT_R8_SSCALED, 1145 eR8Uint = VK_FORMAT_R8_UINT, 1146 eR8Sint = VK_FORMAT_R8_SINT, 1147 eR8Srgb = VK_FORMAT_R8_SRGB, 1148 eR8G8Unorm = VK_FORMAT_R8G8_UNORM, 1149 eR8G8Snorm = VK_FORMAT_R8G8_SNORM, 1150 eR8G8Uscaled = VK_FORMAT_R8G8_USCALED, 1151 eR8G8Sscaled = VK_FORMAT_R8G8_SSCALED, 1152 eR8G8Uint = VK_FORMAT_R8G8_UINT, 1153 eR8G8Sint = VK_FORMAT_R8G8_SINT, 1154 eR8G8Srgb = VK_FORMAT_R8G8_SRGB, 1155 eR8G8B8Unorm = VK_FORMAT_R8G8B8_UNORM, 1156 eR8G8B8Snorm = VK_FORMAT_R8G8B8_SNORM, 1157 eR8G8B8Uscaled = VK_FORMAT_R8G8B8_USCALED, 1158 eR8G8B8Sscaled = VK_FORMAT_R8G8B8_SSCALED, 1159 eR8G8B8Uint = VK_FORMAT_R8G8B8_UINT, 1160 eR8G8B8Sint = VK_FORMAT_R8G8B8_SINT, 1161 eR8G8B8Srgb = VK_FORMAT_R8G8B8_SRGB, 1162 eB8G8R8Unorm = VK_FORMAT_B8G8R8_UNORM, 1163 eB8G8R8Snorm = VK_FORMAT_B8G8R8_SNORM, 1164 eB8G8R8Uscaled = VK_FORMAT_B8G8R8_USCALED, 1165 eB8G8R8Sscaled = VK_FORMAT_B8G8R8_SSCALED, 1166 eB8G8R8Uint = VK_FORMAT_B8G8R8_UINT, 1167 eB8G8R8Sint = VK_FORMAT_B8G8R8_SINT, 1168 eB8G8R8Srgb = VK_FORMAT_B8G8R8_SRGB, 1169 eR8G8B8A8Unorm = VK_FORMAT_R8G8B8A8_UNORM, 1170 eR8G8B8A8Snorm = VK_FORMAT_R8G8B8A8_SNORM, 1171 eR8G8B8A8Uscaled = VK_FORMAT_R8G8B8A8_USCALED, 1172 eR8G8B8A8Sscaled = VK_FORMAT_R8G8B8A8_SSCALED, 1173 eR8G8B8A8Uint = VK_FORMAT_R8G8B8A8_UINT, 1174 eR8G8B8A8Sint = VK_FORMAT_R8G8B8A8_SINT, 1175 eR8G8B8A8Srgb = VK_FORMAT_R8G8B8A8_SRGB, 1176 eB8G8R8A8Unorm = VK_FORMAT_B8G8R8A8_UNORM, 1177 eB8G8R8A8Snorm = VK_FORMAT_B8G8R8A8_SNORM, 1178 eB8G8R8A8Uscaled = VK_FORMAT_B8G8R8A8_USCALED, 1179 eB8G8R8A8Sscaled = VK_FORMAT_B8G8R8A8_SSCALED, 1180 eB8G8R8A8Uint = VK_FORMAT_B8G8R8A8_UINT, 1181 eB8G8R8A8Sint = VK_FORMAT_B8G8R8A8_SINT, 1182 eB8G8R8A8Srgb = VK_FORMAT_B8G8R8A8_SRGB, 1183 eA8B8G8R8UnormPack32 = VK_FORMAT_A8B8G8R8_UNORM_PACK32, 1184 eA8B8G8R8SnormPack32 = VK_FORMAT_A8B8G8R8_SNORM_PACK32, 1185 eA8B8G8R8UscaledPack32 = VK_FORMAT_A8B8G8R8_USCALED_PACK32, 1186 eA8B8G8R8SscaledPack32 = VK_FORMAT_A8B8G8R8_SSCALED_PACK32, 1187 eA8B8G8R8UintPack32 = VK_FORMAT_A8B8G8R8_UINT_PACK32, 1188 eA8B8G8R8SintPack32 = VK_FORMAT_A8B8G8R8_SINT_PACK32, 1189 eA8B8G8R8SrgbPack32 = VK_FORMAT_A8B8G8R8_SRGB_PACK32, 1190 eA2R10G10B10UnormPack32 = VK_FORMAT_A2R10G10B10_UNORM_PACK32, 1191 eA2R10G10B10SnormPack32 = VK_FORMAT_A2R10G10B10_SNORM_PACK32, 1192 eA2R10G10B10UscaledPack32 = VK_FORMAT_A2R10G10B10_USCALED_PACK32, 1193 eA2R10G10B10SscaledPack32 = VK_FORMAT_A2R10G10B10_SSCALED_PACK32, 1194 eA2R10G10B10UintPack32 = VK_FORMAT_A2R10G10B10_UINT_PACK32, 1195 eA2R10G10B10SintPack32 = VK_FORMAT_A2R10G10B10_SINT_PACK32, 1196 eA2B10G10R10UnormPack32 = VK_FORMAT_A2B10G10R10_UNORM_PACK32, 1197 eA2B10G10R10SnormPack32 = VK_FORMAT_A2B10G10R10_SNORM_PACK32, 1198 eA2B10G10R10UscaledPack32 = VK_FORMAT_A2B10G10R10_USCALED_PACK32, 1199 eA2B10G10R10SscaledPack32 = VK_FORMAT_A2B10G10R10_SSCALED_PACK32, 1200 eA2B10G10R10UintPack32 = VK_FORMAT_A2B10G10R10_UINT_PACK32, 1201 eA2B10G10R10SintPack32 = VK_FORMAT_A2B10G10R10_SINT_PACK32, 1202 eR16Unorm = VK_FORMAT_R16_UNORM, 1203 eR16Snorm = VK_FORMAT_R16_SNORM, 1204 eR16Uscaled = VK_FORMAT_R16_USCALED, 1205 eR16Sscaled = VK_FORMAT_R16_SSCALED, 1206 eR16Uint = VK_FORMAT_R16_UINT, 1207 eR16Sint = VK_FORMAT_R16_SINT, 1208 eR16Sfloat = VK_FORMAT_R16_SFLOAT, 1209 eR16G16Unorm = VK_FORMAT_R16G16_UNORM, 1210 eR16G16Snorm = VK_FORMAT_R16G16_SNORM, 1211 eR16G16Uscaled = VK_FORMAT_R16G16_USCALED, 1212 eR16G16Sscaled = VK_FORMAT_R16G16_SSCALED, 1213 eR16G16Uint = VK_FORMAT_R16G16_UINT, 1214 eR16G16Sint = VK_FORMAT_R16G16_SINT, 1215 eR16G16Sfloat = VK_FORMAT_R16G16_SFLOAT, 1216 eR16G16B16Unorm = VK_FORMAT_R16G16B16_UNORM, 1217 eR16G16B16Snorm = VK_FORMAT_R16G16B16_SNORM, 1218 eR16G16B16Uscaled = VK_FORMAT_R16G16B16_USCALED, 1219 eR16G16B16Sscaled = VK_FORMAT_R16G16B16_SSCALED, 1220 eR16G16B16Uint = VK_FORMAT_R16G16B16_UINT, 1221 eR16G16B16Sint = VK_FORMAT_R16G16B16_SINT, 1222 eR16G16B16Sfloat = VK_FORMAT_R16G16B16_SFLOAT, 1223 eR16G16B16A16Unorm = VK_FORMAT_R16G16B16A16_UNORM, 1224 eR16G16B16A16Snorm = VK_FORMAT_R16G16B16A16_SNORM, 1225 eR16G16B16A16Uscaled = VK_FORMAT_R16G16B16A16_USCALED, 1226 eR16G16B16A16Sscaled = VK_FORMAT_R16G16B16A16_SSCALED, 1227 eR16G16B16A16Uint = VK_FORMAT_R16G16B16A16_UINT, 1228 eR16G16B16A16Sint = VK_FORMAT_R16G16B16A16_SINT, 1229 eR16G16B16A16Sfloat = VK_FORMAT_R16G16B16A16_SFLOAT, 1230 eR32Uint = VK_FORMAT_R32_UINT, 1231 eR32Sint = VK_FORMAT_R32_SINT, 1232 eR32Sfloat = VK_FORMAT_R32_SFLOAT, 1233 eR32G32Uint = VK_FORMAT_R32G32_UINT, 1234 eR32G32Sint = VK_FORMAT_R32G32_SINT, 1235 eR32G32Sfloat = VK_FORMAT_R32G32_SFLOAT, 1236 eR32G32B32Uint = VK_FORMAT_R32G32B32_UINT, 1237 eR32G32B32Sint = VK_FORMAT_R32G32B32_SINT, 1238 eR32G32B32Sfloat = VK_FORMAT_R32G32B32_SFLOAT, 1239 eR32G32B32A32Uint = VK_FORMAT_R32G32B32A32_UINT, 1240 eR32G32B32A32Sint = VK_FORMAT_R32G32B32A32_SINT, 1241 eR32G32B32A32Sfloat = VK_FORMAT_R32G32B32A32_SFLOAT, 1242 eR64Uint = VK_FORMAT_R64_UINT, 1243 eR64Sint = VK_FORMAT_R64_SINT, 1244 eR64Sfloat = VK_FORMAT_R64_SFLOAT, 1245 eR64G64Uint = VK_FORMAT_R64G64_UINT, 1246 eR64G64Sint = VK_FORMAT_R64G64_SINT, 1247 eR64G64Sfloat = VK_FORMAT_R64G64_SFLOAT, 1248 eR64G64B64Uint = VK_FORMAT_R64G64B64_UINT, 1249 eR64G64B64Sint = VK_FORMAT_R64G64B64_SINT, 1250 eR64G64B64Sfloat = VK_FORMAT_R64G64B64_SFLOAT, 1251 eR64G64B64A64Uint = VK_FORMAT_R64G64B64A64_UINT, 1252 eR64G64B64A64Sint = VK_FORMAT_R64G64B64A64_SINT, 1253 eR64G64B64A64Sfloat = VK_FORMAT_R64G64B64A64_SFLOAT, 1254 eB10G11R11UfloatPack32 = VK_FORMAT_B10G11R11_UFLOAT_PACK32, 1255 eE5B9G9R9UfloatPack32 = VK_FORMAT_E5B9G9R9_UFLOAT_PACK32, 1256 eD16Unorm = VK_FORMAT_D16_UNORM, 1257 eX8D24UnormPack32 = VK_FORMAT_X8_D24_UNORM_PACK32, 1258 eD32Sfloat = VK_FORMAT_D32_SFLOAT, 1259 eS8Uint = VK_FORMAT_S8_UINT, 1260 eD16UnormS8Uint = VK_FORMAT_D16_UNORM_S8_UINT, 1261 eD24UnormS8Uint = VK_FORMAT_D24_UNORM_S8_UINT, 1262 eD32SfloatS8Uint = VK_FORMAT_D32_SFLOAT_S8_UINT, 1263 eBc1RgbUnormBlock = VK_FORMAT_BC1_RGB_UNORM_BLOCK, 1264 eBc1RgbSrgbBlock = VK_FORMAT_BC1_RGB_SRGB_BLOCK, 1265 eBc1RgbaUnormBlock = VK_FORMAT_BC1_RGBA_UNORM_BLOCK, 1266 eBc1RgbaSrgbBlock = VK_FORMAT_BC1_RGBA_SRGB_BLOCK, 1267 eBc2UnormBlock = VK_FORMAT_BC2_UNORM_BLOCK, 1268 eBc2SrgbBlock = VK_FORMAT_BC2_SRGB_BLOCK, 1269 eBc3UnormBlock = VK_FORMAT_BC3_UNORM_BLOCK, 1270 eBc3SrgbBlock = VK_FORMAT_BC3_SRGB_BLOCK, 1271 eBc4UnormBlock = VK_FORMAT_BC4_UNORM_BLOCK, 1272 eBc4SnormBlock = VK_FORMAT_BC4_SNORM_BLOCK, 1273 eBc5UnormBlock = VK_FORMAT_BC5_UNORM_BLOCK, 1274 eBc5SnormBlock = VK_FORMAT_BC5_SNORM_BLOCK, 1275 eBc6HUfloatBlock = VK_FORMAT_BC6H_UFLOAT_BLOCK, 1276 eBc6HSfloatBlock = VK_FORMAT_BC6H_SFLOAT_BLOCK, 1277 eBc7UnormBlock = VK_FORMAT_BC7_UNORM_BLOCK, 1278 eBc7SrgbBlock = VK_FORMAT_BC7_SRGB_BLOCK, 1279 eEtc2R8G8B8UnormBlock = VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK, 1280 eEtc2R8G8B8SrgbBlock = VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK, 1281 eEtc2R8G8B8A1UnormBlock = VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK, 1282 eEtc2R8G8B8A1SrgbBlock = VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK, 1283 eEtc2R8G8B8A8UnormBlock = VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK, 1284 eEtc2R8G8B8A8SrgbBlock = VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK, 1285 eEacR11UnormBlock = VK_FORMAT_EAC_R11_UNORM_BLOCK, 1286 eEacR11SnormBlock = VK_FORMAT_EAC_R11_SNORM_BLOCK, 1287 eEacR11G11UnormBlock = VK_FORMAT_EAC_R11G11_UNORM_BLOCK, 1288 eEacR11G11SnormBlock = VK_FORMAT_EAC_R11G11_SNORM_BLOCK, 1289 eAstc4x4UnormBlock = VK_FORMAT_ASTC_4x4_UNORM_BLOCK, 1290 eAstc4x4SrgbBlock = VK_FORMAT_ASTC_4x4_SRGB_BLOCK, 1291 eAstc5x4UnormBlock = VK_FORMAT_ASTC_5x4_UNORM_BLOCK, 1292 eAstc5x4SrgbBlock = VK_FORMAT_ASTC_5x4_SRGB_BLOCK, 1293 eAstc5x5UnormBlock = VK_FORMAT_ASTC_5x5_UNORM_BLOCK, 1294 eAstc5x5SrgbBlock = VK_FORMAT_ASTC_5x5_SRGB_BLOCK, 1295 eAstc6x5UnormBlock = VK_FORMAT_ASTC_6x5_UNORM_BLOCK, 1296 eAstc6x5SrgbBlock = VK_FORMAT_ASTC_6x5_SRGB_BLOCK, 1297 eAstc6x6UnormBlock = VK_FORMAT_ASTC_6x6_UNORM_BLOCK, 1298 eAstc6x6SrgbBlock = VK_FORMAT_ASTC_6x6_SRGB_BLOCK, 1299 eAstc8x5UnormBlock = VK_FORMAT_ASTC_8x5_UNORM_BLOCK, 1300 eAstc8x5SrgbBlock = VK_FORMAT_ASTC_8x5_SRGB_BLOCK, 1301 eAstc8x6UnormBlock = VK_FORMAT_ASTC_8x6_UNORM_BLOCK, 1302 eAstc8x6SrgbBlock = VK_FORMAT_ASTC_8x6_SRGB_BLOCK, 1303 eAstc8x8UnormBlock = VK_FORMAT_ASTC_8x8_UNORM_BLOCK, 1304 eAstc8x8SrgbBlock = VK_FORMAT_ASTC_8x8_SRGB_BLOCK, 1305 eAstc10x5UnormBlock = VK_FORMAT_ASTC_10x5_UNORM_BLOCK, 1306 eAstc10x5SrgbBlock = VK_FORMAT_ASTC_10x5_SRGB_BLOCK, 1307 eAstc10x6UnormBlock = VK_FORMAT_ASTC_10x6_UNORM_BLOCK, 1308 eAstc10x6SrgbBlock = VK_FORMAT_ASTC_10x6_SRGB_BLOCK, 1309 eAstc10x8UnormBlock = VK_FORMAT_ASTC_10x8_UNORM_BLOCK, 1310 eAstc10x8SrgbBlock = VK_FORMAT_ASTC_10x8_SRGB_BLOCK, 1311 eAstc10x10UnormBlock = VK_FORMAT_ASTC_10x10_UNORM_BLOCK, 1312 eAstc10x10SrgbBlock = VK_FORMAT_ASTC_10x10_SRGB_BLOCK, 1313 eAstc12x10UnormBlock = VK_FORMAT_ASTC_12x10_UNORM_BLOCK, 1314 eAstc12x10SrgbBlock = VK_FORMAT_ASTC_12x10_SRGB_BLOCK, 1315 eAstc12x12UnormBlock = VK_FORMAT_ASTC_12x12_UNORM_BLOCK, 1316 eAstc12x12SrgbBlock = VK_FORMAT_ASTC_12x12_SRGB_BLOCK, 1317 eG8B8G8R8422Unorm = VK_FORMAT_G8B8G8R8_422_UNORM, 1318 eB8G8R8G8422Unorm = VK_FORMAT_B8G8R8G8_422_UNORM, 1319 eG8B8R83Plane420Unorm = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM, 1320 eG8B8R82Plane420Unorm = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM, 1321 eG8B8R83Plane422Unorm = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM, 1322 eG8B8R82Plane422Unorm = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM, 1323 eG8B8R83Plane444Unorm = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM, 1324 eR10X6UnormPack16 = VK_FORMAT_R10X6_UNORM_PACK16, 1325 eR10X6G10X6Unorm2Pack16 = VK_FORMAT_R10X6G10X6_UNORM_2PACK16, 1326 eR10X6G10X6B10X6A10X6Unorm4Pack16 = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16, 1327 eG10X6B10X6G10X6R10X6422Unorm4Pack16 = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16, 1328 eB10X6G10X6R10X6G10X6422Unorm4Pack16 = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16, 1329 eG10X6B10X6R10X63Plane420Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16, 1330 eG10X6B10X6R10X62Plane420Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16, 1331 eG10X6B10X6R10X63Plane422Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16, 1332 eG10X6B10X6R10X62Plane422Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16, 1333 eG10X6B10X6R10X63Plane444Unorm3Pack16 = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16, 1334 eR12X4UnormPack16 = VK_FORMAT_R12X4_UNORM_PACK16, 1335 eR12X4G12X4Unorm2Pack16 = VK_FORMAT_R12X4G12X4_UNORM_2PACK16, 1336 eR12X4G12X4B12X4A12X4Unorm4Pack16 = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16, 1337 eG12X4B12X4G12X4R12X4422Unorm4Pack16 = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16, 1338 eB12X4G12X4R12X4G12X4422Unorm4Pack16 = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16, 1339 eG12X4B12X4R12X43Plane420Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16, 1340 eG12X4B12X4R12X42Plane420Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16, 1341 eG12X4B12X4R12X43Plane422Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16, 1342 eG12X4B12X4R12X42Plane422Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16, 1343 eG12X4B12X4R12X43Plane444Unorm3Pack16 = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16, 1344 eG16B16G16R16422Unorm = VK_FORMAT_G16B16G16R16_422_UNORM, 1345 eB16G16R16G16422Unorm = VK_FORMAT_B16G16R16G16_422_UNORM, 1346 eG16B16R163Plane420Unorm = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM, 1347 eG16B16R162Plane420Unorm = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM, 1348 eG16B16R163Plane422Unorm = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM, 1349 eG16B16R162Plane422Unorm = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM, 1350 eG16B16R163Plane444Unorm = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM, 1351 eG8B8R82Plane444Unorm = VK_FORMAT_G8_B8R8_2PLANE_444_UNORM, 1352 eG10X6B10X6R10X62Plane444Unorm3Pack16 = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16, 1353 eG12X4B12X4R12X42Plane444Unorm3Pack16 = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16, 1354 eG16B16R162Plane444Unorm = VK_FORMAT_G16_B16R16_2PLANE_444_UNORM, 1355 eA4R4G4B4UnormPack16 = VK_FORMAT_A4R4G4B4_UNORM_PACK16, 1356 eA4B4G4R4UnormPack16 = VK_FORMAT_A4B4G4R4_UNORM_PACK16, 1357 eAstc4x4SfloatBlock = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK, 1358 eAstc5x4SfloatBlock = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK, 1359 eAstc5x5SfloatBlock = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK, 1360 eAstc6x5SfloatBlock = VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK, 1361 eAstc6x6SfloatBlock = VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK, 1362 eAstc8x5SfloatBlock = VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK, 1363 eAstc8x6SfloatBlock = VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK, 1364 eAstc8x8SfloatBlock = VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK, 1365 eAstc10x5SfloatBlock = VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK, 1366 eAstc10x6SfloatBlock = VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK, 1367 eAstc10x8SfloatBlock = VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK, 1368 eAstc10x10SfloatBlock = VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK, 1369 eAstc12x10SfloatBlock = VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK, 1370 eAstc12x12SfloatBlock = VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK, 1371 ePvrtc12BppUnormBlockIMG = VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG, 1372 ePvrtc14BppUnormBlockIMG = VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG, 1373 ePvrtc22BppUnormBlockIMG = VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG, 1374 ePvrtc24BppUnormBlockIMG = VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG, 1375 ePvrtc12BppSrgbBlockIMG = VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG, 1376 ePvrtc14BppSrgbBlockIMG = VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG, 1377 ePvrtc22BppSrgbBlockIMG = VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG, 1378 ePvrtc24BppSrgbBlockIMG = VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG, 1379 eR16G16S105NV = VK_FORMAT_R16G16_S10_5_NV, 1380 eA4B4G4R4UnormPack16EXT = VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT, 1381 eA4R4G4B4UnormPack16EXT = VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT, 1382 eAstc10x10SfloatBlockEXT = VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT, 1383 eAstc10x5SfloatBlockEXT = VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT, 1384 eAstc10x6SfloatBlockEXT = VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT, 1385 eAstc10x8SfloatBlockEXT = VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT, 1386 eAstc12x10SfloatBlockEXT = VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT, 1387 eAstc12x12SfloatBlockEXT = VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT, 1388 eAstc4x4SfloatBlockEXT = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT, 1389 eAstc5x4SfloatBlockEXT = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT, 1390 eAstc5x5SfloatBlockEXT = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT, 1391 eAstc6x5SfloatBlockEXT = VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT, 1392 eAstc6x6SfloatBlockEXT = VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT, 1393 eAstc8x5SfloatBlockEXT = VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT, 1394 eAstc8x6SfloatBlockEXT = VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT, 1395 eAstc8x8SfloatBlockEXT = VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT, 1396 eB10X6G10X6R10X6G10X6422Unorm4Pack16KHR = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR, 1397 eB12X4G12X4R12X4G12X4422Unorm4Pack16KHR = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR, 1398 eB16G16R16G16422UnormKHR = VK_FORMAT_B16G16R16G16_422_UNORM_KHR, 1399 eB8G8R8G8422UnormKHR = VK_FORMAT_B8G8R8G8_422_UNORM_KHR, 1400 eG10X6B10X6G10X6R10X6422Unorm4Pack16KHR = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR, 1401 eG10X6B10X6R10X62Plane420Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR, 1402 eG10X6B10X6R10X62Plane422Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR, 1403 eG10X6B10X6R10X62Plane444Unorm3Pack16EXT = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT, 1404 eG10X6B10X6R10X63Plane420Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR, 1405 eG10X6B10X6R10X63Plane422Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR, 1406 eG10X6B10X6R10X63Plane444Unorm3Pack16KHR = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR, 1407 eG12X4B12X4G12X4R12X4422Unorm4Pack16KHR = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR, 1408 eG12X4B12X4R12X42Plane420Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR, 1409 eG12X4B12X4R12X42Plane422Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR, 1410 eG12X4B12X4R12X42Plane444Unorm3Pack16EXT = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT, 1411 eG12X4B12X4R12X43Plane420Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR, 1412 eG12X4B12X4R12X43Plane422Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR, 1413 eG12X4B12X4R12X43Plane444Unorm3Pack16KHR = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR, 1414 eG16B16G16R16422UnormKHR = VK_FORMAT_G16B16G16R16_422_UNORM_KHR, 1415 eG16B16R162Plane420UnormKHR = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR, 1416 eG16B16R162Plane422UnormKHR = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR, 1417 eG16B16R162Plane444UnormEXT = VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT, 1418 eG16B16R163Plane420UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR, 1419 eG16B16R163Plane422UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR, 1420 eG16B16R163Plane444UnormKHR = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR, 1421 eG8B8G8R8422UnormKHR = VK_FORMAT_G8B8G8R8_422_UNORM_KHR, 1422 eG8B8R82Plane420UnormKHR = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR, 1423 eG8B8R82Plane422UnormKHR = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR, 1424 eG8B8R82Plane444UnormEXT = VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT, 1425 eG8B8R83Plane420UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR, 1426 eG8B8R83Plane422UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR, 1427 eG8B8R83Plane444UnormKHR = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR, 1428 eR10X6G10X6B10X6A10X6Unorm4Pack16KHR = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR, 1429 eR10X6G10X6Unorm2Pack16KHR = VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR, 1430 eR10X6UnormPack16KHR = VK_FORMAT_R10X6_UNORM_PACK16_KHR, 1431 eR12X4G12X4B12X4A12X4Unorm4Pack16KHR = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR, 1432 eR12X4G12X4Unorm2Pack16KHR = VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR, 1433 eR12X4UnormPack16KHR = VK_FORMAT_R12X4_UNORM_PACK16_KHR 1434 }; 1435 1436 enum class FormatFeatureFlagBits : VkFormatFeatureFlags 1437 { 1438 eSampledImage = VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT, 1439 eStorageImage = VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT, 1440 eStorageImageAtomic = VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT, 1441 eUniformTexelBuffer = VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT, 1442 eStorageTexelBuffer = VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT, 1443 eStorageTexelBufferAtomic = VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, 1444 eVertexBuffer = VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT, 1445 eColorAttachment = VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT, 1446 eColorAttachmentBlend = VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT, 1447 eDepthStencilAttachment = VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT, 1448 eBlitSrc = VK_FORMAT_FEATURE_BLIT_SRC_BIT, 1449 eBlitDst = VK_FORMAT_FEATURE_BLIT_DST_BIT, 1450 eSampledImageFilterLinear = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT, 1451 eTransferSrc = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT, 1452 eTransferDst = VK_FORMAT_FEATURE_TRANSFER_DST_BIT, 1453 eMidpointChromaSamples = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT, 1454 eSampledImageYcbcrConversionLinearFilter = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, 1455 eSampledImageYcbcrConversionSeparateReconstructionFilter = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT, 1456 eSampledImageYcbcrConversionChromaReconstructionExplicit = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT, 1457 eSampledImageYcbcrConversionChromaReconstructionExplicitForceable = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT, 1458 eDisjoint = VK_FORMAT_FEATURE_DISJOINT_BIT, 1459 eCositedChromaSamples = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT, 1460 eSampledImageFilterMinmax = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT, 1461 eVideoDecodeOutputKHR = VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR, 1462 eVideoDecodeDpbKHR = VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR, 1463 eAccelerationStructureVertexBufferKHR = VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR, 1464 eSampledImageFilterCubicEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT, 1465 eFragmentDensityMapEXT = VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT, 1466 eFragmentShadingRateAttachmentKHR = VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 1467 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1468 eVideoEncodeInputKHR = VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR, 1469 eVideoEncodeDpbKHR = VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR, 1470 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1471 eCositedChromaSamplesKHR = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR, 1472 eDisjointKHR = VK_FORMAT_FEATURE_DISJOINT_BIT_KHR, 1473 eMidpointChromaSamplesKHR = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR, 1474 eSampledImageFilterCubicIMG = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG, 1475 eSampledImageFilterMinmaxEXT = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT, 1476 eSampledImageYcbcrConversionChromaReconstructionExplicitKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR, 1477 eSampledImageYcbcrConversionChromaReconstructionExplicitForceableKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR, 1478 eSampledImageYcbcrConversionLinearFilterKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR, 1479 eSampledImageYcbcrConversionSeparateReconstructionFilterKHR = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR, 1480 eTransferDstKHR = VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR, 1481 eTransferSrcKHR = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR 1482 }; 1483 1484 using FormatFeatureFlags = Flags<FormatFeatureFlagBits>; 1485 1486 1487 template <> struct FlagTraits<FormatFeatureFlagBits> 1488 { 1489 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1490 static VULKAN_HPP_CONST_OR_CONSTEXPR FormatFeatureFlags allFlags = 1491 FormatFeatureFlagBits::eSampledImage 1492 | FormatFeatureFlagBits::eStorageImage 1493 | FormatFeatureFlagBits::eStorageImageAtomic 1494 | FormatFeatureFlagBits::eUniformTexelBuffer 1495 | FormatFeatureFlagBits::eStorageTexelBuffer 1496 | FormatFeatureFlagBits::eStorageTexelBufferAtomic 1497 | FormatFeatureFlagBits::eVertexBuffer 1498 | FormatFeatureFlagBits::eColorAttachment 1499 | FormatFeatureFlagBits::eColorAttachmentBlend 1500 | FormatFeatureFlagBits::eDepthStencilAttachment 1501 | FormatFeatureFlagBits::eBlitSrc 1502 | FormatFeatureFlagBits::eBlitDst 1503 | FormatFeatureFlagBits::eSampledImageFilterLinear 1504 | FormatFeatureFlagBits::eTransferSrc 1505 | FormatFeatureFlagBits::eTransferDst 1506 | FormatFeatureFlagBits::eMidpointChromaSamples 1507 | FormatFeatureFlagBits::eSampledImageYcbcrConversionLinearFilter 1508 | FormatFeatureFlagBits::eSampledImageYcbcrConversionSeparateReconstructionFilter 1509 | FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicit 1510 | FormatFeatureFlagBits::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable 1511 | FormatFeatureFlagBits::eDisjoint 1512 | FormatFeatureFlagBits::eCositedChromaSamples 1513 | FormatFeatureFlagBits::eSampledImageFilterMinmax 1514 | FormatFeatureFlagBits::eVideoDecodeOutputKHR 1515 | FormatFeatureFlagBits::eVideoDecodeDpbKHR 1516 | FormatFeatureFlagBits::eAccelerationStructureVertexBufferKHR 1517 | FormatFeatureFlagBits::eSampledImageFilterCubicEXT 1518 | FormatFeatureFlagBits::eFragmentDensityMapEXT 1519 | FormatFeatureFlagBits::eFragmentShadingRateAttachmentKHR 1520 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1521 | FormatFeatureFlagBits::eVideoEncodeInputKHR 1522 | FormatFeatureFlagBits::eVideoEncodeDpbKHR 1523 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1524 ; 1525 }; 1526 1527 enum class ImageCreateFlagBits : VkImageCreateFlags 1528 { 1529 eSparseBinding = VK_IMAGE_CREATE_SPARSE_BINDING_BIT, 1530 eSparseResidency = VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT, 1531 eSparseAliased = VK_IMAGE_CREATE_SPARSE_ALIASED_BIT, 1532 eMutableFormat = VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT, 1533 eCubeCompatible = VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT, 1534 eAlias = VK_IMAGE_CREATE_ALIAS_BIT, 1535 eSplitInstanceBindRegions = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT, 1536 e2DArrayCompatible = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT, 1537 eBlockTexelViewCompatible = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT, 1538 eExtendedUsage = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT, 1539 eProtected = VK_IMAGE_CREATE_PROTECTED_BIT, 1540 eDisjoint = VK_IMAGE_CREATE_DISJOINT_BIT, 1541 eCornerSampledNV = VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV, 1542 eSampleLocationsCompatibleDepthEXT = VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT, 1543 eSubsampledEXT = VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT, 1544 eDescriptorBufferCaptureReplayEXT = VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT, 1545 eMultisampledRenderToSingleSampledEXT = VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT, 1546 e2DViewCompatibleEXT = VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT, 1547 eFragmentDensityMapOffsetQCOM = VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM, 1548 e2DArrayCompatibleKHR = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR, 1549 eAliasKHR = VK_IMAGE_CREATE_ALIAS_BIT_KHR, 1550 eBlockTexelViewCompatibleKHR = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR, 1551 eDisjointKHR = VK_IMAGE_CREATE_DISJOINT_BIT_KHR, 1552 eExtendedUsageKHR = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR, 1553 eSplitInstanceBindRegionsKHR = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR 1554 }; 1555 1556 using ImageCreateFlags = Flags<ImageCreateFlagBits>; 1557 1558 1559 template <> struct FlagTraits<ImageCreateFlagBits> 1560 { 1561 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1562 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageCreateFlags allFlags = 1563 ImageCreateFlagBits::eSparseBinding 1564 | ImageCreateFlagBits::eSparseResidency 1565 | ImageCreateFlagBits::eSparseAliased 1566 | ImageCreateFlagBits::eMutableFormat 1567 | ImageCreateFlagBits::eCubeCompatible 1568 | ImageCreateFlagBits::eAlias 1569 | ImageCreateFlagBits::eSplitInstanceBindRegions 1570 | ImageCreateFlagBits::e2DArrayCompatible 1571 | ImageCreateFlagBits::eBlockTexelViewCompatible 1572 | ImageCreateFlagBits::eExtendedUsage 1573 | ImageCreateFlagBits::eProtected 1574 | ImageCreateFlagBits::eDisjoint 1575 | ImageCreateFlagBits::eCornerSampledNV 1576 | ImageCreateFlagBits::eSampleLocationsCompatibleDepthEXT 1577 | ImageCreateFlagBits::eSubsampledEXT 1578 | ImageCreateFlagBits::eDescriptorBufferCaptureReplayEXT 1579 | ImageCreateFlagBits::eMultisampledRenderToSingleSampledEXT 1580 | ImageCreateFlagBits::e2DViewCompatibleEXT 1581 | ImageCreateFlagBits::eFragmentDensityMapOffsetQCOM; 1582 }; 1583 1584 enum class ImageTiling 1585 { 1586 eOptimal = VK_IMAGE_TILING_OPTIMAL, 1587 eLinear = VK_IMAGE_TILING_LINEAR, 1588 eDrmFormatModifierEXT = VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT 1589 }; 1590 1591 enum class ImageType 1592 { 1593 e1D = VK_IMAGE_TYPE_1D, 1594 e2D = VK_IMAGE_TYPE_2D, 1595 e3D = VK_IMAGE_TYPE_3D 1596 }; 1597 1598 enum class ImageUsageFlagBits : VkImageUsageFlags 1599 { 1600 eTransferSrc = VK_IMAGE_USAGE_TRANSFER_SRC_BIT, 1601 eTransferDst = VK_IMAGE_USAGE_TRANSFER_DST_BIT, 1602 eSampled = VK_IMAGE_USAGE_SAMPLED_BIT, 1603 eStorage = VK_IMAGE_USAGE_STORAGE_BIT, 1604 eColorAttachment = VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT, 1605 eDepthStencilAttachment = VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT, 1606 eTransientAttachment = VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT, 1607 eInputAttachment = VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT, 1608 eVideoDecodeDstKHR = VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR, 1609 eVideoDecodeSrcKHR = VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR, 1610 eVideoDecodeDpbKHR = VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR, 1611 eFragmentDensityMapEXT = VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT, 1612 eFragmentShadingRateAttachmentKHR = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 1613 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1614 eVideoEncodeDstKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR, 1615 eVideoEncodeSrcKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR, 1616 eVideoEncodeDpbKHR = VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR, 1617 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1618 eAttachmentFeedbackLoopEXT = VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT, 1619 eInvocationMaskHUAWEI = VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI, 1620 eSampleWeightQCOM = VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM, 1621 eSampleBlockMatchQCOM = VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM, 1622 eShadingRateImageNV = VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV 1623 }; 1624 1625 using ImageUsageFlags = Flags<ImageUsageFlagBits>; 1626 1627 1628 template <> struct FlagTraits<ImageUsageFlagBits> 1629 { 1630 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1631 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageUsageFlags allFlags = 1632 ImageUsageFlagBits::eTransferSrc 1633 | ImageUsageFlagBits::eTransferDst 1634 | ImageUsageFlagBits::eSampled 1635 | ImageUsageFlagBits::eStorage 1636 | ImageUsageFlagBits::eColorAttachment 1637 | ImageUsageFlagBits::eDepthStencilAttachment 1638 | ImageUsageFlagBits::eTransientAttachment 1639 | ImageUsageFlagBits::eInputAttachment 1640 | ImageUsageFlagBits::eVideoDecodeDstKHR 1641 | ImageUsageFlagBits::eVideoDecodeSrcKHR 1642 | ImageUsageFlagBits::eVideoDecodeDpbKHR 1643 | ImageUsageFlagBits::eFragmentDensityMapEXT 1644 | ImageUsageFlagBits::eFragmentShadingRateAttachmentKHR 1645 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1646 | ImageUsageFlagBits::eVideoEncodeDstKHR 1647 | ImageUsageFlagBits::eVideoEncodeSrcKHR 1648 | ImageUsageFlagBits::eVideoEncodeDpbKHR 1649 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1650 | ImageUsageFlagBits::eAttachmentFeedbackLoopEXT 1651 | ImageUsageFlagBits::eInvocationMaskHUAWEI 1652 | ImageUsageFlagBits::eSampleWeightQCOM 1653 | ImageUsageFlagBits::eSampleBlockMatchQCOM; 1654 }; 1655 1656 enum class InstanceCreateFlagBits : VkInstanceCreateFlags 1657 { 1658 eEnumeratePortabilityKHR = VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR 1659 }; 1660 1661 using InstanceCreateFlags = Flags<InstanceCreateFlagBits>; 1662 1663 1664 template <> struct FlagTraits<InstanceCreateFlagBits> 1665 { 1666 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1667 static VULKAN_HPP_CONST_OR_CONSTEXPR InstanceCreateFlags allFlags = 1668 InstanceCreateFlagBits::eEnumeratePortabilityKHR; 1669 }; 1670 1671 enum class InternalAllocationType 1672 { 1673 eExecutable = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE 1674 }; 1675 1676 enum class MemoryHeapFlagBits : VkMemoryHeapFlags 1677 { 1678 eDeviceLocal = VK_MEMORY_HEAP_DEVICE_LOCAL_BIT, 1679 eMultiInstance = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT, 1680 eMultiInstanceKHR = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR 1681 }; 1682 1683 using MemoryHeapFlags = Flags<MemoryHeapFlagBits>; 1684 1685 1686 template <> struct FlagTraits<MemoryHeapFlagBits> 1687 { 1688 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1689 static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryHeapFlags allFlags = 1690 MemoryHeapFlagBits::eDeviceLocal 1691 | MemoryHeapFlagBits::eMultiInstance; 1692 }; 1693 1694 enum class MemoryPropertyFlagBits : VkMemoryPropertyFlags 1695 { 1696 eDeviceLocal = VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT, 1697 eHostVisible = VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT, 1698 eHostCoherent = VK_MEMORY_PROPERTY_HOST_COHERENT_BIT, 1699 eHostCached = VK_MEMORY_PROPERTY_HOST_CACHED_BIT, 1700 eLazilyAllocated = VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT, 1701 eProtected = VK_MEMORY_PROPERTY_PROTECTED_BIT, 1702 eDeviceCoherentAMD = VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD, 1703 eDeviceUncachedAMD = VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD, 1704 eRdmaCapableNV = VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV 1705 }; 1706 1707 using MemoryPropertyFlags = Flags<MemoryPropertyFlagBits>; 1708 1709 1710 template <> struct FlagTraits<MemoryPropertyFlagBits> 1711 { 1712 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1713 static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryPropertyFlags allFlags = 1714 MemoryPropertyFlagBits::eDeviceLocal 1715 | MemoryPropertyFlagBits::eHostVisible 1716 | MemoryPropertyFlagBits::eHostCoherent 1717 | MemoryPropertyFlagBits::eHostCached 1718 | MemoryPropertyFlagBits::eLazilyAllocated 1719 | MemoryPropertyFlagBits::eProtected 1720 | MemoryPropertyFlagBits::eDeviceCoherentAMD 1721 | MemoryPropertyFlagBits::eDeviceUncachedAMD 1722 | MemoryPropertyFlagBits::eRdmaCapableNV; 1723 }; 1724 1725 enum class PhysicalDeviceType 1726 { 1727 eOther = VK_PHYSICAL_DEVICE_TYPE_OTHER, 1728 eIntegratedGpu = VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU, 1729 eDiscreteGpu = VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU, 1730 eVirtualGpu = VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU, 1731 eCpu = VK_PHYSICAL_DEVICE_TYPE_CPU 1732 }; 1733 1734 enum class QueueFlagBits : VkQueueFlags 1735 { 1736 eGraphics = VK_QUEUE_GRAPHICS_BIT, 1737 eCompute = VK_QUEUE_COMPUTE_BIT, 1738 eTransfer = VK_QUEUE_TRANSFER_BIT, 1739 eSparseBinding = VK_QUEUE_SPARSE_BINDING_BIT, 1740 eProtected = VK_QUEUE_PROTECTED_BIT, 1741 eVideoDecodeKHR = VK_QUEUE_VIDEO_DECODE_BIT_KHR, 1742 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1743 eVideoEncodeKHR = VK_QUEUE_VIDEO_ENCODE_BIT_KHR, 1744 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1745 eOpticalFlowNV = VK_QUEUE_OPTICAL_FLOW_BIT_NV 1746 }; 1747 1748 using QueueFlags = Flags<QueueFlagBits>; 1749 1750 1751 template <> struct FlagTraits<QueueFlagBits> 1752 { 1753 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1754 static VULKAN_HPP_CONST_OR_CONSTEXPR QueueFlags allFlags = 1755 QueueFlagBits::eGraphics 1756 | QueueFlagBits::eCompute 1757 | QueueFlagBits::eTransfer 1758 | QueueFlagBits::eSparseBinding 1759 | QueueFlagBits::eProtected 1760 | QueueFlagBits::eVideoDecodeKHR 1761 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1762 | QueueFlagBits::eVideoEncodeKHR 1763 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1764 | QueueFlagBits::eOpticalFlowNV; 1765 }; 1766 1767 enum class SampleCountFlagBits : VkSampleCountFlags 1768 { 1769 e1 = VK_SAMPLE_COUNT_1_BIT, 1770 e2 = VK_SAMPLE_COUNT_2_BIT, 1771 e4 = VK_SAMPLE_COUNT_4_BIT, 1772 e8 = VK_SAMPLE_COUNT_8_BIT, 1773 e16 = VK_SAMPLE_COUNT_16_BIT, 1774 e32 = VK_SAMPLE_COUNT_32_BIT, 1775 e64 = VK_SAMPLE_COUNT_64_BIT 1776 }; 1777 1778 using SampleCountFlags = Flags<SampleCountFlagBits>; 1779 1780 1781 template <> struct FlagTraits<SampleCountFlagBits> 1782 { 1783 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1784 static VULKAN_HPP_CONST_OR_CONSTEXPR SampleCountFlags allFlags = 1785 SampleCountFlagBits::e1 1786 | SampleCountFlagBits::e2 1787 | SampleCountFlagBits::e4 1788 | SampleCountFlagBits::e8 1789 | SampleCountFlagBits::e16 1790 | SampleCountFlagBits::e32 1791 | SampleCountFlagBits::e64; 1792 }; 1793 1794 enum class SystemAllocationScope 1795 { 1796 eCommand = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND, 1797 eObject = VK_SYSTEM_ALLOCATION_SCOPE_OBJECT, 1798 eCache = VK_SYSTEM_ALLOCATION_SCOPE_CACHE, 1799 eDevice = VK_SYSTEM_ALLOCATION_SCOPE_DEVICE, 1800 eInstance = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE 1801 }; 1802 1803 enum class DeviceCreateFlagBits : VkDeviceCreateFlags 1804 {}; 1805 1806 using DeviceCreateFlags = Flags<DeviceCreateFlagBits>; 1807 1808 1809 template <> struct FlagTraits<DeviceCreateFlagBits> 1810 { 1811 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1812 static VULKAN_HPP_CONST_OR_CONSTEXPR DeviceCreateFlags allFlags = {}; 1813 }; 1814 1815 enum class PipelineStageFlagBits : VkPipelineStageFlags 1816 { 1817 eTopOfPipe = VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT, 1818 eDrawIndirect = VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT, 1819 eVertexInput = VK_PIPELINE_STAGE_VERTEX_INPUT_BIT, 1820 eVertexShader = VK_PIPELINE_STAGE_VERTEX_SHADER_BIT, 1821 eTessellationControlShader = VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT, 1822 eTessellationEvaluationShader = VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT, 1823 eGeometryShader = VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT, 1824 eFragmentShader = VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT, 1825 eEarlyFragmentTests = VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT, 1826 eLateFragmentTests = VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT, 1827 eColorAttachmentOutput = VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT, 1828 eComputeShader = VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT, 1829 eTransfer = VK_PIPELINE_STAGE_TRANSFER_BIT, 1830 eBottomOfPipe = VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT, 1831 eHost = VK_PIPELINE_STAGE_HOST_BIT, 1832 eAllGraphics = VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT, 1833 eAllCommands = VK_PIPELINE_STAGE_ALL_COMMANDS_BIT, 1834 eNone = VK_PIPELINE_STAGE_NONE, 1835 eTransformFeedbackEXT = VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT, 1836 eConditionalRenderingEXT = VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT, 1837 eAccelerationStructureBuildKHR = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, 1838 eRayTracingShaderKHR = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR, 1839 eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT, 1840 eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 1841 eCommandPreprocessNV = VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV, 1842 eTaskShaderEXT = VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT, 1843 eMeshShaderEXT = VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT, 1844 eAccelerationStructureBuildNV = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV, 1845 eMeshShaderNV = VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV, 1846 eNoneKHR = VK_PIPELINE_STAGE_NONE_KHR, 1847 eRayTracingShaderNV = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV, 1848 eShadingRateImageNV = VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV, 1849 eTaskShaderNV = VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV 1850 }; 1851 1852 using PipelineStageFlags = Flags<PipelineStageFlagBits>; 1853 1854 1855 template <> struct FlagTraits<PipelineStageFlagBits> 1856 { 1857 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1858 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineStageFlags allFlags = 1859 PipelineStageFlagBits::eTopOfPipe 1860 | PipelineStageFlagBits::eDrawIndirect 1861 | PipelineStageFlagBits::eVertexInput 1862 | PipelineStageFlagBits::eVertexShader 1863 | PipelineStageFlagBits::eTessellationControlShader 1864 | PipelineStageFlagBits::eTessellationEvaluationShader 1865 | PipelineStageFlagBits::eGeometryShader 1866 | PipelineStageFlagBits::eFragmentShader 1867 | PipelineStageFlagBits::eEarlyFragmentTests 1868 | PipelineStageFlagBits::eLateFragmentTests 1869 | PipelineStageFlagBits::eColorAttachmentOutput 1870 | PipelineStageFlagBits::eComputeShader 1871 | PipelineStageFlagBits::eTransfer 1872 | PipelineStageFlagBits::eBottomOfPipe 1873 | PipelineStageFlagBits::eHost 1874 | PipelineStageFlagBits::eAllGraphics 1875 | PipelineStageFlagBits::eAllCommands 1876 | PipelineStageFlagBits::eNone 1877 | PipelineStageFlagBits::eTransformFeedbackEXT 1878 | PipelineStageFlagBits::eConditionalRenderingEXT 1879 | PipelineStageFlagBits::eAccelerationStructureBuildKHR 1880 | PipelineStageFlagBits::eRayTracingShaderKHR 1881 | PipelineStageFlagBits::eFragmentDensityProcessEXT 1882 | PipelineStageFlagBits::eFragmentShadingRateAttachmentKHR 1883 | PipelineStageFlagBits::eCommandPreprocessNV 1884 | PipelineStageFlagBits::eTaskShaderEXT 1885 | PipelineStageFlagBits::eMeshShaderEXT; 1886 }; 1887 1888 enum class MemoryMapFlagBits : VkMemoryMapFlags 1889 {}; 1890 1891 using MemoryMapFlags = Flags<MemoryMapFlagBits>; 1892 1893 1894 template <> struct FlagTraits<MemoryMapFlagBits> 1895 { 1896 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1897 static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryMapFlags allFlags = {}; 1898 }; 1899 1900 enum class ImageAspectFlagBits : VkImageAspectFlags 1901 { 1902 eColor = VK_IMAGE_ASPECT_COLOR_BIT, 1903 eDepth = VK_IMAGE_ASPECT_DEPTH_BIT, 1904 eStencil = VK_IMAGE_ASPECT_STENCIL_BIT, 1905 eMetadata = VK_IMAGE_ASPECT_METADATA_BIT, 1906 ePlane0 = VK_IMAGE_ASPECT_PLANE_0_BIT, 1907 ePlane1 = VK_IMAGE_ASPECT_PLANE_1_BIT, 1908 ePlane2 = VK_IMAGE_ASPECT_PLANE_2_BIT, 1909 eNone = VK_IMAGE_ASPECT_NONE, 1910 eMemoryPlane0EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT, 1911 eMemoryPlane1EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT, 1912 eMemoryPlane2EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT, 1913 eMemoryPlane3EXT = VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT, 1914 eNoneKHR = VK_IMAGE_ASPECT_NONE_KHR, 1915 ePlane0KHR = VK_IMAGE_ASPECT_PLANE_0_BIT_KHR, 1916 ePlane1KHR = VK_IMAGE_ASPECT_PLANE_1_BIT_KHR, 1917 ePlane2KHR = VK_IMAGE_ASPECT_PLANE_2_BIT_KHR 1918 }; 1919 1920 using ImageAspectFlags = Flags<ImageAspectFlagBits>; 1921 1922 1923 template <> struct FlagTraits<ImageAspectFlagBits> 1924 { 1925 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1926 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageAspectFlags allFlags = 1927 ImageAspectFlagBits::eColor 1928 | ImageAspectFlagBits::eDepth 1929 | ImageAspectFlagBits::eStencil 1930 | ImageAspectFlagBits::eMetadata 1931 | ImageAspectFlagBits::ePlane0 1932 | ImageAspectFlagBits::ePlane1 1933 | ImageAspectFlagBits::ePlane2 1934 | ImageAspectFlagBits::eNone 1935 | ImageAspectFlagBits::eMemoryPlane0EXT 1936 | ImageAspectFlagBits::eMemoryPlane1EXT 1937 | ImageAspectFlagBits::eMemoryPlane2EXT 1938 | ImageAspectFlagBits::eMemoryPlane3EXT; 1939 }; 1940 1941 enum class SparseImageFormatFlagBits : VkSparseImageFormatFlags 1942 { 1943 eSingleMiptail = VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT, 1944 eAlignedMipSize = VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT, 1945 eNonstandardBlockSize = VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT 1946 }; 1947 1948 using SparseImageFormatFlags = Flags<SparseImageFormatFlagBits>; 1949 1950 1951 template <> struct FlagTraits<SparseImageFormatFlagBits> 1952 { 1953 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1954 static VULKAN_HPP_CONST_OR_CONSTEXPR SparseImageFormatFlags allFlags = 1955 SparseImageFormatFlagBits::eSingleMiptail 1956 | SparseImageFormatFlagBits::eAlignedMipSize 1957 | SparseImageFormatFlagBits::eNonstandardBlockSize; 1958 }; 1959 1960 enum class SparseMemoryBindFlagBits : VkSparseMemoryBindFlags 1961 { 1962 eMetadata = VK_SPARSE_MEMORY_BIND_METADATA_BIT 1963 }; 1964 1965 using SparseMemoryBindFlags = Flags<SparseMemoryBindFlagBits>; 1966 1967 1968 template <> struct FlagTraits<SparseMemoryBindFlagBits> 1969 { 1970 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1971 static VULKAN_HPP_CONST_OR_CONSTEXPR SparseMemoryBindFlags allFlags = 1972 SparseMemoryBindFlagBits::eMetadata; 1973 }; 1974 1975 enum class FenceCreateFlagBits : VkFenceCreateFlags 1976 { 1977 eSignaled = VK_FENCE_CREATE_SIGNALED_BIT 1978 }; 1979 1980 using FenceCreateFlags = Flags<FenceCreateFlagBits>; 1981 1982 1983 template <> struct FlagTraits<FenceCreateFlagBits> 1984 { 1985 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1986 static VULKAN_HPP_CONST_OR_CONSTEXPR FenceCreateFlags allFlags = 1987 FenceCreateFlagBits::eSignaled; 1988 }; 1989 1990 enum class SemaphoreCreateFlagBits : VkSemaphoreCreateFlags 1991 {}; 1992 1993 using SemaphoreCreateFlags = Flags<SemaphoreCreateFlagBits>; 1994 1995 1996 template <> struct FlagTraits<SemaphoreCreateFlagBits> 1997 { 1998 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 1999 static VULKAN_HPP_CONST_OR_CONSTEXPR SemaphoreCreateFlags allFlags = {}; 2000 }; 2001 2002 enum class EventCreateFlagBits : VkEventCreateFlags 2003 { 2004 eDeviceOnly = VK_EVENT_CREATE_DEVICE_ONLY_BIT, 2005 eDeviceOnlyKHR = VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR 2006 }; 2007 2008 using EventCreateFlags = Flags<EventCreateFlagBits>; 2009 2010 2011 template <> struct FlagTraits<EventCreateFlagBits> 2012 { 2013 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2014 static VULKAN_HPP_CONST_OR_CONSTEXPR EventCreateFlags allFlags = 2015 EventCreateFlagBits::eDeviceOnly; 2016 }; 2017 2018 enum class QueryPipelineStatisticFlagBits : VkQueryPipelineStatisticFlags 2019 { 2020 eInputAssemblyVertices = VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT, 2021 eInputAssemblyPrimitives = VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT, 2022 eVertexShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT, 2023 eGeometryShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT, 2024 eGeometryShaderPrimitives = VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT, 2025 eClippingInvocations = VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT, 2026 eClippingPrimitives = VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT, 2027 eFragmentShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT, 2028 eTessellationControlShaderPatches = VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT, 2029 eTessellationEvaluationShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT, 2030 eComputeShaderInvocations = VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT, 2031 eTaskShaderInvocationsEXT = VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT, 2032 eMeshShaderInvocationsEXT = VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT, 2033 eClusterCullingShaderInvocationsHUAWEI = VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI 2034 }; 2035 2036 using QueryPipelineStatisticFlags = Flags<QueryPipelineStatisticFlagBits>; 2037 2038 2039 template <> struct FlagTraits<QueryPipelineStatisticFlagBits> 2040 { 2041 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2042 static VULKAN_HPP_CONST_OR_CONSTEXPR QueryPipelineStatisticFlags allFlags = 2043 QueryPipelineStatisticFlagBits::eInputAssemblyVertices 2044 | QueryPipelineStatisticFlagBits::eInputAssemblyPrimitives 2045 | QueryPipelineStatisticFlagBits::eVertexShaderInvocations 2046 | QueryPipelineStatisticFlagBits::eGeometryShaderInvocations 2047 | QueryPipelineStatisticFlagBits::eGeometryShaderPrimitives 2048 | QueryPipelineStatisticFlagBits::eClippingInvocations 2049 | QueryPipelineStatisticFlagBits::eClippingPrimitives 2050 | QueryPipelineStatisticFlagBits::eFragmentShaderInvocations 2051 | QueryPipelineStatisticFlagBits::eTessellationControlShaderPatches 2052 | QueryPipelineStatisticFlagBits::eTessellationEvaluationShaderInvocations 2053 | QueryPipelineStatisticFlagBits::eComputeShaderInvocations 2054 | QueryPipelineStatisticFlagBits::eTaskShaderInvocationsEXT 2055 | QueryPipelineStatisticFlagBits::eMeshShaderInvocationsEXT 2056 | QueryPipelineStatisticFlagBits::eClusterCullingShaderInvocationsHUAWEI; 2057 }; 2058 2059 enum class QueryResultFlagBits : VkQueryResultFlags 2060 { 2061 e64 = VK_QUERY_RESULT_64_BIT, 2062 eWait = VK_QUERY_RESULT_WAIT_BIT, 2063 eWithAvailability = VK_QUERY_RESULT_WITH_AVAILABILITY_BIT, 2064 ePartial = VK_QUERY_RESULT_PARTIAL_BIT, 2065 eWithStatusKHR = VK_QUERY_RESULT_WITH_STATUS_BIT_KHR 2066 }; 2067 2068 using QueryResultFlags = Flags<QueryResultFlagBits>; 2069 2070 2071 template <> struct FlagTraits<QueryResultFlagBits> 2072 { 2073 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2074 static VULKAN_HPP_CONST_OR_CONSTEXPR QueryResultFlags allFlags = 2075 QueryResultFlagBits::e64 2076 | QueryResultFlagBits::eWait 2077 | QueryResultFlagBits::eWithAvailability 2078 | QueryResultFlagBits::ePartial 2079 | QueryResultFlagBits::eWithStatusKHR; 2080 }; 2081 2082 enum class QueryType 2083 { 2084 eOcclusion = VK_QUERY_TYPE_OCCLUSION, 2085 ePipelineStatistics = VK_QUERY_TYPE_PIPELINE_STATISTICS, 2086 eTimestamp = VK_QUERY_TYPE_TIMESTAMP, 2087 eResultStatusOnlyKHR = VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR, 2088 eTransformFeedbackStreamEXT = VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT, 2089 ePerformanceQueryKHR = VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR, 2090 eAccelerationStructureCompactedSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR, 2091 eAccelerationStructureSerializationSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR, 2092 eAccelerationStructureCompactedSizeNV = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV, 2093 ePerformanceQueryINTEL = VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL, 2094 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 2095 eVideoEncodeBitstreamBufferRangeKHR = VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR, 2096 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 2097 eMeshPrimitivesGeneratedEXT = VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT, 2098 ePrimitivesGeneratedEXT = VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT, 2099 eAccelerationStructureSerializationBottomLevelPointersKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR, 2100 eAccelerationStructureSizeKHR = VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR, 2101 eMicromapSerializationSizeEXT = VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT, 2102 eMicromapCompactedSizeEXT = VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT 2103 }; 2104 2105 enum class QueryPoolCreateFlagBits : VkQueryPoolCreateFlags 2106 {}; 2107 2108 using QueryPoolCreateFlags = Flags<QueryPoolCreateFlagBits>; 2109 2110 2111 template <> struct FlagTraits<QueryPoolCreateFlagBits> 2112 { 2113 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2114 static VULKAN_HPP_CONST_OR_CONSTEXPR QueryPoolCreateFlags allFlags = {}; 2115 }; 2116 2117 enum class BufferCreateFlagBits : VkBufferCreateFlags 2118 { 2119 eSparseBinding = VK_BUFFER_CREATE_SPARSE_BINDING_BIT, 2120 eSparseResidency = VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT, 2121 eSparseAliased = VK_BUFFER_CREATE_SPARSE_ALIASED_BIT, 2122 eProtected = VK_BUFFER_CREATE_PROTECTED_BIT, 2123 eDeviceAddressCaptureReplay = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT, 2124 eDescriptorBufferCaptureReplayEXT = VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT, 2125 eDeviceAddressCaptureReplayEXT = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT, 2126 eDeviceAddressCaptureReplayKHR = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR 2127 }; 2128 2129 using BufferCreateFlags = Flags<BufferCreateFlagBits>; 2130 2131 2132 template <> struct FlagTraits<BufferCreateFlagBits> 2133 { 2134 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2135 static VULKAN_HPP_CONST_OR_CONSTEXPR BufferCreateFlags allFlags = 2136 BufferCreateFlagBits::eSparseBinding 2137 | BufferCreateFlagBits::eSparseResidency 2138 | BufferCreateFlagBits::eSparseAliased 2139 | BufferCreateFlagBits::eProtected 2140 | BufferCreateFlagBits::eDeviceAddressCaptureReplay 2141 | BufferCreateFlagBits::eDescriptorBufferCaptureReplayEXT; 2142 }; 2143 2144 enum class BufferUsageFlagBits : VkBufferUsageFlags 2145 { 2146 eTransferSrc = VK_BUFFER_USAGE_TRANSFER_SRC_BIT, 2147 eTransferDst = VK_BUFFER_USAGE_TRANSFER_DST_BIT, 2148 eUniformTexelBuffer = VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT, 2149 eStorageTexelBuffer = VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT, 2150 eUniformBuffer = VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT, 2151 eStorageBuffer = VK_BUFFER_USAGE_STORAGE_BUFFER_BIT, 2152 eIndexBuffer = VK_BUFFER_USAGE_INDEX_BUFFER_BIT, 2153 eVertexBuffer = VK_BUFFER_USAGE_VERTEX_BUFFER_BIT, 2154 eIndirectBuffer = VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT, 2155 eShaderDeviceAddress = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, 2156 eVideoDecodeSrcKHR = VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR, 2157 eVideoDecodeDstKHR = VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR, 2158 eTransformFeedbackBufferEXT = VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT, 2159 eTransformFeedbackCounterBufferEXT = VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT, 2160 eConditionalRenderingEXT = VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT, 2161 eAccelerationStructureBuildInputReadOnlyKHR = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR, 2162 eAccelerationStructureStorageKHR = VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR, 2163 eShaderBindingTableKHR = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR, 2164 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 2165 eVideoEncodeDstKHR = VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR, 2166 eVideoEncodeSrcKHR = VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR, 2167 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 2168 eSamplerDescriptorBufferEXT = VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT, 2169 eResourceDescriptorBufferEXT = VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT, 2170 ePushDescriptorsDescriptorBufferEXT = VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT, 2171 eMicromapBuildInputReadOnlyEXT = VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT, 2172 eMicromapStorageEXT = VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT, 2173 eRayTracingNV = VK_BUFFER_USAGE_RAY_TRACING_BIT_NV, 2174 eShaderDeviceAddressEXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT, 2175 eShaderDeviceAddressKHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR 2176 }; 2177 2178 using BufferUsageFlags = Flags<BufferUsageFlagBits>; 2179 2180 2181 template <> struct FlagTraits<BufferUsageFlagBits> 2182 { 2183 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2184 static VULKAN_HPP_CONST_OR_CONSTEXPR BufferUsageFlags allFlags = 2185 BufferUsageFlagBits::eTransferSrc 2186 | BufferUsageFlagBits::eTransferDst 2187 | BufferUsageFlagBits::eUniformTexelBuffer 2188 | BufferUsageFlagBits::eStorageTexelBuffer 2189 | BufferUsageFlagBits::eUniformBuffer 2190 | BufferUsageFlagBits::eStorageBuffer 2191 | BufferUsageFlagBits::eIndexBuffer 2192 | BufferUsageFlagBits::eVertexBuffer 2193 | BufferUsageFlagBits::eIndirectBuffer 2194 | BufferUsageFlagBits::eShaderDeviceAddress 2195 | BufferUsageFlagBits::eVideoDecodeSrcKHR 2196 | BufferUsageFlagBits::eVideoDecodeDstKHR 2197 | BufferUsageFlagBits::eTransformFeedbackBufferEXT 2198 | BufferUsageFlagBits::eTransformFeedbackCounterBufferEXT 2199 | BufferUsageFlagBits::eConditionalRenderingEXT 2200 | BufferUsageFlagBits::eAccelerationStructureBuildInputReadOnlyKHR 2201 | BufferUsageFlagBits::eAccelerationStructureStorageKHR 2202 | BufferUsageFlagBits::eShaderBindingTableKHR 2203 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 2204 | BufferUsageFlagBits::eVideoEncodeDstKHR 2205 | BufferUsageFlagBits::eVideoEncodeSrcKHR 2206 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 2207 | BufferUsageFlagBits::eSamplerDescriptorBufferEXT 2208 | BufferUsageFlagBits::eResourceDescriptorBufferEXT 2209 | BufferUsageFlagBits::ePushDescriptorsDescriptorBufferEXT 2210 | BufferUsageFlagBits::eMicromapBuildInputReadOnlyEXT 2211 | BufferUsageFlagBits::eMicromapStorageEXT; 2212 }; 2213 2214 enum class SharingMode 2215 { 2216 eExclusive = VK_SHARING_MODE_EXCLUSIVE, 2217 eConcurrent = VK_SHARING_MODE_CONCURRENT 2218 }; 2219 2220 enum class BufferViewCreateFlagBits : VkBufferViewCreateFlags 2221 {}; 2222 2223 using BufferViewCreateFlags = Flags<BufferViewCreateFlagBits>; 2224 2225 2226 template <> struct FlagTraits<BufferViewCreateFlagBits> 2227 { 2228 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2229 static VULKAN_HPP_CONST_OR_CONSTEXPR BufferViewCreateFlags allFlags = {}; 2230 }; 2231 2232 enum class ImageLayout 2233 { 2234 eUndefined = VK_IMAGE_LAYOUT_UNDEFINED, 2235 eGeneral = VK_IMAGE_LAYOUT_GENERAL, 2236 eColorAttachmentOptimal = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL, 2237 eDepthStencilAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL, 2238 eDepthStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL, 2239 eShaderReadOnlyOptimal = VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL, 2240 eTransferSrcOptimal = VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL, 2241 eTransferDstOptimal = VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL, 2242 ePreinitialized = VK_IMAGE_LAYOUT_PREINITIALIZED, 2243 eDepthReadOnlyStencilAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL, 2244 eDepthAttachmentStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL, 2245 eDepthAttachmentOptimal = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL, 2246 eDepthReadOnlyOptimal = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL, 2247 eStencilAttachmentOptimal = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL, 2248 eStencilReadOnlyOptimal = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL, 2249 eReadOnlyOptimal = VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL, 2250 eAttachmentOptimal = VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL, 2251 ePresentSrcKHR = VK_IMAGE_LAYOUT_PRESENT_SRC_KHR, 2252 eVideoDecodeDstKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR, 2253 eVideoDecodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR, 2254 eVideoDecodeDpbKHR = VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR, 2255 eSharedPresentKHR = VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR, 2256 eFragmentDensityMapOptimalEXT = VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT, 2257 eFragmentShadingRateAttachmentOptimalKHR = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR, 2258 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 2259 eVideoEncodeDstKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR, 2260 eVideoEncodeSrcKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR, 2261 eVideoEncodeDpbKHR = VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR, 2262 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 2263 eAttachmentFeedbackLoopOptimalEXT = VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT, 2264 eAttachmentOptimalKHR = VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR, 2265 eDepthAttachmentOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR, 2266 eDepthAttachmentStencilReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR, 2267 eDepthReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR, 2268 eDepthReadOnlyStencilAttachmentOptimalKHR = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR, 2269 eReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR, 2270 eShadingRateOptimalNV = VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV, 2271 eStencilAttachmentOptimalKHR = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR, 2272 eStencilReadOnlyOptimalKHR = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR 2273 }; 2274 2275 enum class ComponentSwizzle 2276 { 2277 eIdentity = VK_COMPONENT_SWIZZLE_IDENTITY, 2278 eZero = VK_COMPONENT_SWIZZLE_ZERO, 2279 eOne = VK_COMPONENT_SWIZZLE_ONE, 2280 eR = VK_COMPONENT_SWIZZLE_R, 2281 eG = VK_COMPONENT_SWIZZLE_G, 2282 eB = VK_COMPONENT_SWIZZLE_B, 2283 eA = VK_COMPONENT_SWIZZLE_A 2284 }; 2285 2286 enum class ImageViewCreateFlagBits : VkImageViewCreateFlags 2287 { 2288 eFragmentDensityMapDynamicEXT = VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT, 2289 eDescriptorBufferCaptureReplayEXT = VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT, 2290 eFragmentDensityMapDeferredEXT = VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT 2291 }; 2292 2293 using ImageViewCreateFlags = Flags<ImageViewCreateFlagBits>; 2294 2295 2296 template <> struct FlagTraits<ImageViewCreateFlagBits> 2297 { 2298 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2299 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageViewCreateFlags allFlags = 2300 ImageViewCreateFlagBits::eFragmentDensityMapDynamicEXT 2301 | ImageViewCreateFlagBits::eDescriptorBufferCaptureReplayEXT 2302 | ImageViewCreateFlagBits::eFragmentDensityMapDeferredEXT; 2303 }; 2304 2305 enum class ImageViewType 2306 { 2307 e1D = VK_IMAGE_VIEW_TYPE_1D, 2308 e2D = VK_IMAGE_VIEW_TYPE_2D, 2309 e3D = VK_IMAGE_VIEW_TYPE_3D, 2310 eCube = VK_IMAGE_VIEW_TYPE_CUBE, 2311 e1DArray = VK_IMAGE_VIEW_TYPE_1D_ARRAY, 2312 e2DArray = VK_IMAGE_VIEW_TYPE_2D_ARRAY, 2313 eCubeArray = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY 2314 }; 2315 2316 enum class ShaderModuleCreateFlagBits : VkShaderModuleCreateFlags 2317 {}; 2318 2319 using ShaderModuleCreateFlags = Flags<ShaderModuleCreateFlagBits>; 2320 2321 2322 template <> struct FlagTraits<ShaderModuleCreateFlagBits> 2323 { 2324 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2325 static VULKAN_HPP_CONST_OR_CONSTEXPR ShaderModuleCreateFlags allFlags = {}; 2326 }; 2327 2328 enum class BlendFactor 2329 { 2330 eZero = VK_BLEND_FACTOR_ZERO, 2331 eOne = VK_BLEND_FACTOR_ONE, 2332 eSrcColor = VK_BLEND_FACTOR_SRC_COLOR, 2333 eOneMinusSrcColor = VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR, 2334 eDstColor = VK_BLEND_FACTOR_DST_COLOR, 2335 eOneMinusDstColor = VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR, 2336 eSrcAlpha = VK_BLEND_FACTOR_SRC_ALPHA, 2337 eOneMinusSrcAlpha = VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA, 2338 eDstAlpha = VK_BLEND_FACTOR_DST_ALPHA, 2339 eOneMinusDstAlpha = VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA, 2340 eConstantColor = VK_BLEND_FACTOR_CONSTANT_COLOR, 2341 eOneMinusConstantColor = VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR, 2342 eConstantAlpha = VK_BLEND_FACTOR_CONSTANT_ALPHA, 2343 eOneMinusConstantAlpha = VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA, 2344 eSrcAlphaSaturate = VK_BLEND_FACTOR_SRC_ALPHA_SATURATE, 2345 eSrc1Color = VK_BLEND_FACTOR_SRC1_COLOR, 2346 eOneMinusSrc1Color = VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR, 2347 eSrc1Alpha = VK_BLEND_FACTOR_SRC1_ALPHA, 2348 eOneMinusSrc1Alpha = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA 2349 }; 2350 2351 enum class BlendOp 2352 { 2353 eAdd = VK_BLEND_OP_ADD, 2354 eSubtract = VK_BLEND_OP_SUBTRACT, 2355 eReverseSubtract = VK_BLEND_OP_REVERSE_SUBTRACT, 2356 eMin = VK_BLEND_OP_MIN, 2357 eMax = VK_BLEND_OP_MAX, 2358 eZeroEXT = VK_BLEND_OP_ZERO_EXT, 2359 eSrcEXT = VK_BLEND_OP_SRC_EXT, 2360 eDstEXT = VK_BLEND_OP_DST_EXT, 2361 eSrcOverEXT = VK_BLEND_OP_SRC_OVER_EXT, 2362 eDstOverEXT = VK_BLEND_OP_DST_OVER_EXT, 2363 eSrcInEXT = VK_BLEND_OP_SRC_IN_EXT, 2364 eDstInEXT = VK_BLEND_OP_DST_IN_EXT, 2365 eSrcOutEXT = VK_BLEND_OP_SRC_OUT_EXT, 2366 eDstOutEXT = VK_BLEND_OP_DST_OUT_EXT, 2367 eSrcAtopEXT = VK_BLEND_OP_SRC_ATOP_EXT, 2368 eDstAtopEXT = VK_BLEND_OP_DST_ATOP_EXT, 2369 eXorEXT = VK_BLEND_OP_XOR_EXT, 2370 eMultiplyEXT = VK_BLEND_OP_MULTIPLY_EXT, 2371 eScreenEXT = VK_BLEND_OP_SCREEN_EXT, 2372 eOverlayEXT = VK_BLEND_OP_OVERLAY_EXT, 2373 eDarkenEXT = VK_BLEND_OP_DARKEN_EXT, 2374 eLightenEXT = VK_BLEND_OP_LIGHTEN_EXT, 2375 eColordodgeEXT = VK_BLEND_OP_COLORDODGE_EXT, 2376 eColorburnEXT = VK_BLEND_OP_COLORBURN_EXT, 2377 eHardlightEXT = VK_BLEND_OP_HARDLIGHT_EXT, 2378 eSoftlightEXT = VK_BLEND_OP_SOFTLIGHT_EXT, 2379 eDifferenceEXT = VK_BLEND_OP_DIFFERENCE_EXT, 2380 eExclusionEXT = VK_BLEND_OP_EXCLUSION_EXT, 2381 eInvertEXT = VK_BLEND_OP_INVERT_EXT, 2382 eInvertRgbEXT = VK_BLEND_OP_INVERT_RGB_EXT, 2383 eLineardodgeEXT = VK_BLEND_OP_LINEARDODGE_EXT, 2384 eLinearburnEXT = VK_BLEND_OP_LINEARBURN_EXT, 2385 eVividlightEXT = VK_BLEND_OP_VIVIDLIGHT_EXT, 2386 eLinearlightEXT = VK_BLEND_OP_LINEARLIGHT_EXT, 2387 ePinlightEXT = VK_BLEND_OP_PINLIGHT_EXT, 2388 eHardmixEXT = VK_BLEND_OP_HARDMIX_EXT, 2389 eHslHueEXT = VK_BLEND_OP_HSL_HUE_EXT, 2390 eHslSaturationEXT = VK_BLEND_OP_HSL_SATURATION_EXT, 2391 eHslColorEXT = VK_BLEND_OP_HSL_COLOR_EXT, 2392 eHslLuminosityEXT = VK_BLEND_OP_HSL_LUMINOSITY_EXT, 2393 ePlusEXT = VK_BLEND_OP_PLUS_EXT, 2394 ePlusClampedEXT = VK_BLEND_OP_PLUS_CLAMPED_EXT, 2395 ePlusClampedAlphaEXT = VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT, 2396 ePlusDarkerEXT = VK_BLEND_OP_PLUS_DARKER_EXT, 2397 eMinusEXT = VK_BLEND_OP_MINUS_EXT, 2398 eMinusClampedEXT = VK_BLEND_OP_MINUS_CLAMPED_EXT, 2399 eContrastEXT = VK_BLEND_OP_CONTRAST_EXT, 2400 eInvertOvgEXT = VK_BLEND_OP_INVERT_OVG_EXT, 2401 eRedEXT = VK_BLEND_OP_RED_EXT, 2402 eGreenEXT = VK_BLEND_OP_GREEN_EXT, 2403 eBlueEXT = VK_BLEND_OP_BLUE_EXT 2404 }; 2405 2406 enum class ColorComponentFlagBits : VkColorComponentFlags 2407 { 2408 eR = VK_COLOR_COMPONENT_R_BIT, 2409 eG = VK_COLOR_COMPONENT_G_BIT, 2410 eB = VK_COLOR_COMPONENT_B_BIT, 2411 eA = VK_COLOR_COMPONENT_A_BIT 2412 }; 2413 2414 using ColorComponentFlags = Flags<ColorComponentFlagBits>; 2415 2416 2417 template <> struct FlagTraits<ColorComponentFlagBits> 2418 { 2419 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2420 static VULKAN_HPP_CONST_OR_CONSTEXPR ColorComponentFlags allFlags = 2421 ColorComponentFlagBits::eR 2422 | ColorComponentFlagBits::eG 2423 | ColorComponentFlagBits::eB 2424 | ColorComponentFlagBits::eA; 2425 }; 2426 2427 enum class CompareOp 2428 { 2429 eNever = VK_COMPARE_OP_NEVER, 2430 eLess = VK_COMPARE_OP_LESS, 2431 eEqual = VK_COMPARE_OP_EQUAL, 2432 eLessOrEqual = VK_COMPARE_OP_LESS_OR_EQUAL, 2433 eGreater = VK_COMPARE_OP_GREATER, 2434 eNotEqual = VK_COMPARE_OP_NOT_EQUAL, 2435 eGreaterOrEqual = VK_COMPARE_OP_GREATER_OR_EQUAL, 2436 eAlways = VK_COMPARE_OP_ALWAYS 2437 }; 2438 2439 enum class CullModeFlagBits : VkCullModeFlags 2440 { 2441 eNone = VK_CULL_MODE_NONE, 2442 eFront = VK_CULL_MODE_FRONT_BIT, 2443 eBack = VK_CULL_MODE_BACK_BIT, 2444 eFrontAndBack = VK_CULL_MODE_FRONT_AND_BACK 2445 }; 2446 2447 using CullModeFlags = Flags<CullModeFlagBits>; 2448 2449 2450 template <> struct FlagTraits<CullModeFlagBits> 2451 { 2452 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2453 static VULKAN_HPP_CONST_OR_CONSTEXPR CullModeFlags allFlags = 2454 CullModeFlagBits::eNone 2455 | CullModeFlagBits::eFront 2456 | CullModeFlagBits::eBack 2457 | CullModeFlagBits::eFrontAndBack; 2458 }; 2459 2460 enum class DynamicState 2461 { 2462 eViewport = VK_DYNAMIC_STATE_VIEWPORT, 2463 eScissor = VK_DYNAMIC_STATE_SCISSOR, 2464 eLineWidth = VK_DYNAMIC_STATE_LINE_WIDTH, 2465 eDepthBias = VK_DYNAMIC_STATE_DEPTH_BIAS, 2466 eBlendConstants = VK_DYNAMIC_STATE_BLEND_CONSTANTS, 2467 eDepthBounds = VK_DYNAMIC_STATE_DEPTH_BOUNDS, 2468 eStencilCompareMask = VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK, 2469 eStencilWriteMask = VK_DYNAMIC_STATE_STENCIL_WRITE_MASK, 2470 eStencilReference = VK_DYNAMIC_STATE_STENCIL_REFERENCE, 2471 eCullMode = VK_DYNAMIC_STATE_CULL_MODE, 2472 eFrontFace = VK_DYNAMIC_STATE_FRONT_FACE, 2473 ePrimitiveTopology = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY, 2474 eViewportWithCount = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT, 2475 eScissorWithCount = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT, 2476 eVertexInputBindingStride = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE, 2477 eDepthTestEnable = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE, 2478 eDepthWriteEnable = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE, 2479 eDepthCompareOp = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP, 2480 eDepthBoundsTestEnable = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE, 2481 eStencilTestEnable = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE, 2482 eStencilOp = VK_DYNAMIC_STATE_STENCIL_OP, 2483 eRasterizerDiscardEnable = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE, 2484 eDepthBiasEnable = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE, 2485 ePrimitiveRestartEnable = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE, 2486 eViewportWScalingNV = VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV, 2487 eDiscardRectangleEXT = VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT, 2488 eSampleLocationsEXT = VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT, 2489 eRayTracingPipelineStackSizeKHR = VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR, 2490 eViewportShadingRatePaletteNV = VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV, 2491 eViewportCoarseSampleOrderNV = VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV, 2492 eExclusiveScissorNV = VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV, 2493 eFragmentShadingRateKHR = VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR, 2494 eLineStippleEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_EXT, 2495 eVertexInputEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_EXT, 2496 ePatchControlPointsEXT = VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT, 2497 eLogicOpEXT = VK_DYNAMIC_STATE_LOGIC_OP_EXT, 2498 eColorWriteEnableEXT = VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT, 2499 eTessellationDomainOriginEXT = VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT, 2500 eDepthClampEnableEXT = VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT, 2501 ePolygonModeEXT = VK_DYNAMIC_STATE_POLYGON_MODE_EXT, 2502 eRasterizationSamplesEXT = VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT, 2503 eSampleMaskEXT = VK_DYNAMIC_STATE_SAMPLE_MASK_EXT, 2504 eAlphaToCoverageEnableEXT = VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT, 2505 eAlphaToOneEnableEXT = VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT, 2506 eLogicOpEnableEXT = VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT, 2507 eColorBlendEnableEXT = VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT, 2508 eColorBlendEquationEXT = VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT, 2509 eColorWriteMaskEXT = VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT, 2510 eRasterizationStreamEXT = VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT, 2511 eConservativeRasterizationModeEXT = VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT, 2512 eExtraPrimitiveOverestimationSizeEXT = VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT, 2513 eDepthClipEnableEXT = VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT, 2514 eSampleLocationsEnableEXT = VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT, 2515 eColorBlendAdvancedEXT = VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT, 2516 eProvokingVertexModeEXT = VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT, 2517 eLineRasterizationModeEXT = VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT, 2518 eLineStippleEnableEXT = VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT, 2519 eDepthClipNegativeOneToOneEXT = VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT, 2520 eViewportWScalingEnableNV = VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV, 2521 eViewportSwizzleNV = VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV, 2522 eCoverageToColorEnableNV = VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV, 2523 eCoverageToColorLocationNV = VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV, 2524 eCoverageModulationModeNV = VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV, 2525 eCoverageModulationTableEnableNV = VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV, 2526 eCoverageModulationTableNV = VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV, 2527 eShadingRateImageEnableNV = VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV, 2528 eRepresentativeFragmentTestEnableNV = VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV, 2529 eCoverageReductionModeNV = VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV, 2530 eCullModeEXT = VK_DYNAMIC_STATE_CULL_MODE_EXT, 2531 eDepthBiasEnableEXT = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT, 2532 eDepthBoundsTestEnableEXT = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT, 2533 eDepthCompareOpEXT = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT, 2534 eDepthTestEnableEXT = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT, 2535 eDepthWriteEnableEXT = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT, 2536 eFrontFaceEXT = VK_DYNAMIC_STATE_FRONT_FACE_EXT, 2537 ePrimitiveRestartEnableEXT = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT, 2538 ePrimitiveTopologyEXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT, 2539 eRasterizerDiscardEnableEXT = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT, 2540 eScissorWithCountEXT = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT, 2541 eStencilOpEXT = VK_DYNAMIC_STATE_STENCIL_OP_EXT, 2542 eStencilTestEnableEXT = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT, 2543 eVertexInputBindingStrideEXT = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT, 2544 eViewportWithCountEXT = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT 2545 }; 2546 2547 enum class FrontFace 2548 { 2549 eCounterClockwise = VK_FRONT_FACE_COUNTER_CLOCKWISE, 2550 eClockwise = VK_FRONT_FACE_CLOCKWISE 2551 }; 2552 2553 enum class LogicOp 2554 { 2555 eClear = VK_LOGIC_OP_CLEAR, 2556 eAnd = VK_LOGIC_OP_AND, 2557 eAndReverse = VK_LOGIC_OP_AND_REVERSE, 2558 eCopy = VK_LOGIC_OP_COPY, 2559 eAndInverted = VK_LOGIC_OP_AND_INVERTED, 2560 eNoOp = VK_LOGIC_OP_NO_OP, 2561 eXor = VK_LOGIC_OP_XOR, 2562 eOr = VK_LOGIC_OP_OR, 2563 eNor = VK_LOGIC_OP_NOR, 2564 eEquivalent = VK_LOGIC_OP_EQUIVALENT, 2565 eInvert = VK_LOGIC_OP_INVERT, 2566 eOrReverse = VK_LOGIC_OP_OR_REVERSE, 2567 eCopyInverted = VK_LOGIC_OP_COPY_INVERTED, 2568 eOrInverted = VK_LOGIC_OP_OR_INVERTED, 2569 eNand = VK_LOGIC_OP_NAND, 2570 eSet = VK_LOGIC_OP_SET 2571 }; 2572 2573 enum class PipelineCreateFlagBits : VkPipelineCreateFlags 2574 { 2575 eDisableOptimization = VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT, 2576 eAllowDerivatives = VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT, 2577 eDerivative = VK_PIPELINE_CREATE_DERIVATIVE_BIT, 2578 eViewIndexFromDeviceIndex = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT, 2579 eDispatchBase = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT, 2580 eFailOnPipelineCompileRequired = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT, 2581 eEarlyReturnOnFailure = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT, 2582 eRenderingFragmentShadingRateAttachmentKHR = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 2583 eRenderingFragmentDensityMapAttachmentEXT = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT, 2584 eRayTracingNoNullAnyHitShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR, 2585 eRayTracingNoNullClosestHitShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR, 2586 eRayTracingNoNullMissShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR, 2587 eRayTracingNoNullIntersectionShadersKHR = VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR, 2588 eRayTracingSkipTrianglesKHR = VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR, 2589 eRayTracingSkipAabbsKHR = VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR, 2590 eRayTracingShaderGroupHandleCaptureReplayKHR = VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR, 2591 eDeferCompileNV = VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV, 2592 eCaptureStatisticsKHR = VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR, 2593 eCaptureInternalRepresentationsKHR = VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR, 2594 eIndirectBindableNV = VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV, 2595 eLibraryKHR = VK_PIPELINE_CREATE_LIBRARY_BIT_KHR, 2596 eDescriptorBufferEXT = VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT, 2597 eRetainLinkTimeOptimizationInfoEXT = VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT, 2598 eLinkTimeOptimizationEXT = VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT, 2599 eRayTracingAllowMotionNV = VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV, 2600 eColorAttachmentFeedbackLoopEXT = VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT, 2601 eDepthStencilAttachmentFeedbackLoopEXT = VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT, 2602 eRayTracingOpacityMicromapEXT = VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT, 2603 eNoProtectedAccessEXT = VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT, 2604 eProtectedAccessOnlyEXT = VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT, 2605 eDispatchBaseKHR = VK_PIPELINE_CREATE_DISPATCH_BASE_KHR, 2606 eEarlyReturnOnFailureEXT = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT, 2607 eFailOnPipelineCompileRequiredEXT = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT, 2608 eViewIndexFromDeviceIndexKHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR, 2609 eVkPipelineRasterizationStateCreateFragmentDensityMapAttachmentEXT = VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT, 2610 eVkPipelineRasterizationStateCreateFragmentShadingRateAttachmentKHR = VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR 2611 }; 2612 2613 using PipelineCreateFlags = Flags<PipelineCreateFlagBits>; 2614 2615 2616 template <> struct FlagTraits<PipelineCreateFlagBits> 2617 { 2618 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2619 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCreateFlags allFlags = 2620 PipelineCreateFlagBits::eDisableOptimization 2621 | PipelineCreateFlagBits::eAllowDerivatives 2622 | PipelineCreateFlagBits::eDerivative 2623 | PipelineCreateFlagBits::eViewIndexFromDeviceIndex 2624 | PipelineCreateFlagBits::eDispatchBase 2625 | PipelineCreateFlagBits::eFailOnPipelineCompileRequired 2626 | PipelineCreateFlagBits::eEarlyReturnOnFailure 2627 | PipelineCreateFlagBits::eRenderingFragmentShadingRateAttachmentKHR 2628 | PipelineCreateFlagBits::eRenderingFragmentDensityMapAttachmentEXT 2629 | PipelineCreateFlagBits::eRayTracingNoNullAnyHitShadersKHR 2630 | PipelineCreateFlagBits::eRayTracingNoNullClosestHitShadersKHR 2631 | PipelineCreateFlagBits::eRayTracingNoNullMissShadersKHR 2632 | PipelineCreateFlagBits::eRayTracingNoNullIntersectionShadersKHR 2633 | PipelineCreateFlagBits::eRayTracingSkipTrianglesKHR 2634 | PipelineCreateFlagBits::eRayTracingSkipAabbsKHR 2635 | PipelineCreateFlagBits::eRayTracingShaderGroupHandleCaptureReplayKHR 2636 | PipelineCreateFlagBits::eDeferCompileNV 2637 | PipelineCreateFlagBits::eCaptureStatisticsKHR 2638 | PipelineCreateFlagBits::eCaptureInternalRepresentationsKHR 2639 | PipelineCreateFlagBits::eIndirectBindableNV 2640 | PipelineCreateFlagBits::eLibraryKHR 2641 | PipelineCreateFlagBits::eDescriptorBufferEXT 2642 | PipelineCreateFlagBits::eRetainLinkTimeOptimizationInfoEXT 2643 | PipelineCreateFlagBits::eLinkTimeOptimizationEXT 2644 | PipelineCreateFlagBits::eRayTracingAllowMotionNV 2645 | PipelineCreateFlagBits::eColorAttachmentFeedbackLoopEXT 2646 | PipelineCreateFlagBits::eDepthStencilAttachmentFeedbackLoopEXT 2647 | PipelineCreateFlagBits::eRayTracingOpacityMicromapEXT 2648 | PipelineCreateFlagBits::eNoProtectedAccessEXT 2649 | PipelineCreateFlagBits::eProtectedAccessOnlyEXT; 2650 }; 2651 2652 enum class PipelineShaderStageCreateFlagBits : VkPipelineShaderStageCreateFlags 2653 { 2654 eAllowVaryingSubgroupSize = VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT, 2655 eRequireFullSubgroups = VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT, 2656 eAllowVaryingSubgroupSizeEXT = VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT, 2657 eRequireFullSubgroupsEXT = VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT 2658 }; 2659 2660 using PipelineShaderStageCreateFlags = Flags<PipelineShaderStageCreateFlagBits>; 2661 2662 2663 template <> struct FlagTraits<PipelineShaderStageCreateFlagBits> 2664 { 2665 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2666 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineShaderStageCreateFlags allFlags = 2667 PipelineShaderStageCreateFlagBits::eAllowVaryingSubgroupSize 2668 | PipelineShaderStageCreateFlagBits::eRequireFullSubgroups; 2669 }; 2670 2671 enum class PolygonMode 2672 { 2673 eFill = VK_POLYGON_MODE_FILL, 2674 eLine = VK_POLYGON_MODE_LINE, 2675 ePoint = VK_POLYGON_MODE_POINT, 2676 eFillRectangleNV = VK_POLYGON_MODE_FILL_RECTANGLE_NV 2677 }; 2678 2679 enum class PrimitiveTopology 2680 { 2681 ePointList = VK_PRIMITIVE_TOPOLOGY_POINT_LIST, 2682 eLineList = VK_PRIMITIVE_TOPOLOGY_LINE_LIST, 2683 eLineStrip = VK_PRIMITIVE_TOPOLOGY_LINE_STRIP, 2684 eTriangleList = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST, 2685 eTriangleStrip = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP, 2686 eTriangleFan = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN, 2687 eLineListWithAdjacency = VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY, 2688 eLineStripWithAdjacency = VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY, 2689 eTriangleListWithAdjacency = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY, 2690 eTriangleStripWithAdjacency = VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY, 2691 ePatchList = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST 2692 }; 2693 2694 enum class ShaderStageFlagBits : VkShaderStageFlags 2695 { 2696 eVertex = VK_SHADER_STAGE_VERTEX_BIT, 2697 eTessellationControl = VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT, 2698 eTessellationEvaluation = VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT, 2699 eGeometry = VK_SHADER_STAGE_GEOMETRY_BIT, 2700 eFragment = VK_SHADER_STAGE_FRAGMENT_BIT, 2701 eCompute = VK_SHADER_STAGE_COMPUTE_BIT, 2702 eAllGraphics = VK_SHADER_STAGE_ALL_GRAPHICS, 2703 eAll = VK_SHADER_STAGE_ALL, 2704 eRaygenKHR = VK_SHADER_STAGE_RAYGEN_BIT_KHR, 2705 eAnyHitKHR = VK_SHADER_STAGE_ANY_HIT_BIT_KHR, 2706 eClosestHitKHR = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR, 2707 eMissKHR = VK_SHADER_STAGE_MISS_BIT_KHR, 2708 eIntersectionKHR = VK_SHADER_STAGE_INTERSECTION_BIT_KHR, 2709 eCallableKHR = VK_SHADER_STAGE_CALLABLE_BIT_KHR, 2710 eTaskEXT = VK_SHADER_STAGE_TASK_BIT_EXT, 2711 eMeshEXT = VK_SHADER_STAGE_MESH_BIT_EXT, 2712 eSubpassShadingHUAWEI = VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI, 2713 eClusterCullingHUAWEI = VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI, 2714 eAnyHitNV = VK_SHADER_STAGE_ANY_HIT_BIT_NV, 2715 eCallableNV = VK_SHADER_STAGE_CALLABLE_BIT_NV, 2716 eClosestHitNV = VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV, 2717 eIntersectionNV = VK_SHADER_STAGE_INTERSECTION_BIT_NV, 2718 eMeshNV = VK_SHADER_STAGE_MESH_BIT_NV, 2719 eMissNV = VK_SHADER_STAGE_MISS_BIT_NV, 2720 eRaygenNV = VK_SHADER_STAGE_RAYGEN_BIT_NV, 2721 eTaskNV = VK_SHADER_STAGE_TASK_BIT_NV 2722 }; 2723 2724 using ShaderStageFlags = Flags<ShaderStageFlagBits>; 2725 2726 2727 template <> struct FlagTraits<ShaderStageFlagBits> 2728 { 2729 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2730 static VULKAN_HPP_CONST_OR_CONSTEXPR ShaderStageFlags allFlags = 2731 ShaderStageFlagBits::eVertex 2732 | ShaderStageFlagBits::eTessellationControl 2733 | ShaderStageFlagBits::eTessellationEvaluation 2734 | ShaderStageFlagBits::eGeometry 2735 | ShaderStageFlagBits::eFragment 2736 | ShaderStageFlagBits::eCompute 2737 | ShaderStageFlagBits::eAllGraphics 2738 | ShaderStageFlagBits::eAll 2739 | ShaderStageFlagBits::eRaygenKHR 2740 | ShaderStageFlagBits::eAnyHitKHR 2741 | ShaderStageFlagBits::eClosestHitKHR 2742 | ShaderStageFlagBits::eMissKHR 2743 | ShaderStageFlagBits::eIntersectionKHR 2744 | ShaderStageFlagBits::eCallableKHR 2745 | ShaderStageFlagBits::eTaskEXT 2746 | ShaderStageFlagBits::eMeshEXT 2747 | ShaderStageFlagBits::eSubpassShadingHUAWEI 2748 | ShaderStageFlagBits::eClusterCullingHUAWEI; 2749 }; 2750 2751 enum class StencilOp 2752 { 2753 eKeep = VK_STENCIL_OP_KEEP, 2754 eZero = VK_STENCIL_OP_ZERO, 2755 eReplace = VK_STENCIL_OP_REPLACE, 2756 eIncrementAndClamp = VK_STENCIL_OP_INCREMENT_AND_CLAMP, 2757 eDecrementAndClamp = VK_STENCIL_OP_DECREMENT_AND_CLAMP, 2758 eInvert = VK_STENCIL_OP_INVERT, 2759 eIncrementAndWrap = VK_STENCIL_OP_INCREMENT_AND_WRAP, 2760 eDecrementAndWrap = VK_STENCIL_OP_DECREMENT_AND_WRAP 2761 }; 2762 2763 enum class VertexInputRate 2764 { 2765 eVertex = VK_VERTEX_INPUT_RATE_VERTEX, 2766 eInstance = VK_VERTEX_INPUT_RATE_INSTANCE 2767 }; 2768 2769 enum class PipelineDynamicStateCreateFlagBits : VkPipelineDynamicStateCreateFlags 2770 {}; 2771 2772 using PipelineDynamicStateCreateFlags = Flags<PipelineDynamicStateCreateFlagBits>; 2773 2774 2775 template <> struct FlagTraits<PipelineDynamicStateCreateFlagBits> 2776 { 2777 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2778 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineDynamicStateCreateFlags allFlags = {}; 2779 }; 2780 2781 enum class PipelineInputAssemblyStateCreateFlagBits : VkPipelineInputAssemblyStateCreateFlags 2782 {}; 2783 2784 using PipelineInputAssemblyStateCreateFlags = Flags<PipelineInputAssemblyStateCreateFlagBits>; 2785 2786 2787 template <> struct FlagTraits<PipelineInputAssemblyStateCreateFlagBits> 2788 { 2789 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2790 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineInputAssemblyStateCreateFlags allFlags = {}; 2791 }; 2792 2793 enum class PipelineMultisampleStateCreateFlagBits : VkPipelineMultisampleStateCreateFlags 2794 {}; 2795 2796 using PipelineMultisampleStateCreateFlags = Flags<PipelineMultisampleStateCreateFlagBits>; 2797 2798 2799 template <> struct FlagTraits<PipelineMultisampleStateCreateFlagBits> 2800 { 2801 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2802 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineMultisampleStateCreateFlags allFlags = {}; 2803 }; 2804 2805 enum class PipelineRasterizationStateCreateFlagBits : VkPipelineRasterizationStateCreateFlags 2806 {}; 2807 2808 using PipelineRasterizationStateCreateFlags = Flags<PipelineRasterizationStateCreateFlagBits>; 2809 2810 2811 template <> struct FlagTraits<PipelineRasterizationStateCreateFlagBits> 2812 { 2813 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2814 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineRasterizationStateCreateFlags allFlags = {}; 2815 }; 2816 2817 enum class PipelineTessellationStateCreateFlagBits : VkPipelineTessellationStateCreateFlags 2818 {}; 2819 2820 using PipelineTessellationStateCreateFlags = Flags<PipelineTessellationStateCreateFlagBits>; 2821 2822 2823 template <> struct FlagTraits<PipelineTessellationStateCreateFlagBits> 2824 { 2825 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2826 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineTessellationStateCreateFlags allFlags = {}; 2827 }; 2828 2829 enum class PipelineVertexInputStateCreateFlagBits : VkPipelineVertexInputStateCreateFlags 2830 {}; 2831 2832 using PipelineVertexInputStateCreateFlags = Flags<PipelineVertexInputStateCreateFlagBits>; 2833 2834 2835 template <> struct FlagTraits<PipelineVertexInputStateCreateFlagBits> 2836 { 2837 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2838 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineVertexInputStateCreateFlags allFlags = {}; 2839 }; 2840 2841 enum class PipelineViewportStateCreateFlagBits : VkPipelineViewportStateCreateFlags 2842 {}; 2843 2844 using PipelineViewportStateCreateFlags = Flags<PipelineViewportStateCreateFlagBits>; 2845 2846 2847 template <> struct FlagTraits<PipelineViewportStateCreateFlagBits> 2848 { 2849 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2850 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineViewportStateCreateFlags allFlags = {}; 2851 }; 2852 2853 enum class BorderColor 2854 { 2855 eFloatTransparentBlack = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK, 2856 eIntTransparentBlack = VK_BORDER_COLOR_INT_TRANSPARENT_BLACK, 2857 eFloatOpaqueBlack = VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK, 2858 eIntOpaqueBlack = VK_BORDER_COLOR_INT_OPAQUE_BLACK, 2859 eFloatOpaqueWhite = VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE, 2860 eIntOpaqueWhite = VK_BORDER_COLOR_INT_OPAQUE_WHITE, 2861 eFloatCustomEXT = VK_BORDER_COLOR_FLOAT_CUSTOM_EXT, 2862 eIntCustomEXT = VK_BORDER_COLOR_INT_CUSTOM_EXT 2863 }; 2864 2865 enum class Filter 2866 { 2867 eNearest = VK_FILTER_NEAREST, 2868 eLinear = VK_FILTER_LINEAR, 2869 eCubicEXT = VK_FILTER_CUBIC_EXT, 2870 eCubicIMG = VK_FILTER_CUBIC_IMG 2871 }; 2872 2873 enum class SamplerAddressMode 2874 { 2875 eRepeat = VK_SAMPLER_ADDRESS_MODE_REPEAT, 2876 eMirroredRepeat = VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT, 2877 eClampToEdge = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE, 2878 eClampToBorder = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER, 2879 eMirrorClampToEdge = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE, 2880 eMirrorClampToEdgeKHR = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR 2881 }; 2882 2883 enum class SamplerCreateFlagBits : VkSamplerCreateFlags 2884 { 2885 eSubsampledEXT = VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT, 2886 eSubsampledCoarseReconstructionEXT = VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT, 2887 eDescriptorBufferCaptureReplayEXT = VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT, 2888 eNonSeamlessCubeMapEXT = VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT, 2889 eImageProcessingQCOM = VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM 2890 }; 2891 2892 using SamplerCreateFlags = Flags<SamplerCreateFlagBits>; 2893 2894 2895 template <> struct FlagTraits<SamplerCreateFlagBits> 2896 { 2897 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2898 static VULKAN_HPP_CONST_OR_CONSTEXPR SamplerCreateFlags allFlags = 2899 SamplerCreateFlagBits::eSubsampledEXT 2900 | SamplerCreateFlagBits::eSubsampledCoarseReconstructionEXT 2901 | SamplerCreateFlagBits::eDescriptorBufferCaptureReplayEXT 2902 | SamplerCreateFlagBits::eNonSeamlessCubeMapEXT 2903 | SamplerCreateFlagBits::eImageProcessingQCOM; 2904 }; 2905 2906 enum class SamplerMipmapMode 2907 { 2908 eNearest = VK_SAMPLER_MIPMAP_MODE_NEAREST, 2909 eLinear = VK_SAMPLER_MIPMAP_MODE_LINEAR 2910 }; 2911 2912 enum class DescriptorPoolCreateFlagBits : VkDescriptorPoolCreateFlags 2913 { 2914 eFreeDescriptorSet = VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, 2915 eUpdateAfterBind = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT, 2916 eHostOnlyEXT = VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT, 2917 eHostOnlyVALVE = VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE, 2918 eUpdateAfterBindEXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT 2919 }; 2920 2921 using DescriptorPoolCreateFlags = Flags<DescriptorPoolCreateFlagBits>; 2922 2923 2924 template <> struct FlagTraits<DescriptorPoolCreateFlagBits> 2925 { 2926 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2927 static VULKAN_HPP_CONST_OR_CONSTEXPR DescriptorPoolCreateFlags allFlags = 2928 DescriptorPoolCreateFlagBits::eFreeDescriptorSet 2929 | DescriptorPoolCreateFlagBits::eUpdateAfterBind 2930 | DescriptorPoolCreateFlagBits::eHostOnlyEXT; 2931 }; 2932 2933 enum class DescriptorSetLayoutCreateFlagBits : VkDescriptorSetLayoutCreateFlags 2934 { 2935 eUpdateAfterBindPool = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT, 2936 ePushDescriptorKHR = VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, 2937 eDescriptorBufferEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT, 2938 eEmbeddedImmutableSamplersEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT, 2939 eHostOnlyPoolEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT, 2940 eHostOnlyPoolVALVE = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE, 2941 eUpdateAfterBindPoolEXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT 2942 }; 2943 2944 using DescriptorSetLayoutCreateFlags = Flags<DescriptorSetLayoutCreateFlagBits>; 2945 2946 2947 template <> struct FlagTraits<DescriptorSetLayoutCreateFlagBits> 2948 { 2949 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2950 static VULKAN_HPP_CONST_OR_CONSTEXPR DescriptorSetLayoutCreateFlags allFlags = 2951 DescriptorSetLayoutCreateFlagBits::eUpdateAfterBindPool 2952 | DescriptorSetLayoutCreateFlagBits::ePushDescriptorKHR 2953 | DescriptorSetLayoutCreateFlagBits::eDescriptorBufferEXT 2954 | DescriptorSetLayoutCreateFlagBits::eEmbeddedImmutableSamplersEXT 2955 | DescriptorSetLayoutCreateFlagBits::eHostOnlyPoolEXT; 2956 }; 2957 2958 enum class DescriptorType 2959 { 2960 eSampler = VK_DESCRIPTOR_TYPE_SAMPLER, 2961 eCombinedImageSampler = VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER, 2962 eSampledImage = VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE, 2963 eStorageImage = VK_DESCRIPTOR_TYPE_STORAGE_IMAGE, 2964 eUniformTexelBuffer = VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER, 2965 eStorageTexelBuffer = VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER, 2966 eUniformBuffer = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER, 2967 eStorageBuffer = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER, 2968 eUniformBufferDynamic = VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC, 2969 eStorageBufferDynamic = VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC, 2970 eInputAttachment = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT, 2971 eInlineUniformBlock = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK, 2972 eAccelerationStructureKHR = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR, 2973 eAccelerationStructureNV = VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV, 2974 eSampleWeightImageQCOM = VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM, 2975 eBlockMatchImageQCOM = VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM, 2976 eMutableEXT = VK_DESCRIPTOR_TYPE_MUTABLE_EXT, 2977 eInlineUniformBlockEXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT, 2978 eMutableVALVE = VK_DESCRIPTOR_TYPE_MUTABLE_VALVE 2979 }; 2980 2981 enum class DescriptorPoolResetFlagBits : VkDescriptorPoolResetFlags 2982 {}; 2983 2984 using DescriptorPoolResetFlags = Flags<DescriptorPoolResetFlagBits>; 2985 2986 2987 template <> struct FlagTraits<DescriptorPoolResetFlagBits> 2988 { 2989 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 2990 static VULKAN_HPP_CONST_OR_CONSTEXPR DescriptorPoolResetFlags allFlags = {}; 2991 }; 2992 2993 enum class AccessFlagBits : VkAccessFlags 2994 { 2995 eIndirectCommandRead = VK_ACCESS_INDIRECT_COMMAND_READ_BIT, 2996 eIndexRead = VK_ACCESS_INDEX_READ_BIT, 2997 eVertexAttributeRead = VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT, 2998 eUniformRead = VK_ACCESS_UNIFORM_READ_BIT, 2999 eInputAttachmentRead = VK_ACCESS_INPUT_ATTACHMENT_READ_BIT, 3000 eShaderRead = VK_ACCESS_SHADER_READ_BIT, 3001 eShaderWrite = VK_ACCESS_SHADER_WRITE_BIT, 3002 eColorAttachmentRead = VK_ACCESS_COLOR_ATTACHMENT_READ_BIT, 3003 eColorAttachmentWrite = VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT, 3004 eDepthStencilAttachmentRead = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT, 3005 eDepthStencilAttachmentWrite = VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, 3006 eTransferRead = VK_ACCESS_TRANSFER_READ_BIT, 3007 eTransferWrite = VK_ACCESS_TRANSFER_WRITE_BIT, 3008 eHostRead = VK_ACCESS_HOST_READ_BIT, 3009 eHostWrite = VK_ACCESS_HOST_WRITE_BIT, 3010 eMemoryRead = VK_ACCESS_MEMORY_READ_BIT, 3011 eMemoryWrite = VK_ACCESS_MEMORY_WRITE_BIT, 3012 eNone = VK_ACCESS_NONE, 3013 eTransformFeedbackWriteEXT = VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT, 3014 eTransformFeedbackCounterReadEXT = VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, 3015 eTransformFeedbackCounterWriteEXT = VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT, 3016 eConditionalRenderingReadEXT = VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT, 3017 eColorAttachmentReadNoncoherentEXT = VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT, 3018 eAccelerationStructureReadKHR = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR, 3019 eAccelerationStructureWriteKHR = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR, 3020 eFragmentDensityMapReadEXT = VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT, 3021 eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR, 3022 eCommandPreprocessReadNV = VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV, 3023 eCommandPreprocessWriteNV = VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV, 3024 eAccelerationStructureReadNV = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV, 3025 eAccelerationStructureWriteNV = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV, 3026 eNoneKHR = VK_ACCESS_NONE_KHR, 3027 eShadingRateImageReadNV = VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV 3028 }; 3029 3030 using AccessFlags = Flags<AccessFlagBits>; 3031 3032 3033 template <> struct FlagTraits<AccessFlagBits> 3034 { 3035 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3036 static VULKAN_HPP_CONST_OR_CONSTEXPR AccessFlags allFlags = 3037 AccessFlagBits::eIndirectCommandRead 3038 | AccessFlagBits::eIndexRead 3039 | AccessFlagBits::eVertexAttributeRead 3040 | AccessFlagBits::eUniformRead 3041 | AccessFlagBits::eInputAttachmentRead 3042 | AccessFlagBits::eShaderRead 3043 | AccessFlagBits::eShaderWrite 3044 | AccessFlagBits::eColorAttachmentRead 3045 | AccessFlagBits::eColorAttachmentWrite 3046 | AccessFlagBits::eDepthStencilAttachmentRead 3047 | AccessFlagBits::eDepthStencilAttachmentWrite 3048 | AccessFlagBits::eTransferRead 3049 | AccessFlagBits::eTransferWrite 3050 | AccessFlagBits::eHostRead 3051 | AccessFlagBits::eHostWrite 3052 | AccessFlagBits::eMemoryRead 3053 | AccessFlagBits::eMemoryWrite 3054 | AccessFlagBits::eNone 3055 | AccessFlagBits::eTransformFeedbackWriteEXT 3056 | AccessFlagBits::eTransformFeedbackCounterReadEXT 3057 | AccessFlagBits::eTransformFeedbackCounterWriteEXT 3058 | AccessFlagBits::eConditionalRenderingReadEXT 3059 | AccessFlagBits::eColorAttachmentReadNoncoherentEXT 3060 | AccessFlagBits::eAccelerationStructureReadKHR 3061 | AccessFlagBits::eAccelerationStructureWriteKHR 3062 | AccessFlagBits::eFragmentDensityMapReadEXT 3063 | AccessFlagBits::eFragmentShadingRateAttachmentReadKHR 3064 | AccessFlagBits::eCommandPreprocessReadNV 3065 | AccessFlagBits::eCommandPreprocessWriteNV; 3066 }; 3067 3068 enum class AttachmentDescriptionFlagBits : VkAttachmentDescriptionFlags 3069 { 3070 eMayAlias = VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT 3071 }; 3072 3073 using AttachmentDescriptionFlags = Flags<AttachmentDescriptionFlagBits>; 3074 3075 3076 template <> struct FlagTraits<AttachmentDescriptionFlagBits> 3077 { 3078 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3079 static VULKAN_HPP_CONST_OR_CONSTEXPR AttachmentDescriptionFlags allFlags = 3080 AttachmentDescriptionFlagBits::eMayAlias; 3081 }; 3082 3083 enum class AttachmentLoadOp 3084 { 3085 eLoad = VK_ATTACHMENT_LOAD_OP_LOAD, 3086 eClear = VK_ATTACHMENT_LOAD_OP_CLEAR, 3087 eDontCare = VK_ATTACHMENT_LOAD_OP_DONT_CARE, 3088 eNoneEXT = VK_ATTACHMENT_LOAD_OP_NONE_EXT 3089 }; 3090 3091 enum class AttachmentStoreOp 3092 { 3093 eStore = VK_ATTACHMENT_STORE_OP_STORE, 3094 eDontCare = VK_ATTACHMENT_STORE_OP_DONT_CARE, 3095 eNone = VK_ATTACHMENT_STORE_OP_NONE, 3096 eNoneEXT = VK_ATTACHMENT_STORE_OP_NONE_EXT, 3097 eNoneKHR = VK_ATTACHMENT_STORE_OP_NONE_KHR, 3098 eNoneQCOM = VK_ATTACHMENT_STORE_OP_NONE_QCOM 3099 }; 3100 3101 enum class DependencyFlagBits : VkDependencyFlags 3102 { 3103 eByRegion = VK_DEPENDENCY_BY_REGION_BIT, 3104 eDeviceGroup = VK_DEPENDENCY_DEVICE_GROUP_BIT, 3105 eViewLocal = VK_DEPENDENCY_VIEW_LOCAL_BIT, 3106 eFeedbackLoopEXT = VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT, 3107 eDeviceGroupKHR = VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR, 3108 eViewLocalKHR = VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR 3109 }; 3110 3111 using DependencyFlags = Flags<DependencyFlagBits>; 3112 3113 3114 template <> struct FlagTraits<DependencyFlagBits> 3115 { 3116 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3117 static VULKAN_HPP_CONST_OR_CONSTEXPR DependencyFlags allFlags = 3118 DependencyFlagBits::eByRegion 3119 | DependencyFlagBits::eDeviceGroup 3120 | DependencyFlagBits::eViewLocal 3121 | DependencyFlagBits::eFeedbackLoopEXT; 3122 }; 3123 3124 enum class FramebufferCreateFlagBits : VkFramebufferCreateFlags 3125 { 3126 eImageless = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT, 3127 eImagelessKHR = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR 3128 }; 3129 3130 using FramebufferCreateFlags = Flags<FramebufferCreateFlagBits>; 3131 3132 3133 template <> struct FlagTraits<FramebufferCreateFlagBits> 3134 { 3135 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3136 static VULKAN_HPP_CONST_OR_CONSTEXPR FramebufferCreateFlags allFlags = 3137 FramebufferCreateFlagBits::eImageless; 3138 }; 3139 3140 enum class PipelineBindPoint 3141 { 3142 eGraphics = VK_PIPELINE_BIND_POINT_GRAPHICS, 3143 eCompute = VK_PIPELINE_BIND_POINT_COMPUTE, 3144 eRayTracingKHR = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR, 3145 eSubpassShadingHUAWEI = VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI, 3146 eRayTracingNV = VK_PIPELINE_BIND_POINT_RAY_TRACING_NV 3147 }; 3148 3149 enum class RenderPassCreateFlagBits : VkRenderPassCreateFlags 3150 { 3151 eTransformQCOM = VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM 3152 }; 3153 3154 using RenderPassCreateFlags = Flags<RenderPassCreateFlagBits>; 3155 3156 3157 template <> struct FlagTraits<RenderPassCreateFlagBits> 3158 { 3159 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3160 static VULKAN_HPP_CONST_OR_CONSTEXPR RenderPassCreateFlags allFlags = 3161 RenderPassCreateFlagBits::eTransformQCOM; 3162 }; 3163 3164 enum class SubpassDescriptionFlagBits : VkSubpassDescriptionFlags 3165 { 3166 ePerViewAttributesNVX = VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX, 3167 ePerViewPositionXOnlyNVX = VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX, 3168 eFragmentRegionQCOM = VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM, 3169 eShaderResolveQCOM = VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM, 3170 eRasterizationOrderAttachmentColorAccessEXT = VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT, 3171 eRasterizationOrderAttachmentDepthAccessEXT = VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT, 3172 eRasterizationOrderAttachmentStencilAccessEXT = VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT, 3173 eEnableLegacyDitheringEXT = VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT, 3174 eRasterizationOrderAttachmentColorAccessARM = VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM, 3175 eRasterizationOrderAttachmentDepthAccessARM = VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM, 3176 eRasterizationOrderAttachmentStencilAccessARM = VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM 3177 }; 3178 3179 using SubpassDescriptionFlags = Flags<SubpassDescriptionFlagBits>; 3180 3181 3182 template <> struct FlagTraits<SubpassDescriptionFlagBits> 3183 { 3184 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3185 static VULKAN_HPP_CONST_OR_CONSTEXPR SubpassDescriptionFlags allFlags = 3186 SubpassDescriptionFlagBits::ePerViewAttributesNVX 3187 | SubpassDescriptionFlagBits::ePerViewPositionXOnlyNVX 3188 | SubpassDescriptionFlagBits::eFragmentRegionQCOM 3189 | SubpassDescriptionFlagBits::eShaderResolveQCOM 3190 | SubpassDescriptionFlagBits::eRasterizationOrderAttachmentColorAccessEXT 3191 | SubpassDescriptionFlagBits::eRasterizationOrderAttachmentDepthAccessEXT 3192 | SubpassDescriptionFlagBits::eRasterizationOrderAttachmentStencilAccessEXT 3193 | SubpassDescriptionFlagBits::eEnableLegacyDitheringEXT; 3194 }; 3195 3196 enum class CommandPoolCreateFlagBits : VkCommandPoolCreateFlags 3197 { 3198 eTransient = VK_COMMAND_POOL_CREATE_TRANSIENT_BIT, 3199 eResetCommandBuffer = VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT, 3200 eProtected = VK_COMMAND_POOL_CREATE_PROTECTED_BIT 3201 }; 3202 3203 using CommandPoolCreateFlags = Flags<CommandPoolCreateFlagBits>; 3204 3205 3206 template <> struct FlagTraits<CommandPoolCreateFlagBits> 3207 { 3208 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3209 static VULKAN_HPP_CONST_OR_CONSTEXPR CommandPoolCreateFlags allFlags = 3210 CommandPoolCreateFlagBits::eTransient 3211 | CommandPoolCreateFlagBits::eResetCommandBuffer 3212 | CommandPoolCreateFlagBits::eProtected; 3213 }; 3214 3215 enum class CommandPoolResetFlagBits : VkCommandPoolResetFlags 3216 { 3217 eReleaseResources = VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT 3218 }; 3219 3220 using CommandPoolResetFlags = Flags<CommandPoolResetFlagBits>; 3221 3222 3223 template <> struct FlagTraits<CommandPoolResetFlagBits> 3224 { 3225 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3226 static VULKAN_HPP_CONST_OR_CONSTEXPR CommandPoolResetFlags allFlags = 3227 CommandPoolResetFlagBits::eReleaseResources; 3228 }; 3229 3230 enum class CommandBufferLevel 3231 { 3232 ePrimary = VK_COMMAND_BUFFER_LEVEL_PRIMARY, 3233 eSecondary = VK_COMMAND_BUFFER_LEVEL_SECONDARY 3234 }; 3235 3236 enum class CommandBufferResetFlagBits : VkCommandBufferResetFlags 3237 { 3238 eReleaseResources = VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT 3239 }; 3240 3241 using CommandBufferResetFlags = Flags<CommandBufferResetFlagBits>; 3242 3243 3244 template <> struct FlagTraits<CommandBufferResetFlagBits> 3245 { 3246 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3247 static VULKAN_HPP_CONST_OR_CONSTEXPR CommandBufferResetFlags allFlags = 3248 CommandBufferResetFlagBits::eReleaseResources; 3249 }; 3250 3251 enum class CommandBufferUsageFlagBits : VkCommandBufferUsageFlags 3252 { 3253 eOneTimeSubmit = VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT, 3254 eRenderPassContinue = VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT, 3255 eSimultaneousUse = VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT 3256 }; 3257 3258 using CommandBufferUsageFlags = Flags<CommandBufferUsageFlagBits>; 3259 3260 3261 template <> struct FlagTraits<CommandBufferUsageFlagBits> 3262 { 3263 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3264 static VULKAN_HPP_CONST_OR_CONSTEXPR CommandBufferUsageFlags allFlags = 3265 CommandBufferUsageFlagBits::eOneTimeSubmit 3266 | CommandBufferUsageFlagBits::eRenderPassContinue 3267 | CommandBufferUsageFlagBits::eSimultaneousUse; 3268 }; 3269 3270 enum class QueryControlFlagBits : VkQueryControlFlags 3271 { 3272 ePrecise = VK_QUERY_CONTROL_PRECISE_BIT 3273 }; 3274 3275 using QueryControlFlags = Flags<QueryControlFlagBits>; 3276 3277 3278 template <> struct FlagTraits<QueryControlFlagBits> 3279 { 3280 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3281 static VULKAN_HPP_CONST_OR_CONSTEXPR QueryControlFlags allFlags = 3282 QueryControlFlagBits::ePrecise; 3283 }; 3284 3285 enum class IndexType 3286 { 3287 eUint16 = VK_INDEX_TYPE_UINT16, 3288 eUint32 = VK_INDEX_TYPE_UINT32, 3289 eNoneKHR = VK_INDEX_TYPE_NONE_KHR, 3290 eUint8EXT = VK_INDEX_TYPE_UINT8_EXT, 3291 eNoneNV = VK_INDEX_TYPE_NONE_NV 3292 }; 3293 3294 enum class StencilFaceFlagBits : VkStencilFaceFlags 3295 { 3296 eFront = VK_STENCIL_FACE_FRONT_BIT, 3297 eBack = VK_STENCIL_FACE_BACK_BIT, 3298 eFrontAndBack = VK_STENCIL_FACE_FRONT_AND_BACK, 3299 eVkStencilFrontAndBack = VK_STENCIL_FRONT_AND_BACK 3300 }; 3301 3302 using StencilFaceFlags = Flags<StencilFaceFlagBits>; 3303 3304 3305 template <> struct FlagTraits<StencilFaceFlagBits> 3306 { 3307 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3308 static VULKAN_HPP_CONST_OR_CONSTEXPR StencilFaceFlags allFlags = 3309 StencilFaceFlagBits::eFront 3310 | StencilFaceFlagBits::eBack 3311 | StencilFaceFlagBits::eFrontAndBack; 3312 }; 3313 3314 enum class SubpassContents 3315 { 3316 eInline = VK_SUBPASS_CONTENTS_INLINE, 3317 eSecondaryCommandBuffers = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS 3318 }; 3319 3320 //=== VK_VERSION_1_1 === 3321 3322 enum class SubgroupFeatureFlagBits : VkSubgroupFeatureFlags 3323 { 3324 eBasic = VK_SUBGROUP_FEATURE_BASIC_BIT, 3325 eVote = VK_SUBGROUP_FEATURE_VOTE_BIT, 3326 eArithmetic = VK_SUBGROUP_FEATURE_ARITHMETIC_BIT, 3327 eBallot = VK_SUBGROUP_FEATURE_BALLOT_BIT, 3328 eShuffle = VK_SUBGROUP_FEATURE_SHUFFLE_BIT, 3329 eShuffleRelative = VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT, 3330 eClustered = VK_SUBGROUP_FEATURE_CLUSTERED_BIT, 3331 eQuad = VK_SUBGROUP_FEATURE_QUAD_BIT, 3332 ePartitionedNV = VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV 3333 }; 3334 3335 using SubgroupFeatureFlags = Flags<SubgroupFeatureFlagBits>; 3336 3337 3338 template <> struct FlagTraits<SubgroupFeatureFlagBits> 3339 { 3340 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3341 static VULKAN_HPP_CONST_OR_CONSTEXPR SubgroupFeatureFlags allFlags = 3342 SubgroupFeatureFlagBits::eBasic 3343 | SubgroupFeatureFlagBits::eVote 3344 | SubgroupFeatureFlagBits::eArithmetic 3345 | SubgroupFeatureFlagBits::eBallot 3346 | SubgroupFeatureFlagBits::eShuffle 3347 | SubgroupFeatureFlagBits::eShuffleRelative 3348 | SubgroupFeatureFlagBits::eClustered 3349 | SubgroupFeatureFlagBits::eQuad 3350 | SubgroupFeatureFlagBits::ePartitionedNV; 3351 }; 3352 3353 enum class PeerMemoryFeatureFlagBits : VkPeerMemoryFeatureFlags 3354 { 3355 eCopySrc = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT, 3356 eCopyDst = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT, 3357 eGenericSrc = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT, 3358 eGenericDst = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT 3359 }; 3360 using PeerMemoryFeatureFlagBitsKHR = PeerMemoryFeatureFlagBits; 3361 3362 using PeerMemoryFeatureFlags = Flags<PeerMemoryFeatureFlagBits>; 3363 using PeerMemoryFeatureFlagsKHR = PeerMemoryFeatureFlags; 3364 3365 3366 template <> struct FlagTraits<PeerMemoryFeatureFlagBits> 3367 { 3368 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3369 static VULKAN_HPP_CONST_OR_CONSTEXPR PeerMemoryFeatureFlags allFlags = 3370 PeerMemoryFeatureFlagBits::eCopySrc 3371 | PeerMemoryFeatureFlagBits::eCopyDst 3372 | PeerMemoryFeatureFlagBits::eGenericSrc 3373 | PeerMemoryFeatureFlagBits::eGenericDst; 3374 }; 3375 3376 enum class MemoryAllocateFlagBits : VkMemoryAllocateFlags 3377 { 3378 eDeviceMask = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT, 3379 eDeviceAddress = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT, 3380 eDeviceAddressCaptureReplay = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT 3381 }; 3382 using MemoryAllocateFlagBitsKHR = MemoryAllocateFlagBits; 3383 3384 using MemoryAllocateFlags = Flags<MemoryAllocateFlagBits>; 3385 using MemoryAllocateFlagsKHR = MemoryAllocateFlags; 3386 3387 3388 template <> struct FlagTraits<MemoryAllocateFlagBits> 3389 { 3390 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3391 static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryAllocateFlags allFlags = 3392 MemoryAllocateFlagBits::eDeviceMask 3393 | MemoryAllocateFlagBits::eDeviceAddress 3394 | MemoryAllocateFlagBits::eDeviceAddressCaptureReplay; 3395 }; 3396 3397 enum class CommandPoolTrimFlagBits : VkCommandPoolTrimFlags 3398 {}; 3399 3400 using CommandPoolTrimFlags = Flags<CommandPoolTrimFlagBits>; 3401 using CommandPoolTrimFlagsKHR = CommandPoolTrimFlags; 3402 3403 3404 template <> struct FlagTraits<CommandPoolTrimFlagBits> 3405 { 3406 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3407 static VULKAN_HPP_CONST_OR_CONSTEXPR CommandPoolTrimFlags allFlags = {}; 3408 }; 3409 3410 enum class PointClippingBehavior 3411 { 3412 eAllClipPlanes = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES, 3413 eUserClipPlanesOnly = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY 3414 }; 3415 using PointClippingBehaviorKHR = PointClippingBehavior; 3416 3417 enum class TessellationDomainOrigin 3418 { 3419 eUpperLeft = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT, 3420 eLowerLeft = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT 3421 }; 3422 using TessellationDomainOriginKHR = TessellationDomainOrigin; 3423 3424 enum class DeviceQueueCreateFlagBits : VkDeviceQueueCreateFlags 3425 { 3426 eProtected = VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT 3427 }; 3428 3429 using DeviceQueueCreateFlags = Flags<DeviceQueueCreateFlagBits>; 3430 3431 3432 template <> struct FlagTraits<DeviceQueueCreateFlagBits> 3433 { 3434 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3435 static VULKAN_HPP_CONST_OR_CONSTEXPR DeviceQueueCreateFlags allFlags = 3436 DeviceQueueCreateFlagBits::eProtected; 3437 }; 3438 3439 enum class SamplerYcbcrModelConversion 3440 { 3441 eRgbIdentity = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY, 3442 eYcbcrIdentity = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY, 3443 eYcbcr709 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709, 3444 eYcbcr601 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601, 3445 eYcbcr2020 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 3446 }; 3447 using SamplerYcbcrModelConversionKHR = SamplerYcbcrModelConversion; 3448 3449 enum class SamplerYcbcrRange 3450 { 3451 eItuFull = VK_SAMPLER_YCBCR_RANGE_ITU_FULL, 3452 eItuNarrow = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW 3453 }; 3454 using SamplerYcbcrRangeKHR = SamplerYcbcrRange; 3455 3456 enum class ChromaLocation 3457 { 3458 eCositedEven = VK_CHROMA_LOCATION_COSITED_EVEN, 3459 eMidpoint = VK_CHROMA_LOCATION_MIDPOINT 3460 }; 3461 using ChromaLocationKHR = ChromaLocation; 3462 3463 enum class DescriptorUpdateTemplateType 3464 { 3465 eDescriptorSet = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET, 3466 ePushDescriptorsKHR = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR 3467 }; 3468 using DescriptorUpdateTemplateTypeKHR = DescriptorUpdateTemplateType; 3469 3470 enum class DescriptorUpdateTemplateCreateFlagBits : VkDescriptorUpdateTemplateCreateFlags 3471 {}; 3472 3473 using DescriptorUpdateTemplateCreateFlags = Flags<DescriptorUpdateTemplateCreateFlagBits>; 3474 using DescriptorUpdateTemplateCreateFlagsKHR = DescriptorUpdateTemplateCreateFlags; 3475 3476 3477 template <> struct FlagTraits<DescriptorUpdateTemplateCreateFlagBits> 3478 { 3479 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3480 static VULKAN_HPP_CONST_OR_CONSTEXPR DescriptorUpdateTemplateCreateFlags allFlags = {}; 3481 }; 3482 3483 enum class ExternalMemoryHandleTypeFlagBits : VkExternalMemoryHandleTypeFlags 3484 { 3485 eOpaqueFd = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT, 3486 eOpaqueWin32 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT, 3487 eOpaqueWin32Kmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, 3488 eD3D11Texture = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT, 3489 eD3D11TextureKmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT, 3490 eD3D12Heap = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, 3491 eD3D12Resource = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT, 3492 eDmaBufEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT, 3493 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 3494 eAndroidHardwareBufferANDROID = VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID, 3495 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 3496 eHostAllocationEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT, 3497 eHostMappedForeignMemoryEXT = VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT, 3498 #if defined( VK_USE_PLATFORM_FUCHSIA ) 3499 eZirconVmoFUCHSIA = VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA, 3500 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 3501 eRdmaAddressNV = VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV 3502 }; 3503 using ExternalMemoryHandleTypeFlagBitsKHR = ExternalMemoryHandleTypeFlagBits; 3504 3505 using ExternalMemoryHandleTypeFlags = Flags<ExternalMemoryHandleTypeFlagBits>; 3506 using ExternalMemoryHandleTypeFlagsKHR = ExternalMemoryHandleTypeFlags; 3507 3508 3509 template <> struct FlagTraits<ExternalMemoryHandleTypeFlagBits> 3510 { 3511 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3512 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalMemoryHandleTypeFlags allFlags = 3513 ExternalMemoryHandleTypeFlagBits::eOpaqueFd 3514 | ExternalMemoryHandleTypeFlagBits::eOpaqueWin32 3515 | ExternalMemoryHandleTypeFlagBits::eOpaqueWin32Kmt 3516 | ExternalMemoryHandleTypeFlagBits::eD3D11Texture 3517 | ExternalMemoryHandleTypeFlagBits::eD3D11TextureKmt 3518 | ExternalMemoryHandleTypeFlagBits::eD3D12Heap 3519 | ExternalMemoryHandleTypeFlagBits::eD3D12Resource 3520 | ExternalMemoryHandleTypeFlagBits::eDmaBufEXT 3521 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 3522 | ExternalMemoryHandleTypeFlagBits::eAndroidHardwareBufferANDROID 3523 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 3524 | ExternalMemoryHandleTypeFlagBits::eHostAllocationEXT 3525 | ExternalMemoryHandleTypeFlagBits::eHostMappedForeignMemoryEXT 3526 #if defined( VK_USE_PLATFORM_FUCHSIA ) 3527 | ExternalMemoryHandleTypeFlagBits::eZirconVmoFUCHSIA 3528 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 3529 | ExternalMemoryHandleTypeFlagBits::eRdmaAddressNV; 3530 }; 3531 3532 enum class ExternalMemoryFeatureFlagBits : VkExternalMemoryFeatureFlags 3533 { 3534 eDedicatedOnly = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT, 3535 eExportable = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT, 3536 eImportable = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT 3537 }; 3538 using ExternalMemoryFeatureFlagBitsKHR = ExternalMemoryFeatureFlagBits; 3539 3540 using ExternalMemoryFeatureFlags = Flags<ExternalMemoryFeatureFlagBits>; 3541 using ExternalMemoryFeatureFlagsKHR = ExternalMemoryFeatureFlags; 3542 3543 3544 template <> struct FlagTraits<ExternalMemoryFeatureFlagBits> 3545 { 3546 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3547 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalMemoryFeatureFlags allFlags = 3548 ExternalMemoryFeatureFlagBits::eDedicatedOnly 3549 | ExternalMemoryFeatureFlagBits::eExportable 3550 | ExternalMemoryFeatureFlagBits::eImportable; 3551 }; 3552 3553 enum class ExternalFenceHandleTypeFlagBits : VkExternalFenceHandleTypeFlags 3554 { 3555 eOpaqueFd = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT, 3556 eOpaqueWin32 = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT, 3557 eOpaqueWin32Kmt = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, 3558 eSyncFd = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT 3559 }; 3560 using ExternalFenceHandleTypeFlagBitsKHR = ExternalFenceHandleTypeFlagBits; 3561 3562 using ExternalFenceHandleTypeFlags = Flags<ExternalFenceHandleTypeFlagBits>; 3563 using ExternalFenceHandleTypeFlagsKHR = ExternalFenceHandleTypeFlags; 3564 3565 3566 template <> struct FlagTraits<ExternalFenceHandleTypeFlagBits> 3567 { 3568 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3569 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalFenceHandleTypeFlags allFlags = 3570 ExternalFenceHandleTypeFlagBits::eOpaqueFd 3571 | ExternalFenceHandleTypeFlagBits::eOpaqueWin32 3572 | ExternalFenceHandleTypeFlagBits::eOpaqueWin32Kmt 3573 | ExternalFenceHandleTypeFlagBits::eSyncFd; 3574 }; 3575 3576 enum class ExternalFenceFeatureFlagBits : VkExternalFenceFeatureFlags 3577 { 3578 eExportable = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT, 3579 eImportable = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT 3580 }; 3581 using ExternalFenceFeatureFlagBitsKHR = ExternalFenceFeatureFlagBits; 3582 3583 using ExternalFenceFeatureFlags = Flags<ExternalFenceFeatureFlagBits>; 3584 using ExternalFenceFeatureFlagsKHR = ExternalFenceFeatureFlags; 3585 3586 3587 template <> struct FlagTraits<ExternalFenceFeatureFlagBits> 3588 { 3589 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3590 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalFenceFeatureFlags allFlags = 3591 ExternalFenceFeatureFlagBits::eExportable 3592 | ExternalFenceFeatureFlagBits::eImportable; 3593 }; 3594 3595 enum class FenceImportFlagBits : VkFenceImportFlags 3596 { 3597 eTemporary = VK_FENCE_IMPORT_TEMPORARY_BIT 3598 }; 3599 using FenceImportFlagBitsKHR = FenceImportFlagBits; 3600 3601 using FenceImportFlags = Flags<FenceImportFlagBits>; 3602 using FenceImportFlagsKHR = FenceImportFlags; 3603 3604 3605 template <> struct FlagTraits<FenceImportFlagBits> 3606 { 3607 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3608 static VULKAN_HPP_CONST_OR_CONSTEXPR FenceImportFlags allFlags = 3609 FenceImportFlagBits::eTemporary; 3610 }; 3611 3612 enum class SemaphoreImportFlagBits : VkSemaphoreImportFlags 3613 { 3614 eTemporary = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT 3615 }; 3616 using SemaphoreImportFlagBitsKHR = SemaphoreImportFlagBits; 3617 3618 using SemaphoreImportFlags = Flags<SemaphoreImportFlagBits>; 3619 using SemaphoreImportFlagsKHR = SemaphoreImportFlags; 3620 3621 3622 template <> struct FlagTraits<SemaphoreImportFlagBits> 3623 { 3624 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3625 static VULKAN_HPP_CONST_OR_CONSTEXPR SemaphoreImportFlags allFlags = 3626 SemaphoreImportFlagBits::eTemporary; 3627 }; 3628 3629 enum class ExternalSemaphoreHandleTypeFlagBits : VkExternalSemaphoreHandleTypeFlags 3630 { 3631 eOpaqueFd = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT, 3632 eOpaqueWin32 = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT, 3633 eOpaqueWin32Kmt = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT, 3634 eD3D12Fence = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT, 3635 eSyncFd = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT, 3636 #if defined( VK_USE_PLATFORM_FUCHSIA ) 3637 eZirconEventFUCHSIA = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA, 3638 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 3639 eD3D11Fence = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT 3640 }; 3641 using ExternalSemaphoreHandleTypeFlagBitsKHR = ExternalSemaphoreHandleTypeFlagBits; 3642 3643 using ExternalSemaphoreHandleTypeFlags = Flags<ExternalSemaphoreHandleTypeFlagBits>; 3644 using ExternalSemaphoreHandleTypeFlagsKHR = ExternalSemaphoreHandleTypeFlags; 3645 3646 3647 template <> struct FlagTraits<ExternalSemaphoreHandleTypeFlagBits> 3648 { 3649 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3650 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalSemaphoreHandleTypeFlags allFlags = 3651 ExternalSemaphoreHandleTypeFlagBits::eOpaqueFd 3652 | ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32 3653 | ExternalSemaphoreHandleTypeFlagBits::eOpaqueWin32Kmt 3654 | ExternalSemaphoreHandleTypeFlagBits::eD3D12Fence 3655 | ExternalSemaphoreHandleTypeFlagBits::eSyncFd 3656 #if defined( VK_USE_PLATFORM_FUCHSIA ) 3657 | ExternalSemaphoreHandleTypeFlagBits::eZirconEventFUCHSIA 3658 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 3659 ; 3660 }; 3661 3662 enum class ExternalSemaphoreFeatureFlagBits : VkExternalSemaphoreFeatureFlags 3663 { 3664 eExportable = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT, 3665 eImportable = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT 3666 }; 3667 using ExternalSemaphoreFeatureFlagBitsKHR = ExternalSemaphoreFeatureFlagBits; 3668 3669 using ExternalSemaphoreFeatureFlags = Flags<ExternalSemaphoreFeatureFlagBits>; 3670 using ExternalSemaphoreFeatureFlagsKHR = ExternalSemaphoreFeatureFlags; 3671 3672 3673 template <> struct FlagTraits<ExternalSemaphoreFeatureFlagBits> 3674 { 3675 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3676 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalSemaphoreFeatureFlags allFlags = 3677 ExternalSemaphoreFeatureFlagBits::eExportable 3678 | ExternalSemaphoreFeatureFlagBits::eImportable; 3679 }; 3680 3681 //=== VK_VERSION_1_2 === 3682 3683 enum class DriverId 3684 { 3685 eAmdProprietary = VK_DRIVER_ID_AMD_PROPRIETARY, 3686 eAmdOpenSource = VK_DRIVER_ID_AMD_OPEN_SOURCE, 3687 eMesaRadv = VK_DRIVER_ID_MESA_RADV, 3688 eNvidiaProprietary = VK_DRIVER_ID_NVIDIA_PROPRIETARY, 3689 eIntelProprietaryWindows = VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS, 3690 eIntelOpenSourceMESA = VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA, 3691 eImaginationProprietary = VK_DRIVER_ID_IMAGINATION_PROPRIETARY, 3692 eQualcommProprietary = VK_DRIVER_ID_QUALCOMM_PROPRIETARY, 3693 eArmProprietary = VK_DRIVER_ID_ARM_PROPRIETARY, 3694 eGoogleSwiftshader = VK_DRIVER_ID_GOOGLE_SWIFTSHADER, 3695 eGgpProprietary = VK_DRIVER_ID_GGP_PROPRIETARY, 3696 eBroadcomProprietary = VK_DRIVER_ID_BROADCOM_PROPRIETARY, 3697 eMesaLlvmpipe = VK_DRIVER_ID_MESA_LLVMPIPE, 3698 eMoltenvk = VK_DRIVER_ID_MOLTENVK, 3699 eCoreaviProprietary = VK_DRIVER_ID_COREAVI_PROPRIETARY, 3700 eJuiceProprietary = VK_DRIVER_ID_JUICE_PROPRIETARY, 3701 eVerisiliconProprietary = VK_DRIVER_ID_VERISILICON_PROPRIETARY, 3702 eMesaTurnip = VK_DRIVER_ID_MESA_TURNIP, 3703 eMesaV3Dv = VK_DRIVER_ID_MESA_V3DV, 3704 eMesaPanvk = VK_DRIVER_ID_MESA_PANVK, 3705 eSamsungProprietary = VK_DRIVER_ID_SAMSUNG_PROPRIETARY, 3706 eMesaVenus = VK_DRIVER_ID_MESA_VENUS, 3707 eMesaDozen = VK_DRIVER_ID_MESA_DOZEN, 3708 eMesaNvk = VK_DRIVER_ID_MESA_NVK, 3709 eImaginationOpenSourceMESA = VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA 3710 }; 3711 using DriverIdKHR = DriverId; 3712 3713 enum class ShaderFloatControlsIndependence 3714 { 3715 e32BitOnly = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY, 3716 eAll = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL, 3717 eNone = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE 3718 }; 3719 using ShaderFloatControlsIndependenceKHR = ShaderFloatControlsIndependence; 3720 3721 enum class DescriptorBindingFlagBits : VkDescriptorBindingFlags 3722 { 3723 eUpdateAfterBind = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT, 3724 eUpdateUnusedWhilePending = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT, 3725 ePartiallyBound = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT, 3726 eVariableDescriptorCount = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT 3727 }; 3728 using DescriptorBindingFlagBitsEXT = DescriptorBindingFlagBits; 3729 3730 using DescriptorBindingFlags = Flags<DescriptorBindingFlagBits>; 3731 using DescriptorBindingFlagsEXT = DescriptorBindingFlags; 3732 3733 3734 template <> struct FlagTraits<DescriptorBindingFlagBits> 3735 { 3736 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3737 static VULKAN_HPP_CONST_OR_CONSTEXPR DescriptorBindingFlags allFlags = 3738 DescriptorBindingFlagBits::eUpdateAfterBind 3739 | DescriptorBindingFlagBits::eUpdateUnusedWhilePending 3740 | DescriptorBindingFlagBits::ePartiallyBound 3741 | DescriptorBindingFlagBits::eVariableDescriptorCount; 3742 }; 3743 3744 enum class ResolveModeFlagBits : VkResolveModeFlags 3745 { 3746 eNone = VK_RESOLVE_MODE_NONE, 3747 eSampleZero = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT, 3748 eAverage = VK_RESOLVE_MODE_AVERAGE_BIT, 3749 eMin = VK_RESOLVE_MODE_MIN_BIT, 3750 eMax = VK_RESOLVE_MODE_MAX_BIT 3751 }; 3752 using ResolveModeFlagBitsKHR = ResolveModeFlagBits; 3753 3754 using ResolveModeFlags = Flags<ResolveModeFlagBits>; 3755 using ResolveModeFlagsKHR = ResolveModeFlags; 3756 3757 3758 template <> struct FlagTraits<ResolveModeFlagBits> 3759 { 3760 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3761 static VULKAN_HPP_CONST_OR_CONSTEXPR ResolveModeFlags allFlags = 3762 ResolveModeFlagBits::eNone 3763 | ResolveModeFlagBits::eSampleZero 3764 | ResolveModeFlagBits::eAverage 3765 | ResolveModeFlagBits::eMin 3766 | ResolveModeFlagBits::eMax; 3767 }; 3768 3769 enum class SamplerReductionMode 3770 { 3771 eWeightedAverage = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE, 3772 eMin = VK_SAMPLER_REDUCTION_MODE_MIN, 3773 eMax = VK_SAMPLER_REDUCTION_MODE_MAX 3774 }; 3775 using SamplerReductionModeEXT = SamplerReductionMode; 3776 3777 enum class SemaphoreType 3778 { 3779 eBinary = VK_SEMAPHORE_TYPE_BINARY, 3780 eTimeline = VK_SEMAPHORE_TYPE_TIMELINE 3781 }; 3782 using SemaphoreTypeKHR = SemaphoreType; 3783 3784 enum class SemaphoreWaitFlagBits : VkSemaphoreWaitFlags 3785 { 3786 eAny = VK_SEMAPHORE_WAIT_ANY_BIT 3787 }; 3788 using SemaphoreWaitFlagBitsKHR = SemaphoreWaitFlagBits; 3789 3790 using SemaphoreWaitFlags = Flags<SemaphoreWaitFlagBits>; 3791 using SemaphoreWaitFlagsKHR = SemaphoreWaitFlags; 3792 3793 3794 template <> struct FlagTraits<SemaphoreWaitFlagBits> 3795 { 3796 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3797 static VULKAN_HPP_CONST_OR_CONSTEXPR SemaphoreWaitFlags allFlags = 3798 SemaphoreWaitFlagBits::eAny; 3799 }; 3800 3801 //=== VK_VERSION_1_3 === 3802 3803 enum class PipelineCreationFeedbackFlagBits : VkPipelineCreationFeedbackFlags 3804 { 3805 eValid = VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT, 3806 eApplicationPipelineCacheHit = VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT, 3807 eBasePipelineAcceleration = VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT 3808 }; 3809 using PipelineCreationFeedbackFlagBitsEXT = PipelineCreationFeedbackFlagBits; 3810 3811 using PipelineCreationFeedbackFlags = Flags<PipelineCreationFeedbackFlagBits>; 3812 using PipelineCreationFeedbackFlagsEXT = PipelineCreationFeedbackFlags; 3813 3814 3815 template <> struct FlagTraits<PipelineCreationFeedbackFlagBits> 3816 { 3817 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3818 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCreationFeedbackFlags allFlags = 3819 PipelineCreationFeedbackFlagBits::eValid 3820 | PipelineCreationFeedbackFlagBits::eApplicationPipelineCacheHit 3821 | PipelineCreationFeedbackFlagBits::eBasePipelineAcceleration; 3822 }; 3823 3824 enum class ToolPurposeFlagBits : VkToolPurposeFlags 3825 { 3826 eValidation = VK_TOOL_PURPOSE_VALIDATION_BIT, 3827 eProfiling = VK_TOOL_PURPOSE_PROFILING_BIT, 3828 eTracing = VK_TOOL_PURPOSE_TRACING_BIT, 3829 eAdditionalFeatures = VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT, 3830 eModifyingFeatures = VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT, 3831 eDebugReportingEXT = VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT, 3832 eDebugMarkersEXT = VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT 3833 }; 3834 using ToolPurposeFlagBitsEXT = ToolPurposeFlagBits; 3835 3836 using ToolPurposeFlags = Flags<ToolPurposeFlagBits>; 3837 using ToolPurposeFlagsEXT = ToolPurposeFlags; 3838 3839 3840 template <> struct FlagTraits<ToolPurposeFlagBits> 3841 { 3842 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3843 static VULKAN_HPP_CONST_OR_CONSTEXPR ToolPurposeFlags allFlags = 3844 ToolPurposeFlagBits::eValidation 3845 | ToolPurposeFlagBits::eProfiling 3846 | ToolPurposeFlagBits::eTracing 3847 | ToolPurposeFlagBits::eAdditionalFeatures 3848 | ToolPurposeFlagBits::eModifyingFeatures 3849 | ToolPurposeFlagBits::eDebugReportingEXT 3850 | ToolPurposeFlagBits::eDebugMarkersEXT; 3851 }; 3852 3853 enum class PrivateDataSlotCreateFlagBits : VkPrivateDataSlotCreateFlags 3854 {}; 3855 using PrivateDataSlotCreateFlagBitsEXT = PrivateDataSlotCreateFlagBits; 3856 3857 using PrivateDataSlotCreateFlags = Flags<PrivateDataSlotCreateFlagBits>; 3858 using PrivateDataSlotCreateFlagsEXT = PrivateDataSlotCreateFlags; 3859 3860 3861 template <> struct FlagTraits<PrivateDataSlotCreateFlagBits> 3862 { 3863 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3864 static VULKAN_HPP_CONST_OR_CONSTEXPR PrivateDataSlotCreateFlags allFlags = {}; 3865 }; 3866 3867 enum class PipelineStageFlagBits2 : VkPipelineStageFlags2 3868 { 3869 eNone = VK_PIPELINE_STAGE_2_NONE, 3870 eTopOfPipe = VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT, 3871 eDrawIndirect = VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT, 3872 eVertexInput = VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT, 3873 eVertexShader = VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT, 3874 eTessellationControlShader = VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT, 3875 eTessellationEvaluationShader = VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT, 3876 eGeometryShader = VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT, 3877 eFragmentShader = VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT, 3878 eEarlyFragmentTests = VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT, 3879 eLateFragmentTests = VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT, 3880 eColorAttachmentOutput = VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT, 3881 eComputeShader = VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT, 3882 eAllTransfer = VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT, 3883 eBottomOfPipe = VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT, 3884 eHost = VK_PIPELINE_STAGE_2_HOST_BIT, 3885 eAllGraphics = VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT, 3886 eAllCommands = VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT, 3887 eCopy = VK_PIPELINE_STAGE_2_COPY_BIT, 3888 eResolve = VK_PIPELINE_STAGE_2_RESOLVE_BIT, 3889 eBlit = VK_PIPELINE_STAGE_2_BLIT_BIT, 3890 eClear = VK_PIPELINE_STAGE_2_CLEAR_BIT, 3891 eIndexInput = VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT, 3892 eVertexAttributeInput = VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT, 3893 ePreRasterizationShaders = VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT, 3894 eVideoDecodeKHR = VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, 3895 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3896 eVideoEncodeKHR = VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, 3897 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3898 eTransformFeedbackEXT = VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT, 3899 eConditionalRenderingEXT = VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT, 3900 eCommandPreprocessNV = VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV, 3901 eFragmentShadingRateAttachmentKHR = VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 3902 eAccelerationStructureBuildKHR = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR, 3903 eRayTracingShaderKHR = VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR, 3904 eFragmentDensityProcessEXT = VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT, 3905 eTaskShaderEXT = VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT, 3906 eMeshShaderEXT = VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT, 3907 eSubpassShadingHUAWEI = VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI, 3908 eInvocationMaskHUAWEI = VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI, 3909 eAccelerationStructureCopyKHR = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR, 3910 eMicromapBuildEXT = VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT, 3911 eClusterCullingShaderHUAWEI = VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI, 3912 eOpticalFlowNV = VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV, 3913 eAccelerationStructureBuildNV = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV, 3914 eMeshShaderNV = VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV, 3915 eRayTracingShaderNV = VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV, 3916 eShadingRateImageNV = VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV, 3917 eTaskShaderNV = VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV, 3918 eTransfer = VK_PIPELINE_STAGE_2_TRANSFER_BIT 3919 }; 3920 using PipelineStageFlagBits2KHR = PipelineStageFlagBits2; 3921 3922 using PipelineStageFlags2 = Flags<PipelineStageFlagBits2>; 3923 using PipelineStageFlags2KHR = PipelineStageFlags2; 3924 3925 3926 template <> struct FlagTraits<PipelineStageFlagBits2> 3927 { 3928 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 3929 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineStageFlags2 allFlags = 3930 PipelineStageFlagBits2::eNone 3931 | PipelineStageFlagBits2::eTopOfPipe 3932 | PipelineStageFlagBits2::eDrawIndirect 3933 | PipelineStageFlagBits2::eVertexInput 3934 | PipelineStageFlagBits2::eVertexShader 3935 | PipelineStageFlagBits2::eTessellationControlShader 3936 | PipelineStageFlagBits2::eTessellationEvaluationShader 3937 | PipelineStageFlagBits2::eGeometryShader 3938 | PipelineStageFlagBits2::eFragmentShader 3939 | PipelineStageFlagBits2::eEarlyFragmentTests 3940 | PipelineStageFlagBits2::eLateFragmentTests 3941 | PipelineStageFlagBits2::eColorAttachmentOutput 3942 | PipelineStageFlagBits2::eComputeShader 3943 | PipelineStageFlagBits2::eAllTransfer 3944 | PipelineStageFlagBits2::eBottomOfPipe 3945 | PipelineStageFlagBits2::eHost 3946 | PipelineStageFlagBits2::eAllGraphics 3947 | PipelineStageFlagBits2::eAllCommands 3948 | PipelineStageFlagBits2::eCopy 3949 | PipelineStageFlagBits2::eResolve 3950 | PipelineStageFlagBits2::eBlit 3951 | PipelineStageFlagBits2::eClear 3952 | PipelineStageFlagBits2::eIndexInput 3953 | PipelineStageFlagBits2::eVertexAttributeInput 3954 | PipelineStageFlagBits2::ePreRasterizationShaders 3955 | PipelineStageFlagBits2::eVideoDecodeKHR 3956 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3957 | PipelineStageFlagBits2::eVideoEncodeKHR 3958 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3959 | PipelineStageFlagBits2::eTransformFeedbackEXT 3960 | PipelineStageFlagBits2::eConditionalRenderingEXT 3961 | PipelineStageFlagBits2::eCommandPreprocessNV 3962 | PipelineStageFlagBits2::eFragmentShadingRateAttachmentKHR 3963 | PipelineStageFlagBits2::eAccelerationStructureBuildKHR 3964 | PipelineStageFlagBits2::eRayTracingShaderKHR 3965 | PipelineStageFlagBits2::eFragmentDensityProcessEXT 3966 | PipelineStageFlagBits2::eTaskShaderEXT 3967 | PipelineStageFlagBits2::eMeshShaderEXT 3968 | PipelineStageFlagBits2::eSubpassShadingHUAWEI 3969 | PipelineStageFlagBits2::eInvocationMaskHUAWEI 3970 | PipelineStageFlagBits2::eAccelerationStructureCopyKHR 3971 | PipelineStageFlagBits2::eMicromapBuildEXT 3972 | PipelineStageFlagBits2::eClusterCullingShaderHUAWEI 3973 | PipelineStageFlagBits2::eOpticalFlowNV; 3974 }; 3975 3976 enum class AccessFlagBits2 : VkAccessFlags2 3977 { 3978 eNone = VK_ACCESS_2_NONE, 3979 eIndirectCommandRead = VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT, 3980 eIndexRead = VK_ACCESS_2_INDEX_READ_BIT, 3981 eVertexAttributeRead = VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT, 3982 eUniformRead = VK_ACCESS_2_UNIFORM_READ_BIT, 3983 eInputAttachmentRead = VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT, 3984 eShaderRead = VK_ACCESS_2_SHADER_READ_BIT, 3985 eShaderWrite = VK_ACCESS_2_SHADER_WRITE_BIT, 3986 eColorAttachmentRead = VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT, 3987 eColorAttachmentWrite = VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT, 3988 eDepthStencilAttachmentRead = VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT, 3989 eDepthStencilAttachmentWrite = VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT, 3990 eTransferRead = VK_ACCESS_2_TRANSFER_READ_BIT, 3991 eTransferWrite = VK_ACCESS_2_TRANSFER_WRITE_BIT, 3992 eHostRead = VK_ACCESS_2_HOST_READ_BIT, 3993 eHostWrite = VK_ACCESS_2_HOST_WRITE_BIT, 3994 eMemoryRead = VK_ACCESS_2_MEMORY_READ_BIT, 3995 eMemoryWrite = VK_ACCESS_2_MEMORY_WRITE_BIT, 3996 eShaderSampledRead = VK_ACCESS_2_SHADER_SAMPLED_READ_BIT, 3997 eShaderStorageRead = VK_ACCESS_2_SHADER_STORAGE_READ_BIT, 3998 eShaderStorageWrite = VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT, 3999 eVideoDecodeReadKHR = VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR, 4000 eVideoDecodeWriteKHR = VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR, 4001 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4002 eVideoEncodeReadKHR = VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR, 4003 eVideoEncodeWriteKHR = VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR, 4004 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4005 eTransformFeedbackWriteEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT, 4006 eTransformFeedbackCounterReadEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT, 4007 eTransformFeedbackCounterWriteEXT = VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT, 4008 eConditionalRenderingReadEXT = VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT, 4009 eCommandPreprocessReadNV = VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV, 4010 eCommandPreprocessWriteNV = VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV, 4011 eFragmentShadingRateAttachmentReadKHR = VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR, 4012 eAccelerationStructureReadKHR = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR, 4013 eAccelerationStructureWriteKHR = VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR, 4014 eFragmentDensityMapReadEXT = VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT, 4015 eColorAttachmentReadNoncoherentEXT = VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT, 4016 eDescriptorBufferReadEXT = VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT, 4017 eInvocationMaskReadHUAWEI = VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI, 4018 eShaderBindingTableReadKHR = VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR, 4019 eMicromapReadEXT = VK_ACCESS_2_MICROMAP_READ_BIT_EXT, 4020 eMicromapWriteEXT = VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT, 4021 eOpticalFlowReadNV = VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV, 4022 eOpticalFlowWriteNV = VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV, 4023 eAccelerationStructureReadNV = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV, 4024 eAccelerationStructureWriteNV = VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV, 4025 eShadingRateImageReadNV = VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV 4026 }; 4027 using AccessFlagBits2KHR = AccessFlagBits2; 4028 4029 using AccessFlags2 = Flags<AccessFlagBits2>; 4030 using AccessFlags2KHR = AccessFlags2; 4031 4032 4033 template <> struct FlagTraits<AccessFlagBits2> 4034 { 4035 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4036 static VULKAN_HPP_CONST_OR_CONSTEXPR AccessFlags2 allFlags = 4037 AccessFlagBits2::eNone 4038 | AccessFlagBits2::eIndirectCommandRead 4039 | AccessFlagBits2::eIndexRead 4040 | AccessFlagBits2::eVertexAttributeRead 4041 | AccessFlagBits2::eUniformRead 4042 | AccessFlagBits2::eInputAttachmentRead 4043 | AccessFlagBits2::eShaderRead 4044 | AccessFlagBits2::eShaderWrite 4045 | AccessFlagBits2::eColorAttachmentRead 4046 | AccessFlagBits2::eColorAttachmentWrite 4047 | AccessFlagBits2::eDepthStencilAttachmentRead 4048 | AccessFlagBits2::eDepthStencilAttachmentWrite 4049 | AccessFlagBits2::eTransferRead 4050 | AccessFlagBits2::eTransferWrite 4051 | AccessFlagBits2::eHostRead 4052 | AccessFlagBits2::eHostWrite 4053 | AccessFlagBits2::eMemoryRead 4054 | AccessFlagBits2::eMemoryWrite 4055 | AccessFlagBits2::eShaderSampledRead 4056 | AccessFlagBits2::eShaderStorageRead 4057 | AccessFlagBits2::eShaderStorageWrite 4058 | AccessFlagBits2::eVideoDecodeReadKHR 4059 | AccessFlagBits2::eVideoDecodeWriteKHR 4060 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4061 | AccessFlagBits2::eVideoEncodeReadKHR 4062 | AccessFlagBits2::eVideoEncodeWriteKHR 4063 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4064 | AccessFlagBits2::eTransformFeedbackWriteEXT 4065 | AccessFlagBits2::eTransformFeedbackCounterReadEXT 4066 | AccessFlagBits2::eTransformFeedbackCounterWriteEXT 4067 | AccessFlagBits2::eConditionalRenderingReadEXT 4068 | AccessFlagBits2::eCommandPreprocessReadNV 4069 | AccessFlagBits2::eCommandPreprocessWriteNV 4070 | AccessFlagBits2::eFragmentShadingRateAttachmentReadKHR 4071 | AccessFlagBits2::eAccelerationStructureReadKHR 4072 | AccessFlagBits2::eAccelerationStructureWriteKHR 4073 | AccessFlagBits2::eFragmentDensityMapReadEXT 4074 | AccessFlagBits2::eColorAttachmentReadNoncoherentEXT 4075 | AccessFlagBits2::eDescriptorBufferReadEXT 4076 | AccessFlagBits2::eInvocationMaskReadHUAWEI 4077 | AccessFlagBits2::eShaderBindingTableReadKHR 4078 | AccessFlagBits2::eMicromapReadEXT 4079 | AccessFlagBits2::eMicromapWriteEXT 4080 | AccessFlagBits2::eOpticalFlowReadNV 4081 | AccessFlagBits2::eOpticalFlowWriteNV; 4082 }; 4083 4084 enum class SubmitFlagBits : VkSubmitFlags 4085 { 4086 eProtected = VK_SUBMIT_PROTECTED_BIT 4087 }; 4088 using SubmitFlagBitsKHR = SubmitFlagBits; 4089 4090 using SubmitFlags = Flags<SubmitFlagBits>; 4091 using SubmitFlagsKHR = SubmitFlags; 4092 4093 4094 template <> struct FlagTraits<SubmitFlagBits> 4095 { 4096 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4097 static VULKAN_HPP_CONST_OR_CONSTEXPR SubmitFlags allFlags = 4098 SubmitFlagBits::eProtected; 4099 }; 4100 4101 enum class RenderingFlagBits : VkRenderingFlags 4102 { 4103 eContentsSecondaryCommandBuffers = VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT, 4104 eSuspending = VK_RENDERING_SUSPENDING_BIT, 4105 eResuming = VK_RENDERING_RESUMING_BIT, 4106 eEnableLegacyDitheringEXT = VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT 4107 }; 4108 using RenderingFlagBitsKHR = RenderingFlagBits; 4109 4110 using RenderingFlags = Flags<RenderingFlagBits>; 4111 using RenderingFlagsKHR = RenderingFlags; 4112 4113 4114 template <> struct FlagTraits<RenderingFlagBits> 4115 { 4116 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4117 static VULKAN_HPP_CONST_OR_CONSTEXPR RenderingFlags allFlags = 4118 RenderingFlagBits::eContentsSecondaryCommandBuffers 4119 | RenderingFlagBits::eSuspending 4120 | RenderingFlagBits::eResuming 4121 | RenderingFlagBits::eEnableLegacyDitheringEXT; 4122 }; 4123 4124 enum class FormatFeatureFlagBits2 : VkFormatFeatureFlags2 4125 { 4126 eSampledImage = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT, 4127 eStorageImage = VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT, 4128 eStorageImageAtomic = VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT, 4129 eUniformTexelBuffer = VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT, 4130 eStorageTexelBuffer = VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT, 4131 eStorageTexelBufferAtomic = VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT, 4132 eVertexBuffer = VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT, 4133 eColorAttachment = VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT, 4134 eColorAttachmentBlend = VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT, 4135 eDepthStencilAttachment = VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT, 4136 eBlitSrc = VK_FORMAT_FEATURE_2_BLIT_SRC_BIT, 4137 eBlitDst = VK_FORMAT_FEATURE_2_BLIT_DST_BIT, 4138 eSampledImageFilterLinear = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT, 4139 eSampledImageFilterCubic = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT, 4140 eTransferSrc = VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT, 4141 eTransferDst = VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT, 4142 eSampledImageFilterMinmax = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT, 4143 eMidpointChromaSamples = VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT, 4144 eSampledImageYcbcrConversionLinearFilter = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT, 4145 eSampledImageYcbcrConversionSeparateReconstructionFilter = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT, 4146 eSampledImageYcbcrConversionChromaReconstructionExplicit = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT, 4147 eSampledImageYcbcrConversionChromaReconstructionExplicitForceable = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT, 4148 eDisjoint = VK_FORMAT_FEATURE_2_DISJOINT_BIT, 4149 eCositedChromaSamples = VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT, 4150 eStorageReadWithoutFormat = VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT, 4151 eStorageWriteWithoutFormat = VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT, 4152 eSampledImageDepthComparison = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT, 4153 eVideoDecodeOutputKHR = VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR, 4154 eVideoDecodeDpbKHR = VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR, 4155 eAccelerationStructureVertexBufferKHR = VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR, 4156 eFragmentDensityMapEXT = VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT, 4157 eFragmentShadingRateAttachmentKHR = VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, 4158 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4159 eVideoEncodeInputKHR = VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR, 4160 eVideoEncodeDpbKHR = VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR, 4161 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4162 eLinearColorAttachmentNV = VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV, 4163 eWeightImageQCOM = VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM, 4164 eWeightSampledImageQCOM = VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM, 4165 eBlockMatchingQCOM = VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM, 4166 eBoxFilterSampledQCOM = VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM, 4167 eOpticalFlowImageNV = VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV, 4168 eOpticalFlowVectorNV = VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV, 4169 eOpticalFlowCostNV = VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV, 4170 eSampledImageFilterCubicEXT = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT 4171 }; 4172 using FormatFeatureFlagBits2KHR = FormatFeatureFlagBits2; 4173 4174 using FormatFeatureFlags2 = Flags<FormatFeatureFlagBits2>; 4175 using FormatFeatureFlags2KHR = FormatFeatureFlags2; 4176 4177 4178 template <> struct FlagTraits<FormatFeatureFlagBits2> 4179 { 4180 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4181 static VULKAN_HPP_CONST_OR_CONSTEXPR FormatFeatureFlags2 allFlags = 4182 FormatFeatureFlagBits2::eSampledImage 4183 | FormatFeatureFlagBits2::eStorageImage 4184 | FormatFeatureFlagBits2::eStorageImageAtomic 4185 | FormatFeatureFlagBits2::eUniformTexelBuffer 4186 | FormatFeatureFlagBits2::eStorageTexelBuffer 4187 | FormatFeatureFlagBits2::eStorageTexelBufferAtomic 4188 | FormatFeatureFlagBits2::eVertexBuffer 4189 | FormatFeatureFlagBits2::eColorAttachment 4190 | FormatFeatureFlagBits2::eColorAttachmentBlend 4191 | FormatFeatureFlagBits2::eDepthStencilAttachment 4192 | FormatFeatureFlagBits2::eBlitSrc 4193 | FormatFeatureFlagBits2::eBlitDst 4194 | FormatFeatureFlagBits2::eSampledImageFilterLinear 4195 | FormatFeatureFlagBits2::eSampledImageFilterCubic 4196 | FormatFeatureFlagBits2::eTransferSrc 4197 | FormatFeatureFlagBits2::eTransferDst 4198 | FormatFeatureFlagBits2::eSampledImageFilterMinmax 4199 | FormatFeatureFlagBits2::eMidpointChromaSamples 4200 | FormatFeatureFlagBits2::eSampledImageYcbcrConversionLinearFilter 4201 | FormatFeatureFlagBits2::eSampledImageYcbcrConversionSeparateReconstructionFilter 4202 | FormatFeatureFlagBits2::eSampledImageYcbcrConversionChromaReconstructionExplicit 4203 | FormatFeatureFlagBits2::eSampledImageYcbcrConversionChromaReconstructionExplicitForceable 4204 | FormatFeatureFlagBits2::eDisjoint 4205 | FormatFeatureFlagBits2::eCositedChromaSamples 4206 | FormatFeatureFlagBits2::eStorageReadWithoutFormat 4207 | FormatFeatureFlagBits2::eStorageWriteWithoutFormat 4208 | FormatFeatureFlagBits2::eSampledImageDepthComparison 4209 | FormatFeatureFlagBits2::eVideoDecodeOutputKHR 4210 | FormatFeatureFlagBits2::eVideoDecodeDpbKHR 4211 | FormatFeatureFlagBits2::eAccelerationStructureVertexBufferKHR 4212 | FormatFeatureFlagBits2::eFragmentDensityMapEXT 4213 | FormatFeatureFlagBits2::eFragmentShadingRateAttachmentKHR 4214 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4215 | FormatFeatureFlagBits2::eVideoEncodeInputKHR 4216 | FormatFeatureFlagBits2::eVideoEncodeDpbKHR 4217 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4218 | FormatFeatureFlagBits2::eLinearColorAttachmentNV 4219 | FormatFeatureFlagBits2::eWeightImageQCOM 4220 | FormatFeatureFlagBits2::eWeightSampledImageQCOM 4221 | FormatFeatureFlagBits2::eBlockMatchingQCOM 4222 | FormatFeatureFlagBits2::eBoxFilterSampledQCOM 4223 | FormatFeatureFlagBits2::eOpticalFlowImageNV 4224 | FormatFeatureFlagBits2::eOpticalFlowVectorNV 4225 | FormatFeatureFlagBits2::eOpticalFlowCostNV; 4226 }; 4227 4228 //=== VK_KHR_surface === 4229 4230 enum class SurfaceTransformFlagBitsKHR : VkSurfaceTransformFlagsKHR 4231 { 4232 eIdentity = VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR, 4233 eRotate90 = VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR, 4234 eRotate180 = VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR, 4235 eRotate270 = VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR, 4236 eHorizontalMirror = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR, 4237 eHorizontalMirrorRotate90 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR, 4238 eHorizontalMirrorRotate180 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR, 4239 eHorizontalMirrorRotate270 = VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR, 4240 eInherit = VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR 4241 }; 4242 4243 using SurfaceTransformFlagsKHR = Flags<SurfaceTransformFlagBitsKHR>; 4244 4245 4246 template <> struct FlagTraits<SurfaceTransformFlagBitsKHR> 4247 { 4248 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4249 static VULKAN_HPP_CONST_OR_CONSTEXPR SurfaceTransformFlagsKHR allFlags = 4250 SurfaceTransformFlagBitsKHR::eIdentity 4251 | SurfaceTransformFlagBitsKHR::eRotate90 4252 | SurfaceTransformFlagBitsKHR::eRotate180 4253 | SurfaceTransformFlagBitsKHR::eRotate270 4254 | SurfaceTransformFlagBitsKHR::eHorizontalMirror 4255 | SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate90 4256 | SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate180 4257 | SurfaceTransformFlagBitsKHR::eHorizontalMirrorRotate270 4258 | SurfaceTransformFlagBitsKHR::eInherit; 4259 }; 4260 4261 enum class PresentModeKHR 4262 { 4263 eImmediate = VK_PRESENT_MODE_IMMEDIATE_KHR, 4264 eMailbox = VK_PRESENT_MODE_MAILBOX_KHR, 4265 eFifo = VK_PRESENT_MODE_FIFO_KHR, 4266 eFifoRelaxed = VK_PRESENT_MODE_FIFO_RELAXED_KHR, 4267 eSharedDemandRefresh = VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR, 4268 eSharedContinuousRefresh = VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR 4269 }; 4270 4271 enum class ColorSpaceKHR 4272 { 4273 eSrgbNonlinear = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR, 4274 eDisplayP3NonlinearEXT = VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT, 4275 eExtendedSrgbLinearEXT = VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT, 4276 eDisplayP3LinearEXT = VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT, 4277 eDciP3NonlinearEXT = VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT, 4278 eBt709LinearEXT = VK_COLOR_SPACE_BT709_LINEAR_EXT, 4279 eBt709NonlinearEXT = VK_COLOR_SPACE_BT709_NONLINEAR_EXT, 4280 eBt2020LinearEXT = VK_COLOR_SPACE_BT2020_LINEAR_EXT, 4281 eHdr10St2084EXT = VK_COLOR_SPACE_HDR10_ST2084_EXT, 4282 eDolbyvisionEXT = VK_COLOR_SPACE_DOLBYVISION_EXT, 4283 eHdr10HlgEXT = VK_COLOR_SPACE_HDR10_HLG_EXT, 4284 eAdobergbLinearEXT = VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT, 4285 eAdobergbNonlinearEXT = VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT, 4286 ePassThroughEXT = VK_COLOR_SPACE_PASS_THROUGH_EXT, 4287 eExtendedSrgbNonlinearEXT = VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT, 4288 eDisplayNativeAMD = VK_COLOR_SPACE_DISPLAY_NATIVE_AMD, 4289 eVkColorspaceSrgbNonlinear = VK_COLORSPACE_SRGB_NONLINEAR_KHR, 4290 eDciP3LinearEXT = VK_COLOR_SPACE_DCI_P3_LINEAR_EXT 4291 }; 4292 4293 enum class CompositeAlphaFlagBitsKHR : VkCompositeAlphaFlagsKHR 4294 { 4295 eOpaque = VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR, 4296 ePreMultiplied = VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR, 4297 ePostMultiplied = VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR, 4298 eInherit = VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR 4299 }; 4300 4301 using CompositeAlphaFlagsKHR = Flags<CompositeAlphaFlagBitsKHR>; 4302 4303 4304 template <> struct FlagTraits<CompositeAlphaFlagBitsKHR> 4305 { 4306 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4307 static VULKAN_HPP_CONST_OR_CONSTEXPR CompositeAlphaFlagsKHR allFlags = 4308 CompositeAlphaFlagBitsKHR::eOpaque 4309 | CompositeAlphaFlagBitsKHR::ePreMultiplied 4310 | CompositeAlphaFlagBitsKHR::ePostMultiplied 4311 | CompositeAlphaFlagBitsKHR::eInherit; 4312 }; 4313 4314 //=== VK_KHR_swapchain === 4315 4316 enum class SwapchainCreateFlagBitsKHR : VkSwapchainCreateFlagsKHR 4317 { 4318 eSplitInstanceBindRegions = VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR, 4319 eProtected = VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR, 4320 eMutableFormat = VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR, 4321 eDeferredMemoryAllocationEXT = VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT 4322 }; 4323 4324 using SwapchainCreateFlagsKHR = Flags<SwapchainCreateFlagBitsKHR>; 4325 4326 4327 template <> struct FlagTraits<SwapchainCreateFlagBitsKHR> 4328 { 4329 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4330 static VULKAN_HPP_CONST_OR_CONSTEXPR SwapchainCreateFlagsKHR allFlags = 4331 SwapchainCreateFlagBitsKHR::eSplitInstanceBindRegions 4332 | SwapchainCreateFlagBitsKHR::eProtected 4333 | SwapchainCreateFlagBitsKHR::eMutableFormat 4334 | SwapchainCreateFlagBitsKHR::eDeferredMemoryAllocationEXT; 4335 }; 4336 4337 enum class DeviceGroupPresentModeFlagBitsKHR : VkDeviceGroupPresentModeFlagsKHR 4338 { 4339 eLocal = VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR, 4340 eRemote = VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR, 4341 eSum = VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR, 4342 eLocalMultiDevice = VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR 4343 }; 4344 4345 using DeviceGroupPresentModeFlagsKHR = Flags<DeviceGroupPresentModeFlagBitsKHR>; 4346 4347 4348 template <> struct FlagTraits<DeviceGroupPresentModeFlagBitsKHR> 4349 { 4350 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4351 static VULKAN_HPP_CONST_OR_CONSTEXPR DeviceGroupPresentModeFlagsKHR allFlags = 4352 DeviceGroupPresentModeFlagBitsKHR::eLocal 4353 | DeviceGroupPresentModeFlagBitsKHR::eRemote 4354 | DeviceGroupPresentModeFlagBitsKHR::eSum 4355 | DeviceGroupPresentModeFlagBitsKHR::eLocalMultiDevice; 4356 }; 4357 4358 //=== VK_KHR_display === 4359 4360 enum class DisplayPlaneAlphaFlagBitsKHR : VkDisplayPlaneAlphaFlagsKHR 4361 { 4362 eOpaque = VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR, 4363 eGlobal = VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR, 4364 ePerPixel = VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR, 4365 ePerPixelPremultiplied = VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR 4366 }; 4367 4368 using DisplayPlaneAlphaFlagsKHR = Flags<DisplayPlaneAlphaFlagBitsKHR>; 4369 4370 4371 template <> struct FlagTraits<DisplayPlaneAlphaFlagBitsKHR> 4372 { 4373 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4374 static VULKAN_HPP_CONST_OR_CONSTEXPR DisplayPlaneAlphaFlagsKHR allFlags = 4375 DisplayPlaneAlphaFlagBitsKHR::eOpaque 4376 | DisplayPlaneAlphaFlagBitsKHR::eGlobal 4377 | DisplayPlaneAlphaFlagBitsKHR::ePerPixel 4378 | DisplayPlaneAlphaFlagBitsKHR::ePerPixelPremultiplied; 4379 }; 4380 4381 enum class DisplayModeCreateFlagBitsKHR : VkDisplayModeCreateFlagsKHR 4382 {}; 4383 4384 using DisplayModeCreateFlagsKHR = Flags<DisplayModeCreateFlagBitsKHR>; 4385 4386 4387 template <> struct FlagTraits<DisplayModeCreateFlagBitsKHR> 4388 { 4389 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4390 static VULKAN_HPP_CONST_OR_CONSTEXPR DisplayModeCreateFlagsKHR allFlags = {}; 4391 }; 4392 4393 enum class DisplaySurfaceCreateFlagBitsKHR : VkDisplaySurfaceCreateFlagsKHR 4394 {}; 4395 4396 using DisplaySurfaceCreateFlagsKHR = Flags<DisplaySurfaceCreateFlagBitsKHR>; 4397 4398 4399 template <> struct FlagTraits<DisplaySurfaceCreateFlagBitsKHR> 4400 { 4401 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4402 static VULKAN_HPP_CONST_OR_CONSTEXPR DisplaySurfaceCreateFlagsKHR allFlags = {}; 4403 }; 4404 4405 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 4406 //=== VK_KHR_xlib_surface === 4407 4408 enum class XlibSurfaceCreateFlagBitsKHR : VkXlibSurfaceCreateFlagsKHR 4409 {}; 4410 4411 using XlibSurfaceCreateFlagsKHR = Flags<XlibSurfaceCreateFlagBitsKHR>; 4412 4413 4414 template <> struct FlagTraits<XlibSurfaceCreateFlagBitsKHR> 4415 { 4416 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4417 static VULKAN_HPP_CONST_OR_CONSTEXPR XlibSurfaceCreateFlagsKHR allFlags = {}; 4418 }; 4419 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 4420 4421 #if defined( VK_USE_PLATFORM_XCB_KHR ) 4422 //=== VK_KHR_xcb_surface === 4423 4424 enum class XcbSurfaceCreateFlagBitsKHR : VkXcbSurfaceCreateFlagsKHR 4425 {}; 4426 4427 using XcbSurfaceCreateFlagsKHR = Flags<XcbSurfaceCreateFlagBitsKHR>; 4428 4429 4430 template <> struct FlagTraits<XcbSurfaceCreateFlagBitsKHR> 4431 { 4432 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4433 static VULKAN_HPP_CONST_OR_CONSTEXPR XcbSurfaceCreateFlagsKHR allFlags = {}; 4434 }; 4435 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 4436 4437 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 4438 //=== VK_KHR_wayland_surface === 4439 4440 enum class WaylandSurfaceCreateFlagBitsKHR : VkWaylandSurfaceCreateFlagsKHR 4441 {}; 4442 4443 using WaylandSurfaceCreateFlagsKHR = Flags<WaylandSurfaceCreateFlagBitsKHR>; 4444 4445 4446 template <> struct FlagTraits<WaylandSurfaceCreateFlagBitsKHR> 4447 { 4448 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4449 static VULKAN_HPP_CONST_OR_CONSTEXPR WaylandSurfaceCreateFlagsKHR allFlags = {}; 4450 }; 4451 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 4452 4453 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 4454 //=== VK_KHR_android_surface === 4455 4456 enum class AndroidSurfaceCreateFlagBitsKHR : VkAndroidSurfaceCreateFlagsKHR 4457 {}; 4458 4459 using AndroidSurfaceCreateFlagsKHR = Flags<AndroidSurfaceCreateFlagBitsKHR>; 4460 4461 4462 template <> struct FlagTraits<AndroidSurfaceCreateFlagBitsKHR> 4463 { 4464 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4465 static VULKAN_HPP_CONST_OR_CONSTEXPR AndroidSurfaceCreateFlagsKHR allFlags = {}; 4466 }; 4467 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 4468 4469 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 4470 //=== VK_KHR_win32_surface === 4471 4472 enum class Win32SurfaceCreateFlagBitsKHR : VkWin32SurfaceCreateFlagsKHR 4473 {}; 4474 4475 using Win32SurfaceCreateFlagsKHR = Flags<Win32SurfaceCreateFlagBitsKHR>; 4476 4477 4478 template <> struct FlagTraits<Win32SurfaceCreateFlagBitsKHR> 4479 { 4480 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4481 static VULKAN_HPP_CONST_OR_CONSTEXPR Win32SurfaceCreateFlagsKHR allFlags = {}; 4482 }; 4483 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 4484 4485 //=== VK_EXT_debug_report === 4486 4487 enum class DebugReportFlagBitsEXT : VkDebugReportFlagsEXT 4488 { 4489 eInformation = VK_DEBUG_REPORT_INFORMATION_BIT_EXT, 4490 eWarning = VK_DEBUG_REPORT_WARNING_BIT_EXT, 4491 ePerformanceWarning = VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT, 4492 eError = VK_DEBUG_REPORT_ERROR_BIT_EXT, 4493 eDebug = VK_DEBUG_REPORT_DEBUG_BIT_EXT 4494 }; 4495 4496 using DebugReportFlagsEXT = Flags<DebugReportFlagBitsEXT>; 4497 4498 4499 template <> struct FlagTraits<DebugReportFlagBitsEXT> 4500 { 4501 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4502 static VULKAN_HPP_CONST_OR_CONSTEXPR DebugReportFlagsEXT allFlags = 4503 DebugReportFlagBitsEXT::eInformation 4504 | DebugReportFlagBitsEXT::eWarning 4505 | DebugReportFlagBitsEXT::ePerformanceWarning 4506 | DebugReportFlagBitsEXT::eError 4507 | DebugReportFlagBitsEXT::eDebug; 4508 }; 4509 4510 enum class DebugReportObjectTypeEXT 4511 { 4512 eUnknown = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT, 4513 eInstance = VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT, 4514 ePhysicalDevice = VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT, 4515 eDevice = VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT, 4516 eQueue = VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT, 4517 eSemaphore = VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT, 4518 eCommandBuffer = VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT, 4519 eFence = VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT, 4520 eDeviceMemory = VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT, 4521 eBuffer = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT, 4522 eImage = VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT, 4523 eEvent = VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT, 4524 eQueryPool = VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT, 4525 eBufferView = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT, 4526 eImageView = VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT, 4527 eShaderModule = VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT, 4528 ePipelineCache = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT, 4529 ePipelineLayout = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT, 4530 eRenderPass = VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT, 4531 ePipeline = VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT, 4532 eDescriptorSetLayout = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT, 4533 eSampler = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT, 4534 eDescriptorPool = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT, 4535 eDescriptorSet = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT, 4536 eFramebuffer = VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT, 4537 eCommandPool = VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT, 4538 eSurfaceKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT, 4539 eSwapchainKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT, 4540 eDebugReportCallbackEXT = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT, 4541 eDisplayKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT, 4542 eDisplayModeKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT, 4543 eValidationCacheEXT = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT, 4544 eSamplerYcbcrConversion = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT, 4545 eDescriptorUpdateTemplate = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT, 4546 eCuModuleNVX = VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT, 4547 eCuFunctionNVX = VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT, 4548 eAccelerationStructureKHR = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT, 4549 eAccelerationStructureNV = VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT, 4550 #if defined( VK_USE_PLATFORM_FUCHSIA ) 4551 eBufferCollectionFUCHSIA = VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT, 4552 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 4553 eDebugReport = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT, 4554 eDescriptorUpdateTemplateKHR = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT, 4555 eSamplerYcbcrConversionKHR = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT, 4556 eValidationCache = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT 4557 }; 4558 4559 //=== VK_AMD_rasterization_order === 4560 4561 enum class RasterizationOrderAMD 4562 { 4563 eStrict = VK_RASTERIZATION_ORDER_STRICT_AMD, 4564 eRelaxed = VK_RASTERIZATION_ORDER_RELAXED_AMD 4565 }; 4566 4567 //=== VK_KHR_video_queue === 4568 4569 enum class VideoCodecOperationFlagBitsKHR : VkVideoCodecOperationFlagsKHR 4570 { 4571 eNone = VK_VIDEO_CODEC_OPERATION_NONE_KHR, 4572 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4573 eEncodeH264EXT = VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_EXT, 4574 eEncodeH265EXT = VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_EXT, 4575 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4576 eDecodeH264 = VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR, 4577 eDecodeH265 = VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR 4578 }; 4579 4580 using VideoCodecOperationFlagsKHR = Flags<VideoCodecOperationFlagBitsKHR>; 4581 4582 4583 template <> struct FlagTraits<VideoCodecOperationFlagBitsKHR> 4584 { 4585 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4586 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoCodecOperationFlagsKHR allFlags = 4587 VideoCodecOperationFlagBitsKHR::eNone 4588 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4589 | VideoCodecOperationFlagBitsKHR::eEncodeH264EXT 4590 | VideoCodecOperationFlagBitsKHR::eEncodeH265EXT 4591 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4592 | VideoCodecOperationFlagBitsKHR::eDecodeH264 4593 | VideoCodecOperationFlagBitsKHR::eDecodeH265; 4594 }; 4595 4596 enum class VideoChromaSubsamplingFlagBitsKHR : VkVideoChromaSubsamplingFlagsKHR 4597 { 4598 eInvalid = VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR, 4599 eMonochrome = VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR, 4600 e420 = VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR, 4601 e422 = VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR, 4602 e444 = VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR 4603 }; 4604 4605 using VideoChromaSubsamplingFlagsKHR = Flags<VideoChromaSubsamplingFlagBitsKHR>; 4606 4607 4608 template <> struct FlagTraits<VideoChromaSubsamplingFlagBitsKHR> 4609 { 4610 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4611 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoChromaSubsamplingFlagsKHR allFlags = 4612 VideoChromaSubsamplingFlagBitsKHR::eInvalid 4613 | VideoChromaSubsamplingFlagBitsKHR::eMonochrome 4614 | VideoChromaSubsamplingFlagBitsKHR::e420 4615 | VideoChromaSubsamplingFlagBitsKHR::e422 4616 | VideoChromaSubsamplingFlagBitsKHR::e444; 4617 }; 4618 4619 enum class VideoComponentBitDepthFlagBitsKHR : VkVideoComponentBitDepthFlagsKHR 4620 { 4621 eInvalid = VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR, 4622 e8 = VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR, 4623 e10 = VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR, 4624 e12 = VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR 4625 }; 4626 4627 using VideoComponentBitDepthFlagsKHR = Flags<VideoComponentBitDepthFlagBitsKHR>; 4628 4629 4630 template <> struct FlagTraits<VideoComponentBitDepthFlagBitsKHR> 4631 { 4632 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4633 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoComponentBitDepthFlagsKHR allFlags = 4634 VideoComponentBitDepthFlagBitsKHR::eInvalid 4635 | VideoComponentBitDepthFlagBitsKHR::e8 4636 | VideoComponentBitDepthFlagBitsKHR::e10 4637 | VideoComponentBitDepthFlagBitsKHR::e12; 4638 }; 4639 4640 enum class VideoCapabilityFlagBitsKHR : VkVideoCapabilityFlagsKHR 4641 { 4642 eProtectedContent = VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR, 4643 eSeparateReferenceImages = VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR 4644 }; 4645 4646 using VideoCapabilityFlagsKHR = Flags<VideoCapabilityFlagBitsKHR>; 4647 4648 4649 template <> struct FlagTraits<VideoCapabilityFlagBitsKHR> 4650 { 4651 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4652 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoCapabilityFlagsKHR allFlags = 4653 VideoCapabilityFlagBitsKHR::eProtectedContent 4654 | VideoCapabilityFlagBitsKHR::eSeparateReferenceImages; 4655 }; 4656 4657 enum class VideoSessionCreateFlagBitsKHR : VkVideoSessionCreateFlagsKHR 4658 { 4659 eProtectedContent = VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR 4660 }; 4661 4662 using VideoSessionCreateFlagsKHR = Flags<VideoSessionCreateFlagBitsKHR>; 4663 4664 4665 template <> struct FlagTraits<VideoSessionCreateFlagBitsKHR> 4666 { 4667 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4668 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoSessionCreateFlagsKHR allFlags = 4669 VideoSessionCreateFlagBitsKHR::eProtectedContent; 4670 }; 4671 4672 enum class VideoCodingControlFlagBitsKHR : VkVideoCodingControlFlagsKHR 4673 { 4674 eReset = VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR, 4675 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4676 eEncodeRateControl = VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR, 4677 eEncodeRateControlLayer = VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_LAYER_BIT_KHR 4678 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4679 }; 4680 4681 using VideoCodingControlFlagsKHR = Flags<VideoCodingControlFlagBitsKHR>; 4682 4683 4684 template <> struct FlagTraits<VideoCodingControlFlagBitsKHR> 4685 { 4686 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4687 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoCodingControlFlagsKHR allFlags = 4688 VideoCodingControlFlagBitsKHR::eReset 4689 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4690 | VideoCodingControlFlagBitsKHR::eEncodeRateControl 4691 | VideoCodingControlFlagBitsKHR::eEncodeRateControlLayer 4692 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4693 ; 4694 }; 4695 4696 enum class QueryResultStatusKHR 4697 { 4698 eError = VK_QUERY_RESULT_STATUS_ERROR_KHR, 4699 eNotReady = VK_QUERY_RESULT_STATUS_NOT_READY_KHR, 4700 eComplete = VK_QUERY_RESULT_STATUS_COMPLETE_KHR 4701 }; 4702 4703 enum class VideoSessionParametersCreateFlagBitsKHR : VkVideoSessionParametersCreateFlagsKHR 4704 {}; 4705 4706 using VideoSessionParametersCreateFlagsKHR = Flags<VideoSessionParametersCreateFlagBitsKHR>; 4707 4708 4709 template <> struct FlagTraits<VideoSessionParametersCreateFlagBitsKHR> 4710 { 4711 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4712 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoSessionParametersCreateFlagsKHR allFlags = {}; 4713 }; 4714 4715 enum class VideoBeginCodingFlagBitsKHR : VkVideoBeginCodingFlagsKHR 4716 {}; 4717 4718 using VideoBeginCodingFlagsKHR = Flags<VideoBeginCodingFlagBitsKHR>; 4719 4720 4721 template <> struct FlagTraits<VideoBeginCodingFlagBitsKHR> 4722 { 4723 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4724 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoBeginCodingFlagsKHR allFlags = {}; 4725 }; 4726 4727 enum class VideoEndCodingFlagBitsKHR : VkVideoEndCodingFlagsKHR 4728 {}; 4729 4730 using VideoEndCodingFlagsKHR = Flags<VideoEndCodingFlagBitsKHR>; 4731 4732 4733 template <> struct FlagTraits<VideoEndCodingFlagBitsKHR> 4734 { 4735 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4736 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEndCodingFlagsKHR allFlags = {}; 4737 }; 4738 4739 //=== VK_KHR_video_decode_queue === 4740 4741 enum class VideoDecodeCapabilityFlagBitsKHR : VkVideoDecodeCapabilityFlagsKHR 4742 { 4743 eDpbAndOutputCoincide = VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR, 4744 eDpbAndOutputDistinct = VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR 4745 }; 4746 4747 using VideoDecodeCapabilityFlagsKHR = Flags<VideoDecodeCapabilityFlagBitsKHR>; 4748 4749 4750 template <> struct FlagTraits<VideoDecodeCapabilityFlagBitsKHR> 4751 { 4752 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4753 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoDecodeCapabilityFlagsKHR allFlags = 4754 VideoDecodeCapabilityFlagBitsKHR::eDpbAndOutputCoincide 4755 | VideoDecodeCapabilityFlagBitsKHR::eDpbAndOutputDistinct; 4756 }; 4757 4758 enum class VideoDecodeUsageFlagBitsKHR : VkVideoDecodeUsageFlagsKHR 4759 { 4760 eDefault = VK_VIDEO_DECODE_USAGE_DEFAULT_KHR, 4761 eTranscoding = VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR, 4762 eOffline = VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR, 4763 eStreaming = VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR 4764 }; 4765 4766 using VideoDecodeUsageFlagsKHR = Flags<VideoDecodeUsageFlagBitsKHR>; 4767 4768 4769 template <> struct FlagTraits<VideoDecodeUsageFlagBitsKHR> 4770 { 4771 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4772 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoDecodeUsageFlagsKHR allFlags = 4773 VideoDecodeUsageFlagBitsKHR::eDefault 4774 | VideoDecodeUsageFlagBitsKHR::eTranscoding 4775 | VideoDecodeUsageFlagBitsKHR::eOffline 4776 | VideoDecodeUsageFlagBitsKHR::eStreaming; 4777 }; 4778 4779 enum class VideoDecodeFlagBitsKHR : VkVideoDecodeFlagsKHR 4780 {}; 4781 4782 using VideoDecodeFlagsKHR = Flags<VideoDecodeFlagBitsKHR>; 4783 4784 4785 template <> struct FlagTraits<VideoDecodeFlagBitsKHR> 4786 { 4787 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4788 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoDecodeFlagsKHR allFlags = {}; 4789 }; 4790 4791 //=== VK_EXT_transform_feedback === 4792 4793 enum class PipelineRasterizationStateStreamCreateFlagBitsEXT : VkPipelineRasterizationStateStreamCreateFlagsEXT 4794 {}; 4795 4796 using PipelineRasterizationStateStreamCreateFlagsEXT = Flags<PipelineRasterizationStateStreamCreateFlagBitsEXT>; 4797 4798 4799 template <> struct FlagTraits<PipelineRasterizationStateStreamCreateFlagBitsEXT> 4800 { 4801 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4802 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineRasterizationStateStreamCreateFlagsEXT allFlags = {}; 4803 }; 4804 4805 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4806 //=== VK_EXT_video_encode_h264 === 4807 4808 enum class VideoEncodeH264CapabilityFlagBitsEXT : VkVideoEncodeH264CapabilityFlagsEXT 4809 { 4810 eDirect8X8InferenceEnabled = VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_ENABLED_BIT_EXT, 4811 eDirect8X8InferenceDisabled = VK_VIDEO_ENCODE_H264_CAPABILITY_DIRECT_8X8_INFERENCE_DISABLED_BIT_EXT, 4812 eSeparateColourPlane = VK_VIDEO_ENCODE_H264_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT, 4813 eQpprimeYZeroTransformBypass = VK_VIDEO_ENCODE_H264_CAPABILITY_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_BIT_EXT, 4814 eScalingLists = VK_VIDEO_ENCODE_H264_CAPABILITY_SCALING_LISTS_BIT_EXT, 4815 eHrdCompliance = VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_EXT, 4816 eChromaQpOffset = VK_VIDEO_ENCODE_H264_CAPABILITY_CHROMA_QP_OFFSET_BIT_EXT, 4817 eSecondChromaQpOffset = VK_VIDEO_ENCODE_H264_CAPABILITY_SECOND_CHROMA_QP_OFFSET_BIT_EXT, 4818 ePicInitQpMinus26 = VK_VIDEO_ENCODE_H264_CAPABILITY_PIC_INIT_QP_MINUS26_BIT_EXT, 4819 eWeightedPred = VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_BIT_EXT, 4820 eWeightedBipredExplicit = VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_EXPLICIT_BIT_EXT, 4821 eWeightedBipredImplicit = VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_BIPRED_IMPLICIT_BIT_EXT, 4822 eWeightedPredNoTable = VK_VIDEO_ENCODE_H264_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT, 4823 eTransform8X8 = VK_VIDEO_ENCODE_H264_CAPABILITY_TRANSFORM_8X8_BIT_EXT, 4824 eCabac = VK_VIDEO_ENCODE_H264_CAPABILITY_CABAC_BIT_EXT, 4825 eCavlc = VK_VIDEO_ENCODE_H264_CAPABILITY_CAVLC_BIT_EXT, 4826 eDeblockingFilterDisabled = VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_DISABLED_BIT_EXT, 4827 eDeblockingFilterEnabled = VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_ENABLED_BIT_EXT, 4828 eDeblockingFilterPartial = VK_VIDEO_ENCODE_H264_CAPABILITY_DEBLOCKING_FILTER_PARTIAL_BIT_EXT, 4829 eDisableDirectSpatialMvPred = VK_VIDEO_ENCODE_H264_CAPABILITY_DISABLE_DIRECT_SPATIAL_MV_PRED_BIT_EXT, 4830 eMultipleSlicePerFrame = VK_VIDEO_ENCODE_H264_CAPABILITY_MULTIPLE_SLICE_PER_FRAME_BIT_EXT, 4831 eSliceMbCount = VK_VIDEO_ENCODE_H264_CAPABILITY_SLICE_MB_COUNT_BIT_EXT, 4832 eRowUnalignedSlice = VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_EXT, 4833 eDifferentSliceType = VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT, 4834 eBFrameInL1List = VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT 4835 }; 4836 4837 using VideoEncodeH264CapabilityFlagsEXT = Flags<VideoEncodeH264CapabilityFlagBitsEXT>; 4838 4839 4840 template <> struct FlagTraits<VideoEncodeH264CapabilityFlagBitsEXT> 4841 { 4842 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4843 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH264CapabilityFlagsEXT allFlags = 4844 VideoEncodeH264CapabilityFlagBitsEXT::eDirect8X8InferenceEnabled 4845 | VideoEncodeH264CapabilityFlagBitsEXT::eDirect8X8InferenceDisabled 4846 | VideoEncodeH264CapabilityFlagBitsEXT::eSeparateColourPlane 4847 | VideoEncodeH264CapabilityFlagBitsEXT::eQpprimeYZeroTransformBypass 4848 | VideoEncodeH264CapabilityFlagBitsEXT::eScalingLists 4849 | VideoEncodeH264CapabilityFlagBitsEXT::eHrdCompliance 4850 | VideoEncodeH264CapabilityFlagBitsEXT::eChromaQpOffset 4851 | VideoEncodeH264CapabilityFlagBitsEXT::eSecondChromaQpOffset 4852 | VideoEncodeH264CapabilityFlagBitsEXT::ePicInitQpMinus26 4853 | VideoEncodeH264CapabilityFlagBitsEXT::eWeightedPred 4854 | VideoEncodeH264CapabilityFlagBitsEXT::eWeightedBipredExplicit 4855 | VideoEncodeH264CapabilityFlagBitsEXT::eWeightedBipredImplicit 4856 | VideoEncodeH264CapabilityFlagBitsEXT::eWeightedPredNoTable 4857 | VideoEncodeH264CapabilityFlagBitsEXT::eTransform8X8 4858 | VideoEncodeH264CapabilityFlagBitsEXT::eCabac 4859 | VideoEncodeH264CapabilityFlagBitsEXT::eCavlc 4860 | VideoEncodeH264CapabilityFlagBitsEXT::eDeblockingFilterDisabled 4861 | VideoEncodeH264CapabilityFlagBitsEXT::eDeblockingFilterEnabled 4862 | VideoEncodeH264CapabilityFlagBitsEXT::eDeblockingFilterPartial 4863 | VideoEncodeH264CapabilityFlagBitsEXT::eDisableDirectSpatialMvPred 4864 | VideoEncodeH264CapabilityFlagBitsEXT::eMultipleSlicePerFrame 4865 | VideoEncodeH264CapabilityFlagBitsEXT::eSliceMbCount 4866 | VideoEncodeH264CapabilityFlagBitsEXT::eRowUnalignedSlice 4867 | VideoEncodeH264CapabilityFlagBitsEXT::eDifferentSliceType 4868 | VideoEncodeH264CapabilityFlagBitsEXT::eBFrameInL1List; 4869 }; 4870 4871 enum class VideoEncodeH264InputModeFlagBitsEXT : VkVideoEncodeH264InputModeFlagsEXT 4872 { 4873 eFrame = VK_VIDEO_ENCODE_H264_INPUT_MODE_FRAME_BIT_EXT, 4874 eSlice = VK_VIDEO_ENCODE_H264_INPUT_MODE_SLICE_BIT_EXT, 4875 eNonVcl = VK_VIDEO_ENCODE_H264_INPUT_MODE_NON_VCL_BIT_EXT 4876 }; 4877 4878 using VideoEncodeH264InputModeFlagsEXT = Flags<VideoEncodeH264InputModeFlagBitsEXT>; 4879 4880 4881 template <> struct FlagTraits<VideoEncodeH264InputModeFlagBitsEXT> 4882 { 4883 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4884 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH264InputModeFlagsEXT allFlags = 4885 VideoEncodeH264InputModeFlagBitsEXT::eFrame 4886 | VideoEncodeH264InputModeFlagBitsEXT::eSlice 4887 | VideoEncodeH264InputModeFlagBitsEXT::eNonVcl; 4888 }; 4889 4890 enum class VideoEncodeH264OutputModeFlagBitsEXT : VkVideoEncodeH264OutputModeFlagsEXT 4891 { 4892 eFrame = VK_VIDEO_ENCODE_H264_OUTPUT_MODE_FRAME_BIT_EXT, 4893 eSlice = VK_VIDEO_ENCODE_H264_OUTPUT_MODE_SLICE_BIT_EXT, 4894 eNonVcl = VK_VIDEO_ENCODE_H264_OUTPUT_MODE_NON_VCL_BIT_EXT 4895 }; 4896 4897 using VideoEncodeH264OutputModeFlagsEXT = Flags<VideoEncodeH264OutputModeFlagBitsEXT>; 4898 4899 4900 template <> struct FlagTraits<VideoEncodeH264OutputModeFlagBitsEXT> 4901 { 4902 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4903 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH264OutputModeFlagsEXT allFlags = 4904 VideoEncodeH264OutputModeFlagBitsEXT::eFrame 4905 | VideoEncodeH264OutputModeFlagBitsEXT::eSlice 4906 | VideoEncodeH264OutputModeFlagBitsEXT::eNonVcl; 4907 }; 4908 4909 enum class VideoEncodeH264RateControlStructureEXT 4910 { 4911 eUnknown = VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT, 4912 eFlat = VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_FLAT_EXT, 4913 eDyadic = VK_VIDEO_ENCODE_H264_RATE_CONTROL_STRUCTURE_DYADIC_EXT 4914 }; 4915 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 4916 4917 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 4918 //=== VK_EXT_video_encode_h265 === 4919 4920 enum class VideoEncodeH265CapabilityFlagBitsEXT : VkVideoEncodeH265CapabilityFlagsEXT 4921 { 4922 eSeparateColourPlane = VK_VIDEO_ENCODE_H265_CAPABILITY_SEPARATE_COLOUR_PLANE_BIT_EXT, 4923 eScalingLists = VK_VIDEO_ENCODE_H265_CAPABILITY_SCALING_LISTS_BIT_EXT, 4924 eSampleAdaptiveOffsetEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_SAMPLE_ADAPTIVE_OFFSET_ENABLED_BIT_EXT, 4925 ePcmEnable = VK_VIDEO_ENCODE_H265_CAPABILITY_PCM_ENABLE_BIT_EXT, 4926 eSpsTemporalMvpEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_SPS_TEMPORAL_MVP_ENABLED_BIT_EXT, 4927 eHrdCompliance = VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_EXT, 4928 eInitQpMinus26 = VK_VIDEO_ENCODE_H265_CAPABILITY_INIT_QP_MINUS26_BIT_EXT, 4929 eLog2ParallelMergeLevelMinus2 = VK_VIDEO_ENCODE_H265_CAPABILITY_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_EXT, 4930 eSignDataHidingEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_SIGN_DATA_HIDING_ENABLED_BIT_EXT, 4931 eTransformSkipEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_ENABLED_BIT_EXT, 4932 eTransformSkipDisabled = VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSFORM_SKIP_DISABLED_BIT_EXT, 4933 ePpsSliceChromaQpOffsetsPresent = VK_VIDEO_ENCODE_H265_CAPABILITY_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_BIT_EXT, 4934 eWeightedPred = VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_BIT_EXT, 4935 eWeightedBipred = VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_BIPRED_BIT_EXT, 4936 eWeightedPredNoTable = VK_VIDEO_ENCODE_H265_CAPABILITY_WEIGHTED_PRED_NO_TABLE_BIT_EXT, 4937 eTransquantBypassEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_TRANSQUANT_BYPASS_ENABLED_BIT_EXT, 4938 eEntropyCodingSyncEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_ENTROPY_CODING_SYNC_ENABLED_BIT_EXT, 4939 eDeblockingFilterOverrideEnabled = VK_VIDEO_ENCODE_H265_CAPABILITY_DEBLOCKING_FILTER_OVERRIDE_ENABLED_BIT_EXT, 4940 eMultipleTilePerFrame = VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_FRAME_BIT_EXT, 4941 eMultipleSlicePerTile = VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_PER_TILE_BIT_EXT, 4942 eMultipleTilePerSlice = VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILE_PER_SLICE_BIT_EXT, 4943 eSliceSegmentCtbCount = VK_VIDEO_ENCODE_H265_CAPABILITY_SLICE_SEGMENT_CTB_COUNT_BIT_EXT, 4944 eRowUnalignedSliceSegment = VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_EXT, 4945 eDependentSliceSegment = VK_VIDEO_ENCODE_H265_CAPABILITY_DEPENDENT_SLICE_SEGMENT_BIT_EXT, 4946 eDifferentSliceType = VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_EXT, 4947 eBFrameInL1List = VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_EXT 4948 }; 4949 4950 using VideoEncodeH265CapabilityFlagsEXT = Flags<VideoEncodeH265CapabilityFlagBitsEXT>; 4951 4952 4953 template <> struct FlagTraits<VideoEncodeH265CapabilityFlagBitsEXT> 4954 { 4955 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4956 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH265CapabilityFlagsEXT allFlags = 4957 VideoEncodeH265CapabilityFlagBitsEXT::eSeparateColourPlane 4958 | VideoEncodeH265CapabilityFlagBitsEXT::eScalingLists 4959 | VideoEncodeH265CapabilityFlagBitsEXT::eSampleAdaptiveOffsetEnabled 4960 | VideoEncodeH265CapabilityFlagBitsEXT::ePcmEnable 4961 | VideoEncodeH265CapabilityFlagBitsEXT::eSpsTemporalMvpEnabled 4962 | VideoEncodeH265CapabilityFlagBitsEXT::eHrdCompliance 4963 | VideoEncodeH265CapabilityFlagBitsEXT::eInitQpMinus26 4964 | VideoEncodeH265CapabilityFlagBitsEXT::eLog2ParallelMergeLevelMinus2 4965 | VideoEncodeH265CapabilityFlagBitsEXT::eSignDataHidingEnabled 4966 | VideoEncodeH265CapabilityFlagBitsEXT::eTransformSkipEnabled 4967 | VideoEncodeH265CapabilityFlagBitsEXT::eTransformSkipDisabled 4968 | VideoEncodeH265CapabilityFlagBitsEXT::ePpsSliceChromaQpOffsetsPresent 4969 | VideoEncodeH265CapabilityFlagBitsEXT::eWeightedPred 4970 | VideoEncodeH265CapabilityFlagBitsEXT::eWeightedBipred 4971 | VideoEncodeH265CapabilityFlagBitsEXT::eWeightedPredNoTable 4972 | VideoEncodeH265CapabilityFlagBitsEXT::eTransquantBypassEnabled 4973 | VideoEncodeH265CapabilityFlagBitsEXT::eEntropyCodingSyncEnabled 4974 | VideoEncodeH265CapabilityFlagBitsEXT::eDeblockingFilterOverrideEnabled 4975 | VideoEncodeH265CapabilityFlagBitsEXT::eMultipleTilePerFrame 4976 | VideoEncodeH265CapabilityFlagBitsEXT::eMultipleSlicePerTile 4977 | VideoEncodeH265CapabilityFlagBitsEXT::eMultipleTilePerSlice 4978 | VideoEncodeH265CapabilityFlagBitsEXT::eSliceSegmentCtbCount 4979 | VideoEncodeH265CapabilityFlagBitsEXT::eRowUnalignedSliceSegment 4980 | VideoEncodeH265CapabilityFlagBitsEXT::eDependentSliceSegment 4981 | VideoEncodeH265CapabilityFlagBitsEXT::eDifferentSliceType 4982 | VideoEncodeH265CapabilityFlagBitsEXT::eBFrameInL1List; 4983 }; 4984 4985 enum class VideoEncodeH265InputModeFlagBitsEXT : VkVideoEncodeH265InputModeFlagsEXT 4986 { 4987 eFrame = VK_VIDEO_ENCODE_H265_INPUT_MODE_FRAME_BIT_EXT, 4988 eSliceSegment = VK_VIDEO_ENCODE_H265_INPUT_MODE_SLICE_SEGMENT_BIT_EXT, 4989 eNonVcl = VK_VIDEO_ENCODE_H265_INPUT_MODE_NON_VCL_BIT_EXT 4990 }; 4991 4992 using VideoEncodeH265InputModeFlagsEXT = Flags<VideoEncodeH265InputModeFlagBitsEXT>; 4993 4994 4995 template <> struct FlagTraits<VideoEncodeH265InputModeFlagBitsEXT> 4996 { 4997 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 4998 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH265InputModeFlagsEXT allFlags = 4999 VideoEncodeH265InputModeFlagBitsEXT::eFrame 5000 | VideoEncodeH265InputModeFlagBitsEXT::eSliceSegment 5001 | VideoEncodeH265InputModeFlagBitsEXT::eNonVcl; 5002 }; 5003 5004 enum class VideoEncodeH265OutputModeFlagBitsEXT : VkVideoEncodeH265OutputModeFlagsEXT 5005 { 5006 eFrame = VK_VIDEO_ENCODE_H265_OUTPUT_MODE_FRAME_BIT_EXT, 5007 eSliceSegment = VK_VIDEO_ENCODE_H265_OUTPUT_MODE_SLICE_SEGMENT_BIT_EXT, 5008 eNonVcl = VK_VIDEO_ENCODE_H265_OUTPUT_MODE_NON_VCL_BIT_EXT 5009 }; 5010 5011 using VideoEncodeH265OutputModeFlagsEXT = Flags<VideoEncodeH265OutputModeFlagBitsEXT>; 5012 5013 5014 template <> struct FlagTraits<VideoEncodeH265OutputModeFlagBitsEXT> 5015 { 5016 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5017 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH265OutputModeFlagsEXT allFlags = 5018 VideoEncodeH265OutputModeFlagBitsEXT::eFrame 5019 | VideoEncodeH265OutputModeFlagBitsEXT::eSliceSegment 5020 | VideoEncodeH265OutputModeFlagBitsEXT::eNonVcl; 5021 }; 5022 5023 enum class VideoEncodeH265CtbSizeFlagBitsEXT : VkVideoEncodeH265CtbSizeFlagsEXT 5024 { 5025 e16 = VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_EXT, 5026 e32 = VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_EXT, 5027 e64 = VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_EXT 5028 }; 5029 5030 using VideoEncodeH265CtbSizeFlagsEXT = Flags<VideoEncodeH265CtbSizeFlagBitsEXT>; 5031 5032 5033 template <> struct FlagTraits<VideoEncodeH265CtbSizeFlagBitsEXT> 5034 { 5035 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5036 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH265CtbSizeFlagsEXT allFlags = 5037 VideoEncodeH265CtbSizeFlagBitsEXT::e16 5038 | VideoEncodeH265CtbSizeFlagBitsEXT::e32 5039 | VideoEncodeH265CtbSizeFlagBitsEXT::e64; 5040 }; 5041 5042 enum class VideoEncodeH265TransformBlockSizeFlagBitsEXT : VkVideoEncodeH265TransformBlockSizeFlagsEXT 5043 { 5044 e4 = VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_4_BIT_EXT, 5045 e8 = VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_8_BIT_EXT, 5046 e16 = VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_16_BIT_EXT, 5047 e32 = VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_32_BIT_EXT 5048 }; 5049 5050 using VideoEncodeH265TransformBlockSizeFlagsEXT = Flags<VideoEncodeH265TransformBlockSizeFlagBitsEXT>; 5051 5052 5053 template <> struct FlagTraits<VideoEncodeH265TransformBlockSizeFlagBitsEXT> 5054 { 5055 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5056 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeH265TransformBlockSizeFlagsEXT allFlags = 5057 VideoEncodeH265TransformBlockSizeFlagBitsEXT::e4 5058 | VideoEncodeH265TransformBlockSizeFlagBitsEXT::e8 5059 | VideoEncodeH265TransformBlockSizeFlagBitsEXT::e16 5060 | VideoEncodeH265TransformBlockSizeFlagBitsEXT::e32; 5061 }; 5062 5063 enum class VideoEncodeH265RateControlStructureEXT 5064 { 5065 eUnknown = VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_UNKNOWN_EXT, 5066 eFlat = VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_FLAT_EXT, 5067 eDyadic = VK_VIDEO_ENCODE_H265_RATE_CONTROL_STRUCTURE_DYADIC_EXT 5068 }; 5069 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 5070 5071 //=== VK_KHR_video_decode_h264 === 5072 5073 enum class VideoDecodeH264PictureLayoutFlagBitsKHR : VkVideoDecodeH264PictureLayoutFlagsKHR 5074 { 5075 eProgressive = VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_KHR, 5076 eInterlacedInterleavedLines = VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_KHR, 5077 eInterlacedSeparatePlanes = VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_KHR 5078 }; 5079 5080 using VideoDecodeH264PictureLayoutFlagsKHR = Flags<VideoDecodeH264PictureLayoutFlagBitsKHR>; 5081 5082 5083 template <> struct FlagTraits<VideoDecodeH264PictureLayoutFlagBitsKHR> 5084 { 5085 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5086 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoDecodeH264PictureLayoutFlagsKHR allFlags = 5087 VideoDecodeH264PictureLayoutFlagBitsKHR::eProgressive 5088 | VideoDecodeH264PictureLayoutFlagBitsKHR::eInterlacedInterleavedLines 5089 | VideoDecodeH264PictureLayoutFlagBitsKHR::eInterlacedSeparatePlanes; 5090 }; 5091 5092 //=== VK_AMD_shader_info === 5093 5094 enum class ShaderInfoTypeAMD 5095 { 5096 eStatistics = VK_SHADER_INFO_TYPE_STATISTICS_AMD, 5097 eBinary = VK_SHADER_INFO_TYPE_BINARY_AMD, 5098 eDisassembly = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD 5099 }; 5100 5101 #if defined( VK_USE_PLATFORM_GGP ) 5102 //=== VK_GGP_stream_descriptor_surface === 5103 5104 enum class StreamDescriptorSurfaceCreateFlagBitsGGP : VkStreamDescriptorSurfaceCreateFlagsGGP 5105 {}; 5106 5107 using StreamDescriptorSurfaceCreateFlagsGGP = Flags<StreamDescriptorSurfaceCreateFlagBitsGGP>; 5108 5109 5110 template <> struct FlagTraits<StreamDescriptorSurfaceCreateFlagBitsGGP> 5111 { 5112 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5113 static VULKAN_HPP_CONST_OR_CONSTEXPR StreamDescriptorSurfaceCreateFlagsGGP allFlags = {}; 5114 }; 5115 #endif /*VK_USE_PLATFORM_GGP*/ 5116 5117 //=== VK_NV_external_memory_capabilities === 5118 5119 enum class ExternalMemoryHandleTypeFlagBitsNV : VkExternalMemoryHandleTypeFlagsNV 5120 { 5121 eOpaqueWin32 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV, 5122 eOpaqueWin32Kmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV, 5123 eD3D11Image = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV, 5124 eD3D11ImageKmt = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV 5125 }; 5126 5127 using ExternalMemoryHandleTypeFlagsNV = Flags<ExternalMemoryHandleTypeFlagBitsNV>; 5128 5129 5130 template <> struct FlagTraits<ExternalMemoryHandleTypeFlagBitsNV> 5131 { 5132 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5133 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalMemoryHandleTypeFlagsNV allFlags = 5134 ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32 5135 | ExternalMemoryHandleTypeFlagBitsNV::eOpaqueWin32Kmt 5136 | ExternalMemoryHandleTypeFlagBitsNV::eD3D11Image 5137 | ExternalMemoryHandleTypeFlagBitsNV::eD3D11ImageKmt; 5138 }; 5139 5140 enum class ExternalMemoryFeatureFlagBitsNV : VkExternalMemoryFeatureFlagsNV 5141 { 5142 eDedicatedOnly = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV, 5143 eExportable = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV, 5144 eImportable = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV 5145 }; 5146 5147 using ExternalMemoryFeatureFlagsNV = Flags<ExternalMemoryFeatureFlagBitsNV>; 5148 5149 5150 template <> struct FlagTraits<ExternalMemoryFeatureFlagBitsNV> 5151 { 5152 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5153 static VULKAN_HPP_CONST_OR_CONSTEXPR ExternalMemoryFeatureFlagsNV allFlags = 5154 ExternalMemoryFeatureFlagBitsNV::eDedicatedOnly 5155 | ExternalMemoryFeatureFlagBitsNV::eExportable 5156 | ExternalMemoryFeatureFlagBitsNV::eImportable; 5157 }; 5158 5159 //=== VK_EXT_validation_flags === 5160 5161 enum class ValidationCheckEXT 5162 { 5163 eAll = VK_VALIDATION_CHECK_ALL_EXT, 5164 eShaders = VK_VALIDATION_CHECK_SHADERS_EXT 5165 }; 5166 5167 #if defined( VK_USE_PLATFORM_VI_NN ) 5168 //=== VK_NN_vi_surface === 5169 5170 enum class ViSurfaceCreateFlagBitsNN : VkViSurfaceCreateFlagsNN 5171 {}; 5172 5173 using ViSurfaceCreateFlagsNN = Flags<ViSurfaceCreateFlagBitsNN>; 5174 5175 5176 template <> struct FlagTraits<ViSurfaceCreateFlagBitsNN> 5177 { 5178 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5179 static VULKAN_HPP_CONST_OR_CONSTEXPR ViSurfaceCreateFlagsNN allFlags = {}; 5180 }; 5181 #endif /*VK_USE_PLATFORM_VI_NN*/ 5182 5183 //=== VK_EXT_pipeline_robustness === 5184 5185 enum class PipelineRobustnessBufferBehaviorEXT 5186 { 5187 eDeviceDefault = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT, 5188 eDisabled = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT, 5189 eRobustBufferAccess = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT, 5190 eRobustBufferAccess2 = VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT 5191 }; 5192 5193 enum class PipelineRobustnessImageBehaviorEXT 5194 { 5195 eDeviceDefault = VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT, 5196 eDisabled = VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT, 5197 eRobustImageAccess = VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT, 5198 eRobustImageAccess2 = VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT 5199 }; 5200 5201 //=== VK_EXT_conditional_rendering === 5202 5203 enum class ConditionalRenderingFlagBitsEXT : VkConditionalRenderingFlagsEXT 5204 { 5205 eInverted = VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT 5206 }; 5207 5208 using ConditionalRenderingFlagsEXT = Flags<ConditionalRenderingFlagBitsEXT>; 5209 5210 5211 template <> struct FlagTraits<ConditionalRenderingFlagBitsEXT> 5212 { 5213 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5214 static VULKAN_HPP_CONST_OR_CONSTEXPR ConditionalRenderingFlagsEXT allFlags = 5215 ConditionalRenderingFlagBitsEXT::eInverted; 5216 }; 5217 5218 //=== VK_EXT_display_surface_counter === 5219 5220 enum class SurfaceCounterFlagBitsEXT : VkSurfaceCounterFlagsEXT 5221 { 5222 eVblank = VK_SURFACE_COUNTER_VBLANK_BIT_EXT 5223 }; 5224 5225 using SurfaceCounterFlagsEXT = Flags<SurfaceCounterFlagBitsEXT>; 5226 5227 5228 template <> struct FlagTraits<SurfaceCounterFlagBitsEXT> 5229 { 5230 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5231 static VULKAN_HPP_CONST_OR_CONSTEXPR SurfaceCounterFlagsEXT allFlags = 5232 SurfaceCounterFlagBitsEXT::eVblank; 5233 }; 5234 5235 //=== VK_EXT_display_control === 5236 5237 enum class DisplayPowerStateEXT 5238 { 5239 eOff = VK_DISPLAY_POWER_STATE_OFF_EXT, 5240 eSuspend = VK_DISPLAY_POWER_STATE_SUSPEND_EXT, 5241 eOn = VK_DISPLAY_POWER_STATE_ON_EXT 5242 }; 5243 5244 enum class DeviceEventTypeEXT 5245 { 5246 eDisplayHotplug = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT 5247 }; 5248 5249 enum class DisplayEventTypeEXT 5250 { 5251 eFirstPixelOut = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT 5252 }; 5253 5254 //=== VK_NV_viewport_swizzle === 5255 5256 enum class ViewportCoordinateSwizzleNV 5257 { 5258 ePositiveX = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV, 5259 eNegativeX = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV, 5260 ePositiveY = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV, 5261 eNegativeY = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV, 5262 ePositiveZ = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV, 5263 eNegativeZ = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV, 5264 ePositiveW = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV, 5265 eNegativeW = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV 5266 }; 5267 5268 enum class PipelineViewportSwizzleStateCreateFlagBitsNV : VkPipelineViewportSwizzleStateCreateFlagsNV 5269 {}; 5270 5271 using PipelineViewportSwizzleStateCreateFlagsNV = Flags<PipelineViewportSwizzleStateCreateFlagBitsNV>; 5272 5273 5274 template <> struct FlagTraits<PipelineViewportSwizzleStateCreateFlagBitsNV> 5275 { 5276 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5277 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineViewportSwizzleStateCreateFlagsNV allFlags = {}; 5278 }; 5279 5280 //=== VK_EXT_discard_rectangles === 5281 5282 enum class DiscardRectangleModeEXT 5283 { 5284 eInclusive = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT, 5285 eExclusive = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT 5286 }; 5287 5288 enum class PipelineDiscardRectangleStateCreateFlagBitsEXT : VkPipelineDiscardRectangleStateCreateFlagsEXT 5289 {}; 5290 5291 using PipelineDiscardRectangleStateCreateFlagsEXT = Flags<PipelineDiscardRectangleStateCreateFlagBitsEXT>; 5292 5293 5294 template <> struct FlagTraits<PipelineDiscardRectangleStateCreateFlagBitsEXT> 5295 { 5296 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5297 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineDiscardRectangleStateCreateFlagsEXT allFlags = {}; 5298 }; 5299 5300 //=== VK_EXT_conservative_rasterization === 5301 5302 enum class ConservativeRasterizationModeEXT 5303 { 5304 eDisabled = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT, 5305 eOverestimate = VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT, 5306 eUnderestimate = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT 5307 }; 5308 5309 enum class PipelineRasterizationConservativeStateCreateFlagBitsEXT : VkPipelineRasterizationConservativeStateCreateFlagsEXT 5310 {}; 5311 5312 using PipelineRasterizationConservativeStateCreateFlagsEXT = Flags<PipelineRasterizationConservativeStateCreateFlagBitsEXT>; 5313 5314 5315 template <> struct FlagTraits<PipelineRasterizationConservativeStateCreateFlagBitsEXT> 5316 { 5317 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5318 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineRasterizationConservativeStateCreateFlagsEXT allFlags = {}; 5319 }; 5320 5321 //=== VK_EXT_depth_clip_enable === 5322 5323 enum class PipelineRasterizationDepthClipStateCreateFlagBitsEXT : VkPipelineRasterizationDepthClipStateCreateFlagsEXT 5324 {}; 5325 5326 using PipelineRasterizationDepthClipStateCreateFlagsEXT = Flags<PipelineRasterizationDepthClipStateCreateFlagBitsEXT>; 5327 5328 5329 template <> struct FlagTraits<PipelineRasterizationDepthClipStateCreateFlagBitsEXT> 5330 { 5331 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5332 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineRasterizationDepthClipStateCreateFlagsEXT allFlags = {}; 5333 }; 5334 5335 //=== VK_KHR_performance_query === 5336 5337 enum class PerformanceCounterDescriptionFlagBitsKHR : VkPerformanceCounterDescriptionFlagsKHR 5338 { 5339 ePerformanceImpacting = VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR, 5340 eConcurrentlyImpacted = VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR 5341 }; 5342 5343 using PerformanceCounterDescriptionFlagsKHR = Flags<PerformanceCounterDescriptionFlagBitsKHR>; 5344 5345 5346 template <> struct FlagTraits<PerformanceCounterDescriptionFlagBitsKHR> 5347 { 5348 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5349 static VULKAN_HPP_CONST_OR_CONSTEXPR PerformanceCounterDescriptionFlagsKHR allFlags = 5350 PerformanceCounterDescriptionFlagBitsKHR::ePerformanceImpacting 5351 | PerformanceCounterDescriptionFlagBitsKHR::eConcurrentlyImpacted; 5352 }; 5353 5354 enum class PerformanceCounterScopeKHR 5355 { 5356 eCommandBuffer = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR, 5357 eRenderPass = VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR, 5358 eCommand = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR, 5359 eVkQueryScopeCommandBuffer = VK_QUERY_SCOPE_COMMAND_BUFFER_KHR, 5360 eVkQueryScopeCommand = VK_QUERY_SCOPE_COMMAND_KHR, 5361 eVkQueryScopeRenderPass = VK_QUERY_SCOPE_RENDER_PASS_KHR 5362 }; 5363 5364 enum class PerformanceCounterStorageKHR 5365 { 5366 eInt32 = VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR, 5367 eInt64 = VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR, 5368 eUint32 = VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR, 5369 eUint64 = VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR, 5370 eFloat32 = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR, 5371 eFloat64 = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR 5372 }; 5373 5374 enum class PerformanceCounterUnitKHR 5375 { 5376 eGeneric = VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR, 5377 ePercentage = VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR, 5378 eNanoseconds = VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR, 5379 eBytes = VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR, 5380 eBytesPerSecond = VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR, 5381 eKelvin = VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR, 5382 eWatts = VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR, 5383 eVolts = VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR, 5384 eAmps = VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR, 5385 eHertz = VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR, 5386 eCycles = VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR 5387 }; 5388 5389 enum class AcquireProfilingLockFlagBitsKHR : VkAcquireProfilingLockFlagsKHR 5390 {}; 5391 5392 using AcquireProfilingLockFlagsKHR = Flags<AcquireProfilingLockFlagBitsKHR>; 5393 5394 5395 template <> struct FlagTraits<AcquireProfilingLockFlagBitsKHR> 5396 { 5397 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5398 static VULKAN_HPP_CONST_OR_CONSTEXPR AcquireProfilingLockFlagsKHR allFlags = {}; 5399 }; 5400 5401 #if defined( VK_USE_PLATFORM_IOS_MVK ) 5402 //=== VK_MVK_ios_surface === 5403 5404 enum class IOSSurfaceCreateFlagBitsMVK : VkIOSSurfaceCreateFlagsMVK 5405 {}; 5406 5407 using IOSSurfaceCreateFlagsMVK = Flags<IOSSurfaceCreateFlagBitsMVK>; 5408 5409 5410 template <> struct FlagTraits<IOSSurfaceCreateFlagBitsMVK> 5411 { 5412 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5413 static VULKAN_HPP_CONST_OR_CONSTEXPR IOSSurfaceCreateFlagsMVK allFlags = {}; 5414 }; 5415 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 5416 5417 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 5418 //=== VK_MVK_macos_surface === 5419 5420 enum class MacOSSurfaceCreateFlagBitsMVK : VkMacOSSurfaceCreateFlagsMVK 5421 {}; 5422 5423 using MacOSSurfaceCreateFlagsMVK = Flags<MacOSSurfaceCreateFlagBitsMVK>; 5424 5425 5426 template <> struct FlagTraits<MacOSSurfaceCreateFlagBitsMVK> 5427 { 5428 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5429 static VULKAN_HPP_CONST_OR_CONSTEXPR MacOSSurfaceCreateFlagsMVK allFlags = {}; 5430 }; 5431 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 5432 5433 //=== VK_EXT_debug_utils === 5434 5435 enum class DebugUtilsMessageSeverityFlagBitsEXT : VkDebugUtilsMessageSeverityFlagsEXT 5436 { 5437 eVerbose = VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT, 5438 eInfo = VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT, 5439 eWarning = VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT, 5440 eError = VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT 5441 }; 5442 5443 using DebugUtilsMessageSeverityFlagsEXT = Flags<DebugUtilsMessageSeverityFlagBitsEXT>; 5444 5445 5446 template <> struct FlagTraits<DebugUtilsMessageSeverityFlagBitsEXT> 5447 { 5448 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5449 static VULKAN_HPP_CONST_OR_CONSTEXPR DebugUtilsMessageSeverityFlagsEXT allFlags = 5450 DebugUtilsMessageSeverityFlagBitsEXT::eVerbose 5451 | DebugUtilsMessageSeverityFlagBitsEXT::eInfo 5452 | DebugUtilsMessageSeverityFlagBitsEXT::eWarning 5453 | DebugUtilsMessageSeverityFlagBitsEXT::eError; 5454 }; 5455 5456 enum class DebugUtilsMessageTypeFlagBitsEXT : VkDebugUtilsMessageTypeFlagsEXT 5457 { 5458 eGeneral = VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT, 5459 eValidation = VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT, 5460 ePerformance = VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT, 5461 eDeviceAddressBinding = VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT 5462 }; 5463 5464 using DebugUtilsMessageTypeFlagsEXT = Flags<DebugUtilsMessageTypeFlagBitsEXT>; 5465 5466 5467 template <> struct FlagTraits<DebugUtilsMessageTypeFlagBitsEXT> 5468 { 5469 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5470 static VULKAN_HPP_CONST_OR_CONSTEXPR DebugUtilsMessageTypeFlagsEXT allFlags = 5471 DebugUtilsMessageTypeFlagBitsEXT::eGeneral 5472 | DebugUtilsMessageTypeFlagBitsEXT::eValidation 5473 | DebugUtilsMessageTypeFlagBitsEXT::ePerformance 5474 | DebugUtilsMessageTypeFlagBitsEXT::eDeviceAddressBinding; 5475 }; 5476 5477 enum class DebugUtilsMessengerCallbackDataFlagBitsEXT : VkDebugUtilsMessengerCallbackDataFlagsEXT 5478 {}; 5479 5480 using DebugUtilsMessengerCallbackDataFlagsEXT = Flags<DebugUtilsMessengerCallbackDataFlagBitsEXT>; 5481 5482 5483 template <> struct FlagTraits<DebugUtilsMessengerCallbackDataFlagBitsEXT> 5484 { 5485 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5486 static VULKAN_HPP_CONST_OR_CONSTEXPR DebugUtilsMessengerCallbackDataFlagsEXT allFlags = {}; 5487 }; 5488 5489 enum class DebugUtilsMessengerCreateFlagBitsEXT : VkDebugUtilsMessengerCreateFlagsEXT 5490 {}; 5491 5492 using DebugUtilsMessengerCreateFlagsEXT = Flags<DebugUtilsMessengerCreateFlagBitsEXT>; 5493 5494 5495 template <> struct FlagTraits<DebugUtilsMessengerCreateFlagBitsEXT> 5496 { 5497 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5498 static VULKAN_HPP_CONST_OR_CONSTEXPR DebugUtilsMessengerCreateFlagsEXT allFlags = {}; 5499 }; 5500 5501 //=== VK_EXT_blend_operation_advanced === 5502 5503 enum class BlendOverlapEXT 5504 { 5505 eUncorrelated = VK_BLEND_OVERLAP_UNCORRELATED_EXT, 5506 eDisjoint = VK_BLEND_OVERLAP_DISJOINT_EXT, 5507 eConjoint = VK_BLEND_OVERLAP_CONJOINT_EXT 5508 }; 5509 5510 //=== VK_NV_fragment_coverage_to_color === 5511 5512 enum class PipelineCoverageToColorStateCreateFlagBitsNV : VkPipelineCoverageToColorStateCreateFlagsNV 5513 {}; 5514 5515 using PipelineCoverageToColorStateCreateFlagsNV = Flags<PipelineCoverageToColorStateCreateFlagBitsNV>; 5516 5517 5518 template <> struct FlagTraits<PipelineCoverageToColorStateCreateFlagBitsNV> 5519 { 5520 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5521 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCoverageToColorStateCreateFlagsNV allFlags = {}; 5522 }; 5523 5524 //=== VK_KHR_acceleration_structure === 5525 5526 enum class AccelerationStructureTypeKHR 5527 { 5528 eTopLevel = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR, 5529 eBottomLevel = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR, 5530 eGeneric = VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR 5531 }; 5532 using AccelerationStructureTypeNV = AccelerationStructureTypeKHR; 5533 5534 enum class AccelerationStructureBuildTypeKHR 5535 { 5536 eHost = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR, 5537 eDevice = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR, 5538 eHostOrDevice = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR 5539 }; 5540 5541 enum class GeometryFlagBitsKHR : VkGeometryFlagsKHR 5542 { 5543 eOpaque = VK_GEOMETRY_OPAQUE_BIT_KHR, 5544 eNoDuplicateAnyHitInvocation = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR 5545 }; 5546 using GeometryFlagBitsNV = GeometryFlagBitsKHR; 5547 5548 using GeometryFlagsKHR = Flags<GeometryFlagBitsKHR>; 5549 using GeometryFlagsNV = GeometryFlagsKHR; 5550 5551 5552 template <> struct FlagTraits<GeometryFlagBitsKHR> 5553 { 5554 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5555 static VULKAN_HPP_CONST_OR_CONSTEXPR GeometryFlagsKHR allFlags = 5556 GeometryFlagBitsKHR::eOpaque 5557 | GeometryFlagBitsKHR::eNoDuplicateAnyHitInvocation; 5558 }; 5559 5560 enum class GeometryInstanceFlagBitsKHR : VkGeometryInstanceFlagsKHR 5561 { 5562 eTriangleFacingCullDisable = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR, 5563 eTriangleFlipFacing = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR, 5564 eForceOpaque = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR, 5565 eForceNoOpaque = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR, 5566 eForceOpacityMicromap2StateEXT = VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT, 5567 eDisableOpacityMicromapsEXT = VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT, 5568 eTriangleCullDisable = VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV, 5569 eTriangleFrontCounterclockwiseKHR = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR, 5570 eTriangleFrontCounterclockwise = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV 5571 }; 5572 using GeometryInstanceFlagBitsNV = GeometryInstanceFlagBitsKHR; 5573 5574 using GeometryInstanceFlagsKHR = Flags<GeometryInstanceFlagBitsKHR>; 5575 using GeometryInstanceFlagsNV = GeometryInstanceFlagsKHR; 5576 5577 5578 template <> struct FlagTraits<GeometryInstanceFlagBitsKHR> 5579 { 5580 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5581 static VULKAN_HPP_CONST_OR_CONSTEXPR GeometryInstanceFlagsKHR allFlags = 5582 GeometryInstanceFlagBitsKHR::eTriangleFacingCullDisable 5583 | GeometryInstanceFlagBitsKHR::eTriangleFlipFacing 5584 | GeometryInstanceFlagBitsKHR::eForceOpaque 5585 | GeometryInstanceFlagBitsKHR::eForceNoOpaque 5586 | GeometryInstanceFlagBitsKHR::eForceOpacityMicromap2StateEXT 5587 | GeometryInstanceFlagBitsKHR::eDisableOpacityMicromapsEXT; 5588 }; 5589 5590 enum class BuildAccelerationStructureFlagBitsKHR : VkBuildAccelerationStructureFlagsKHR 5591 { 5592 eAllowUpdate = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR, 5593 eAllowCompaction = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR, 5594 ePreferFastTrace = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR, 5595 ePreferFastBuild = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR, 5596 eLowMemory = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR, 5597 eMotionNV = VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV, 5598 eAllowOpacityMicromapUpdateEXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT, 5599 eAllowDisableOpacityMicromapsEXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT, 5600 eAllowOpacityMicromapDataUpdateEXT = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT 5601 }; 5602 using BuildAccelerationStructureFlagBitsNV = BuildAccelerationStructureFlagBitsKHR; 5603 5604 using BuildAccelerationStructureFlagsKHR = Flags<BuildAccelerationStructureFlagBitsKHR>; 5605 using BuildAccelerationStructureFlagsNV = BuildAccelerationStructureFlagsKHR; 5606 5607 5608 template <> struct FlagTraits<BuildAccelerationStructureFlagBitsKHR> 5609 { 5610 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5611 static VULKAN_HPP_CONST_OR_CONSTEXPR BuildAccelerationStructureFlagsKHR allFlags = 5612 BuildAccelerationStructureFlagBitsKHR::eAllowUpdate 5613 | BuildAccelerationStructureFlagBitsKHR::eAllowCompaction 5614 | BuildAccelerationStructureFlagBitsKHR::ePreferFastTrace 5615 | BuildAccelerationStructureFlagBitsKHR::ePreferFastBuild 5616 | BuildAccelerationStructureFlagBitsKHR::eLowMemory 5617 | BuildAccelerationStructureFlagBitsKHR::eMotionNV 5618 | BuildAccelerationStructureFlagBitsKHR::eAllowOpacityMicromapUpdateEXT 5619 | BuildAccelerationStructureFlagBitsKHR::eAllowDisableOpacityMicromapsEXT 5620 | BuildAccelerationStructureFlagBitsKHR::eAllowOpacityMicromapDataUpdateEXT; 5621 }; 5622 5623 enum class CopyAccelerationStructureModeKHR 5624 { 5625 eClone = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR, 5626 eCompact = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR, 5627 eSerialize = VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR, 5628 eDeserialize = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR 5629 }; 5630 using CopyAccelerationStructureModeNV = CopyAccelerationStructureModeKHR; 5631 5632 enum class GeometryTypeKHR 5633 { 5634 eTriangles = VK_GEOMETRY_TYPE_TRIANGLES_KHR, 5635 eAabbs = VK_GEOMETRY_TYPE_AABBS_KHR, 5636 eInstances = VK_GEOMETRY_TYPE_INSTANCES_KHR 5637 }; 5638 using GeometryTypeNV = GeometryTypeKHR; 5639 5640 enum class AccelerationStructureCompatibilityKHR 5641 { 5642 eCompatible = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR, 5643 eIncompatible = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR 5644 }; 5645 5646 enum class AccelerationStructureCreateFlagBitsKHR : VkAccelerationStructureCreateFlagsKHR 5647 { 5648 eDeviceAddressCaptureReplay = VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR, 5649 eDescriptorBufferCaptureReplayEXT = VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT, 5650 eMotionNV = VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV 5651 }; 5652 5653 using AccelerationStructureCreateFlagsKHR = Flags<AccelerationStructureCreateFlagBitsKHR>; 5654 5655 5656 template <> struct FlagTraits<AccelerationStructureCreateFlagBitsKHR> 5657 { 5658 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5659 static VULKAN_HPP_CONST_OR_CONSTEXPR AccelerationStructureCreateFlagsKHR allFlags = 5660 AccelerationStructureCreateFlagBitsKHR::eDeviceAddressCaptureReplay 5661 | AccelerationStructureCreateFlagBitsKHR::eDescriptorBufferCaptureReplayEXT 5662 | AccelerationStructureCreateFlagBitsKHR::eMotionNV; 5663 }; 5664 5665 enum class BuildAccelerationStructureModeKHR 5666 { 5667 eBuild = VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR, 5668 eUpdate = VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR 5669 }; 5670 5671 //=== VK_NV_framebuffer_mixed_samples === 5672 5673 enum class CoverageModulationModeNV 5674 { 5675 eNone = VK_COVERAGE_MODULATION_MODE_NONE_NV, 5676 eRgb = VK_COVERAGE_MODULATION_MODE_RGB_NV, 5677 eAlpha = VK_COVERAGE_MODULATION_MODE_ALPHA_NV, 5678 eRgba = VK_COVERAGE_MODULATION_MODE_RGBA_NV 5679 }; 5680 5681 enum class PipelineCoverageModulationStateCreateFlagBitsNV : VkPipelineCoverageModulationStateCreateFlagsNV 5682 {}; 5683 5684 using PipelineCoverageModulationStateCreateFlagsNV = Flags<PipelineCoverageModulationStateCreateFlagBitsNV>; 5685 5686 5687 template <> struct FlagTraits<PipelineCoverageModulationStateCreateFlagBitsNV> 5688 { 5689 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5690 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCoverageModulationStateCreateFlagsNV allFlags = {}; 5691 }; 5692 5693 //=== VK_EXT_validation_cache === 5694 5695 enum class ValidationCacheHeaderVersionEXT 5696 { 5697 eOne = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT 5698 }; 5699 5700 enum class ValidationCacheCreateFlagBitsEXT : VkValidationCacheCreateFlagsEXT 5701 {}; 5702 5703 using ValidationCacheCreateFlagsEXT = Flags<ValidationCacheCreateFlagBitsEXT>; 5704 5705 5706 template <> struct FlagTraits<ValidationCacheCreateFlagBitsEXT> 5707 { 5708 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5709 static VULKAN_HPP_CONST_OR_CONSTEXPR ValidationCacheCreateFlagsEXT allFlags = {}; 5710 }; 5711 5712 //=== VK_NV_shading_rate_image === 5713 5714 enum class ShadingRatePaletteEntryNV 5715 { 5716 eNoInvocations = VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV, 5717 e16InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV, 5718 e8InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV, 5719 e4InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV, 5720 e2InvocationsPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV, 5721 e1InvocationPerPixel = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV, 5722 e1InvocationPer2X1Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV, 5723 e1InvocationPer1X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV, 5724 e1InvocationPer2X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV, 5725 e1InvocationPer4X2Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV, 5726 e1InvocationPer2X4Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV, 5727 e1InvocationPer4X4Pixels = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV 5728 }; 5729 5730 enum class CoarseSampleOrderTypeNV 5731 { 5732 eDefault = VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV, 5733 eCustom = VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV, 5734 ePixelMajor = VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV, 5735 eSampleMajor = VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV 5736 }; 5737 5738 //=== VK_NV_ray_tracing === 5739 5740 enum class AccelerationStructureMemoryRequirementsTypeNV 5741 { 5742 eObject = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV, 5743 eBuildScratch = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV, 5744 eUpdateScratch = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV 5745 }; 5746 5747 //=== VK_AMD_pipeline_compiler_control === 5748 5749 enum class PipelineCompilerControlFlagBitsAMD : VkPipelineCompilerControlFlagsAMD 5750 {}; 5751 5752 using PipelineCompilerControlFlagsAMD = Flags<PipelineCompilerControlFlagBitsAMD>; 5753 5754 5755 template <> struct FlagTraits<PipelineCompilerControlFlagBitsAMD> 5756 { 5757 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5758 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCompilerControlFlagsAMD allFlags = {}; 5759 }; 5760 5761 //=== VK_EXT_calibrated_timestamps === 5762 5763 enum class TimeDomainEXT 5764 { 5765 eDevice = VK_TIME_DOMAIN_DEVICE_EXT, 5766 eClockMonotonic = VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT, 5767 eClockMonotonicRaw = VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT, 5768 eQueryPerformanceCounter = VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT 5769 }; 5770 5771 //=== VK_KHR_global_priority === 5772 5773 enum class QueueGlobalPriorityKHR 5774 { 5775 eLow = VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR, 5776 eMedium = VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR, 5777 eHigh = VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR, 5778 eRealtime = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR 5779 }; 5780 using QueueGlobalPriorityEXT = QueueGlobalPriorityKHR; 5781 5782 //=== VK_AMD_memory_overallocation_behavior === 5783 5784 enum class MemoryOverallocationBehaviorAMD 5785 { 5786 eDefault = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD, 5787 eAllowed = VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD, 5788 eDisallowed = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD 5789 }; 5790 5791 //=== VK_INTEL_performance_query === 5792 5793 enum class PerformanceConfigurationTypeINTEL 5794 { 5795 eCommandQueueMetricsDiscoveryActivated = VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL 5796 }; 5797 5798 enum class QueryPoolSamplingModeINTEL 5799 { 5800 eManual = VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL 5801 }; 5802 5803 enum class PerformanceOverrideTypeINTEL 5804 { 5805 eNullHardware = VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL, 5806 eFlushGpuCaches = VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL 5807 }; 5808 5809 enum class PerformanceParameterTypeINTEL 5810 { 5811 eHwCountersSupported = VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL, 5812 eStreamMarkerValidBits = VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL 5813 }; 5814 5815 enum class PerformanceValueTypeINTEL 5816 { 5817 eUint32 = VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL, 5818 eUint64 = VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL, 5819 eFloat = VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL, 5820 eBool = VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL, 5821 eString = VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL 5822 }; 5823 5824 #if defined( VK_USE_PLATFORM_FUCHSIA ) 5825 //=== VK_FUCHSIA_imagepipe_surface === 5826 5827 enum class ImagePipeSurfaceCreateFlagBitsFUCHSIA : VkImagePipeSurfaceCreateFlagsFUCHSIA 5828 {}; 5829 5830 using ImagePipeSurfaceCreateFlagsFUCHSIA = Flags<ImagePipeSurfaceCreateFlagBitsFUCHSIA>; 5831 5832 5833 template <> struct FlagTraits<ImagePipeSurfaceCreateFlagBitsFUCHSIA> 5834 { 5835 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5836 static VULKAN_HPP_CONST_OR_CONSTEXPR ImagePipeSurfaceCreateFlagsFUCHSIA allFlags = {}; 5837 }; 5838 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 5839 5840 #if defined( VK_USE_PLATFORM_METAL_EXT ) 5841 //=== VK_EXT_metal_surface === 5842 5843 enum class MetalSurfaceCreateFlagBitsEXT : VkMetalSurfaceCreateFlagsEXT 5844 {}; 5845 5846 using MetalSurfaceCreateFlagsEXT = Flags<MetalSurfaceCreateFlagBitsEXT>; 5847 5848 5849 template <> struct FlagTraits<MetalSurfaceCreateFlagBitsEXT> 5850 { 5851 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5852 static VULKAN_HPP_CONST_OR_CONSTEXPR MetalSurfaceCreateFlagsEXT allFlags = {}; 5853 }; 5854 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 5855 5856 //=== VK_KHR_fragment_shading_rate === 5857 5858 enum class FragmentShadingRateCombinerOpKHR 5859 { 5860 eKeep = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR, 5861 eReplace = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR, 5862 eMin = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR, 5863 eMax = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR, 5864 eMul = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR 5865 }; 5866 5867 //=== VK_AMD_shader_core_properties2 === 5868 5869 enum class ShaderCorePropertiesFlagBitsAMD : VkShaderCorePropertiesFlagsAMD 5870 {}; 5871 5872 using ShaderCorePropertiesFlagsAMD = Flags<ShaderCorePropertiesFlagBitsAMD>; 5873 5874 5875 template <> struct FlagTraits<ShaderCorePropertiesFlagBitsAMD> 5876 { 5877 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5878 static VULKAN_HPP_CONST_OR_CONSTEXPR ShaderCorePropertiesFlagsAMD allFlags = {}; 5879 }; 5880 5881 //=== VK_EXT_validation_features === 5882 5883 enum class ValidationFeatureEnableEXT 5884 { 5885 eGpuAssisted = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT, 5886 eGpuAssistedReserveBindingSlot = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT, 5887 eBestPractices = VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT, 5888 eDebugPrintf = VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT, 5889 eSynchronizationValidation = VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT 5890 }; 5891 5892 enum class ValidationFeatureDisableEXT 5893 { 5894 eAll = VK_VALIDATION_FEATURE_DISABLE_ALL_EXT, 5895 eShaders = VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT, 5896 eThreadSafety = VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT, 5897 eApiParameters = VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT, 5898 eObjectLifetimes = VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT, 5899 eCoreChecks = VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT, 5900 eUniqueHandles = VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT, 5901 eShaderValidationCache = VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT 5902 }; 5903 5904 //=== VK_NV_cooperative_matrix === 5905 5906 enum class ScopeNV 5907 { 5908 eDevice = VK_SCOPE_DEVICE_NV, 5909 eWorkgroup = VK_SCOPE_WORKGROUP_NV, 5910 eSubgroup = VK_SCOPE_SUBGROUP_NV, 5911 eQueueFamily = VK_SCOPE_QUEUE_FAMILY_NV 5912 }; 5913 5914 enum class ComponentTypeNV 5915 { 5916 eFloat16 = VK_COMPONENT_TYPE_FLOAT16_NV, 5917 eFloat32 = VK_COMPONENT_TYPE_FLOAT32_NV, 5918 eFloat64 = VK_COMPONENT_TYPE_FLOAT64_NV, 5919 eSint8 = VK_COMPONENT_TYPE_SINT8_NV, 5920 eSint16 = VK_COMPONENT_TYPE_SINT16_NV, 5921 eSint32 = VK_COMPONENT_TYPE_SINT32_NV, 5922 eSint64 = VK_COMPONENT_TYPE_SINT64_NV, 5923 eUint8 = VK_COMPONENT_TYPE_UINT8_NV, 5924 eUint16 = VK_COMPONENT_TYPE_UINT16_NV, 5925 eUint32 = VK_COMPONENT_TYPE_UINT32_NV, 5926 eUint64 = VK_COMPONENT_TYPE_UINT64_NV 5927 }; 5928 5929 //=== VK_NV_coverage_reduction_mode === 5930 5931 enum class CoverageReductionModeNV 5932 { 5933 eMerge = VK_COVERAGE_REDUCTION_MODE_MERGE_NV, 5934 eTruncate = VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV 5935 }; 5936 5937 enum class PipelineCoverageReductionStateCreateFlagBitsNV : VkPipelineCoverageReductionStateCreateFlagsNV 5938 {}; 5939 5940 using PipelineCoverageReductionStateCreateFlagsNV = Flags<PipelineCoverageReductionStateCreateFlagBitsNV>; 5941 5942 5943 template <> struct FlagTraits<PipelineCoverageReductionStateCreateFlagBitsNV> 5944 { 5945 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5946 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCoverageReductionStateCreateFlagsNV allFlags = {}; 5947 }; 5948 5949 //=== VK_EXT_provoking_vertex === 5950 5951 enum class ProvokingVertexModeEXT 5952 { 5953 eFirstVertex = VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT, 5954 eLastVertex = VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT 5955 }; 5956 5957 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 5958 //=== VK_EXT_full_screen_exclusive === 5959 5960 enum class FullScreenExclusiveEXT 5961 { 5962 eDefault = VK_FULL_SCREEN_EXCLUSIVE_DEFAULT_EXT, 5963 eAllowed = VK_FULL_SCREEN_EXCLUSIVE_ALLOWED_EXT, 5964 eDisallowed = VK_FULL_SCREEN_EXCLUSIVE_DISALLOWED_EXT, 5965 eApplicationControlled = VK_FULL_SCREEN_EXCLUSIVE_APPLICATION_CONTROLLED_EXT 5966 }; 5967 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 5968 5969 //=== VK_EXT_headless_surface === 5970 5971 enum class HeadlessSurfaceCreateFlagBitsEXT : VkHeadlessSurfaceCreateFlagsEXT 5972 {}; 5973 5974 using HeadlessSurfaceCreateFlagsEXT = Flags<HeadlessSurfaceCreateFlagBitsEXT>; 5975 5976 5977 template <> struct FlagTraits<HeadlessSurfaceCreateFlagBitsEXT> 5978 { 5979 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 5980 static VULKAN_HPP_CONST_OR_CONSTEXPR HeadlessSurfaceCreateFlagsEXT allFlags = {}; 5981 }; 5982 5983 //=== VK_EXT_line_rasterization === 5984 5985 enum class LineRasterizationModeEXT 5986 { 5987 eDefault = VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT, 5988 eRectangular = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT, 5989 eBresenham = VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT, 5990 eRectangularSmooth = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT 5991 }; 5992 5993 //=== VK_KHR_pipeline_executable_properties === 5994 5995 enum class PipelineExecutableStatisticFormatKHR 5996 { 5997 eBool32 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR, 5998 eInt64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR, 5999 eUint64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR, 6000 eFloat64 = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR 6001 }; 6002 6003 //=== VK_EXT_surface_maintenance1 === 6004 6005 enum class PresentScalingFlagBitsEXT : VkPresentScalingFlagsEXT 6006 { 6007 eOneToOne = VK_PRESENT_SCALING_ONE_TO_ONE_BIT_EXT, 6008 eAspectRatioStretch = VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_EXT, 6009 eStretch = VK_PRESENT_SCALING_STRETCH_BIT_EXT 6010 }; 6011 6012 using PresentScalingFlagsEXT = Flags<PresentScalingFlagBitsEXT>; 6013 6014 6015 template <> struct FlagTraits<PresentScalingFlagBitsEXT> 6016 { 6017 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6018 static VULKAN_HPP_CONST_OR_CONSTEXPR PresentScalingFlagsEXT allFlags = 6019 PresentScalingFlagBitsEXT::eOneToOne 6020 | PresentScalingFlagBitsEXT::eAspectRatioStretch 6021 | PresentScalingFlagBitsEXT::eStretch; 6022 }; 6023 6024 enum class PresentGravityFlagBitsEXT : VkPresentGravityFlagsEXT 6025 { 6026 eMin = VK_PRESENT_GRAVITY_MIN_BIT_EXT, 6027 eMax = VK_PRESENT_GRAVITY_MAX_BIT_EXT, 6028 eCentered = VK_PRESENT_GRAVITY_CENTERED_BIT_EXT 6029 }; 6030 6031 using PresentGravityFlagsEXT = Flags<PresentGravityFlagBitsEXT>; 6032 6033 6034 template <> struct FlagTraits<PresentGravityFlagBitsEXT> 6035 { 6036 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6037 static VULKAN_HPP_CONST_OR_CONSTEXPR PresentGravityFlagsEXT allFlags = 6038 PresentGravityFlagBitsEXT::eMin 6039 | PresentGravityFlagBitsEXT::eMax 6040 | PresentGravityFlagBitsEXT::eCentered; 6041 }; 6042 6043 //=== VK_NV_device_generated_commands === 6044 6045 enum class IndirectStateFlagBitsNV : VkIndirectStateFlagsNV 6046 { 6047 eFlagFrontface = VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV 6048 }; 6049 6050 using IndirectStateFlagsNV = Flags<IndirectStateFlagBitsNV>; 6051 6052 6053 template <> struct FlagTraits<IndirectStateFlagBitsNV> 6054 { 6055 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6056 static VULKAN_HPP_CONST_OR_CONSTEXPR IndirectStateFlagsNV allFlags = 6057 IndirectStateFlagBitsNV::eFlagFrontface; 6058 }; 6059 6060 enum class IndirectCommandsTokenTypeNV 6061 { 6062 eShaderGroup = VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV, 6063 eStateFlags = VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV, 6064 eIndexBuffer = VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV, 6065 eVertexBuffer = VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV, 6066 ePushConstant = VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV, 6067 eDrawIndexed = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV, 6068 eDraw = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV, 6069 eDrawTasks = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV, 6070 eDrawMeshTasks = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV 6071 }; 6072 6073 enum class IndirectCommandsLayoutUsageFlagBitsNV : VkIndirectCommandsLayoutUsageFlagsNV 6074 { 6075 eExplicitPreprocess = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV, 6076 eIndexedSequences = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV, 6077 eUnorderedSequences = VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV 6078 }; 6079 6080 using IndirectCommandsLayoutUsageFlagsNV = Flags<IndirectCommandsLayoutUsageFlagBitsNV>; 6081 6082 6083 template <> struct FlagTraits<IndirectCommandsLayoutUsageFlagBitsNV> 6084 { 6085 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6086 static VULKAN_HPP_CONST_OR_CONSTEXPR IndirectCommandsLayoutUsageFlagsNV allFlags = 6087 IndirectCommandsLayoutUsageFlagBitsNV::eExplicitPreprocess 6088 | IndirectCommandsLayoutUsageFlagBitsNV::eIndexedSequences 6089 | IndirectCommandsLayoutUsageFlagBitsNV::eUnorderedSequences; 6090 }; 6091 6092 //=== VK_EXT_device_memory_report === 6093 6094 enum class DeviceMemoryReportEventTypeEXT 6095 { 6096 eAllocate = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT, 6097 eFree = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT, 6098 eImport = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT, 6099 eUnimport = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT, 6100 eAllocationFailed = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT 6101 }; 6102 6103 enum class DeviceMemoryReportFlagBitsEXT : VkDeviceMemoryReportFlagsEXT 6104 {}; 6105 6106 using DeviceMemoryReportFlagsEXT = Flags<DeviceMemoryReportFlagBitsEXT>; 6107 6108 6109 template <> struct FlagTraits<DeviceMemoryReportFlagBitsEXT> 6110 { 6111 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6112 static VULKAN_HPP_CONST_OR_CONSTEXPR DeviceMemoryReportFlagsEXT allFlags = {}; 6113 }; 6114 6115 //=== VK_EXT_pipeline_creation_cache_control === 6116 6117 enum class PipelineCacheCreateFlagBits : VkPipelineCacheCreateFlags 6118 { 6119 eExternallySynchronized = VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT, 6120 eExternallySynchronizedEXT = VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT 6121 }; 6122 6123 using PipelineCacheCreateFlags = Flags<PipelineCacheCreateFlagBits>; 6124 6125 6126 template <> struct FlagTraits<PipelineCacheCreateFlagBits> 6127 { 6128 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6129 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineCacheCreateFlags allFlags = 6130 PipelineCacheCreateFlagBits::eExternallySynchronized; 6131 }; 6132 6133 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 6134 //=== VK_KHR_video_encode_queue === 6135 6136 enum class VideoEncodeCapabilityFlagBitsKHR : VkVideoEncodeCapabilityFlagsKHR 6137 { 6138 ePrecedingExternallyEncodedBytes = VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR 6139 }; 6140 6141 using VideoEncodeCapabilityFlagsKHR = Flags<VideoEncodeCapabilityFlagBitsKHR>; 6142 6143 6144 template <> struct FlagTraits<VideoEncodeCapabilityFlagBitsKHR> 6145 { 6146 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6147 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeCapabilityFlagsKHR allFlags = 6148 VideoEncodeCapabilityFlagBitsKHR::ePrecedingExternallyEncodedBytes; 6149 }; 6150 6151 enum class VideoEncodeUsageFlagBitsKHR : VkVideoEncodeUsageFlagsKHR 6152 { 6153 eDefault = VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR, 6154 eTranscoding = VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR, 6155 eStreaming = VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR, 6156 eRecording = VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR, 6157 eConferencing = VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR 6158 }; 6159 6160 using VideoEncodeUsageFlagsKHR = Flags<VideoEncodeUsageFlagBitsKHR>; 6161 6162 6163 template <> struct FlagTraits<VideoEncodeUsageFlagBitsKHR> 6164 { 6165 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6166 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeUsageFlagsKHR allFlags = 6167 VideoEncodeUsageFlagBitsKHR::eDefault 6168 | VideoEncodeUsageFlagBitsKHR::eTranscoding 6169 | VideoEncodeUsageFlagBitsKHR::eStreaming 6170 | VideoEncodeUsageFlagBitsKHR::eRecording 6171 | VideoEncodeUsageFlagBitsKHR::eConferencing; 6172 }; 6173 6174 enum class VideoEncodeContentFlagBitsKHR : VkVideoEncodeContentFlagsKHR 6175 { 6176 eDefault = VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR, 6177 eCamera = VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR, 6178 eDesktop = VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR, 6179 eRendered = VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR 6180 }; 6181 6182 using VideoEncodeContentFlagsKHR = Flags<VideoEncodeContentFlagBitsKHR>; 6183 6184 6185 template <> struct FlagTraits<VideoEncodeContentFlagBitsKHR> 6186 { 6187 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6188 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeContentFlagsKHR allFlags = 6189 VideoEncodeContentFlagBitsKHR::eDefault 6190 | VideoEncodeContentFlagBitsKHR::eCamera 6191 | VideoEncodeContentFlagBitsKHR::eDesktop 6192 | VideoEncodeContentFlagBitsKHR::eRendered; 6193 }; 6194 6195 enum class VideoEncodeTuningModeKHR 6196 { 6197 eDefault = VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR, 6198 eHighQuality = VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR, 6199 eLowLatency = VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR, 6200 eUltraLowLatency = VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR, 6201 eLossless = VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR 6202 }; 6203 6204 enum class VideoEncodeRateControlModeFlagBitsKHR : VkVideoEncodeRateControlModeFlagsKHR 6205 { 6206 eNone = VK_VIDEO_ENCODE_RATE_CONTROL_MODE_NONE_BIT_KHR, 6207 eCbr = VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR, 6208 eVbr = VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR 6209 }; 6210 6211 using VideoEncodeRateControlModeFlagsKHR = Flags<VideoEncodeRateControlModeFlagBitsKHR>; 6212 6213 6214 template <> struct FlagTraits<VideoEncodeRateControlModeFlagBitsKHR> 6215 { 6216 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6217 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeRateControlModeFlagsKHR allFlags = 6218 VideoEncodeRateControlModeFlagBitsKHR::eNone 6219 | VideoEncodeRateControlModeFlagBitsKHR::eCbr 6220 | VideoEncodeRateControlModeFlagBitsKHR::eVbr; 6221 }; 6222 6223 enum class VideoEncodeFlagBitsKHR : VkVideoEncodeFlagsKHR 6224 {}; 6225 6226 using VideoEncodeFlagsKHR = Flags<VideoEncodeFlagBitsKHR>; 6227 6228 6229 template <> struct FlagTraits<VideoEncodeFlagBitsKHR> 6230 { 6231 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6232 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeFlagsKHR allFlags = {}; 6233 }; 6234 6235 enum class VideoEncodeRateControlFlagBitsKHR : VkVideoEncodeRateControlFlagsKHR 6236 {}; 6237 6238 using VideoEncodeRateControlFlagsKHR = Flags<VideoEncodeRateControlFlagBitsKHR>; 6239 6240 6241 template <> struct FlagTraits<VideoEncodeRateControlFlagBitsKHR> 6242 { 6243 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6244 static VULKAN_HPP_CONST_OR_CONSTEXPR VideoEncodeRateControlFlagsKHR allFlags = {}; 6245 }; 6246 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 6247 6248 //=== VK_NV_device_diagnostics_config === 6249 6250 enum class DeviceDiagnosticsConfigFlagBitsNV : VkDeviceDiagnosticsConfigFlagsNV 6251 { 6252 eEnableShaderDebugInfo = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV, 6253 eEnableResourceTracking = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV, 6254 eEnableAutomaticCheckpoints = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV, 6255 eEnableShaderErrorReporting = VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV 6256 }; 6257 6258 using DeviceDiagnosticsConfigFlagsNV = Flags<DeviceDiagnosticsConfigFlagBitsNV>; 6259 6260 6261 template <> struct FlagTraits<DeviceDiagnosticsConfigFlagBitsNV> 6262 { 6263 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6264 static VULKAN_HPP_CONST_OR_CONSTEXPR DeviceDiagnosticsConfigFlagsNV allFlags = 6265 DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderDebugInfo 6266 | DeviceDiagnosticsConfigFlagBitsNV::eEnableResourceTracking 6267 | DeviceDiagnosticsConfigFlagBitsNV::eEnableAutomaticCheckpoints 6268 | DeviceDiagnosticsConfigFlagBitsNV::eEnableShaderErrorReporting; 6269 }; 6270 6271 #if defined( VK_USE_PLATFORM_METAL_EXT ) 6272 //=== VK_EXT_metal_objects === 6273 6274 enum class ExportMetalObjectTypeFlagBitsEXT : VkExportMetalObjectTypeFlagsEXT 6275 { 6276 eMetalDevice = VK_EXPORT_METAL_OBJECT_TYPE_METAL_DEVICE_BIT_EXT, 6277 eMetalCommandQueue = VK_EXPORT_METAL_OBJECT_TYPE_METAL_COMMAND_QUEUE_BIT_EXT, 6278 eMetalBuffer = VK_EXPORT_METAL_OBJECT_TYPE_METAL_BUFFER_BIT_EXT, 6279 eMetalTexture = VK_EXPORT_METAL_OBJECT_TYPE_METAL_TEXTURE_BIT_EXT, 6280 eMetalIosurface = VK_EXPORT_METAL_OBJECT_TYPE_METAL_IOSURFACE_BIT_EXT, 6281 eMetalSharedEvent = VK_EXPORT_METAL_OBJECT_TYPE_METAL_SHARED_EVENT_BIT_EXT 6282 }; 6283 6284 using ExportMetalObjectTypeFlagsEXT = Flags<ExportMetalObjectTypeFlagBitsEXT>; 6285 6286 6287 template <> struct FlagTraits<ExportMetalObjectTypeFlagBitsEXT> 6288 { 6289 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6290 static VULKAN_HPP_CONST_OR_CONSTEXPR ExportMetalObjectTypeFlagsEXT allFlags = 6291 ExportMetalObjectTypeFlagBitsEXT::eMetalDevice 6292 | ExportMetalObjectTypeFlagBitsEXT::eMetalCommandQueue 6293 | ExportMetalObjectTypeFlagBitsEXT::eMetalBuffer 6294 | ExportMetalObjectTypeFlagBitsEXT::eMetalTexture 6295 | ExportMetalObjectTypeFlagBitsEXT::eMetalIosurface 6296 | ExportMetalObjectTypeFlagBitsEXT::eMetalSharedEvent; 6297 }; 6298 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 6299 6300 //=== VK_EXT_graphics_pipeline_library === 6301 6302 enum class GraphicsPipelineLibraryFlagBitsEXT : VkGraphicsPipelineLibraryFlagsEXT 6303 { 6304 eVertexInputInterface = VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT, 6305 ePreRasterizationShaders = VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT, 6306 eFragmentShader = VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT, 6307 eFragmentOutputInterface = VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT 6308 }; 6309 6310 using GraphicsPipelineLibraryFlagsEXT = Flags<GraphicsPipelineLibraryFlagBitsEXT>; 6311 6312 6313 template <> struct FlagTraits<GraphicsPipelineLibraryFlagBitsEXT> 6314 { 6315 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6316 static VULKAN_HPP_CONST_OR_CONSTEXPR GraphicsPipelineLibraryFlagsEXT allFlags = 6317 GraphicsPipelineLibraryFlagBitsEXT::eVertexInputInterface 6318 | GraphicsPipelineLibraryFlagBitsEXT::ePreRasterizationShaders 6319 | GraphicsPipelineLibraryFlagBitsEXT::eFragmentShader 6320 | GraphicsPipelineLibraryFlagBitsEXT::eFragmentOutputInterface; 6321 }; 6322 6323 enum class PipelineLayoutCreateFlagBits : VkPipelineLayoutCreateFlags 6324 { 6325 eIndependentSetsEXT = VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT 6326 }; 6327 6328 using PipelineLayoutCreateFlags = Flags<PipelineLayoutCreateFlagBits>; 6329 6330 6331 template <> struct FlagTraits<PipelineLayoutCreateFlagBits> 6332 { 6333 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6334 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineLayoutCreateFlags allFlags = 6335 PipelineLayoutCreateFlagBits::eIndependentSetsEXT; 6336 }; 6337 6338 //=== VK_NV_fragment_shading_rate_enums === 6339 6340 enum class FragmentShadingRateNV 6341 { 6342 e1InvocationPerPixel = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV, 6343 e1InvocationPer1X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV, 6344 e1InvocationPer2X1Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV, 6345 e1InvocationPer2X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV, 6346 e1InvocationPer2X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV, 6347 e1InvocationPer4X2Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV, 6348 e1InvocationPer4X4Pixels = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV, 6349 e2InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV, 6350 e4InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV, 6351 e8InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV, 6352 e16InvocationsPerPixel = VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV, 6353 eNoInvocations = VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV 6354 }; 6355 6356 enum class FragmentShadingRateTypeNV 6357 { 6358 eFragmentSize = VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV, 6359 eEnums = VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV 6360 }; 6361 6362 //=== VK_NV_ray_tracing_motion_blur === 6363 6364 enum class AccelerationStructureMotionInstanceTypeNV 6365 { 6366 eStatic = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV, 6367 eMatrixMotion = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV, 6368 eSrtMotion = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV 6369 }; 6370 6371 enum class AccelerationStructureMotionInfoFlagBitsNV : VkAccelerationStructureMotionInfoFlagsNV 6372 {}; 6373 6374 using AccelerationStructureMotionInfoFlagsNV = Flags<AccelerationStructureMotionInfoFlagBitsNV>; 6375 6376 6377 template <> struct FlagTraits<AccelerationStructureMotionInfoFlagBitsNV> 6378 { 6379 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6380 static VULKAN_HPP_CONST_OR_CONSTEXPR AccelerationStructureMotionInfoFlagsNV allFlags = {}; 6381 }; 6382 6383 enum class AccelerationStructureMotionInstanceFlagBitsNV : VkAccelerationStructureMotionInstanceFlagsNV 6384 {}; 6385 6386 using AccelerationStructureMotionInstanceFlagsNV = Flags<AccelerationStructureMotionInstanceFlagBitsNV>; 6387 6388 6389 template <> struct FlagTraits<AccelerationStructureMotionInstanceFlagBitsNV> 6390 { 6391 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6392 static VULKAN_HPP_CONST_OR_CONSTEXPR AccelerationStructureMotionInstanceFlagsNV allFlags = {}; 6393 }; 6394 6395 //=== VK_EXT_image_compression_control === 6396 6397 enum class ImageCompressionFlagBitsEXT : VkImageCompressionFlagsEXT 6398 { 6399 eDefault = VK_IMAGE_COMPRESSION_DEFAULT_EXT, 6400 eFixedRateDefault = VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT, 6401 eFixedRateExplicit = VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT, 6402 eDisabled = VK_IMAGE_COMPRESSION_DISABLED_EXT 6403 }; 6404 6405 using ImageCompressionFlagsEXT = Flags<ImageCompressionFlagBitsEXT>; 6406 6407 6408 template <> struct FlagTraits<ImageCompressionFlagBitsEXT> 6409 { 6410 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6411 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageCompressionFlagsEXT allFlags = 6412 ImageCompressionFlagBitsEXT::eDefault 6413 | ImageCompressionFlagBitsEXT::eFixedRateDefault 6414 | ImageCompressionFlagBitsEXT::eFixedRateExplicit 6415 | ImageCompressionFlagBitsEXT::eDisabled; 6416 }; 6417 6418 enum class ImageCompressionFixedRateFlagBitsEXT : VkImageCompressionFixedRateFlagsEXT 6419 { 6420 eNone = VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT, 6421 e1Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT, 6422 e2Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT, 6423 e3Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT, 6424 e4Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT, 6425 e5Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT, 6426 e6Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT, 6427 e7Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT, 6428 e8Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT, 6429 e9Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT, 6430 e10Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT, 6431 e11Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT, 6432 e12Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT, 6433 e13Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT, 6434 e14Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT, 6435 e15Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT, 6436 e16Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT, 6437 e17Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT, 6438 e18Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT, 6439 e19Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT, 6440 e20Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT, 6441 e21Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT, 6442 e22Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT, 6443 e23Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT, 6444 e24Bpc = VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT 6445 }; 6446 6447 using ImageCompressionFixedRateFlagsEXT = Flags<ImageCompressionFixedRateFlagBitsEXT>; 6448 6449 6450 template <> struct FlagTraits<ImageCompressionFixedRateFlagBitsEXT> 6451 { 6452 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6453 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageCompressionFixedRateFlagsEXT allFlags = 6454 ImageCompressionFixedRateFlagBitsEXT::eNone 6455 | ImageCompressionFixedRateFlagBitsEXT::e1Bpc 6456 | ImageCompressionFixedRateFlagBitsEXT::e2Bpc 6457 | ImageCompressionFixedRateFlagBitsEXT::e3Bpc 6458 | ImageCompressionFixedRateFlagBitsEXT::e4Bpc 6459 | ImageCompressionFixedRateFlagBitsEXT::e5Bpc 6460 | ImageCompressionFixedRateFlagBitsEXT::e6Bpc 6461 | ImageCompressionFixedRateFlagBitsEXT::e7Bpc 6462 | ImageCompressionFixedRateFlagBitsEXT::e8Bpc 6463 | ImageCompressionFixedRateFlagBitsEXT::e9Bpc 6464 | ImageCompressionFixedRateFlagBitsEXT::e10Bpc 6465 | ImageCompressionFixedRateFlagBitsEXT::e11Bpc 6466 | ImageCompressionFixedRateFlagBitsEXT::e12Bpc 6467 | ImageCompressionFixedRateFlagBitsEXT::e13Bpc 6468 | ImageCompressionFixedRateFlagBitsEXT::e14Bpc 6469 | ImageCompressionFixedRateFlagBitsEXT::e15Bpc 6470 | ImageCompressionFixedRateFlagBitsEXT::e16Bpc 6471 | ImageCompressionFixedRateFlagBitsEXT::e17Bpc 6472 | ImageCompressionFixedRateFlagBitsEXT::e18Bpc 6473 | ImageCompressionFixedRateFlagBitsEXT::e19Bpc 6474 | ImageCompressionFixedRateFlagBitsEXT::e20Bpc 6475 | ImageCompressionFixedRateFlagBitsEXT::e21Bpc 6476 | ImageCompressionFixedRateFlagBitsEXT::e22Bpc 6477 | ImageCompressionFixedRateFlagBitsEXT::e23Bpc 6478 | ImageCompressionFixedRateFlagBitsEXT::e24Bpc; 6479 }; 6480 6481 //=== VK_EXT_device_fault === 6482 6483 enum class DeviceFaultAddressTypeEXT 6484 { 6485 eNone = VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT, 6486 eReadInvalid = VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT, 6487 eWriteInvalid = VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT, 6488 eExecuteInvalid = VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT, 6489 eInstructionPointerUnknown = VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT, 6490 eInstructionPointerInvalid = VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT, 6491 eInstructionPointerFault = VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT 6492 }; 6493 6494 enum class DeviceFaultVendorBinaryHeaderVersionEXT 6495 { 6496 eOne = VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT 6497 }; 6498 6499 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 6500 //=== VK_EXT_directfb_surface === 6501 6502 enum class DirectFBSurfaceCreateFlagBitsEXT : VkDirectFBSurfaceCreateFlagsEXT 6503 {}; 6504 6505 using DirectFBSurfaceCreateFlagsEXT = Flags<DirectFBSurfaceCreateFlagBitsEXT>; 6506 6507 6508 template <> struct FlagTraits<DirectFBSurfaceCreateFlagBitsEXT> 6509 { 6510 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6511 static VULKAN_HPP_CONST_OR_CONSTEXPR DirectFBSurfaceCreateFlagsEXT allFlags = {}; 6512 }; 6513 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 6514 6515 //=== VK_KHR_ray_tracing_pipeline === 6516 6517 enum class RayTracingShaderGroupTypeKHR 6518 { 6519 eGeneral = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR, 6520 eTrianglesHitGroup = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR, 6521 eProceduralHitGroup = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR 6522 }; 6523 using RayTracingShaderGroupTypeNV = RayTracingShaderGroupTypeKHR; 6524 6525 enum class ShaderGroupShaderKHR 6526 { 6527 eGeneral = VK_SHADER_GROUP_SHADER_GENERAL_KHR, 6528 eClosestHit = VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR, 6529 eAnyHit = VK_SHADER_GROUP_SHADER_ANY_HIT_KHR, 6530 eIntersection = VK_SHADER_GROUP_SHADER_INTERSECTION_KHR 6531 }; 6532 6533 //=== VK_EXT_device_address_binding_report === 6534 6535 enum class DeviceAddressBindingFlagBitsEXT : VkDeviceAddressBindingFlagsEXT 6536 { 6537 eInternalObject = VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT 6538 }; 6539 6540 using DeviceAddressBindingFlagsEXT = Flags<DeviceAddressBindingFlagBitsEXT>; 6541 6542 6543 template <> struct FlagTraits<DeviceAddressBindingFlagBitsEXT> 6544 { 6545 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6546 static VULKAN_HPP_CONST_OR_CONSTEXPR DeviceAddressBindingFlagsEXT allFlags = 6547 DeviceAddressBindingFlagBitsEXT::eInternalObject; 6548 }; 6549 6550 enum class DeviceAddressBindingTypeEXT 6551 { 6552 eBind = VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT, 6553 eUnbind = VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT 6554 }; 6555 6556 #if defined( VK_USE_PLATFORM_FUCHSIA ) 6557 //=== VK_FUCHSIA_buffer_collection === 6558 6559 enum class ImageConstraintsInfoFlagBitsFUCHSIA : VkImageConstraintsInfoFlagsFUCHSIA 6560 { 6561 eCpuReadRarely = VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_RARELY_FUCHSIA, 6562 eCpuReadOften = VK_IMAGE_CONSTRAINTS_INFO_CPU_READ_OFTEN_FUCHSIA, 6563 eCpuWriteRarely = VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_RARELY_FUCHSIA, 6564 eCpuWriteOften = VK_IMAGE_CONSTRAINTS_INFO_CPU_WRITE_OFTEN_FUCHSIA, 6565 eProtectedOptional = VK_IMAGE_CONSTRAINTS_INFO_PROTECTED_OPTIONAL_FUCHSIA 6566 }; 6567 6568 using ImageConstraintsInfoFlagsFUCHSIA = Flags<ImageConstraintsInfoFlagBitsFUCHSIA>; 6569 6570 6571 template <> struct FlagTraits<ImageConstraintsInfoFlagBitsFUCHSIA> 6572 { 6573 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6574 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageConstraintsInfoFlagsFUCHSIA allFlags = 6575 ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadRarely 6576 | ImageConstraintsInfoFlagBitsFUCHSIA::eCpuReadOften 6577 | ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteRarely 6578 | ImageConstraintsInfoFlagBitsFUCHSIA::eCpuWriteOften 6579 | ImageConstraintsInfoFlagBitsFUCHSIA::eProtectedOptional; 6580 }; 6581 6582 enum class ImageFormatConstraintsFlagBitsFUCHSIA : VkImageFormatConstraintsFlagsFUCHSIA 6583 {}; 6584 6585 using ImageFormatConstraintsFlagsFUCHSIA = Flags<ImageFormatConstraintsFlagBitsFUCHSIA>; 6586 6587 6588 template <> struct FlagTraits<ImageFormatConstraintsFlagBitsFUCHSIA> 6589 { 6590 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6591 static VULKAN_HPP_CONST_OR_CONSTEXPR ImageFormatConstraintsFlagsFUCHSIA allFlags = {}; 6592 }; 6593 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 6594 6595 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 6596 //=== VK_QNX_screen_surface === 6597 6598 enum class ScreenSurfaceCreateFlagBitsQNX : VkScreenSurfaceCreateFlagsQNX 6599 {}; 6600 6601 using ScreenSurfaceCreateFlagsQNX = Flags<ScreenSurfaceCreateFlagBitsQNX>; 6602 6603 6604 template <> struct FlagTraits<ScreenSurfaceCreateFlagBitsQNX> 6605 { 6606 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6607 static VULKAN_HPP_CONST_OR_CONSTEXPR ScreenSurfaceCreateFlagsQNX allFlags = {}; 6608 }; 6609 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 6610 6611 //=== VK_EXT_opacity_micromap === 6612 6613 enum class MicromapTypeEXT 6614 { 6615 eOpacityMicromap = VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT 6616 }; 6617 6618 enum class BuildMicromapFlagBitsEXT : VkBuildMicromapFlagsEXT 6619 { 6620 ePreferFastTrace = VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT, 6621 ePreferFastBuild = VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT, 6622 eAllowCompaction = VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT 6623 }; 6624 6625 using BuildMicromapFlagsEXT = Flags<BuildMicromapFlagBitsEXT>; 6626 6627 6628 template <> struct FlagTraits<BuildMicromapFlagBitsEXT> 6629 { 6630 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6631 static VULKAN_HPP_CONST_OR_CONSTEXPR BuildMicromapFlagsEXT allFlags = 6632 BuildMicromapFlagBitsEXT::ePreferFastTrace 6633 | BuildMicromapFlagBitsEXT::ePreferFastBuild 6634 | BuildMicromapFlagBitsEXT::eAllowCompaction; 6635 }; 6636 6637 enum class CopyMicromapModeEXT 6638 { 6639 eClone = VK_COPY_MICROMAP_MODE_CLONE_EXT, 6640 eSerialize = VK_COPY_MICROMAP_MODE_SERIALIZE_EXT, 6641 eDeserialize = VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT, 6642 eCompact = VK_COPY_MICROMAP_MODE_COMPACT_EXT 6643 }; 6644 6645 enum class MicromapCreateFlagBitsEXT : VkMicromapCreateFlagsEXT 6646 { 6647 eDeviceAddressCaptureReplay = VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT 6648 }; 6649 6650 using MicromapCreateFlagsEXT = Flags<MicromapCreateFlagBitsEXT>; 6651 6652 6653 template <> struct FlagTraits<MicromapCreateFlagBitsEXT> 6654 { 6655 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6656 static VULKAN_HPP_CONST_OR_CONSTEXPR MicromapCreateFlagsEXT allFlags = 6657 MicromapCreateFlagBitsEXT::eDeviceAddressCaptureReplay; 6658 }; 6659 6660 enum class BuildMicromapModeEXT 6661 { 6662 eBuild = VK_BUILD_MICROMAP_MODE_BUILD_EXT 6663 }; 6664 6665 enum class OpacityMicromapFormatEXT 6666 { 6667 e2State = VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT, 6668 e4State = VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT 6669 }; 6670 6671 enum class OpacityMicromapSpecialIndexEXT 6672 { 6673 eFullyTransparent = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT, 6674 eFullyOpaque = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT, 6675 eFullyUnknownTransparent = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT, 6676 eFullyUnknownOpaque = VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT 6677 }; 6678 6679 //=== VK_NV_memory_decompression === 6680 6681 enum class MemoryDecompressionMethodFlagBitsNV : VkMemoryDecompressionMethodFlagsNV 6682 { 6683 eGdeflate10 = VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_NV 6684 }; 6685 6686 using MemoryDecompressionMethodFlagsNV = Flags<MemoryDecompressionMethodFlagBitsNV>; 6687 6688 6689 template <> struct FlagTraits<MemoryDecompressionMethodFlagBitsNV> 6690 { 6691 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6692 static VULKAN_HPP_CONST_OR_CONSTEXPR MemoryDecompressionMethodFlagsNV allFlags = 6693 MemoryDecompressionMethodFlagBitsNV::eGdeflate10; 6694 }; 6695 6696 //=== VK_EXT_subpass_merge_feedback === 6697 6698 enum class SubpassMergeStatusEXT 6699 { 6700 eMerged = VK_SUBPASS_MERGE_STATUS_MERGED_EXT, 6701 eDisallowed = VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT, 6702 eNotMergedSideEffects = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT, 6703 eNotMergedSamplesMismatch = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT, 6704 eNotMergedViewsMismatch = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT, 6705 eNotMergedAliasing = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT, 6706 eNotMergedDependencies = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT, 6707 eNotMergedIncompatibleInputAttachment = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT, 6708 eNotMergedTooManyAttachments = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT, 6709 eNotMergedInsufficientStorage = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT, 6710 eNotMergedDepthStencilCount = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT, 6711 eNotMergedResolveAttachmentReuse = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT, 6712 eNotMergedSingleSubpass = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT, 6713 eNotMergedUnspecified = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT 6714 }; 6715 6716 //=== VK_LUNARG_direct_driver_loading === 6717 6718 enum class DirectDriverLoadingModeLUNARG 6719 { 6720 eExclusive = VK_DIRECT_DRIVER_LOADING_MODE_EXCLUSIVE_LUNARG, 6721 eInclusive = VK_DIRECT_DRIVER_LOADING_MODE_INCLUSIVE_LUNARG 6722 }; 6723 6724 enum class DirectDriverLoadingFlagBitsLUNARG : VkDirectDriverLoadingFlagsLUNARG 6725 {}; 6726 6727 using DirectDriverLoadingFlagsLUNARG = Flags<DirectDriverLoadingFlagBitsLUNARG>; 6728 6729 6730 template <> struct FlagTraits<DirectDriverLoadingFlagBitsLUNARG> 6731 { 6732 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6733 static VULKAN_HPP_CONST_OR_CONSTEXPR DirectDriverLoadingFlagsLUNARG allFlags = {}; 6734 }; 6735 6736 //=== VK_EXT_rasterization_order_attachment_access === 6737 6738 enum class PipelineColorBlendStateCreateFlagBits : VkPipelineColorBlendStateCreateFlags 6739 { 6740 eRasterizationOrderAttachmentAccessEXT = VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT, 6741 eRasterizationOrderAttachmentAccessARM = VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM 6742 }; 6743 6744 using PipelineColorBlendStateCreateFlags = Flags<PipelineColorBlendStateCreateFlagBits>; 6745 6746 6747 template <> struct FlagTraits<PipelineColorBlendStateCreateFlagBits> 6748 { 6749 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6750 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineColorBlendStateCreateFlags allFlags = 6751 PipelineColorBlendStateCreateFlagBits::eRasterizationOrderAttachmentAccessEXT; 6752 }; 6753 6754 enum class PipelineDepthStencilStateCreateFlagBits : VkPipelineDepthStencilStateCreateFlags 6755 { 6756 eRasterizationOrderAttachmentDepthAccessEXT = VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT, 6757 eRasterizationOrderAttachmentStencilAccessEXT = VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT, 6758 eRasterizationOrderAttachmentDepthAccessARM = VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM, 6759 eRasterizationOrderAttachmentStencilAccessARM = VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM 6760 }; 6761 6762 using PipelineDepthStencilStateCreateFlags = Flags<PipelineDepthStencilStateCreateFlagBits>; 6763 6764 6765 template <> struct FlagTraits<PipelineDepthStencilStateCreateFlagBits> 6766 { 6767 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6768 static VULKAN_HPP_CONST_OR_CONSTEXPR PipelineDepthStencilStateCreateFlags allFlags = 6769 PipelineDepthStencilStateCreateFlagBits::eRasterizationOrderAttachmentDepthAccessEXT 6770 | PipelineDepthStencilStateCreateFlagBits::eRasterizationOrderAttachmentStencilAccessEXT; 6771 }; 6772 6773 //=== VK_NV_optical_flow === 6774 6775 enum class OpticalFlowUsageFlagBitsNV : VkOpticalFlowUsageFlagsNV 6776 { 6777 eUnknown = VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV, 6778 eInput = VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV, 6779 eOutput = VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV, 6780 eHint = VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV, 6781 eCost = VK_OPTICAL_FLOW_USAGE_COST_BIT_NV, 6782 eGlobalFlow = VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV 6783 }; 6784 6785 using OpticalFlowUsageFlagsNV = Flags<OpticalFlowUsageFlagBitsNV>; 6786 6787 6788 template <> struct FlagTraits<OpticalFlowUsageFlagBitsNV> 6789 { 6790 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6791 static VULKAN_HPP_CONST_OR_CONSTEXPR OpticalFlowUsageFlagsNV allFlags = 6792 OpticalFlowUsageFlagBitsNV::eUnknown 6793 | OpticalFlowUsageFlagBitsNV::eInput 6794 | OpticalFlowUsageFlagBitsNV::eOutput 6795 | OpticalFlowUsageFlagBitsNV::eHint 6796 | OpticalFlowUsageFlagBitsNV::eCost 6797 | OpticalFlowUsageFlagBitsNV::eGlobalFlow; 6798 }; 6799 6800 enum class OpticalFlowGridSizeFlagBitsNV : VkOpticalFlowGridSizeFlagsNV 6801 { 6802 eUnknown = VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV, 6803 e1X1 = VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV, 6804 e2X2 = VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV, 6805 e4X4 = VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV, 6806 e8X8 = VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV 6807 }; 6808 6809 using OpticalFlowGridSizeFlagsNV = Flags<OpticalFlowGridSizeFlagBitsNV>; 6810 6811 6812 template <> struct FlagTraits<OpticalFlowGridSizeFlagBitsNV> 6813 { 6814 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6815 static VULKAN_HPP_CONST_OR_CONSTEXPR OpticalFlowGridSizeFlagsNV allFlags = 6816 OpticalFlowGridSizeFlagBitsNV::eUnknown 6817 | OpticalFlowGridSizeFlagBitsNV::e1X1 6818 | OpticalFlowGridSizeFlagBitsNV::e2X2 6819 | OpticalFlowGridSizeFlagBitsNV::e4X4 6820 | OpticalFlowGridSizeFlagBitsNV::e8X8; 6821 }; 6822 6823 enum class OpticalFlowPerformanceLevelNV 6824 { 6825 eUnknown = VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV, 6826 eSlow = VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV, 6827 eMedium = VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV, 6828 eFast = VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV 6829 }; 6830 6831 enum class OpticalFlowSessionBindingPointNV 6832 { 6833 eUnknown = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV, 6834 eInput = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV, 6835 eReference = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV, 6836 eHint = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV, 6837 eFlowVector = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV, 6838 eBackwardFlowVector = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV, 6839 eCost = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV, 6840 eBackwardCost = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV, 6841 eGlobalFlow = VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV 6842 }; 6843 6844 enum class OpticalFlowSessionCreateFlagBitsNV : VkOpticalFlowSessionCreateFlagsNV 6845 { 6846 eEnableHint = VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV, 6847 eEnableCost = VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV, 6848 eEnableGlobalFlow = VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV, 6849 eAllowRegions = VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV, 6850 eBothDirections = VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV 6851 }; 6852 6853 using OpticalFlowSessionCreateFlagsNV = Flags<OpticalFlowSessionCreateFlagBitsNV>; 6854 6855 6856 template <> struct FlagTraits<OpticalFlowSessionCreateFlagBitsNV> 6857 { 6858 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6859 static VULKAN_HPP_CONST_OR_CONSTEXPR OpticalFlowSessionCreateFlagsNV allFlags = 6860 OpticalFlowSessionCreateFlagBitsNV::eEnableHint 6861 | OpticalFlowSessionCreateFlagBitsNV::eEnableCost 6862 | OpticalFlowSessionCreateFlagBitsNV::eEnableGlobalFlow 6863 | OpticalFlowSessionCreateFlagBitsNV::eAllowRegions 6864 | OpticalFlowSessionCreateFlagBitsNV::eBothDirections; 6865 }; 6866 6867 enum class OpticalFlowExecuteFlagBitsNV : VkOpticalFlowExecuteFlagsNV 6868 { 6869 eDisableTemporalHints = VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV 6870 }; 6871 6872 using OpticalFlowExecuteFlagsNV = Flags<OpticalFlowExecuteFlagBitsNV>; 6873 6874 6875 template <> struct FlagTraits<OpticalFlowExecuteFlagBitsNV> 6876 { 6877 static VULKAN_HPP_CONST_OR_CONSTEXPR bool isBitmask = true; 6878 static VULKAN_HPP_CONST_OR_CONSTEXPR OpticalFlowExecuteFlagsNV allFlags = 6879 OpticalFlowExecuteFlagBitsNV::eDisableTemporalHints; 6880 }; 6881 6882 //=== VK_NV_ray_tracing_invocation_reorder === 6883 6884 enum class RayTracingInvocationReorderModeNV 6885 { 6886 eNone = VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV, 6887 eReorder = VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV 6888 }; 6889 6890 6891 6892 //========================= 6893 //=== Index Type Traits === 6894 //========================= 6895 6896 template<typename T> 6897 struct IndexTypeValue 6898 {}; 6899 6900 6901 template <> 6902 struct IndexTypeValue<uint16_t> 6903 { 6904 static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint16; 6905 }; 6906 6907 template <> 6908 struct CppType<IndexType, IndexType::eUint16> 6909 { 6910 using Type = uint16_t; 6911 }; 6912 6913 template <> 6914 struct IndexTypeValue<uint32_t> 6915 { 6916 static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint32; 6917 }; 6918 6919 template <> 6920 struct CppType<IndexType, IndexType::eUint32> 6921 { 6922 using Type = uint32_t; 6923 }; 6924 6925 template <> 6926 struct IndexTypeValue<uint8_t> 6927 { 6928 static VULKAN_HPP_CONST_OR_CONSTEXPR IndexType value = IndexType::eUint8EXT; 6929 }; 6930 6931 template <> 6932 struct CppType<IndexType, IndexType::eUint8EXT> 6933 { 6934 using Type = uint8_t; 6935 }; 6936 6937 6938 } // namespace VULKAN_HPP_NAMESPACE 6939 #endif 6940