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