1 // Copyright 2015-2025 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_EXTENSION_INSPECTION_HPP 9 #define VULKAN_EXTENSION_INSPECTION_HPP 10 11 #if defined( VULKAN_HPP_ENABLE_STD_MODULE ) && defined( VULKAN_HPP_STD_MODULE ) 12 import VULKAN_HPP_STD_MODULE; 13 #else 14 # include <map> 15 # include <set> 16 # include <string> 17 # include <vector> 18 # include <vulkan/vulkan.hpp> 19 #endif 20 21 namespace VULKAN_HPP_NAMESPACE 22 { 23 //====================================== 24 //=== Extension inspection functions === 25 //====================================== 26 27 std::set<std::string> const & getDeviceExtensions(); 28 std::set<std::string> const & getInstanceExtensions(); 29 std::map<std::string, std::string> const & getDeprecatedExtensions(); 30 std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension ); 31 std::pair<bool, std::vector<std::vector<std::string>> const &> getExtensionDepends( std::string const & version, std::string const & extension ); 32 std::map<std::string, std::string> const & getObsoletedExtensions(); 33 std::map<std::string, std::string> const & getPromotedExtensions(); 34 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy( std::string const & extension ); 35 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy( std::string const & extension ); 36 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo( std::string const & extension ); 37 VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension( std::string const & extension ); 38 VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension ); 39 VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ); 40 VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension( std::string const & extension ); 41 VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension ); 42 43 //===================================================== 44 //=== Extension inspection function implementations === 45 //===================================================== 46 getDeprecatedExtensions()47 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getDeprecatedExtensions() 48 { 49 static const std::map<std::string, std::string> deprecatedExtensions = { 50 { "VK_EXT_debug_report", "VK_EXT_debug_utils" }, 51 { "VK_NV_glsl_shader", "" }, 52 { "VK_NV_dedicated_allocation", "VK_KHR_dedicated_allocation" }, 53 { "VK_AMD_gpu_shader_half_float", "VK_KHR_shader_float16_int8" }, 54 { "VK_IMG_format_pvrtc", "" }, 55 { "VK_NV_external_memory_capabilities", "VK_KHR_external_memory_capabilities" }, 56 { "VK_NV_external_memory", "VK_KHR_external_memory" }, 57 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 58 { "VK_NV_external_memory_win32", "VK_KHR_external_memory_win32" }, 59 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 60 { "VK_EXT_validation_flags", "VK_EXT_layer_settings" }, 61 { "VK_EXT_shader_subgroup_ballot", "VK_VERSION_1_2" }, 62 { "VK_EXT_shader_subgroup_vote", "VK_VERSION_1_1" }, 63 #if defined( VK_USE_PLATFORM_IOS_MVK ) 64 { "VK_MVK_ios_surface", "VK_EXT_metal_surface" }, 65 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 66 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 67 { "VK_MVK_macos_surface", "VK_EXT_metal_surface" }, 68 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 69 { "VK_AMD_gpu_shader_int16", "VK_KHR_shader_float16_int8" }, 70 { "VK_NV_ray_tracing", "VK_KHR_ray_tracing_pipeline" }, 71 { "VK_EXT_buffer_device_address", "VK_KHR_buffer_device_address" }, 72 { "VK_EXT_validation_features", "VK_EXT_layer_settings" } 73 }; 74 return deprecatedExtensions; 75 } 76 getDeviceExtensions()77 VULKAN_HPP_INLINE std::set<std::string> const & getDeviceExtensions() 78 { 79 static const std::set<std::string> deviceExtensions = { 80 "VK_KHR_swapchain", 81 "VK_KHR_display_swapchain", 82 "VK_NV_glsl_shader", 83 "VK_EXT_depth_range_unrestricted", 84 "VK_KHR_sampler_mirror_clamp_to_edge", 85 "VK_IMG_filter_cubic", 86 "VK_AMD_rasterization_order", 87 "VK_AMD_shader_trinary_minmax", 88 "VK_AMD_shader_explicit_vertex_parameter", 89 "VK_EXT_debug_marker", 90 "VK_KHR_video_queue", 91 "VK_KHR_video_decode_queue", 92 "VK_AMD_gcn_shader", 93 "VK_NV_dedicated_allocation", 94 "VK_EXT_transform_feedback", 95 "VK_NVX_binary_import", 96 "VK_NVX_image_view_handle", 97 "VK_AMD_draw_indirect_count", 98 "VK_AMD_negative_viewport_height", 99 "VK_AMD_gpu_shader_half_float", 100 "VK_AMD_shader_ballot", 101 "VK_KHR_video_encode_h264", 102 "VK_KHR_video_encode_h265", 103 "VK_KHR_video_decode_h264", 104 "VK_AMD_texture_gather_bias_lod", 105 "VK_AMD_shader_info", 106 "VK_KHR_dynamic_rendering", 107 "VK_AMD_shader_image_load_store_lod", 108 "VK_NV_corner_sampled_image", 109 "VK_KHR_multiview", 110 "VK_IMG_format_pvrtc", 111 "VK_NV_external_memory", 112 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 113 "VK_NV_external_memory_win32", 114 "VK_NV_win32_keyed_mutex", 115 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 116 "VK_KHR_device_group", 117 "VK_KHR_shader_draw_parameters", 118 "VK_EXT_shader_subgroup_ballot", 119 "VK_EXT_shader_subgroup_vote", 120 "VK_EXT_texture_compression_astc_hdr", 121 "VK_EXT_astc_decode_mode", 122 "VK_EXT_pipeline_robustness", 123 "VK_KHR_maintenance1", 124 "VK_KHR_external_memory", 125 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 126 "VK_KHR_external_memory_win32", 127 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 128 "VK_KHR_external_memory_fd", 129 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 130 "VK_KHR_win32_keyed_mutex", 131 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 132 "VK_KHR_external_semaphore", 133 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 134 "VK_KHR_external_semaphore_win32", 135 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 136 "VK_KHR_external_semaphore_fd", 137 "VK_KHR_push_descriptor", 138 "VK_EXT_conditional_rendering", 139 "VK_KHR_shader_float16_int8", 140 "VK_KHR_16bit_storage", 141 "VK_KHR_incremental_present", 142 "VK_KHR_descriptor_update_template", 143 "VK_NV_clip_space_w_scaling", 144 "VK_EXT_display_control", 145 "VK_GOOGLE_display_timing", 146 "VK_NV_sample_mask_override_coverage", 147 "VK_NV_geometry_shader_passthrough", 148 "VK_NV_viewport_array2", 149 "VK_NVX_multiview_per_view_attributes", 150 "VK_NV_viewport_swizzle", 151 "VK_EXT_discard_rectangles", 152 "VK_EXT_conservative_rasterization", 153 "VK_EXT_depth_clip_enable", 154 "VK_EXT_hdr_metadata", 155 "VK_KHR_imageless_framebuffer", 156 "VK_KHR_create_renderpass2", 157 "VK_IMG_relaxed_line_rasterization", 158 "VK_KHR_shared_presentable_image", 159 "VK_KHR_external_fence", 160 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 161 "VK_KHR_external_fence_win32", 162 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 163 "VK_KHR_external_fence_fd", 164 "VK_KHR_performance_query", 165 "VK_KHR_maintenance2", 166 "VK_KHR_variable_pointers", 167 "VK_EXT_external_memory_dma_buf", 168 "VK_EXT_queue_family_foreign", 169 "VK_KHR_dedicated_allocation", 170 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 171 "VK_ANDROID_external_memory_android_hardware_buffer", 172 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 173 "VK_EXT_sampler_filter_minmax", 174 "VK_KHR_storage_buffer_storage_class", 175 "VK_AMD_gpu_shader_int16", 176 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 177 "VK_AMDX_shader_enqueue", 178 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 179 "VK_AMD_mixed_attachment_samples", 180 "VK_AMD_shader_fragment_mask", 181 "VK_EXT_inline_uniform_block", 182 "VK_EXT_shader_stencil_export", 183 "VK_EXT_sample_locations", 184 "VK_KHR_relaxed_block_layout", 185 "VK_KHR_get_memory_requirements2", 186 "VK_KHR_image_format_list", 187 "VK_EXT_blend_operation_advanced", 188 "VK_NV_fragment_coverage_to_color", 189 "VK_KHR_acceleration_structure", 190 "VK_KHR_ray_tracing_pipeline", 191 "VK_KHR_ray_query", 192 "VK_NV_framebuffer_mixed_samples", 193 "VK_NV_fill_rectangle", 194 "VK_NV_shader_sm_builtins", 195 "VK_EXT_post_depth_coverage", 196 "VK_KHR_sampler_ycbcr_conversion", 197 "VK_KHR_bind_memory2", 198 "VK_EXT_image_drm_format_modifier", 199 "VK_EXT_validation_cache", 200 "VK_EXT_descriptor_indexing", 201 "VK_EXT_shader_viewport_index_layer", 202 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 203 "VK_KHR_portability_subset", 204 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 205 "VK_NV_shading_rate_image", 206 "VK_NV_ray_tracing", 207 "VK_NV_representative_fragment_test", 208 "VK_KHR_maintenance3", 209 "VK_KHR_draw_indirect_count", 210 "VK_EXT_filter_cubic", 211 "VK_QCOM_render_pass_shader_resolve", 212 "VK_EXT_global_priority", 213 "VK_KHR_shader_subgroup_extended_types", 214 "VK_KHR_8bit_storage", 215 "VK_EXT_external_memory_host", 216 "VK_AMD_buffer_marker", 217 "VK_KHR_shader_atomic_int64", 218 "VK_KHR_shader_clock", 219 "VK_AMD_pipeline_compiler_control", 220 "VK_EXT_calibrated_timestamps", 221 "VK_AMD_shader_core_properties", 222 "VK_KHR_video_decode_h265", 223 "VK_KHR_global_priority", 224 "VK_AMD_memory_overallocation_behavior", 225 "VK_EXT_vertex_attribute_divisor", 226 #if defined( VK_USE_PLATFORM_GGP ) 227 "VK_GGP_frame_token", 228 #endif /*VK_USE_PLATFORM_GGP*/ 229 "VK_EXT_pipeline_creation_feedback", 230 "VK_KHR_driver_properties", 231 "VK_KHR_shader_float_controls", 232 "VK_NV_shader_subgroup_partitioned", 233 "VK_KHR_depth_stencil_resolve", 234 "VK_KHR_swapchain_mutable_format", 235 "VK_NV_compute_shader_derivatives", 236 "VK_NV_mesh_shader", 237 "VK_NV_fragment_shader_barycentric", 238 "VK_NV_shader_image_footprint", 239 "VK_NV_scissor_exclusive", 240 "VK_NV_device_diagnostic_checkpoints", 241 "VK_KHR_timeline_semaphore", 242 "VK_INTEL_shader_integer_functions2", 243 "VK_INTEL_performance_query", 244 "VK_KHR_vulkan_memory_model", 245 "VK_EXT_pci_bus_info", 246 "VK_AMD_display_native_hdr", 247 "VK_KHR_shader_terminate_invocation", 248 "VK_EXT_fragment_density_map", 249 "VK_EXT_scalar_block_layout", 250 "VK_GOOGLE_hlsl_functionality1", 251 "VK_GOOGLE_decorate_string", 252 "VK_EXT_subgroup_size_control", 253 "VK_KHR_fragment_shading_rate", 254 "VK_AMD_shader_core_properties2", 255 "VK_AMD_device_coherent_memory", 256 "VK_KHR_dynamic_rendering_local_read", 257 "VK_EXT_shader_image_atomic_int64", 258 "VK_KHR_shader_quad_control", 259 "VK_KHR_spirv_1_4", 260 "VK_EXT_memory_budget", 261 "VK_EXT_memory_priority", 262 "VK_NV_dedicated_allocation_image_aliasing", 263 "VK_KHR_separate_depth_stencil_layouts", 264 "VK_EXT_buffer_device_address", 265 "VK_EXT_tooling_info", 266 "VK_EXT_separate_stencil_usage", 267 "VK_KHR_present_wait", 268 "VK_NV_cooperative_matrix", 269 "VK_NV_coverage_reduction_mode", 270 "VK_EXT_fragment_shader_interlock", 271 "VK_EXT_ycbcr_image_arrays", 272 "VK_KHR_uniform_buffer_standard_layout", 273 "VK_EXT_provoking_vertex", 274 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 275 "VK_EXT_full_screen_exclusive", 276 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 277 "VK_KHR_buffer_device_address", 278 "VK_EXT_line_rasterization", 279 "VK_EXT_shader_atomic_float", 280 "VK_EXT_host_query_reset", 281 "VK_EXT_index_type_uint8", 282 "VK_EXT_extended_dynamic_state", 283 "VK_KHR_deferred_host_operations", 284 "VK_KHR_pipeline_executable_properties", 285 "VK_EXT_host_image_copy", 286 "VK_KHR_map_memory2", 287 "VK_EXT_map_memory_placed", 288 "VK_EXT_shader_atomic_float2", 289 "VK_EXT_swapchain_maintenance1", 290 "VK_EXT_shader_demote_to_helper_invocation", 291 "VK_NV_device_generated_commands", 292 "VK_NV_inherited_viewport_scissor", 293 "VK_KHR_shader_integer_dot_product", 294 "VK_EXT_texel_buffer_alignment", 295 "VK_QCOM_render_pass_transform", 296 "VK_EXT_depth_bias_control", 297 "VK_EXT_device_memory_report", 298 "VK_EXT_robustness2", 299 "VK_EXT_custom_border_color", 300 "VK_GOOGLE_user_type", 301 "VK_KHR_pipeline_library", 302 "VK_NV_present_barrier", 303 "VK_KHR_shader_non_semantic_info", 304 "VK_KHR_present_id", 305 "VK_EXT_private_data", 306 "VK_EXT_pipeline_creation_cache_control", 307 "VK_KHR_video_encode_queue", 308 "VK_NV_device_diagnostics_config", 309 "VK_QCOM_render_pass_store_ops", 310 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 311 "VK_NV_cuda_kernel_launch", 312 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 313 "VK_NV_low_latency", 314 #if defined( VK_USE_PLATFORM_METAL_EXT ) 315 "VK_EXT_metal_objects", 316 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 317 "VK_KHR_synchronization2", 318 "VK_EXT_descriptor_buffer", 319 "VK_EXT_graphics_pipeline_library", 320 "VK_AMD_shader_early_and_late_fragment_tests", 321 "VK_KHR_fragment_shader_barycentric", 322 "VK_KHR_shader_subgroup_uniform_control_flow", 323 "VK_KHR_zero_initialize_workgroup_memory", 324 "VK_NV_fragment_shading_rate_enums", 325 "VK_NV_ray_tracing_motion_blur", 326 "VK_EXT_mesh_shader", 327 "VK_EXT_ycbcr_2plane_444_formats", 328 "VK_EXT_fragment_density_map2", 329 "VK_QCOM_rotated_copy_commands", 330 "VK_EXT_image_robustness", 331 "VK_KHR_workgroup_memory_explicit_layout", 332 "VK_KHR_copy_commands2", 333 "VK_EXT_image_compression_control", 334 "VK_EXT_attachment_feedback_loop_layout", 335 "VK_EXT_4444_formats", 336 "VK_EXT_device_fault", 337 "VK_ARM_rasterization_order_attachment_access", 338 "VK_EXT_rgba10x6_formats", 339 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 340 "VK_NV_acquire_winrt_display", 341 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 342 "VK_VALVE_mutable_descriptor_type", 343 "VK_EXT_vertex_input_dynamic_state", 344 "VK_EXT_physical_device_drm", 345 "VK_EXT_device_address_binding_report", 346 "VK_EXT_depth_clip_control", 347 "VK_EXT_primitive_topology_list_restart", 348 "VK_KHR_format_feature_flags2", 349 "VK_EXT_present_mode_fifo_latest_ready", 350 #if defined( VK_USE_PLATFORM_FUCHSIA ) 351 "VK_FUCHSIA_external_memory", 352 "VK_FUCHSIA_external_semaphore", 353 "VK_FUCHSIA_buffer_collection", 354 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 355 "VK_HUAWEI_subpass_shading", 356 "VK_HUAWEI_invocation_mask", 357 "VK_NV_external_memory_rdma", 358 "VK_EXT_pipeline_properties", 359 "VK_EXT_frame_boundary", 360 "VK_EXT_multisampled_render_to_single_sampled", 361 "VK_EXT_extended_dynamic_state2", 362 "VK_EXT_color_write_enable", 363 "VK_EXT_primitives_generated_query", 364 "VK_KHR_ray_tracing_maintenance1", 365 "VK_EXT_global_priority_query", 366 "VK_EXT_image_view_min_lod", 367 "VK_EXT_multi_draw", 368 "VK_EXT_image_2d_view_of_3d", 369 "VK_EXT_shader_tile_image", 370 "VK_EXT_opacity_micromap", 371 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 372 "VK_NV_displacement_micromap", 373 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 374 "VK_EXT_load_store_op_none", 375 "VK_HUAWEI_cluster_culling_shader", 376 "VK_EXT_border_color_swizzle", 377 "VK_EXT_pageable_device_local_memory", 378 "VK_KHR_maintenance4", 379 "VK_ARM_shader_core_properties", 380 "VK_KHR_shader_subgroup_rotate", 381 "VK_ARM_scheduling_controls", 382 "VK_EXT_image_sliced_view_of_3d", 383 "VK_VALVE_descriptor_set_host_mapping", 384 "VK_EXT_depth_clamp_zero_one", 385 "VK_EXT_non_seamless_cube_map", 386 "VK_ARM_render_pass_striped", 387 "VK_QCOM_fragment_density_map_offset", 388 "VK_NV_copy_memory_indirect", 389 "VK_NV_memory_decompression", 390 "VK_NV_device_generated_commands_compute", 391 "VK_NV_ray_tracing_linear_swept_spheres", 392 "VK_NV_linear_color_attachment", 393 "VK_KHR_shader_maximal_reconvergence", 394 "VK_EXT_image_compression_control_swapchain", 395 "VK_QCOM_image_processing", 396 "VK_EXT_nested_command_buffer", 397 "VK_EXT_external_memory_acquire_unmodified", 398 "VK_EXT_extended_dynamic_state3", 399 "VK_EXT_subpass_merge_feedback", 400 "VK_EXT_shader_module_identifier", 401 "VK_EXT_rasterization_order_attachment_access", 402 "VK_NV_optical_flow", 403 "VK_EXT_legacy_dithering", 404 "VK_EXT_pipeline_protected_access", 405 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 406 "VK_ANDROID_external_format_resolve", 407 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 408 "VK_KHR_maintenance5", 409 "VK_AMD_anti_lag", 410 "VK_KHR_ray_tracing_position_fetch", 411 "VK_EXT_shader_object", 412 "VK_KHR_pipeline_binary", 413 "VK_QCOM_tile_properties", 414 "VK_SEC_amigo_profiling", 415 "VK_QCOM_multiview_per_view_viewports", 416 "VK_NV_ray_tracing_invocation_reorder", 417 "VK_NV_cooperative_vector", 418 "VK_NV_extended_sparse_address_space", 419 "VK_EXT_mutable_descriptor_type", 420 "VK_EXT_legacy_vertex_attributes", 421 "VK_ARM_shader_core_builtins", 422 "VK_EXT_pipeline_library_group_handles", 423 "VK_EXT_dynamic_rendering_unused_attachments", 424 "VK_NV_low_latency2", 425 "VK_KHR_cooperative_matrix", 426 "VK_QCOM_multiview_per_view_render_areas", 427 "VK_KHR_compute_shader_derivatives", 428 "VK_KHR_video_decode_av1", 429 "VK_KHR_video_encode_av1", 430 "VK_KHR_video_maintenance1", 431 "VK_NV_per_stage_descriptor_set", 432 "VK_QCOM_image_processing2", 433 "VK_QCOM_filter_cubic_weights", 434 "VK_QCOM_ycbcr_degamma", 435 "VK_QCOM_filter_cubic_clamp", 436 "VK_EXT_attachment_feedback_loop_dynamic_state", 437 "VK_KHR_vertex_attribute_divisor", 438 "VK_KHR_load_store_op_none", 439 "VK_KHR_shader_float_controls2", 440 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 441 "VK_QNX_external_memory_screen_buffer", 442 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 443 "VK_MSFT_layered_driver", 444 "VK_KHR_index_type_uint8", 445 "VK_KHR_line_rasterization", 446 "VK_KHR_calibrated_timestamps", 447 "VK_KHR_shader_expect_assume", 448 "VK_KHR_maintenance6", 449 "VK_NV_descriptor_pool_overallocation", 450 "VK_KHR_video_encode_quantization_map", 451 "VK_NV_raw_access_chains", 452 "VK_KHR_shader_relaxed_extended_instruction", 453 "VK_NV_command_buffer_inheritance", 454 "VK_KHR_maintenance7", 455 "VK_NV_shader_atomic_float16_vector", 456 "VK_EXT_shader_replicated_composites", 457 "VK_NV_ray_tracing_validation", 458 "VK_NV_cluster_acceleration_structure", 459 "VK_NV_partitioned_acceleration_structure", 460 "VK_EXT_device_generated_commands", 461 "VK_KHR_maintenance8", 462 "VK_MESA_image_alignment_control", 463 "VK_EXT_depth_clamp_control", 464 "VK_KHR_video_maintenance2", 465 "VK_HUAWEI_hdr_vivid", 466 "VK_NV_cooperative_matrix2", 467 "VK_ARM_pipeline_opacity_micromap", 468 #if defined( VK_USE_PLATFORM_METAL_EXT ) 469 "VK_EXT_external_memory_metal", 470 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 471 "VK_KHR_depth_clamp_zero_one", 472 "VK_EXT_vertex_attribute_robustness", 473 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 474 "VK_NV_present_metering" 475 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 476 }; 477 return deviceExtensions; 478 } 479 getInstanceExtensions()480 VULKAN_HPP_INLINE std::set<std::string> const & getInstanceExtensions() 481 { 482 static const std::set<std::string> instanceExtensions = { 483 "VK_KHR_surface", 484 "VK_KHR_display", 485 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 486 "VK_KHR_xlib_surface", 487 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 488 #if defined( VK_USE_PLATFORM_XCB_KHR ) 489 "VK_KHR_xcb_surface", 490 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 491 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 492 "VK_KHR_wayland_surface", 493 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 494 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 495 "VK_KHR_android_surface", 496 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 497 #if defined( VK_USE_PLATFORM_OHOS ) 498 "VK_OHOS_surface", 499 #endif /*VK_USE_PLATFORM_OHOS*/ 500 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 501 "VK_KHR_win32_surface", 502 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 503 "VK_EXT_debug_report", 504 #if defined( VK_USE_PLATFORM_GGP ) 505 "VK_GGP_stream_descriptor_surface", 506 #endif /*VK_USE_PLATFORM_GGP*/ 507 "VK_NV_external_memory_capabilities", 508 "VK_KHR_get_physical_device_properties2", 509 "VK_EXT_validation_flags", 510 #if defined( VK_USE_PLATFORM_VI_NN ) 511 "VK_NN_vi_surface", 512 #endif /*VK_USE_PLATFORM_VI_NN*/ 513 "VK_KHR_device_group_creation", 514 "VK_KHR_external_memory_capabilities", 515 "VK_KHR_external_semaphore_capabilities", 516 "VK_EXT_direct_mode_display", 517 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 518 "VK_EXT_acquire_xlib_display", 519 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 520 "VK_EXT_display_surface_counter", 521 "VK_EXT_swapchain_colorspace", 522 "VK_KHR_external_fence_capabilities", 523 "VK_KHR_get_surface_capabilities2", 524 "VK_KHR_get_display_properties2", 525 #if defined( VK_USE_PLATFORM_IOS_MVK ) 526 "VK_MVK_ios_surface", 527 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 528 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 529 "VK_MVK_macos_surface", 530 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 531 "VK_EXT_debug_utils", 532 #if defined( VK_USE_PLATFORM_FUCHSIA ) 533 "VK_FUCHSIA_imagepipe_surface", 534 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 535 #if defined( VK_USE_PLATFORM_METAL_EXT ) 536 "VK_EXT_metal_surface", 537 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 538 "VK_KHR_surface_protected_capabilities", 539 "VK_EXT_validation_features", 540 "VK_EXT_headless_surface", 541 "VK_EXT_surface_maintenance1", 542 "VK_EXT_acquire_drm_display", 543 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 544 "VK_EXT_directfb_surface", 545 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 546 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 547 "VK_QNX_screen_surface", 548 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 549 "VK_KHR_portability_enumeration", 550 "VK_GOOGLE_surfaceless_query", 551 "VK_LUNARG_direct_driver_loading", 552 "VK_EXT_layer_settings", 553 "VK_NV_display_stereo" 554 }; 555 return instanceExtensions; 556 } 557 getExtensionDepends(std::string const & extension)558 VULKAN_HPP_INLINE std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension ) 559 { 560 static const std::map<std::string, std::vector<std::vector<std::string>>> noDependencies; 561 static const std::map<std::string, std::map<std::string, std::vector<std::vector<std::string>>>> dependencies = { 562 { "VK_KHR_swapchain", 563 { { "VK_VERSION_1_0", 564 { { 565 "VK_KHR_surface", 566 } } } } }, 567 { "VK_KHR_display", 568 { { "VK_VERSION_1_0", 569 { { 570 "VK_KHR_surface", 571 } } } } }, 572 { "VK_KHR_display_swapchain", 573 { { "VK_VERSION_1_0", 574 { { 575 "VK_KHR_swapchain", 576 "VK_KHR_display", 577 } } } } }, 578 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 579 { "VK_KHR_xlib_surface", 580 { { "VK_VERSION_1_0", 581 { { 582 "VK_KHR_surface", 583 } } } } }, 584 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 585 #if defined( VK_USE_PLATFORM_XCB_KHR ) 586 { "VK_KHR_xcb_surface", 587 { { "VK_VERSION_1_0", 588 { { 589 "VK_KHR_surface", 590 } } } } }, 591 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 592 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 593 { "VK_KHR_wayland_surface", 594 { { "VK_VERSION_1_0", 595 { { 596 "VK_KHR_surface", 597 } } } } }, 598 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 599 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 600 { "VK_KHR_android_surface", 601 { { "VK_VERSION_1_0", 602 { { 603 "VK_KHR_surface", 604 } } } } }, 605 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 606 #if defined( VK_USE_PLATFORM_OHOS ) 607 { "VK_OHOS_surface", 608 { { "VK_VERSION_1_0", 609 { { 610 "VK_KHR_surface", 611 } } } } }, 612 #endif /*VK_USE_PLATFORM_OHOS*/ 613 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 614 { "VK_KHR_win32_surface", 615 { { "VK_VERSION_1_0", 616 { { 617 "VK_KHR_surface", 618 } } } } }, 619 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 620 { "VK_EXT_debug_marker", 621 { { "VK_VERSION_1_0", 622 { { 623 "VK_EXT_debug_report", 624 } } } } }, 625 { "VK_KHR_video_queue", 626 { { "VK_VERSION_1_1", 627 { { 628 "VK_KHR_synchronization2", 629 } } }, 630 { "VK_VERSION_1_3", { {} } } } }, 631 { "VK_KHR_video_decode_queue", 632 { { "VK_VERSION_1_0", 633 { { 634 "VK_KHR_video_queue", 635 "VK_KHR_synchronization2", 636 } } }, 637 { "VK_VERSION_1_3", { {} } } } }, 638 { "VK_EXT_transform_feedback", 639 { { "VK_VERSION_1_0", 640 { { 641 "VK_KHR_get_physical_device_properties2", 642 } } }, 643 { "VK_VERSION_1_1", { {} } } } }, 644 { "VK_KHR_video_encode_h264", 645 { { "VK_VERSION_1_0", 646 { { 647 "VK_KHR_video_encode_queue", 648 } } } } }, 649 { "VK_KHR_video_encode_h265", 650 { { "VK_VERSION_1_0", 651 { { 652 "VK_KHR_video_encode_queue", 653 } } } } }, 654 { "VK_KHR_video_decode_h264", 655 { { "VK_VERSION_1_0", 656 { { 657 "VK_KHR_video_decode_queue", 658 } } } } }, 659 { "VK_AMD_texture_gather_bias_lod", 660 { { "VK_VERSION_1_0", 661 { { 662 "VK_KHR_get_physical_device_properties2", 663 } } }, 664 { "VK_VERSION_1_1", { {} } } } }, 665 { "VK_KHR_dynamic_rendering", 666 { { "VK_VERSION_1_0", 667 { { 668 "VK_KHR_get_physical_device_properties2", 669 } } }, 670 { "VK_VERSION_1_1", 671 { { 672 "VK_KHR_depth_stencil_resolve", 673 } } }, 674 { "VK_VERSION_1_2", { {} } } } }, 675 #if defined( VK_USE_PLATFORM_GGP ) 676 { "VK_GGP_stream_descriptor_surface", 677 { { "VK_VERSION_1_0", 678 { { 679 "VK_KHR_surface", 680 } } } } }, 681 #endif /*VK_USE_PLATFORM_GGP*/ 682 { "VK_NV_corner_sampled_image", 683 { { "VK_VERSION_1_0", 684 { { 685 "VK_KHR_get_physical_device_properties2", 686 } } }, 687 { "VK_VERSION_1_1", { {} } } } }, 688 { "VK_KHR_multiview", 689 { { "VK_VERSION_1_0", 690 { { 691 "VK_KHR_get_physical_device_properties2", 692 } } }, 693 { "VK_VERSION_1_1", { {} } } } }, 694 { "VK_NV_external_memory", 695 { { "VK_VERSION_1_0", 696 { { 697 "VK_NV_external_memory_capabilities", 698 } } } } }, 699 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 700 { "VK_NV_external_memory_win32", 701 { { "VK_VERSION_1_0", 702 { { 703 "VK_NV_external_memory", 704 } } } } }, 705 { "VK_NV_win32_keyed_mutex", 706 { { "VK_VERSION_1_0", 707 { { 708 "VK_NV_external_memory_win32", 709 } } } } }, 710 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 711 { "VK_KHR_device_group", 712 { { "VK_VERSION_1_0", 713 { { 714 "VK_KHR_device_group_creation", 715 } } } } }, 716 #if defined( VK_USE_PLATFORM_VI_NN ) 717 { "VK_NN_vi_surface", 718 { { "VK_VERSION_1_0", 719 { { 720 "VK_KHR_surface", 721 } } } } }, 722 #endif /*VK_USE_PLATFORM_VI_NN*/ 723 { "VK_EXT_texture_compression_astc_hdr", 724 { { "VK_VERSION_1_0", 725 { { 726 "VK_KHR_get_physical_device_properties2", 727 } } }, 728 { "VK_VERSION_1_1", { {} } } } }, 729 { "VK_EXT_astc_decode_mode", 730 { { "VK_VERSION_1_0", 731 { { 732 "VK_KHR_get_physical_device_properties2", 733 } } }, 734 { "VK_VERSION_1_1", { {} } } } }, 735 { "VK_EXT_pipeline_robustness", 736 { { "VK_VERSION_1_0", 737 { { 738 "VK_KHR_get_physical_device_properties2", 739 } } }, 740 { "VK_VERSION_1_1", { {} } } } }, 741 { "VK_KHR_external_memory_capabilities", 742 { { "VK_VERSION_1_0", 743 { { 744 "VK_KHR_get_physical_device_properties2", 745 } } }, 746 { "VK_VERSION_1_1", { {} } } } }, 747 { "VK_KHR_external_memory", 748 { { "VK_VERSION_1_0", 749 { { 750 "VK_KHR_external_memory_capabilities", 751 } } }, 752 { "VK_VERSION_1_1", { {} } } } }, 753 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 754 { "VK_KHR_external_memory_win32", 755 { { "VK_VERSION_1_0", 756 { { 757 "VK_KHR_external_memory", 758 } } }, 759 { "VK_VERSION_1_1", { {} } } } }, 760 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 761 { "VK_KHR_external_memory_fd", 762 { { "VK_VERSION_1_0", 763 { { 764 "VK_KHR_external_memory", 765 } } }, 766 { "VK_VERSION_1_1", { {} } } } }, 767 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 768 { "VK_KHR_win32_keyed_mutex", 769 { { "VK_VERSION_1_0", 770 { { 771 "VK_KHR_external_memory_win32", 772 } } } } }, 773 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 774 { "VK_KHR_external_semaphore_capabilities", 775 { { "VK_VERSION_1_0", 776 { { 777 "VK_KHR_get_physical_device_properties2", 778 } } }, 779 { "VK_VERSION_1_1", { {} } } } }, 780 { "VK_KHR_external_semaphore", 781 { { "VK_VERSION_1_0", 782 { { 783 "VK_KHR_external_semaphore_capabilities", 784 } } } } }, 785 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 786 { "VK_KHR_external_semaphore_win32", 787 { { "VK_VERSION_1_0", 788 { { 789 "VK_KHR_external_semaphore", 790 } } } } }, 791 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 792 { "VK_KHR_external_semaphore_fd", 793 { { "VK_VERSION_1_0", 794 { { 795 "VK_KHR_external_semaphore", 796 } } }, 797 { "VK_VERSION_1_1", { {} } } } }, 798 { "VK_KHR_push_descriptor", 799 { { "VK_VERSION_1_0", 800 { { 801 "VK_KHR_get_physical_device_properties2", 802 } } }, 803 { "VK_VERSION_1_1", { {} } } } }, 804 { "VK_EXT_conditional_rendering", 805 { { "VK_VERSION_1_0", 806 { { 807 "VK_KHR_get_physical_device_properties2", 808 } } }, 809 { "VK_VERSION_1_1", { {} } } } }, 810 { "VK_KHR_shader_float16_int8", 811 { { "VK_VERSION_1_0", 812 { { 813 "VK_KHR_get_physical_device_properties2", 814 } } }, 815 { "VK_VERSION_1_1", { {} } } } }, 816 { "VK_KHR_16bit_storage", 817 { { "VK_VERSION_1_0", 818 { { 819 "VK_KHR_get_physical_device_properties2", 820 "VK_KHR_storage_buffer_storage_class", 821 } } }, 822 { "VK_VERSION_1_1", { {} } } } }, 823 { "VK_KHR_incremental_present", 824 { { "VK_VERSION_1_0", 825 { { 826 "VK_KHR_swapchain", 827 } } } } }, 828 { "VK_EXT_direct_mode_display", 829 { { "VK_VERSION_1_0", 830 { { 831 "VK_KHR_display", 832 } } } } }, 833 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 834 { "VK_EXT_acquire_xlib_display", 835 { { "VK_VERSION_1_0", 836 { { 837 "VK_EXT_direct_mode_display", 838 } } } } }, 839 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 840 { "VK_EXT_display_surface_counter", 841 { { "VK_VERSION_1_0", 842 { { 843 "VK_KHR_display", 844 } } } } }, 845 { "VK_EXT_display_control", 846 { { "VK_VERSION_1_0", 847 { { 848 "VK_EXT_display_surface_counter", 849 "VK_KHR_swapchain", 850 } } } } }, 851 { "VK_GOOGLE_display_timing", 852 { { "VK_VERSION_1_0", 853 { { 854 "VK_KHR_swapchain", 855 } } } } }, 856 { "VK_NVX_multiview_per_view_attributes", 857 { { "VK_VERSION_1_0", 858 { { 859 "VK_KHR_multiview", 860 } } }, 861 { "VK_VERSION_1_1", { {} } } } }, 862 { "VK_EXT_discard_rectangles", 863 { { "VK_VERSION_1_0", 864 { { 865 "VK_KHR_get_physical_device_properties2", 866 } } }, 867 { "VK_VERSION_1_1", { {} } } } }, 868 { "VK_EXT_conservative_rasterization", 869 { { "VK_VERSION_1_0", 870 { { 871 "VK_KHR_get_physical_device_properties2", 872 } } }, 873 { "VK_VERSION_1_1", { {} } } } }, 874 { "VK_EXT_depth_clip_enable", 875 { { "VK_VERSION_1_0", 876 { { 877 "VK_KHR_get_physical_device_properties2", 878 } } }, 879 { "VK_VERSION_1_1", { {} } } } }, 880 { "VK_EXT_swapchain_colorspace", 881 { { "VK_VERSION_1_0", 882 { { 883 "VK_KHR_surface", 884 } } } } }, 885 { "VK_EXT_hdr_metadata", 886 { { "VK_VERSION_1_0", 887 { { 888 "VK_KHR_swapchain", 889 } } } } }, 890 { "VK_KHR_imageless_framebuffer", 891 { { "VK_VERSION_1_0", 892 { { 893 "VK_KHR_get_physical_device_properties2", 894 "VK_KHR_maintenance2", 895 } } }, 896 { "VK_VERSION_1_1", 897 { { 898 "VK_KHR_image_format_list", 899 } } }, 900 { "VK_VERSION_1_2", { {} } } } }, 901 { "VK_KHR_create_renderpass2", 902 { { "VK_VERSION_1_0", 903 { { 904 "VK_KHR_multiview", 905 "VK_KHR_maintenance2", 906 } } }, 907 { "VK_VERSION_1_1", { {} } } } }, 908 { "VK_IMG_relaxed_line_rasterization", 909 { { "VK_VERSION_1_0", 910 { { 911 "VK_KHR_get_physical_device_properties2", 912 } } }, 913 { "VK_VERSION_1_1", { {} } } } }, 914 { "VK_KHR_shared_presentable_image", 915 { { "VK_VERSION_1_0", 916 { { 917 "VK_KHR_swapchain", 918 "VK_KHR_get_surface_capabilities2", 919 "VK_KHR_get_physical_device_properties2", 920 } } }, 921 { "VK_VERSION_1_1", 922 { { 923 "VK_KHR_swapchain", 924 "VK_KHR_get_surface_capabilities2", 925 } } } } }, 926 { "VK_KHR_external_fence_capabilities", 927 { { "VK_VERSION_1_0", 928 { { 929 "VK_KHR_get_physical_device_properties2", 930 } } }, 931 { "VK_VERSION_1_1", { {} } } } }, 932 { "VK_KHR_external_fence", 933 { { "VK_VERSION_1_0", 934 { { 935 "VK_KHR_external_fence_capabilities", 936 } } } } }, 937 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 938 { "VK_KHR_external_fence_win32", 939 { { "VK_VERSION_1_0", 940 { { 941 "VK_KHR_external_fence", 942 } } } } }, 943 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 944 { "VK_KHR_external_fence_fd", 945 { { "VK_VERSION_1_0", 946 { { 947 "VK_KHR_external_fence", 948 } } }, 949 { "VK_VERSION_1_1", { {} } } } }, 950 { "VK_KHR_performance_query", 951 { { "VK_VERSION_1_0", 952 { { 953 "VK_KHR_get_physical_device_properties2", 954 } } }, 955 { "VK_VERSION_1_1", { {} } } } }, 956 { "VK_KHR_get_surface_capabilities2", 957 { { "VK_VERSION_1_0", 958 { { 959 "VK_KHR_surface", 960 } } } } }, 961 { "VK_KHR_variable_pointers", 962 { { "VK_VERSION_1_0", 963 { { 964 "VK_KHR_get_physical_device_properties2", 965 "VK_KHR_storage_buffer_storage_class", 966 } } }, 967 { "VK_VERSION_1_1", { {} } } } }, 968 { "VK_KHR_get_display_properties2", 969 { { "VK_VERSION_1_0", 970 { { 971 "VK_KHR_display", 972 } } } } }, 973 #if defined( VK_USE_PLATFORM_IOS_MVK ) 974 { "VK_MVK_ios_surface", 975 { { "VK_VERSION_1_0", 976 { { 977 "VK_KHR_surface", 978 } } } } }, 979 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 980 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 981 { "VK_MVK_macos_surface", 982 { { "VK_VERSION_1_0", 983 { { 984 "VK_KHR_surface", 985 } } } } }, 986 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 987 { "VK_EXT_external_memory_dma_buf", 988 { { "VK_VERSION_1_0", 989 { { 990 "VK_KHR_external_memory_fd", 991 } } } } }, 992 { "VK_EXT_queue_family_foreign", 993 { { "VK_VERSION_1_0", 994 { { 995 "VK_KHR_external_memory", 996 } } }, 997 { "VK_VERSION_1_1", { {} } } } }, 998 { "VK_KHR_dedicated_allocation", 999 { { "VK_VERSION_1_0", 1000 { { 1001 "VK_KHR_get_memory_requirements2", 1002 } } }, 1003 { "VK_VERSION_1_1", { {} } } } }, 1004 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 1005 { "VK_ANDROID_external_memory_android_hardware_buffer", 1006 { { "VK_VERSION_1_0", 1007 { { 1008 "VK_KHR_sampler_ycbcr_conversion", 1009 "VK_KHR_external_memory", 1010 "VK_KHR_dedicated_allocation", 1011 } } }, 1012 { "VK_VERSION_1_1", 1013 { { 1014 "VK_EXT_queue_family_foreign", 1015 } } } } }, 1016 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 1017 { "VK_EXT_sampler_filter_minmax", 1018 { { "VK_VERSION_1_0", 1019 { { 1020 "VK_KHR_get_physical_device_properties2", 1021 } } }, 1022 { "VK_VERSION_1_1", { {} } } } }, 1023 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1024 { "VK_AMDX_shader_enqueue", 1025 { { "VK_VERSION_1_0", 1026 { { 1027 "VK_KHR_synchronization2", 1028 "VK_KHR_spirv_1_4", 1029 "VK_EXT_extended_dynamic_state", 1030 } } }, 1031 { "VK_VERSION_1_3", 1032 { { 1033 "VK_KHR_maintenance5", 1034 "VK_KHR_pipeline_library", 1035 } } } } }, 1036 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1037 { "VK_EXT_inline_uniform_block", 1038 { { "VK_VERSION_1_0", 1039 { { 1040 "VK_KHR_get_physical_device_properties2", 1041 "VK_KHR_maintenance1", 1042 } } }, 1043 { "VK_VERSION_1_1", { {} } } } }, 1044 { "VK_EXT_sample_locations", 1045 { { "VK_VERSION_1_0", 1046 { { 1047 "VK_KHR_get_physical_device_properties2", 1048 } } }, 1049 { "VK_VERSION_1_1", { {} } } } }, 1050 { "VK_EXT_blend_operation_advanced", 1051 { { "VK_VERSION_1_0", 1052 { { 1053 "VK_KHR_get_physical_device_properties2", 1054 } } }, 1055 { "VK_VERSION_1_1", { {} } } } }, 1056 { "VK_KHR_acceleration_structure", 1057 { { "VK_VERSION_1_1", 1058 { { 1059 "VK_EXT_descriptor_indexing", 1060 "VK_KHR_buffer_device_address", 1061 } } }, 1062 { "VK_VERSION_1_2", 1063 { { 1064 "VK_KHR_deferred_host_operations", 1065 } } } } }, 1066 { "VK_KHR_ray_tracing_pipeline", 1067 { { "VK_VERSION_1_0", 1068 { { 1069 "VK_KHR_spirv_1_4", 1070 } } }, 1071 { "VK_VERSION_1_2", 1072 { { 1073 "VK_KHR_acceleration_structure", 1074 } } } } }, 1075 { "VK_KHR_ray_query", 1076 { { "VK_VERSION_1_0", 1077 { { 1078 "VK_KHR_spirv_1_4", 1079 } } }, 1080 { "VK_VERSION_1_2", 1081 { { 1082 "VK_KHR_acceleration_structure", 1083 } } } } }, 1084 { "VK_NV_shader_sm_builtins", { { "VK_VERSION_1_1", { {} } } } }, 1085 { "VK_KHR_sampler_ycbcr_conversion", 1086 { { "VK_VERSION_1_0", 1087 { { 1088 "VK_KHR_maintenance1", 1089 "VK_KHR_bind_memory2", 1090 "VK_KHR_get_memory_requirements2", 1091 "VK_KHR_get_physical_device_properties2", 1092 } } }, 1093 { "VK_VERSION_1_1", { {} } } } }, 1094 { "VK_EXT_image_drm_format_modifier", 1095 { { "VK_VERSION_1_0", 1096 { { 1097 "VK_KHR_bind_memory2", 1098 "VK_KHR_get_physical_device_properties2", 1099 "VK_KHR_sampler_ycbcr_conversion", 1100 } } }, 1101 { "VK_VERSION_1_1", 1102 { { 1103 "VK_KHR_image_format_list", 1104 } } }, 1105 { "VK_VERSION_1_2", { {} } } } }, 1106 { "VK_EXT_descriptor_indexing", 1107 { { "VK_VERSION_1_0", 1108 { { 1109 "VK_KHR_get_physical_device_properties2", 1110 "VK_KHR_maintenance3", 1111 } } }, 1112 { "VK_VERSION_1_1", { {} } } } }, 1113 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1114 { "VK_KHR_portability_subset", 1115 { { "VK_VERSION_1_0", 1116 { { 1117 "VK_KHR_get_physical_device_properties2", 1118 } } }, 1119 { "VK_VERSION_1_1", { {} } } } }, 1120 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1121 { "VK_NV_shading_rate_image", 1122 { { "VK_VERSION_1_0", 1123 { { 1124 "VK_KHR_get_physical_device_properties2", 1125 } } }, 1126 { "VK_VERSION_1_1", { {} } } } }, 1127 { "VK_NV_ray_tracing", 1128 { { "VK_VERSION_1_0", 1129 { { 1130 "VK_KHR_get_physical_device_properties2", 1131 "VK_KHR_get_memory_requirements2", 1132 } } }, 1133 { "VK_VERSION_1_1", { {} } } } }, 1134 { "VK_NV_representative_fragment_test", 1135 { { "VK_VERSION_1_0", 1136 { { 1137 "VK_KHR_get_physical_device_properties2", 1138 } } }, 1139 { "VK_VERSION_1_1", { {} } } } }, 1140 { "VK_KHR_maintenance3", 1141 { { "VK_VERSION_1_0", 1142 { { 1143 "VK_KHR_get_physical_device_properties2", 1144 } } }, 1145 { "VK_VERSION_1_1", { {} } } } }, 1146 { "VK_KHR_shader_subgroup_extended_types", { { "VK_VERSION_1_1", { {} } } } }, 1147 { "VK_KHR_8bit_storage", 1148 { { "VK_VERSION_1_0", 1149 { { 1150 "VK_KHR_get_physical_device_properties2", 1151 "VK_KHR_storage_buffer_storage_class", 1152 } } }, 1153 { "VK_VERSION_1_1", { {} } } } }, 1154 { "VK_EXT_external_memory_host", 1155 { { "VK_VERSION_1_0", 1156 { { 1157 "VK_KHR_external_memory", 1158 } } }, 1159 { "VK_VERSION_1_1", { {} } } } }, 1160 { "VK_KHR_shader_atomic_int64", 1161 { { "VK_VERSION_1_0", 1162 { { 1163 "VK_KHR_get_physical_device_properties2", 1164 } } }, 1165 { "VK_VERSION_1_1", { {} } } } }, 1166 { "VK_KHR_shader_clock", 1167 { { "VK_VERSION_1_0", 1168 { { 1169 "VK_KHR_get_physical_device_properties2", 1170 } } }, 1171 { "VK_VERSION_1_1", { {} } } } }, 1172 { "VK_EXT_calibrated_timestamps", 1173 { { "VK_VERSION_1_0", 1174 { { 1175 "VK_KHR_get_physical_device_properties2", 1176 } } }, 1177 { "VK_VERSION_1_1", { {} } } } }, 1178 { "VK_AMD_shader_core_properties", 1179 { { "VK_VERSION_1_0", 1180 { { 1181 "VK_KHR_get_physical_device_properties2", 1182 } } }, 1183 { "VK_VERSION_1_1", { {} } } } }, 1184 { "VK_KHR_video_decode_h265", 1185 { { "VK_VERSION_1_0", 1186 { { 1187 "VK_KHR_video_decode_queue", 1188 } } } } }, 1189 { "VK_KHR_global_priority", 1190 { { "VK_VERSION_1_0", 1191 { { 1192 "VK_KHR_get_physical_device_properties2", 1193 } } }, 1194 { "VK_VERSION_1_1", { {} } } } }, 1195 { "VK_EXT_vertex_attribute_divisor", 1196 { { "VK_VERSION_1_0", 1197 { { 1198 "VK_KHR_get_physical_device_properties2", 1199 } } }, 1200 { "VK_VERSION_1_1", { {} } } } }, 1201 #if defined( VK_USE_PLATFORM_GGP ) 1202 { "VK_GGP_frame_token", 1203 { { "VK_VERSION_1_0", 1204 { { 1205 "VK_KHR_swapchain", 1206 "VK_GGP_stream_descriptor_surface", 1207 } } } } }, 1208 #endif /*VK_USE_PLATFORM_GGP*/ 1209 { "VK_KHR_driver_properties", 1210 { { "VK_VERSION_1_0", 1211 { { 1212 "VK_KHR_get_physical_device_properties2", 1213 } } }, 1214 { "VK_VERSION_1_1", { {} } } } }, 1215 { "VK_KHR_shader_float_controls", 1216 { { "VK_VERSION_1_0", 1217 { { 1218 "VK_KHR_get_physical_device_properties2", 1219 } } }, 1220 { "VK_VERSION_1_1", { {} } } } }, 1221 { "VK_NV_shader_subgroup_partitioned", { { "VK_VERSION_1_1", { {} } } } }, 1222 { "VK_KHR_depth_stencil_resolve", 1223 { { "VK_VERSION_1_0", 1224 { { 1225 "VK_KHR_create_renderpass2", 1226 } } }, 1227 { "VK_VERSION_1_2", { {} } } } }, 1228 { "VK_KHR_swapchain_mutable_format", 1229 { { "VK_VERSION_1_0", 1230 { { 1231 "VK_KHR_swapchain", 1232 "VK_KHR_maintenance2", 1233 "VK_KHR_image_format_list", 1234 } } }, 1235 { "VK_VERSION_1_1", 1236 { { 1237 "VK_KHR_swapchain", 1238 "VK_KHR_image_format_list", 1239 } } }, 1240 { "VK_VERSION_1_2", 1241 { { 1242 "VK_KHR_swapchain", 1243 } } } } }, 1244 { "VK_NV_compute_shader_derivatives", 1245 { { "VK_VERSION_1_0", 1246 { { 1247 "VK_KHR_get_physical_device_properties2", 1248 } } }, 1249 { "VK_VERSION_1_1", { {} } } } }, 1250 { "VK_NV_mesh_shader", 1251 { { "VK_VERSION_1_0", 1252 { { 1253 "VK_KHR_get_physical_device_properties2", 1254 } } }, 1255 { "VK_VERSION_1_1", { {} } } } }, 1256 { "VK_NV_fragment_shader_barycentric", 1257 { { "VK_VERSION_1_0", 1258 { { 1259 "VK_KHR_get_physical_device_properties2", 1260 } } }, 1261 { "VK_VERSION_1_1", { {} } } } }, 1262 { "VK_NV_shader_image_footprint", 1263 { { "VK_VERSION_1_0", 1264 { { 1265 "VK_KHR_get_physical_device_properties2", 1266 } } }, 1267 { "VK_VERSION_1_1", { {} } } } }, 1268 { "VK_NV_scissor_exclusive", 1269 { { "VK_VERSION_1_0", 1270 { { 1271 "VK_KHR_get_physical_device_properties2", 1272 } } }, 1273 { "VK_VERSION_1_1", { {} } } } }, 1274 { "VK_NV_device_diagnostic_checkpoints", 1275 { { "VK_VERSION_1_0", 1276 { { 1277 "VK_KHR_get_physical_device_properties2", 1278 } } }, 1279 { "VK_VERSION_1_1", { {} } } } }, 1280 { "VK_KHR_timeline_semaphore", 1281 { { "VK_VERSION_1_0", 1282 { { 1283 "VK_KHR_get_physical_device_properties2", 1284 } } }, 1285 { "VK_VERSION_1_1", { {} } } } }, 1286 { "VK_INTEL_shader_integer_functions2", 1287 { { "VK_VERSION_1_0", 1288 { { 1289 "VK_KHR_get_physical_device_properties2", 1290 } } }, 1291 { "VK_VERSION_1_1", { {} } } } }, 1292 { "VK_KHR_vulkan_memory_model", 1293 { { "VK_VERSION_1_0", 1294 { { 1295 "VK_KHR_get_physical_device_properties2", 1296 } } }, 1297 { "VK_VERSION_1_1", { {} } } } }, 1298 { "VK_EXT_pci_bus_info", 1299 { { "VK_VERSION_1_0", 1300 { { 1301 "VK_KHR_get_physical_device_properties2", 1302 } } }, 1303 { "VK_VERSION_1_1", { {} } } } }, 1304 { "VK_AMD_display_native_hdr", 1305 { { "VK_VERSION_1_0", 1306 { { 1307 "VK_KHR_get_physical_device_properties2", 1308 } } }, 1309 { "VK_VERSION_1_1", 1310 { { 1311 "VK_KHR_get_surface_capabilities2", 1312 "VK_KHR_swapchain", 1313 } } } } }, 1314 #if defined( VK_USE_PLATFORM_FUCHSIA ) 1315 { "VK_FUCHSIA_imagepipe_surface", 1316 { { "VK_VERSION_1_0", 1317 { { 1318 "VK_KHR_surface", 1319 } } } } }, 1320 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 1321 { "VK_KHR_shader_terminate_invocation", 1322 { { "VK_VERSION_1_0", 1323 { { 1324 "VK_KHR_get_physical_device_properties2", 1325 } } }, 1326 { "VK_VERSION_1_1", { {} } } } }, 1327 #if defined( VK_USE_PLATFORM_METAL_EXT ) 1328 { "VK_EXT_metal_surface", 1329 { { "VK_VERSION_1_0", 1330 { { 1331 "VK_KHR_surface", 1332 } } } } }, 1333 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 1334 { "VK_EXT_fragment_density_map", 1335 { { "VK_VERSION_1_0", 1336 { { 1337 "VK_KHR_get_physical_device_properties2", 1338 } } }, 1339 { "VK_VERSION_1_1", { {} } } } }, 1340 { "VK_EXT_scalar_block_layout", 1341 { { "VK_VERSION_1_0", 1342 { { 1343 "VK_KHR_get_physical_device_properties2", 1344 } } }, 1345 { "VK_VERSION_1_1", { {} } } } }, 1346 { "VK_EXT_subgroup_size_control", { { "VK_VERSION_1_1", { {} } } } }, 1347 { "VK_KHR_fragment_shading_rate", 1348 { { "VK_VERSION_1_0", 1349 { { 1350 "VK_KHR_get_physical_device_properties2", 1351 } } }, 1352 { "VK_VERSION_1_1", 1353 { { 1354 "VK_KHR_create_renderpass2", 1355 } } }, 1356 { "VK_VERSION_1_2", { {} } } } }, 1357 { "VK_AMD_shader_core_properties2", 1358 { { "VK_VERSION_1_0", 1359 { { 1360 "VK_AMD_shader_core_properties", 1361 } } } } }, 1362 { "VK_AMD_device_coherent_memory", 1363 { { "VK_VERSION_1_0", 1364 { { 1365 "VK_KHR_get_physical_device_properties2", 1366 } } }, 1367 { "VK_VERSION_1_1", { {} } } } }, 1368 { "VK_KHR_dynamic_rendering_local_read", 1369 { { "VK_VERSION_1_0", 1370 { { 1371 "VK_KHR_dynamic_rendering", 1372 } } }, 1373 { "VK_VERSION_1_3", { {} } } } }, 1374 { "VK_EXT_shader_image_atomic_int64", 1375 { { "VK_VERSION_1_0", 1376 { { 1377 "VK_KHR_get_physical_device_properties2", 1378 } } }, 1379 { "VK_VERSION_1_1", { {} } } } }, 1380 { "VK_KHR_shader_quad_control", 1381 { { "VK_VERSION_1_1", 1382 { { 1383 "VK_KHR_vulkan_memory_model", 1384 } } }, 1385 { "VK_VERSION_1_2", 1386 { { 1387 "VK_KHR_shader_maximal_reconvergence", 1388 } } } } }, 1389 { "VK_KHR_spirv_1_4", 1390 { { "VK_VERSION_1_1", 1391 { { 1392 "VK_KHR_shader_float_controls", 1393 } } } } }, 1394 { "VK_EXT_memory_budget", 1395 { { "VK_VERSION_1_0", 1396 { { 1397 "VK_KHR_get_physical_device_properties2", 1398 } } }, 1399 { "VK_VERSION_1_1", { {} } } } }, 1400 { "VK_EXT_memory_priority", 1401 { { "VK_VERSION_1_0", 1402 { { 1403 "VK_KHR_get_physical_device_properties2", 1404 } } }, 1405 { "VK_VERSION_1_1", { {} } } } }, 1406 { "VK_KHR_surface_protected_capabilities", 1407 { { "VK_VERSION_1_1", 1408 { { 1409 "VK_KHR_get_surface_capabilities2", 1410 } } } } }, 1411 { "VK_NV_dedicated_allocation_image_aliasing", 1412 { { "VK_VERSION_1_0", 1413 { { 1414 "VK_KHR_dedicated_allocation", 1415 "VK_KHR_get_physical_device_properties2", 1416 } } }, 1417 { "VK_VERSION_1_1", { {} } } } }, 1418 { "VK_KHR_separate_depth_stencil_layouts", 1419 { { "VK_VERSION_1_0", 1420 { { 1421 "VK_KHR_get_physical_device_properties2", 1422 } } }, 1423 { "VK_VERSION_1_1", 1424 { { 1425 "VK_KHR_create_renderpass2", 1426 } } }, 1427 { "VK_VERSION_1_2", { {} } } } }, 1428 { "VK_EXT_buffer_device_address", 1429 { { "VK_VERSION_1_0", 1430 { { 1431 "VK_KHR_get_physical_device_properties2", 1432 } } }, 1433 { "VK_VERSION_1_1", { {} } } } }, 1434 { "VK_KHR_present_wait", 1435 { { "VK_VERSION_1_0", 1436 { { 1437 "VK_KHR_swapchain", 1438 "VK_KHR_present_id", 1439 } } } } }, 1440 { "VK_NV_cooperative_matrix", 1441 { { "VK_VERSION_1_0", 1442 { { 1443 "VK_KHR_get_physical_device_properties2", 1444 } } }, 1445 { "VK_VERSION_1_1", { {} } } } }, 1446 { "VK_NV_coverage_reduction_mode", 1447 { { "VK_VERSION_1_0", 1448 { { 1449 "VK_NV_framebuffer_mixed_samples", 1450 "VK_KHR_get_physical_device_properties2", 1451 } } }, 1452 { "VK_VERSION_1_1", { {} } } } }, 1453 { "VK_EXT_fragment_shader_interlock", 1454 { { "VK_VERSION_1_0", 1455 { { 1456 "VK_KHR_get_physical_device_properties2", 1457 } } }, 1458 { "VK_VERSION_1_1", { {} } } } }, 1459 { "VK_EXT_ycbcr_image_arrays", 1460 { { "VK_VERSION_1_0", 1461 { { 1462 "VK_KHR_sampler_ycbcr_conversion", 1463 } } }, 1464 { "VK_VERSION_1_1", { {} } } } }, 1465 { "VK_KHR_uniform_buffer_standard_layout", 1466 { { "VK_VERSION_1_0", 1467 { { 1468 "VK_KHR_get_physical_device_properties2", 1469 } } }, 1470 { "VK_VERSION_1_1", { {} } } } }, 1471 { "VK_EXT_provoking_vertex", 1472 { { "VK_VERSION_1_0", 1473 { { 1474 "VK_KHR_get_physical_device_properties2", 1475 } } }, 1476 { "VK_VERSION_1_1", { {} } } } }, 1477 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1478 { "VK_EXT_full_screen_exclusive", 1479 { { "VK_VERSION_1_0", 1480 { { 1481 "VK_KHR_get_physical_device_properties2", 1482 } } }, 1483 { "VK_VERSION_1_1", 1484 { { 1485 "VK_KHR_surface", 1486 "VK_KHR_get_surface_capabilities2", 1487 "VK_KHR_swapchain", 1488 } } } } }, 1489 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1490 { "VK_EXT_headless_surface", 1491 { { "VK_VERSION_1_0", 1492 { { 1493 "VK_KHR_surface", 1494 } } } } }, 1495 { "VK_KHR_buffer_device_address", 1496 { { "VK_VERSION_1_0", 1497 { { 1498 "VK_KHR_get_physical_device_properties2", 1499 "VK_KHR_device_group", 1500 } } }, 1501 { "VK_VERSION_1_1", { {} } } } }, 1502 { "VK_EXT_line_rasterization", 1503 { { "VK_VERSION_1_0", 1504 { { 1505 "VK_KHR_get_physical_device_properties2", 1506 } } }, 1507 { "VK_VERSION_1_1", { {} } } } }, 1508 { "VK_EXT_shader_atomic_float", 1509 { { "VK_VERSION_1_0", 1510 { { 1511 "VK_KHR_get_physical_device_properties2", 1512 } } }, 1513 { "VK_VERSION_1_1", { {} } } } }, 1514 { "VK_EXT_host_query_reset", 1515 { { "VK_VERSION_1_0", 1516 { { 1517 "VK_KHR_get_physical_device_properties2", 1518 } } }, 1519 { "VK_VERSION_1_1", { {} } } } }, 1520 { "VK_EXT_index_type_uint8", 1521 { { "VK_VERSION_1_0", 1522 { { 1523 "VK_KHR_get_physical_device_properties2", 1524 } } }, 1525 { "VK_VERSION_1_1", { {} } } } }, 1526 { "VK_EXT_extended_dynamic_state", 1527 { { "VK_VERSION_1_0", 1528 { { 1529 "VK_KHR_get_physical_device_properties2", 1530 } } }, 1531 { "VK_VERSION_1_1", { {} } } } }, 1532 { "VK_KHR_pipeline_executable_properties", 1533 { { "VK_VERSION_1_0", 1534 { { 1535 "VK_KHR_get_physical_device_properties2", 1536 } } }, 1537 { "VK_VERSION_1_1", { {} } } } }, 1538 { "VK_EXT_host_image_copy", 1539 { { "VK_VERSION_1_0", 1540 { { 1541 "VK_KHR_get_physical_device_properties2", 1542 } } }, 1543 { "VK_VERSION_1_1", 1544 { { 1545 "VK_KHR_copy_commands2", 1546 "VK_KHR_format_feature_flags2", 1547 } } }, 1548 { "VK_VERSION_1_3", { {} } } } }, 1549 { "VK_EXT_map_memory_placed", 1550 { { "VK_VERSION_1_0", 1551 { { 1552 "VK_KHR_map_memory2", 1553 } } }, 1554 { "VK_VERSION_1_4", { {} } } } }, 1555 { "VK_EXT_shader_atomic_float2", 1556 { { "VK_VERSION_1_0", 1557 { { 1558 "VK_EXT_shader_atomic_float", 1559 } } } } }, 1560 { "VK_EXT_surface_maintenance1", 1561 { { "VK_VERSION_1_0", 1562 { { 1563 "VK_KHR_surface", 1564 "VK_KHR_get_surface_capabilities2", 1565 } } } } }, 1566 { "VK_EXT_swapchain_maintenance1", 1567 { { "VK_VERSION_1_0", 1568 { { 1569 "VK_KHR_swapchain", 1570 "VK_EXT_surface_maintenance1", 1571 "VK_KHR_get_physical_device_properties2", 1572 } } }, 1573 { "VK_VERSION_1_1", { {} } } } }, 1574 { "VK_EXT_shader_demote_to_helper_invocation", 1575 { { "VK_VERSION_1_0", 1576 { { 1577 "VK_KHR_get_physical_device_properties2", 1578 } } }, 1579 { "VK_VERSION_1_1", { {} } } } }, 1580 { "VK_NV_device_generated_commands", 1581 { { "VK_VERSION_1_1", 1582 { { 1583 "VK_KHR_buffer_device_address", 1584 } } }, 1585 { "VK_VERSION_1_2", { {} } } } }, 1586 { "VK_NV_inherited_viewport_scissor", 1587 { { "VK_VERSION_1_0", 1588 { { 1589 "VK_KHR_get_physical_device_properties2", 1590 } } }, 1591 { "VK_VERSION_1_1", { {} } } } }, 1592 { "VK_KHR_shader_integer_dot_product", 1593 { { "VK_VERSION_1_0", 1594 { { 1595 "VK_KHR_get_physical_device_properties2", 1596 } } }, 1597 { "VK_VERSION_1_1", { {} } } } }, 1598 { "VK_EXT_texel_buffer_alignment", 1599 { { "VK_VERSION_1_0", 1600 { { 1601 "VK_KHR_get_physical_device_properties2", 1602 } } }, 1603 { "VK_VERSION_1_1", { {} } } } }, 1604 { "VK_EXT_depth_bias_control", 1605 { { "VK_VERSION_1_0", 1606 { { 1607 "VK_KHR_get_physical_device_properties2", 1608 } } }, 1609 { "VK_VERSION_1_1", { {} } } } }, 1610 { "VK_EXT_device_memory_report", 1611 { { "VK_VERSION_1_0", 1612 { { 1613 "VK_KHR_get_physical_device_properties2", 1614 } } }, 1615 { "VK_VERSION_1_1", { {} } } } }, 1616 { "VK_EXT_acquire_drm_display", 1617 { { "VK_VERSION_1_0", 1618 { { 1619 "VK_EXT_direct_mode_display", 1620 } } } } }, 1621 { "VK_EXT_robustness2", 1622 { { "VK_VERSION_1_0", 1623 { { 1624 "VK_KHR_get_physical_device_properties2", 1625 } } }, 1626 { "VK_VERSION_1_1", { {} } } } }, 1627 { "VK_EXT_custom_border_color", 1628 { { "VK_VERSION_1_0", 1629 { { 1630 "VK_KHR_get_physical_device_properties2", 1631 } } }, 1632 { "VK_VERSION_1_1", { {} } } } }, 1633 { "VK_NV_present_barrier", 1634 { { "VK_VERSION_1_0", 1635 { { 1636 "VK_KHR_get_physical_device_properties2", 1637 } } }, 1638 { "VK_VERSION_1_1", 1639 { { 1640 "VK_KHR_surface", 1641 "VK_KHR_get_surface_capabilities2", 1642 "VK_KHR_swapchain", 1643 } } } } }, 1644 { "VK_KHR_present_id", 1645 { { "VK_VERSION_1_0", 1646 { { 1647 "VK_KHR_swapchain", 1648 "VK_KHR_get_physical_device_properties2", 1649 } } }, 1650 { "VK_VERSION_1_1", { {} } } } }, 1651 { "VK_EXT_private_data", 1652 { { "VK_VERSION_1_0", 1653 { { 1654 "VK_KHR_get_physical_device_properties2", 1655 } } }, 1656 { "VK_VERSION_1_1", { {} } } } }, 1657 { "VK_EXT_pipeline_creation_cache_control", 1658 { { "VK_VERSION_1_0", 1659 { { 1660 "VK_KHR_get_physical_device_properties2", 1661 } } }, 1662 { "VK_VERSION_1_1", { {} } } } }, 1663 { "VK_KHR_video_encode_queue", 1664 { { "VK_VERSION_1_0", 1665 { { 1666 "VK_KHR_video_queue", 1667 "VK_KHR_synchronization2", 1668 } } }, 1669 { "VK_VERSION_1_3", { {} } } } }, 1670 { "VK_NV_device_diagnostics_config", 1671 { { "VK_VERSION_1_0", 1672 { { 1673 "VK_KHR_get_physical_device_properties2", 1674 } } }, 1675 { "VK_VERSION_1_1", { {} } } } }, 1676 { "VK_KHR_synchronization2", 1677 { { "VK_VERSION_1_0", 1678 { { 1679 "VK_KHR_get_physical_device_properties2", 1680 } } }, 1681 { "VK_VERSION_1_1", { {} } } } }, 1682 { "VK_EXT_descriptor_buffer", 1683 { { "VK_VERSION_1_0", 1684 { { 1685 "VK_KHR_get_physical_device_properties2", 1686 } } }, 1687 { "VK_VERSION_1_1", 1688 { { 1689 "VK_KHR_buffer_device_address", 1690 "VK_EXT_descriptor_indexing", 1691 } } }, 1692 { "VK_VERSION_1_2", 1693 { { 1694 "VK_KHR_synchronization2", 1695 } } }, 1696 { "VK_VERSION_1_3", { {} } } } }, 1697 { "VK_EXT_graphics_pipeline_library", 1698 { { "VK_VERSION_1_0", 1699 { { 1700 "VK_KHR_get_physical_device_properties2", 1701 } } }, 1702 { "VK_VERSION_1_1", 1703 { { 1704 "VK_KHR_pipeline_library", 1705 } } } } }, 1706 { "VK_AMD_shader_early_and_late_fragment_tests", 1707 { { "VK_VERSION_1_0", 1708 { { 1709 "VK_KHR_get_physical_device_properties2", 1710 } } }, 1711 { "VK_VERSION_1_1", { {} } } } }, 1712 { "VK_KHR_fragment_shader_barycentric", 1713 { { "VK_VERSION_1_0", 1714 { { 1715 "VK_KHR_get_physical_device_properties2", 1716 } } }, 1717 { "VK_VERSION_1_1", { {} } } } }, 1718 { "VK_KHR_shader_subgroup_uniform_control_flow", { { "VK_VERSION_1_1", { {} } } } }, 1719 { "VK_KHR_zero_initialize_workgroup_memory", 1720 { { "VK_VERSION_1_0", 1721 { { 1722 "VK_KHR_get_physical_device_properties2", 1723 } } }, 1724 { "VK_VERSION_1_1", { {} } } } }, 1725 { "VK_NV_fragment_shading_rate_enums", 1726 { { "VK_VERSION_1_0", 1727 { { 1728 "VK_KHR_fragment_shading_rate", 1729 } } } } }, 1730 { "VK_NV_ray_tracing_motion_blur", 1731 { { "VK_VERSION_1_0", 1732 { { 1733 "VK_KHR_ray_tracing_pipeline", 1734 } } } } }, 1735 { "VK_EXT_mesh_shader", 1736 { { "VK_VERSION_1_0", 1737 { { 1738 "VK_KHR_spirv_1_4", 1739 } } }, 1740 { "VK_VERSION_1_2", { {} } } } }, 1741 { "VK_EXT_ycbcr_2plane_444_formats", 1742 { { "VK_VERSION_1_0", 1743 { { 1744 "VK_KHR_sampler_ycbcr_conversion", 1745 } } }, 1746 { "VK_VERSION_1_1", { {} } } } }, 1747 { "VK_EXT_fragment_density_map2", 1748 { { "VK_VERSION_1_0", 1749 { { 1750 "VK_EXT_fragment_density_map", 1751 } } } } }, 1752 { "VK_QCOM_rotated_copy_commands", 1753 { { "VK_VERSION_1_0", 1754 { { 1755 "VK_KHR_copy_commands2", 1756 } } }, 1757 { "VK_VERSION_1_3", { {} } } } }, 1758 { "VK_EXT_image_robustness", 1759 { { "VK_VERSION_1_0", 1760 { { 1761 "VK_KHR_get_physical_device_properties2", 1762 } } }, 1763 { "VK_VERSION_1_1", { {} } } } }, 1764 { "VK_KHR_workgroup_memory_explicit_layout", 1765 { { "VK_VERSION_1_0", 1766 { { 1767 "VK_KHR_get_physical_device_properties2", 1768 } } }, 1769 { "VK_VERSION_1_1", { {} } } } }, 1770 { "VK_KHR_copy_commands2", 1771 { { "VK_VERSION_1_0", 1772 { { 1773 "VK_KHR_get_physical_device_properties2", 1774 } } }, 1775 { "VK_VERSION_1_1", { {} } } } }, 1776 { "VK_EXT_image_compression_control", 1777 { { "VK_VERSION_1_0", 1778 { { 1779 "VK_KHR_get_physical_device_properties2", 1780 } } }, 1781 { "VK_VERSION_1_1", { {} } } } }, 1782 { "VK_EXT_attachment_feedback_loop_layout", 1783 { { "VK_VERSION_1_0", 1784 { { 1785 "VK_KHR_get_physical_device_properties2", 1786 } } }, 1787 { "VK_VERSION_1_1", { {} } } } }, 1788 { "VK_EXT_4444_formats", 1789 { { "VK_VERSION_1_0", 1790 { { 1791 "VK_KHR_get_physical_device_properties2", 1792 } } }, 1793 { "VK_VERSION_1_1", { {} } } } }, 1794 { "VK_EXT_device_fault", 1795 { { "VK_VERSION_1_0", 1796 { { 1797 "VK_KHR_get_physical_device_properties2", 1798 } } }, 1799 { "VK_VERSION_1_1", { {} } } } }, 1800 { "VK_ARM_rasterization_order_attachment_access", 1801 { { "VK_VERSION_1_0", 1802 { { 1803 "VK_KHR_get_physical_device_properties2", 1804 } } }, 1805 { "VK_VERSION_1_1", { {} } } } }, 1806 { "VK_EXT_rgba10x6_formats", 1807 { { "VK_VERSION_1_0", 1808 { { 1809 "VK_KHR_sampler_ycbcr_conversion", 1810 } } }, 1811 { "VK_VERSION_1_1", { {} } } } }, 1812 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1813 { "VK_NV_acquire_winrt_display", 1814 { { "VK_VERSION_1_0", 1815 { { 1816 "VK_EXT_direct_mode_display", 1817 } } } } }, 1818 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1819 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 1820 { "VK_EXT_directfb_surface", 1821 { { "VK_VERSION_1_0", 1822 { { 1823 "VK_KHR_surface", 1824 } } } } }, 1825 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 1826 { "VK_VALVE_mutable_descriptor_type", 1827 { { "VK_VERSION_1_0", 1828 { { 1829 "VK_KHR_maintenance3", 1830 } } } } }, 1831 { "VK_EXT_vertex_input_dynamic_state", 1832 { { "VK_VERSION_1_0", 1833 { { 1834 "VK_KHR_get_physical_device_properties2", 1835 } } }, 1836 { "VK_VERSION_1_1", { {} } } } }, 1837 { "VK_EXT_physical_device_drm", 1838 { { "VK_VERSION_1_0", 1839 { { 1840 "VK_KHR_get_physical_device_properties2", 1841 } } }, 1842 { "VK_VERSION_1_1", { {} } } } }, 1843 { "VK_EXT_device_address_binding_report", 1844 { { "VK_VERSION_1_0", 1845 { { 1846 "VK_KHR_get_physical_device_properties2", 1847 } } }, 1848 { "VK_VERSION_1_1", 1849 { { 1850 "VK_EXT_debug_utils", 1851 } } } } }, 1852 { "VK_EXT_depth_clip_control", 1853 { { "VK_VERSION_1_0", 1854 { { 1855 "VK_KHR_get_physical_device_properties2", 1856 } } }, 1857 { "VK_VERSION_1_1", { {} } } } }, 1858 { "VK_EXT_primitive_topology_list_restart", 1859 { { "VK_VERSION_1_0", 1860 { { 1861 "VK_KHR_get_physical_device_properties2", 1862 } } }, 1863 { "VK_VERSION_1_1", { {} } } } }, 1864 { "VK_KHR_format_feature_flags2", 1865 { { "VK_VERSION_1_0", 1866 { { 1867 "VK_KHR_get_physical_device_properties2", 1868 } } }, 1869 { "VK_VERSION_1_1", { {} } } } }, 1870 { "VK_EXT_present_mode_fifo_latest_ready", 1871 { { "VK_VERSION_1_0", 1872 { { 1873 "VK_KHR_swapchain", 1874 } } } } }, 1875 #if defined( VK_USE_PLATFORM_FUCHSIA ) 1876 { "VK_FUCHSIA_external_memory", 1877 { { "VK_VERSION_1_0", 1878 { { 1879 "VK_KHR_external_memory_capabilities", 1880 "VK_KHR_external_memory", 1881 } } }, 1882 { "VK_VERSION_1_1", { {} } } } }, 1883 { "VK_FUCHSIA_external_semaphore", 1884 { { "VK_VERSION_1_0", 1885 { { 1886 "VK_KHR_external_semaphore_capabilities", 1887 "VK_KHR_external_semaphore", 1888 } } } } }, 1889 { "VK_FUCHSIA_buffer_collection", 1890 { { "VK_VERSION_1_0", 1891 { { 1892 "VK_FUCHSIA_external_memory", 1893 "VK_KHR_sampler_ycbcr_conversion", 1894 } } }, 1895 { "VK_VERSION_1_1", { {} } } } }, 1896 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 1897 { "VK_HUAWEI_subpass_shading", 1898 { { "VK_VERSION_1_0", 1899 { { 1900 "VK_KHR_create_renderpass2", 1901 } } }, 1902 { "VK_VERSION_1_2", 1903 { { 1904 "VK_KHR_synchronization2", 1905 } } }, 1906 { "VK_VERSION_1_3", { {} } } } }, 1907 { "VK_HUAWEI_invocation_mask", 1908 { { "VK_VERSION_1_0", 1909 { { 1910 "VK_KHR_ray_tracing_pipeline", 1911 "VK_KHR_synchronization2", 1912 } } }, 1913 { "VK_VERSION_1_3", { {} } } } }, 1914 { "VK_NV_external_memory_rdma", 1915 { { "VK_VERSION_1_0", 1916 { { 1917 "VK_KHR_external_memory", 1918 } } }, 1919 { "VK_VERSION_1_1", { {} } } } }, 1920 { "VK_EXT_pipeline_properties", 1921 { { "VK_VERSION_1_0", 1922 { { 1923 "VK_KHR_get_physical_device_properties2", 1924 } } }, 1925 { "VK_VERSION_1_1", { {} } } } }, 1926 { "VK_EXT_multisampled_render_to_single_sampled", 1927 { { "VK_VERSION_1_0", 1928 { { 1929 "VK_KHR_create_renderpass2", 1930 "VK_KHR_depth_stencil_resolve", 1931 } } }, 1932 { "VK_VERSION_1_2", { {} } } } }, 1933 { "VK_EXT_extended_dynamic_state2", 1934 { { "VK_VERSION_1_0", 1935 { { 1936 "VK_KHR_get_physical_device_properties2", 1937 } } }, 1938 { "VK_VERSION_1_1", { {} } } } }, 1939 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 1940 { "VK_QNX_screen_surface", 1941 { { "VK_VERSION_1_0", 1942 { { 1943 "VK_KHR_surface", 1944 } } } } }, 1945 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 1946 { "VK_EXT_color_write_enable", 1947 { { "VK_VERSION_1_0", 1948 { { 1949 "VK_KHR_get_physical_device_properties2", 1950 } } }, 1951 { "VK_VERSION_1_1", { {} } } } }, 1952 { "VK_EXT_primitives_generated_query", 1953 { { "VK_VERSION_1_0", 1954 { { 1955 "VK_EXT_transform_feedback", 1956 } } } } }, 1957 { "VK_KHR_ray_tracing_maintenance1", 1958 { { "VK_VERSION_1_0", 1959 { { 1960 "VK_KHR_acceleration_structure", 1961 } } } } }, 1962 { "VK_EXT_global_priority_query", 1963 { { "VK_VERSION_1_0", 1964 { { 1965 "VK_EXT_global_priority", 1966 "VK_KHR_get_physical_device_properties2", 1967 } } }, 1968 { "VK_VERSION_1_1", { {} } } } }, 1969 { "VK_EXT_image_view_min_lod", 1970 { { "VK_VERSION_1_0", 1971 { { 1972 "VK_KHR_get_physical_device_properties2", 1973 } } }, 1974 { "VK_VERSION_1_1", { {} } } } }, 1975 { "VK_EXT_multi_draw", 1976 { { "VK_VERSION_1_0", 1977 { { 1978 "VK_KHR_get_physical_device_properties2", 1979 } } }, 1980 { "VK_VERSION_1_1", { {} } } } }, 1981 { "VK_EXT_image_2d_view_of_3d", 1982 { { "VK_VERSION_1_0", 1983 { { 1984 "VK_KHR_maintenance1", 1985 "VK_KHR_get_physical_device_properties2", 1986 } } }, 1987 { "VK_VERSION_1_1", { {} } } } }, 1988 { "VK_EXT_shader_tile_image", { { "VK_VERSION_1_3", { {} } } } }, 1989 { "VK_EXT_opacity_micromap", 1990 { { "VK_VERSION_1_0", 1991 { { 1992 "VK_KHR_acceleration_structure", 1993 "VK_KHR_synchronization2", 1994 } } }, 1995 { "VK_VERSION_1_3", { {} } } } }, 1996 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1997 { "VK_NV_displacement_micromap", 1998 { { "VK_VERSION_1_0", 1999 { { 2000 "VK_EXT_opacity_micromap", 2001 } } } } }, 2002 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 2003 { "VK_HUAWEI_cluster_culling_shader", 2004 { { "VK_VERSION_1_0", 2005 { { 2006 "VK_KHR_get_physical_device_properties2", 2007 } } }, 2008 { "VK_VERSION_1_1", { {} } } } }, 2009 { "VK_EXT_border_color_swizzle", 2010 { { "VK_VERSION_1_0", 2011 { { 2012 "VK_EXT_custom_border_color", 2013 } } } } }, 2014 { "VK_EXT_pageable_device_local_memory", 2015 { { "VK_VERSION_1_0", 2016 { { 2017 "VK_EXT_memory_priority", 2018 } } } } }, 2019 { "VK_KHR_maintenance4", { { "VK_VERSION_1_1", { {} } } } }, 2020 { "VK_ARM_shader_core_properties", { { "VK_VERSION_1_1", { {} } } } }, 2021 { "VK_ARM_scheduling_controls", 2022 { { "VK_VERSION_1_0", 2023 { { 2024 "VK_ARM_shader_core_builtins", 2025 } } } } }, 2026 { "VK_EXT_image_sliced_view_of_3d", 2027 { { "VK_VERSION_1_0", 2028 { { 2029 "VK_KHR_maintenance1", 2030 "VK_KHR_get_physical_device_properties2", 2031 } } }, 2032 { "VK_VERSION_1_1", { {} } } } }, 2033 { "VK_VALVE_descriptor_set_host_mapping", 2034 { { "VK_VERSION_1_0", 2035 { { 2036 "VK_KHR_get_physical_device_properties2", 2037 } } }, 2038 { "VK_VERSION_1_1", { {} } } } }, 2039 { "VK_EXT_depth_clamp_zero_one", 2040 { { "VK_VERSION_1_0", 2041 { { 2042 "VK_KHR_get_physical_device_properties2", 2043 } } }, 2044 { "VK_VERSION_1_1", { {} } } } }, 2045 { "VK_EXT_non_seamless_cube_map", 2046 { { "VK_VERSION_1_0", 2047 { { 2048 "VK_KHR_get_physical_device_properties2", 2049 } } }, 2050 { "VK_VERSION_1_1", { {} } } } }, 2051 { "VK_ARM_render_pass_striped", 2052 { { "VK_VERSION_1_0", 2053 { { 2054 "VK_KHR_get_physical_device_properties2", 2055 } } }, 2056 { "VK_VERSION_1_1", 2057 { { 2058 "VK_KHR_synchronization2", 2059 } } }, 2060 { "VK_VERSION_1_3", { {} } } } }, 2061 { "VK_QCOM_fragment_density_map_offset", 2062 { { "VK_VERSION_1_0", 2063 { { 2064 "VK_KHR_get_physical_device_properties2", 2065 } } }, 2066 { "VK_VERSION_1_1", 2067 { { 2068 "VK_EXT_fragment_density_map", 2069 } } } } }, 2070 { "VK_NV_copy_memory_indirect", 2071 { { "VK_VERSION_1_0", 2072 { { 2073 "VK_KHR_get_physical_device_properties2", 2074 } } }, 2075 { "VK_VERSION_1_1", 2076 { { 2077 "VK_KHR_buffer_device_address", 2078 } } }, 2079 { "VK_VERSION_1_2", { {} } } } }, 2080 { "VK_NV_memory_decompression", 2081 { { "VK_VERSION_1_0", 2082 { { 2083 "VK_KHR_get_physical_device_properties2", 2084 } } }, 2085 { "VK_VERSION_1_1", 2086 { { 2087 "VK_KHR_buffer_device_address", 2088 } } }, 2089 { "VK_VERSION_1_2", { {} } } } }, 2090 { "VK_NV_device_generated_commands_compute", 2091 { { "VK_VERSION_1_0", 2092 { { 2093 "VK_NV_device_generated_commands", 2094 } } } } }, 2095 { "VK_NV_ray_tracing_linear_swept_spheres", 2096 { { "VK_VERSION_1_0", 2097 { { 2098 "VK_KHR_ray_tracing_pipeline", 2099 } } } } }, 2100 { "VK_NV_linear_color_attachment", 2101 { { "VK_VERSION_1_0", 2102 { { 2103 "VK_KHR_get_physical_device_properties2", 2104 } } }, 2105 { "VK_VERSION_1_1", { {} } } } }, 2106 { "VK_GOOGLE_surfaceless_query", 2107 { { "VK_VERSION_1_0", 2108 { { 2109 "VK_KHR_surface", 2110 } } } } }, 2111 { "VK_KHR_shader_maximal_reconvergence", { { "VK_VERSION_1_1", { {} } } } }, 2112 { "VK_EXT_image_compression_control_swapchain", 2113 { { "VK_VERSION_1_0", 2114 { { 2115 "VK_EXT_image_compression_control", 2116 } } } } }, 2117 { "VK_QCOM_image_processing", 2118 { { "VK_VERSION_1_0", 2119 { { 2120 "VK_KHR_format_feature_flags2", 2121 } } }, 2122 { "VK_VERSION_1_3", { {} } } } }, 2123 { "VK_EXT_nested_command_buffer", 2124 { { "VK_VERSION_1_0", 2125 { { 2126 "VK_KHR_get_physical_device_properties2", 2127 } } }, 2128 { "VK_VERSION_1_1", { {} } } } }, 2129 { "VK_EXT_external_memory_acquire_unmodified", 2130 { { "VK_VERSION_1_0", 2131 { { 2132 "VK_KHR_external_memory", 2133 } } }, 2134 { "VK_VERSION_1_1", { {} } } } }, 2135 { "VK_EXT_extended_dynamic_state3", 2136 { { "VK_VERSION_1_0", 2137 { { 2138 "VK_KHR_get_physical_device_properties2", 2139 } } }, 2140 { "VK_VERSION_1_1", { {} } } } }, 2141 { "VK_EXT_subpass_merge_feedback", 2142 { { "VK_VERSION_1_0", 2143 { { 2144 "VK_KHR_get_physical_device_properties2", 2145 } } }, 2146 { "VK_VERSION_1_1", { {} } } } }, 2147 { "VK_EXT_shader_module_identifier", 2148 { { "VK_VERSION_1_0", 2149 { { 2150 "VK_KHR_get_physical_device_properties2", 2151 } } }, 2152 { "VK_VERSION_1_1", 2153 { { 2154 "VK_EXT_pipeline_creation_cache_control", 2155 } } }, 2156 { "VK_VERSION_1_3", { {} } } } }, 2157 { "VK_EXT_rasterization_order_attachment_access", 2158 { { "VK_VERSION_1_0", 2159 { { 2160 "VK_KHR_get_physical_device_properties2", 2161 } } }, 2162 { "VK_VERSION_1_1", { {} } } } }, 2163 { "VK_NV_optical_flow", 2164 { { "VK_VERSION_1_0", 2165 { { 2166 "VK_KHR_get_physical_device_properties2", 2167 } } }, 2168 { "VK_VERSION_1_1", 2169 { { 2170 "VK_KHR_format_feature_flags2", 2171 "VK_KHR_synchronization2", 2172 } } }, 2173 { "VK_VERSION_1_3", { {} } } } }, 2174 { "VK_EXT_legacy_dithering", 2175 { { "VK_VERSION_1_0", 2176 { { 2177 "VK_KHR_get_physical_device_properties2", 2178 } } }, 2179 { "VK_VERSION_1_1", { {} } } } }, 2180 { "VK_EXT_pipeline_protected_access", 2181 { { "VK_VERSION_1_0", 2182 { { 2183 "VK_KHR_get_physical_device_properties2", 2184 } } }, 2185 { "VK_VERSION_1_1", { {} } } } }, 2186 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 2187 { "VK_ANDROID_external_format_resolve", 2188 { { "VK_VERSION_1_0", 2189 { { 2190 "VK_ANDROID_external_memory_android_hardware_buffer", 2191 } } } } }, 2192 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 2193 { "VK_KHR_maintenance5", 2194 { { "VK_VERSION_1_1", 2195 { { 2196 "VK_KHR_dynamic_rendering", 2197 } } }, 2198 { "VK_VERSION_1_3", { {} } } } }, 2199 { "VK_KHR_ray_tracing_position_fetch", 2200 { { "VK_VERSION_1_0", 2201 { { 2202 "VK_KHR_acceleration_structure", 2203 } } } } }, 2204 { "VK_EXT_shader_object", 2205 { { "VK_VERSION_1_0", 2206 { { 2207 "VK_KHR_get_physical_device_properties2", 2208 } } }, 2209 { "VK_VERSION_1_1", 2210 { { 2211 "VK_KHR_dynamic_rendering", 2212 } } }, 2213 { "VK_VERSION_1_3", { {} } } } }, 2214 { "VK_KHR_pipeline_binary", 2215 { { "VK_VERSION_1_0", 2216 { { 2217 "VK_KHR_maintenance5", 2218 } } }, 2219 { "VK_VERSION_1_4", { {} } } } }, 2220 { "VK_QCOM_tile_properties", 2221 { { "VK_VERSION_1_0", 2222 { { 2223 "VK_KHR_get_physical_device_properties2", 2224 } } }, 2225 { "VK_VERSION_1_1", { {} } } } }, 2226 { "VK_SEC_amigo_profiling", 2227 { { "VK_VERSION_1_0", 2228 { { 2229 "VK_KHR_get_physical_device_properties2", 2230 } } }, 2231 { "VK_VERSION_1_1", { {} } } } }, 2232 { "VK_QCOM_multiview_per_view_viewports", 2233 { { "VK_VERSION_1_0", 2234 { { 2235 "VK_KHR_get_physical_device_properties2", 2236 } } }, 2237 { "VK_VERSION_1_1", { {} } } } }, 2238 { "VK_NV_ray_tracing_invocation_reorder", 2239 { { "VK_VERSION_1_0", 2240 { { 2241 "VK_KHR_ray_tracing_pipeline", 2242 } } } } }, 2243 { "VK_EXT_mutable_descriptor_type", 2244 { { "VK_VERSION_1_0", 2245 { { 2246 "VK_KHR_maintenance3", 2247 } } }, 2248 { "VK_VERSION_1_1", { {} } } } }, 2249 { "VK_EXT_legacy_vertex_attributes", 2250 { { "VK_VERSION_1_0", 2251 { { 2252 "VK_EXT_vertex_input_dynamic_state", 2253 } } } } }, 2254 { "VK_ARM_shader_core_builtins", 2255 { { "VK_VERSION_1_0", 2256 { { 2257 "VK_KHR_get_physical_device_properties2", 2258 } } }, 2259 { "VK_VERSION_1_1", { {} } } } }, 2260 { "VK_EXT_pipeline_library_group_handles", 2261 { { "VK_VERSION_1_0", 2262 { { 2263 "VK_KHR_ray_tracing_pipeline", 2264 "VK_KHR_pipeline_library", 2265 } } } } }, 2266 { "VK_EXT_dynamic_rendering_unused_attachments", 2267 { { "VK_VERSION_1_0", 2268 { { 2269 "VK_KHR_get_physical_device_properties2", 2270 } } }, 2271 { "VK_VERSION_1_1", 2272 { { 2273 "VK_KHR_dynamic_rendering", 2274 } } }, 2275 { "VK_VERSION_1_3", { {} } } } }, 2276 { "VK_NV_low_latency2", 2277 { { "VK_VERSION_1_0", 2278 { { 2279 "VK_KHR_timeline_semaphore", 2280 } } }, 2281 { "VK_VERSION_1_2", { {} } } } }, 2282 { "VK_KHR_cooperative_matrix", 2283 { { "VK_VERSION_1_0", 2284 { { 2285 "VK_KHR_get_physical_device_properties2", 2286 } } }, 2287 { "VK_VERSION_1_1", { {} } } } }, 2288 { "VK_KHR_compute_shader_derivatives", 2289 { { "VK_VERSION_1_0", 2290 { { 2291 "VK_KHR_get_physical_device_properties2", 2292 } } }, 2293 { "VK_VERSION_1_1", { {} } } } }, 2294 { "VK_KHR_video_decode_av1", 2295 { { "VK_VERSION_1_0", 2296 { { 2297 "VK_KHR_video_decode_queue", 2298 } } } } }, 2299 { "VK_KHR_video_encode_av1", 2300 { { "VK_VERSION_1_0", 2301 { { 2302 "VK_KHR_video_encode_queue", 2303 } } } } }, 2304 { "VK_KHR_video_maintenance1", 2305 { { "VK_VERSION_1_0", 2306 { { 2307 "VK_KHR_video_queue", 2308 } } } } }, 2309 { "VK_NV_per_stage_descriptor_set", 2310 { { "VK_VERSION_1_0", 2311 { { 2312 "VK_KHR_maintenance6", 2313 } } }, 2314 { "VK_VERSION_1_4", { {} } } } }, 2315 { "VK_QCOM_image_processing2", 2316 { { "VK_VERSION_1_0", 2317 { { 2318 "VK_QCOM_image_processing", 2319 } } } } }, 2320 { "VK_QCOM_filter_cubic_weights", 2321 { { "VK_VERSION_1_0", 2322 { { 2323 "VK_EXT_filter_cubic", 2324 } } } } }, 2325 { "VK_QCOM_filter_cubic_clamp", 2326 { { "VK_VERSION_1_0", 2327 { { 2328 "VK_EXT_filter_cubic", 2329 "VK_EXT_sampler_filter_minmax", 2330 } } }, 2331 { "VK_VERSION_1_2", 2332 { { 2333 "VK_EXT_filter_cubic", 2334 } } } } }, 2335 { "VK_EXT_attachment_feedback_loop_dynamic_state", 2336 { { "VK_VERSION_1_0", 2337 { { 2338 "VK_KHR_get_physical_device_properties2", 2339 } } }, 2340 { "VK_VERSION_1_1", 2341 { { 2342 "VK_EXT_attachment_feedback_loop_layout", 2343 } } } } }, 2344 { "VK_KHR_vertex_attribute_divisor", 2345 { { "VK_VERSION_1_0", 2346 { { 2347 "VK_KHR_get_physical_device_properties2", 2348 } } }, 2349 { "VK_VERSION_1_1", { {} } } } }, 2350 { "VK_KHR_shader_float_controls2", 2351 { { "VK_VERSION_1_1", 2352 { { 2353 "VK_KHR_shader_float_controls", 2354 } } } } }, 2355 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 2356 { "VK_QNX_external_memory_screen_buffer", 2357 { { "VK_VERSION_1_0", 2358 { { 2359 "VK_KHR_sampler_ycbcr_conversion", 2360 "VK_KHR_external_memory", 2361 "VK_KHR_dedicated_allocation", 2362 } } }, 2363 { "VK_VERSION_1_1", 2364 { { 2365 "VK_EXT_queue_family_foreign", 2366 } } } } }, 2367 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 2368 { "VK_MSFT_layered_driver", 2369 { { "VK_VERSION_1_0", 2370 { { 2371 "VK_KHR_get_physical_device_properties2", 2372 } } }, 2373 { "VK_VERSION_1_1", { {} } } } }, 2374 { "VK_KHR_index_type_uint8", 2375 { { "VK_VERSION_1_0", 2376 { { 2377 "VK_KHR_get_physical_device_properties2", 2378 } } }, 2379 { "VK_VERSION_1_1", { {} } } } }, 2380 { "VK_KHR_line_rasterization", 2381 { { "VK_VERSION_1_0", 2382 { { 2383 "VK_KHR_get_physical_device_properties2", 2384 } } }, 2385 { "VK_VERSION_1_1", { {} } } } }, 2386 { "VK_KHR_calibrated_timestamps", 2387 { { "VK_VERSION_1_0", 2388 { { 2389 "VK_KHR_get_physical_device_properties2", 2390 } } }, 2391 { "VK_VERSION_1_1", { {} } } } }, 2392 { "VK_KHR_shader_expect_assume", 2393 { { "VK_VERSION_1_0", 2394 { { 2395 "VK_KHR_get_physical_device_properties2", 2396 } } }, 2397 { "VK_VERSION_1_1", { {} } } } }, 2398 { "VK_KHR_maintenance6", { { "VK_VERSION_1_1", { {} } } } }, 2399 { "VK_NV_descriptor_pool_overallocation", { { "VK_VERSION_1_1", { {} } } } }, 2400 { "VK_NV_display_stereo", 2401 { { "VK_VERSION_1_0", 2402 { { 2403 "VK_KHR_display", 2404 "VK_KHR_get_display_properties2", 2405 } } } } }, 2406 { "VK_KHR_video_encode_quantization_map", 2407 { { "VK_VERSION_1_0", 2408 { { 2409 "VK_KHR_video_encode_queue", 2410 "VK_KHR_format_feature_flags2", 2411 } } }, 2412 { "VK_VERSION_1_3", { {} } } } }, 2413 { "VK_KHR_maintenance7", { { "VK_VERSION_1_1", { {} } } } }, 2414 { "VK_NV_cluster_acceleration_structure", 2415 { { "VK_VERSION_1_0", 2416 { { 2417 "VK_KHR_acceleration_structure", 2418 } } } } }, 2419 { "VK_NV_partitioned_acceleration_structure", 2420 { { "VK_VERSION_1_0", 2421 { { 2422 "VK_KHR_acceleration_structure", 2423 } } } } }, 2424 { "VK_EXT_device_generated_commands", 2425 { { "VK_VERSION_1_0", 2426 { { 2427 "VK_KHR_buffer_device_address", 2428 } } }, 2429 { "VK_VERSION_1_2", 2430 { { 2431 "VK_KHR_maintenance5", 2432 } } }, 2433 { "VK_VERSION_1_3", { {} } } } }, 2434 { "VK_KHR_maintenance8", { { "VK_VERSION_1_1", { {} } } } }, 2435 { "VK_MESA_image_alignment_control", 2436 { { "VK_VERSION_1_0", 2437 { { 2438 "VK_KHR_get_physical_device_properties2", 2439 } } }, 2440 { "VK_VERSION_1_1", { {} } } } }, 2441 { "VK_EXT_depth_clamp_control", 2442 { { "VK_VERSION_1_0", 2443 { { 2444 "VK_KHR_get_physical_device_properties2", 2445 } } }, 2446 { "VK_VERSION_1_1", { {} } } } }, 2447 { "VK_KHR_video_maintenance2", 2448 { { "VK_VERSION_1_0", 2449 { { 2450 "VK_KHR_video_queue", 2451 } } } } }, 2452 { "VK_HUAWEI_hdr_vivid", 2453 { { "VK_VERSION_1_0", 2454 { { 2455 "VK_KHR_get_physical_device_properties2", 2456 } } }, 2457 { "VK_VERSION_1_1", 2458 { { 2459 "VK_KHR_swapchain", 2460 "VK_EXT_hdr_metadata", 2461 } } } } }, 2462 { "VK_NV_cooperative_matrix2", 2463 { { "VK_VERSION_1_0", 2464 { { 2465 "VK_KHR_cooperative_matrix", 2466 } } } } }, 2467 { "VK_ARM_pipeline_opacity_micromap", 2468 { { "VK_VERSION_1_0", 2469 { { 2470 "VK_EXT_opacity_micromap", 2471 } } } } }, 2472 #if defined( VK_USE_PLATFORM_METAL_EXT ) 2473 { "VK_EXT_external_memory_metal", 2474 { { "VK_VERSION_1_0", 2475 { { 2476 "VK_KHR_external_memory", 2477 } } }, 2478 { "VK_VERSION_1_1", { {} } } } }, 2479 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 2480 { "VK_KHR_depth_clamp_zero_one", 2481 { { "VK_VERSION_1_0", 2482 { { 2483 "VK_KHR_get_physical_device_properties2", 2484 } } }, 2485 { "VK_VERSION_1_1", { {} } } } }, 2486 { "VK_EXT_vertex_attribute_robustness", 2487 { { "VK_VERSION_1_0", 2488 { { 2489 "VK_KHR_get_physical_device_properties2", 2490 } } }, 2491 { "VK_VERSION_1_1", { {} } } } } 2492 }; 2493 auto depIt = dependencies.find( extension ); 2494 return ( depIt != dependencies.end() ) ? depIt->second : noDependencies; 2495 } 2496 getExtensionDepends(std::string const & version,std::string const & extension)2497 VULKAN_HPP_INLINE std::pair<bool, std::vector<std::vector<std::string>> const &> getExtensionDepends( std::string const & version, 2498 std::string const & extension ) 2499 { 2500 #if !defined( NDEBUG ) 2501 static std::set<std::string> versions = { "VK_VERSION_1_0", "VK_VERSION_1_1", "VK_VERSION_1_2", "VK_VERSION_1_3", "VK_VERSION_1_4" }; 2502 assert( versions.find( version ) != versions.end() ); 2503 #endif 2504 static std::vector<std::vector<std::string>> noDependencies; 2505 2506 std::map<std::string, std::vector<std::vector<std::string>>> const & dependencies = getExtensionDepends( extension ); 2507 if ( dependencies.empty() ) 2508 { 2509 return { true, noDependencies }; 2510 } 2511 auto depIt = dependencies.lower_bound( version ); 2512 if ( ( depIt == dependencies.end() ) || ( depIt->first != version ) ) 2513 { 2514 depIt = std::prev( depIt ); 2515 } 2516 if ( depIt == dependencies.end() ) 2517 { 2518 return { false, noDependencies }; 2519 } 2520 else 2521 { 2522 return { true, depIt->second }; 2523 } 2524 } 2525 getObsoletedExtensions()2526 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getObsoletedExtensions() 2527 { 2528 static const std::map<std::string, std::string> obsoletedExtensions = { { "VK_AMD_negative_viewport_height", "VK_KHR_maintenance1" } }; 2529 return obsoletedExtensions; 2530 } 2531 getPromotedExtensions()2532 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getPromotedExtensions() 2533 { 2534 static const std::map<std::string, std::string> promotedExtensions = { 2535 { "VK_KHR_sampler_mirror_clamp_to_edge", "VK_VERSION_1_2" }, 2536 { "VK_EXT_debug_marker", "VK_EXT_debug_utils" }, 2537 { "VK_AMD_draw_indirect_count", "VK_KHR_draw_indirect_count" }, 2538 { "VK_KHR_dynamic_rendering", "VK_VERSION_1_3" }, 2539 { "VK_KHR_multiview", "VK_VERSION_1_1" }, 2540 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 2541 { "VK_NV_win32_keyed_mutex", "VK_KHR_win32_keyed_mutex" }, 2542 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 2543 { "VK_KHR_get_physical_device_properties2", "VK_VERSION_1_1" }, 2544 { "VK_KHR_device_group", "VK_VERSION_1_1" }, 2545 { "VK_KHR_shader_draw_parameters", "VK_VERSION_1_1" }, 2546 { "VK_EXT_texture_compression_astc_hdr", "VK_VERSION_1_3" }, 2547 { "VK_EXT_pipeline_robustness", "VK_VERSION_1_4" }, 2548 { "VK_KHR_maintenance1", "VK_VERSION_1_1" }, 2549 { "VK_KHR_device_group_creation", "VK_VERSION_1_1" }, 2550 { "VK_KHR_external_memory_capabilities", "VK_VERSION_1_1" }, 2551 { "VK_KHR_external_memory", "VK_VERSION_1_1" }, 2552 { "VK_KHR_external_semaphore_capabilities", "VK_VERSION_1_1" }, 2553 { "VK_KHR_external_semaphore", "VK_VERSION_1_1" }, 2554 { "VK_KHR_push_descriptor", "VK_VERSION_1_4" }, 2555 { "VK_KHR_shader_float16_int8", "VK_VERSION_1_2" }, 2556 { "VK_KHR_16bit_storage", "VK_VERSION_1_1" }, 2557 { "VK_KHR_descriptor_update_template", "VK_VERSION_1_1" }, 2558 { "VK_KHR_imageless_framebuffer", "VK_VERSION_1_2" }, 2559 { "VK_KHR_create_renderpass2", "VK_VERSION_1_2" }, 2560 { "VK_KHR_external_fence_capabilities", "VK_VERSION_1_1" }, 2561 { "VK_KHR_external_fence", "VK_VERSION_1_1" }, 2562 { "VK_KHR_maintenance2", "VK_VERSION_1_1" }, 2563 { "VK_KHR_variable_pointers", "VK_VERSION_1_1" }, 2564 { "VK_KHR_dedicated_allocation", "VK_VERSION_1_1" }, 2565 { "VK_EXT_sampler_filter_minmax", "VK_VERSION_1_2" }, 2566 { "VK_KHR_storage_buffer_storage_class", "VK_VERSION_1_1" }, 2567 { "VK_EXT_inline_uniform_block", "VK_VERSION_1_3" }, 2568 { "VK_KHR_relaxed_block_layout", "VK_VERSION_1_1" }, 2569 { "VK_KHR_get_memory_requirements2", "VK_VERSION_1_1" }, 2570 { "VK_KHR_image_format_list", "VK_VERSION_1_2" }, 2571 { "VK_KHR_sampler_ycbcr_conversion", "VK_VERSION_1_1" }, 2572 { "VK_KHR_bind_memory2", "VK_VERSION_1_1" }, 2573 { "VK_EXT_descriptor_indexing", "VK_VERSION_1_2" }, 2574 { "VK_EXT_shader_viewport_index_layer", "VK_VERSION_1_2" }, 2575 { "VK_KHR_maintenance3", "VK_VERSION_1_1" }, 2576 { "VK_KHR_draw_indirect_count", "VK_VERSION_1_2" }, 2577 { "VK_EXT_global_priority", "VK_KHR_global_priority" }, 2578 { "VK_KHR_shader_subgroup_extended_types", "VK_VERSION_1_2" }, 2579 { "VK_KHR_8bit_storage", "VK_VERSION_1_2" }, 2580 { "VK_KHR_shader_atomic_int64", "VK_VERSION_1_2" }, 2581 { "VK_EXT_calibrated_timestamps", "VK_KHR_calibrated_timestamps" }, 2582 { "VK_KHR_global_priority", "VK_VERSION_1_4" }, 2583 { "VK_EXT_vertex_attribute_divisor", "VK_KHR_vertex_attribute_divisor" }, 2584 { "VK_EXT_pipeline_creation_feedback", "VK_VERSION_1_3" }, 2585 { "VK_KHR_driver_properties", "VK_VERSION_1_2" }, 2586 { "VK_KHR_shader_float_controls", "VK_VERSION_1_2" }, 2587 { "VK_KHR_depth_stencil_resolve", "VK_VERSION_1_2" }, 2588 { "VK_NV_compute_shader_derivatives", "VK_KHR_compute_shader_derivatives" }, 2589 { "VK_NV_fragment_shader_barycentric", "VK_KHR_fragment_shader_barycentric" }, 2590 { "VK_KHR_timeline_semaphore", "VK_VERSION_1_2" }, 2591 { "VK_KHR_vulkan_memory_model", "VK_VERSION_1_2" }, 2592 { "VK_KHR_shader_terminate_invocation", "VK_VERSION_1_3" }, 2593 { "VK_EXT_scalar_block_layout", "VK_VERSION_1_2" }, 2594 { "VK_EXT_subgroup_size_control", "VK_VERSION_1_3" }, 2595 { "VK_KHR_dynamic_rendering_local_read", "VK_VERSION_1_4" }, 2596 { "VK_KHR_spirv_1_4", "VK_VERSION_1_2" }, 2597 { "VK_KHR_separate_depth_stencil_layouts", "VK_VERSION_1_2" }, 2598 { "VK_EXT_tooling_info", "VK_VERSION_1_3" }, 2599 { "VK_EXT_separate_stencil_usage", "VK_VERSION_1_2" }, 2600 { "VK_KHR_uniform_buffer_standard_layout", "VK_VERSION_1_2" }, 2601 { "VK_KHR_buffer_device_address", "VK_VERSION_1_2" }, 2602 { "VK_EXT_line_rasterization", "VK_KHR_line_rasterization" }, 2603 { "VK_EXT_host_query_reset", "VK_VERSION_1_2" }, 2604 { "VK_EXT_index_type_uint8", "VK_KHR_index_type_uint8" }, 2605 { "VK_EXT_extended_dynamic_state", "VK_VERSION_1_3" }, 2606 { "VK_EXT_host_image_copy", "VK_VERSION_1_4" }, 2607 { "VK_KHR_map_memory2", "VK_VERSION_1_4" }, 2608 { "VK_EXT_shader_demote_to_helper_invocation", "VK_VERSION_1_3" }, 2609 { "VK_KHR_shader_integer_dot_product", "VK_VERSION_1_3" }, 2610 { "VK_EXT_texel_buffer_alignment", "VK_VERSION_1_3" }, 2611 { "VK_KHR_shader_non_semantic_info", "VK_VERSION_1_3" }, 2612 { "VK_EXT_private_data", "VK_VERSION_1_3" }, 2613 { "VK_EXT_pipeline_creation_cache_control", "VK_VERSION_1_3" }, 2614 { "VK_KHR_synchronization2", "VK_VERSION_1_3" }, 2615 { "VK_KHR_zero_initialize_workgroup_memory", "VK_VERSION_1_3" }, 2616 { "VK_EXT_ycbcr_2plane_444_formats", "VK_VERSION_1_3" }, 2617 { "VK_EXT_image_robustness", "VK_VERSION_1_3" }, 2618 { "VK_KHR_copy_commands2", "VK_VERSION_1_3" }, 2619 { "VK_EXT_4444_formats", "VK_VERSION_1_3" }, 2620 { "VK_ARM_rasterization_order_attachment_access", "VK_EXT_rasterization_order_attachment_access" }, 2621 { "VK_VALVE_mutable_descriptor_type", "VK_EXT_mutable_descriptor_type" }, 2622 { "VK_KHR_format_feature_flags2", "VK_VERSION_1_3" }, 2623 { "VK_EXT_extended_dynamic_state2", "VK_VERSION_1_3" }, 2624 { "VK_EXT_global_priority_query", "VK_KHR_global_priority" }, 2625 { "VK_EXT_load_store_op_none", "VK_KHR_load_store_op_none" }, 2626 { "VK_KHR_maintenance4", "VK_VERSION_1_3" }, 2627 { "VK_KHR_shader_subgroup_rotate", "VK_VERSION_1_4" }, 2628 { "VK_EXT_depth_clamp_zero_one", "VK_KHR_depth_clamp_zero_one" }, 2629 { "VK_EXT_pipeline_protected_access", "VK_VERSION_1_4" }, 2630 { "VK_KHR_maintenance5", "VK_VERSION_1_4" }, 2631 { "VK_KHR_vertex_attribute_divisor", "VK_VERSION_1_4" }, 2632 { "VK_KHR_load_store_op_none", "VK_VERSION_1_4" }, 2633 { "VK_KHR_shader_float_controls2", "VK_VERSION_1_4" }, 2634 { "VK_KHR_index_type_uint8", "VK_VERSION_1_4" }, 2635 { "VK_KHR_line_rasterization", "VK_VERSION_1_4" }, 2636 { "VK_KHR_shader_expect_assume", "VK_VERSION_1_4" }, 2637 { "VK_KHR_maintenance6", "VK_VERSION_1_4" } 2638 }; 2639 return promotedExtensions; 2640 } 2641 getExtensionDeprecatedBy(std::string const & extension)2642 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy( std::string const & extension ) 2643 { 2644 if ( extension == "VK_EXT_debug_report" ) 2645 { 2646 return "VK_EXT_debug_utils"; 2647 } 2648 if ( extension == "VK_NV_glsl_shader" ) 2649 { 2650 return ""; 2651 } 2652 if ( extension == "VK_NV_dedicated_allocation" ) 2653 { 2654 return "VK_KHR_dedicated_allocation"; 2655 } 2656 if ( extension == "VK_AMD_gpu_shader_half_float" ) 2657 { 2658 return "VK_KHR_shader_float16_int8"; 2659 } 2660 if ( extension == "VK_IMG_format_pvrtc" ) 2661 { 2662 return ""; 2663 } 2664 if ( extension == "VK_NV_external_memory_capabilities" ) 2665 { 2666 return "VK_KHR_external_memory_capabilities"; 2667 } 2668 if ( extension == "VK_NV_external_memory" ) 2669 { 2670 return "VK_KHR_external_memory"; 2671 } 2672 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 2673 if ( extension == "VK_NV_external_memory_win32" ) 2674 { 2675 return "VK_KHR_external_memory_win32"; 2676 } 2677 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 2678 if ( extension == "VK_EXT_validation_flags" ) 2679 { 2680 return "VK_EXT_layer_settings"; 2681 } 2682 if ( extension == "VK_EXT_shader_subgroup_ballot" ) 2683 { 2684 return "VK_VERSION_1_2"; 2685 } 2686 if ( extension == "VK_EXT_shader_subgroup_vote" ) 2687 { 2688 return "VK_VERSION_1_1"; 2689 } 2690 #if defined( VK_USE_PLATFORM_IOS_MVK ) 2691 if ( extension == "VK_MVK_ios_surface" ) 2692 { 2693 return "VK_EXT_metal_surface"; 2694 } 2695 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 2696 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 2697 if ( extension == "VK_MVK_macos_surface" ) 2698 { 2699 return "VK_EXT_metal_surface"; 2700 } 2701 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 2702 if ( extension == "VK_AMD_gpu_shader_int16" ) 2703 { 2704 return "VK_KHR_shader_float16_int8"; 2705 } 2706 if ( extension == "VK_NV_ray_tracing" ) 2707 { 2708 return "VK_KHR_ray_tracing_pipeline"; 2709 } 2710 if ( extension == "VK_EXT_buffer_device_address" ) 2711 { 2712 return "VK_KHR_buffer_device_address"; 2713 } 2714 if ( extension == "VK_EXT_validation_features" ) 2715 { 2716 return "VK_EXT_layer_settings"; 2717 } 2718 return ""; 2719 } 2720 getExtensionObsoletedBy(std::string const & extension)2721 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy( std::string const & extension ) 2722 { 2723 if ( extension == "VK_AMD_negative_viewport_height" ) 2724 { 2725 return "VK_KHR_maintenance1"; 2726 } 2727 return ""; 2728 } 2729 getExtensionPromotedTo(std::string const & extension)2730 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo( std::string const & extension ) 2731 { 2732 if ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) 2733 { 2734 return "VK_VERSION_1_2"; 2735 } 2736 if ( extension == "VK_EXT_debug_marker" ) 2737 { 2738 return "VK_EXT_debug_utils"; 2739 } 2740 if ( extension == "VK_AMD_draw_indirect_count" ) 2741 { 2742 return "VK_KHR_draw_indirect_count"; 2743 } 2744 if ( extension == "VK_KHR_dynamic_rendering" ) 2745 { 2746 return "VK_VERSION_1_3"; 2747 } 2748 if ( extension == "VK_KHR_multiview" ) 2749 { 2750 return "VK_VERSION_1_1"; 2751 } 2752 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 2753 if ( extension == "VK_NV_win32_keyed_mutex" ) 2754 { 2755 return "VK_KHR_win32_keyed_mutex"; 2756 } 2757 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 2758 if ( extension == "VK_KHR_get_physical_device_properties2" ) 2759 { 2760 return "VK_VERSION_1_1"; 2761 } 2762 if ( extension == "VK_KHR_device_group" ) 2763 { 2764 return "VK_VERSION_1_1"; 2765 } 2766 if ( extension == "VK_KHR_shader_draw_parameters" ) 2767 { 2768 return "VK_VERSION_1_1"; 2769 } 2770 if ( extension == "VK_EXT_texture_compression_astc_hdr" ) 2771 { 2772 return "VK_VERSION_1_3"; 2773 } 2774 if ( extension == "VK_EXT_pipeline_robustness" ) 2775 { 2776 return "VK_VERSION_1_4"; 2777 } 2778 if ( extension == "VK_KHR_maintenance1" ) 2779 { 2780 return "VK_VERSION_1_1"; 2781 } 2782 if ( extension == "VK_KHR_device_group_creation" ) 2783 { 2784 return "VK_VERSION_1_1"; 2785 } 2786 if ( extension == "VK_KHR_external_memory_capabilities" ) 2787 { 2788 return "VK_VERSION_1_1"; 2789 } 2790 if ( extension == "VK_KHR_external_memory" ) 2791 { 2792 return "VK_VERSION_1_1"; 2793 } 2794 if ( extension == "VK_KHR_external_semaphore_capabilities" ) 2795 { 2796 return "VK_VERSION_1_1"; 2797 } 2798 if ( extension == "VK_KHR_external_semaphore" ) 2799 { 2800 return "VK_VERSION_1_1"; 2801 } 2802 if ( extension == "VK_KHR_push_descriptor" ) 2803 { 2804 return "VK_VERSION_1_4"; 2805 } 2806 if ( extension == "VK_KHR_shader_float16_int8" ) 2807 { 2808 return "VK_VERSION_1_2"; 2809 } 2810 if ( extension == "VK_KHR_16bit_storage" ) 2811 { 2812 return "VK_VERSION_1_1"; 2813 } 2814 if ( extension == "VK_KHR_descriptor_update_template" ) 2815 { 2816 return "VK_VERSION_1_1"; 2817 } 2818 if ( extension == "VK_KHR_imageless_framebuffer" ) 2819 { 2820 return "VK_VERSION_1_2"; 2821 } 2822 if ( extension == "VK_KHR_create_renderpass2" ) 2823 { 2824 return "VK_VERSION_1_2"; 2825 } 2826 if ( extension == "VK_KHR_external_fence_capabilities" ) 2827 { 2828 return "VK_VERSION_1_1"; 2829 } 2830 if ( extension == "VK_KHR_external_fence" ) 2831 { 2832 return "VK_VERSION_1_1"; 2833 } 2834 if ( extension == "VK_KHR_maintenance2" ) 2835 { 2836 return "VK_VERSION_1_1"; 2837 } 2838 if ( extension == "VK_KHR_variable_pointers" ) 2839 { 2840 return "VK_VERSION_1_1"; 2841 } 2842 if ( extension == "VK_KHR_dedicated_allocation" ) 2843 { 2844 return "VK_VERSION_1_1"; 2845 } 2846 if ( extension == "VK_EXT_sampler_filter_minmax" ) 2847 { 2848 return "VK_VERSION_1_2"; 2849 } 2850 if ( extension == "VK_KHR_storage_buffer_storage_class" ) 2851 { 2852 return "VK_VERSION_1_1"; 2853 } 2854 if ( extension == "VK_EXT_inline_uniform_block" ) 2855 { 2856 return "VK_VERSION_1_3"; 2857 } 2858 if ( extension == "VK_KHR_relaxed_block_layout" ) 2859 { 2860 return "VK_VERSION_1_1"; 2861 } 2862 if ( extension == "VK_KHR_get_memory_requirements2" ) 2863 { 2864 return "VK_VERSION_1_1"; 2865 } 2866 if ( extension == "VK_KHR_image_format_list" ) 2867 { 2868 return "VK_VERSION_1_2"; 2869 } 2870 if ( extension == "VK_KHR_sampler_ycbcr_conversion" ) 2871 { 2872 return "VK_VERSION_1_1"; 2873 } 2874 if ( extension == "VK_KHR_bind_memory2" ) 2875 { 2876 return "VK_VERSION_1_1"; 2877 } 2878 if ( extension == "VK_EXT_descriptor_indexing" ) 2879 { 2880 return "VK_VERSION_1_2"; 2881 } 2882 if ( extension == "VK_EXT_shader_viewport_index_layer" ) 2883 { 2884 return "VK_VERSION_1_2"; 2885 } 2886 if ( extension == "VK_KHR_maintenance3" ) 2887 { 2888 return "VK_VERSION_1_1"; 2889 } 2890 if ( extension == "VK_KHR_draw_indirect_count" ) 2891 { 2892 return "VK_VERSION_1_2"; 2893 } 2894 if ( extension == "VK_EXT_global_priority" ) 2895 { 2896 return "VK_KHR_global_priority"; 2897 } 2898 if ( extension == "VK_KHR_shader_subgroup_extended_types" ) 2899 { 2900 return "VK_VERSION_1_2"; 2901 } 2902 if ( extension == "VK_KHR_8bit_storage" ) 2903 { 2904 return "VK_VERSION_1_2"; 2905 } 2906 if ( extension == "VK_KHR_shader_atomic_int64" ) 2907 { 2908 return "VK_VERSION_1_2"; 2909 } 2910 if ( extension == "VK_EXT_calibrated_timestamps" ) 2911 { 2912 return "VK_KHR_calibrated_timestamps"; 2913 } 2914 if ( extension == "VK_KHR_global_priority" ) 2915 { 2916 return "VK_VERSION_1_4"; 2917 } 2918 if ( extension == "VK_EXT_vertex_attribute_divisor" ) 2919 { 2920 return "VK_KHR_vertex_attribute_divisor"; 2921 } 2922 if ( extension == "VK_EXT_pipeline_creation_feedback" ) 2923 { 2924 return "VK_VERSION_1_3"; 2925 } 2926 if ( extension == "VK_KHR_driver_properties" ) 2927 { 2928 return "VK_VERSION_1_2"; 2929 } 2930 if ( extension == "VK_KHR_shader_float_controls" ) 2931 { 2932 return "VK_VERSION_1_2"; 2933 } 2934 if ( extension == "VK_KHR_depth_stencil_resolve" ) 2935 { 2936 return "VK_VERSION_1_2"; 2937 } 2938 if ( extension == "VK_NV_compute_shader_derivatives" ) 2939 { 2940 return "VK_KHR_compute_shader_derivatives"; 2941 } 2942 if ( extension == "VK_NV_fragment_shader_barycentric" ) 2943 { 2944 return "VK_KHR_fragment_shader_barycentric"; 2945 } 2946 if ( extension == "VK_KHR_timeline_semaphore" ) 2947 { 2948 return "VK_VERSION_1_2"; 2949 } 2950 if ( extension == "VK_KHR_vulkan_memory_model" ) 2951 { 2952 return "VK_VERSION_1_2"; 2953 } 2954 if ( extension == "VK_KHR_shader_terminate_invocation" ) 2955 { 2956 return "VK_VERSION_1_3"; 2957 } 2958 if ( extension == "VK_EXT_scalar_block_layout" ) 2959 { 2960 return "VK_VERSION_1_2"; 2961 } 2962 if ( extension == "VK_EXT_subgroup_size_control" ) 2963 { 2964 return "VK_VERSION_1_3"; 2965 } 2966 if ( extension == "VK_KHR_dynamic_rendering_local_read" ) 2967 { 2968 return "VK_VERSION_1_4"; 2969 } 2970 if ( extension == "VK_KHR_spirv_1_4" ) 2971 { 2972 return "VK_VERSION_1_2"; 2973 } 2974 if ( extension == "VK_KHR_separate_depth_stencil_layouts" ) 2975 { 2976 return "VK_VERSION_1_2"; 2977 } 2978 if ( extension == "VK_EXT_tooling_info" ) 2979 { 2980 return "VK_VERSION_1_3"; 2981 } 2982 if ( extension == "VK_EXT_separate_stencil_usage" ) 2983 { 2984 return "VK_VERSION_1_2"; 2985 } 2986 if ( extension == "VK_KHR_uniform_buffer_standard_layout" ) 2987 { 2988 return "VK_VERSION_1_2"; 2989 } 2990 if ( extension == "VK_KHR_buffer_device_address" ) 2991 { 2992 return "VK_VERSION_1_2"; 2993 } 2994 if ( extension == "VK_EXT_line_rasterization" ) 2995 { 2996 return "VK_KHR_line_rasterization"; 2997 } 2998 if ( extension == "VK_EXT_host_query_reset" ) 2999 { 3000 return "VK_VERSION_1_2"; 3001 } 3002 if ( extension == "VK_EXT_index_type_uint8" ) 3003 { 3004 return "VK_KHR_index_type_uint8"; 3005 } 3006 if ( extension == "VK_EXT_extended_dynamic_state" ) 3007 { 3008 return "VK_VERSION_1_3"; 3009 } 3010 if ( extension == "VK_EXT_host_image_copy" ) 3011 { 3012 return "VK_VERSION_1_4"; 3013 } 3014 if ( extension == "VK_KHR_map_memory2" ) 3015 { 3016 return "VK_VERSION_1_4"; 3017 } 3018 if ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) 3019 { 3020 return "VK_VERSION_1_3"; 3021 } 3022 if ( extension == "VK_KHR_shader_integer_dot_product" ) 3023 { 3024 return "VK_VERSION_1_3"; 3025 } 3026 if ( extension == "VK_EXT_texel_buffer_alignment" ) 3027 { 3028 return "VK_VERSION_1_3"; 3029 } 3030 if ( extension == "VK_KHR_shader_non_semantic_info" ) 3031 { 3032 return "VK_VERSION_1_3"; 3033 } 3034 if ( extension == "VK_EXT_private_data" ) 3035 { 3036 return "VK_VERSION_1_3"; 3037 } 3038 if ( extension == "VK_EXT_pipeline_creation_cache_control" ) 3039 { 3040 return "VK_VERSION_1_3"; 3041 } 3042 if ( extension == "VK_KHR_synchronization2" ) 3043 { 3044 return "VK_VERSION_1_3"; 3045 } 3046 if ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) 3047 { 3048 return "VK_VERSION_1_3"; 3049 } 3050 if ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) 3051 { 3052 return "VK_VERSION_1_3"; 3053 } 3054 if ( extension == "VK_EXT_image_robustness" ) 3055 { 3056 return "VK_VERSION_1_3"; 3057 } 3058 if ( extension == "VK_KHR_copy_commands2" ) 3059 { 3060 return "VK_VERSION_1_3"; 3061 } 3062 if ( extension == "VK_EXT_4444_formats" ) 3063 { 3064 return "VK_VERSION_1_3"; 3065 } 3066 if ( extension == "VK_ARM_rasterization_order_attachment_access" ) 3067 { 3068 return "VK_EXT_rasterization_order_attachment_access"; 3069 } 3070 if ( extension == "VK_VALVE_mutable_descriptor_type" ) 3071 { 3072 return "VK_EXT_mutable_descriptor_type"; 3073 } 3074 if ( extension == "VK_KHR_format_feature_flags2" ) 3075 { 3076 return "VK_VERSION_1_3"; 3077 } 3078 if ( extension == "VK_EXT_extended_dynamic_state2" ) 3079 { 3080 return "VK_VERSION_1_3"; 3081 } 3082 if ( extension == "VK_EXT_global_priority_query" ) 3083 { 3084 return "VK_KHR_global_priority"; 3085 } 3086 if ( extension == "VK_EXT_load_store_op_none" ) 3087 { 3088 return "VK_KHR_load_store_op_none"; 3089 } 3090 if ( extension == "VK_KHR_maintenance4" ) 3091 { 3092 return "VK_VERSION_1_3"; 3093 } 3094 if ( extension == "VK_KHR_shader_subgroup_rotate" ) 3095 { 3096 return "VK_VERSION_1_4"; 3097 } 3098 if ( extension == "VK_EXT_depth_clamp_zero_one" ) 3099 { 3100 return "VK_KHR_depth_clamp_zero_one"; 3101 } 3102 if ( extension == "VK_EXT_pipeline_protected_access" ) 3103 { 3104 return "VK_VERSION_1_4"; 3105 } 3106 if ( extension == "VK_KHR_maintenance5" ) 3107 { 3108 return "VK_VERSION_1_4"; 3109 } 3110 if ( extension == "VK_KHR_vertex_attribute_divisor" ) 3111 { 3112 return "VK_VERSION_1_4"; 3113 } 3114 if ( extension == "VK_KHR_load_store_op_none" ) 3115 { 3116 return "VK_VERSION_1_4"; 3117 } 3118 if ( extension == "VK_KHR_shader_float_controls2" ) 3119 { 3120 return "VK_VERSION_1_4"; 3121 } 3122 if ( extension == "VK_KHR_index_type_uint8" ) 3123 { 3124 return "VK_VERSION_1_4"; 3125 } 3126 if ( extension == "VK_KHR_line_rasterization" ) 3127 { 3128 return "VK_VERSION_1_4"; 3129 } 3130 if ( extension == "VK_KHR_shader_expect_assume" ) 3131 { 3132 return "VK_VERSION_1_4"; 3133 } 3134 if ( extension == "VK_KHR_maintenance6" ) 3135 { 3136 return "VK_VERSION_1_4"; 3137 } 3138 return ""; 3139 } 3140 isDeprecatedExtension(std::string const & extension)3141 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension( std::string const & extension ) 3142 { 3143 return ( extension == "VK_EXT_debug_report" ) || ( extension == "VK_NV_glsl_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) || 3144 ( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_IMG_format_pvrtc" ) || ( extension == "VK_NV_external_memory_capabilities" ) || 3145 ( extension == "VK_NV_external_memory" ) || 3146 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3147 ( extension == "VK_NV_external_memory_win32" ) || 3148 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3149 ( extension == "VK_EXT_validation_flags" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || ( extension == "VK_EXT_shader_subgroup_vote" ) || 3150 #if defined( VK_USE_PLATFORM_IOS_MVK ) 3151 ( extension == "VK_MVK_ios_surface" ) || 3152 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 3153 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 3154 ( extension == "VK_MVK_macos_surface" ) || 3155 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 3156 ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_EXT_buffer_device_address" ) || 3157 ( extension == "VK_EXT_validation_features" ); 3158 } 3159 isDeviceExtension(std::string const & extension)3160 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension ) 3161 { 3162 return ( extension == "VK_KHR_swapchain" ) || ( extension == "VK_KHR_display_swapchain" ) || ( extension == "VK_NV_glsl_shader" ) || 3163 ( extension == "VK_EXT_depth_range_unrestricted" ) || ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) || 3164 ( extension == "VK_IMG_filter_cubic" ) || ( extension == "VK_AMD_rasterization_order" ) || ( extension == "VK_AMD_shader_trinary_minmax" ) || 3165 ( extension == "VK_AMD_shader_explicit_vertex_parameter" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_KHR_video_queue" ) || 3166 ( extension == "VK_KHR_video_decode_queue" ) || ( extension == "VK_AMD_gcn_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) || 3167 ( extension == "VK_EXT_transform_feedback" ) || ( extension == "VK_NVX_binary_import" ) || ( extension == "VK_NVX_image_view_handle" ) || 3168 ( extension == "VK_AMD_draw_indirect_count" ) || ( extension == "VK_AMD_negative_viewport_height" ) || 3169 ( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_AMD_shader_ballot" ) || ( extension == "VK_KHR_video_encode_h264" ) || 3170 ( extension == "VK_KHR_video_encode_h265" ) || ( extension == "VK_KHR_video_decode_h264" ) || ( extension == "VK_AMD_texture_gather_bias_lod" ) || 3171 ( extension == "VK_AMD_shader_info" ) || ( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_AMD_shader_image_load_store_lod" ) || 3172 ( extension == "VK_NV_corner_sampled_image" ) || ( extension == "VK_KHR_multiview" ) || ( extension == "VK_IMG_format_pvrtc" ) || 3173 ( extension == "VK_NV_external_memory" ) 3174 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3175 || ( extension == "VK_NV_external_memory_win32" ) || ( extension == "VK_NV_win32_keyed_mutex" ) 3176 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3177 || ( extension == "VK_KHR_device_group" ) || ( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || 3178 ( extension == "VK_EXT_shader_subgroup_vote" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) || 3179 ( extension == "VK_EXT_astc_decode_mode" ) || ( extension == "VK_EXT_pipeline_robustness" ) || ( extension == "VK_KHR_maintenance1" ) || 3180 ( extension == "VK_KHR_external_memory" ) 3181 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3182 || ( extension == "VK_KHR_external_memory_win32" ) 3183 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3184 || ( extension == "VK_KHR_external_memory_fd" ) 3185 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3186 || ( extension == "VK_KHR_win32_keyed_mutex" ) 3187 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3188 || ( extension == "VK_KHR_external_semaphore" ) 3189 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3190 || ( extension == "VK_KHR_external_semaphore_win32" ) 3191 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3192 || ( extension == "VK_KHR_external_semaphore_fd" ) || ( extension == "VK_KHR_push_descriptor" ) || ( extension == "VK_EXT_conditional_rendering" ) || 3193 ( extension == "VK_KHR_shader_float16_int8" ) || ( extension == "VK_KHR_16bit_storage" ) || ( extension == "VK_KHR_incremental_present" ) || 3194 ( extension == "VK_KHR_descriptor_update_template" ) || ( extension == "VK_NV_clip_space_w_scaling" ) || ( extension == "VK_EXT_display_control" ) || 3195 ( extension == "VK_GOOGLE_display_timing" ) || ( extension == "VK_NV_sample_mask_override_coverage" ) || 3196 ( extension == "VK_NV_geometry_shader_passthrough" ) || ( extension == "VK_NV_viewport_array2" ) || 3197 ( extension == "VK_NVX_multiview_per_view_attributes" ) || ( extension == "VK_NV_viewport_swizzle" ) || 3198 ( extension == "VK_EXT_discard_rectangles" ) || ( extension == "VK_EXT_conservative_rasterization" ) || 3199 ( extension == "VK_EXT_depth_clip_enable" ) || ( extension == "VK_EXT_hdr_metadata" ) || ( extension == "VK_KHR_imageless_framebuffer" ) || 3200 ( extension == "VK_KHR_create_renderpass2" ) || ( extension == "VK_IMG_relaxed_line_rasterization" ) || 3201 ( extension == "VK_KHR_shared_presentable_image" ) || ( extension == "VK_KHR_external_fence" ) 3202 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3203 || ( extension == "VK_KHR_external_fence_win32" ) 3204 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3205 || ( extension == "VK_KHR_external_fence_fd" ) || ( extension == "VK_KHR_performance_query" ) || ( extension == "VK_KHR_maintenance2" ) || 3206 ( extension == "VK_KHR_variable_pointers" ) || ( extension == "VK_EXT_external_memory_dma_buf" ) || ( extension == "VK_EXT_queue_family_foreign" ) || 3207 ( extension == "VK_KHR_dedicated_allocation" ) 3208 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 3209 || ( extension == "VK_ANDROID_external_memory_android_hardware_buffer" ) 3210 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 3211 || ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) || 3212 ( extension == "VK_AMD_gpu_shader_int16" ) 3213 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3214 || ( extension == "VK_AMDX_shader_enqueue" ) 3215 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3216 || ( extension == "VK_AMD_mixed_attachment_samples" ) || ( extension == "VK_AMD_shader_fragment_mask" ) || 3217 ( extension == "VK_EXT_inline_uniform_block" ) || ( extension == "VK_EXT_shader_stencil_export" ) || ( extension == "VK_EXT_sample_locations" ) || 3218 ( extension == "VK_KHR_relaxed_block_layout" ) || ( extension == "VK_KHR_get_memory_requirements2" ) || 3219 ( extension == "VK_KHR_image_format_list" ) || ( extension == "VK_EXT_blend_operation_advanced" ) || 3220 ( extension == "VK_NV_fragment_coverage_to_color" ) || ( extension == "VK_KHR_acceleration_structure" ) || 3221 ( extension == "VK_KHR_ray_tracing_pipeline" ) || ( extension == "VK_KHR_ray_query" ) || ( extension == "VK_NV_framebuffer_mixed_samples" ) || 3222 ( extension == "VK_NV_fill_rectangle" ) || ( extension == "VK_NV_shader_sm_builtins" ) || ( extension == "VK_EXT_post_depth_coverage" ) || 3223 ( extension == "VK_KHR_sampler_ycbcr_conversion" ) || ( extension == "VK_KHR_bind_memory2" ) || 3224 ( extension == "VK_EXT_image_drm_format_modifier" ) || ( extension == "VK_EXT_validation_cache" ) || ( extension == "VK_EXT_descriptor_indexing" ) || 3225 ( extension == "VK_EXT_shader_viewport_index_layer" ) 3226 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3227 || ( extension == "VK_KHR_portability_subset" ) 3228 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3229 || ( extension == "VK_NV_shading_rate_image" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_NV_representative_fragment_test" ) || 3230 ( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_filter_cubic" ) || 3231 ( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_EXT_global_priority" ) || 3232 ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) || 3233 ( extension == "VK_EXT_external_memory_host" ) || ( extension == "VK_AMD_buffer_marker" ) || ( extension == "VK_KHR_shader_atomic_int64" ) || 3234 ( extension == "VK_KHR_shader_clock" ) || ( extension == "VK_AMD_pipeline_compiler_control" ) || ( extension == "VK_EXT_calibrated_timestamps" ) || 3235 ( extension == "VK_AMD_shader_core_properties" ) || ( extension == "VK_KHR_video_decode_h265" ) || ( extension == "VK_KHR_global_priority" ) || 3236 ( extension == "VK_AMD_memory_overallocation_behavior" ) || ( extension == "VK_EXT_vertex_attribute_divisor" ) 3237 #if defined( VK_USE_PLATFORM_GGP ) 3238 || ( extension == "VK_GGP_frame_token" ) 3239 #endif /*VK_USE_PLATFORM_GGP*/ 3240 || ( extension == "VK_EXT_pipeline_creation_feedback" ) || ( extension == "VK_KHR_driver_properties" ) || 3241 ( extension == "VK_KHR_shader_float_controls" ) || ( extension == "VK_NV_shader_subgroup_partitioned" ) || 3242 ( extension == "VK_KHR_depth_stencil_resolve" ) || ( extension == "VK_KHR_swapchain_mutable_format" ) || 3243 ( extension == "VK_NV_compute_shader_derivatives" ) || ( extension == "VK_NV_mesh_shader" ) || 3244 ( extension == "VK_NV_fragment_shader_barycentric" ) || ( extension == "VK_NV_shader_image_footprint" ) || 3245 ( extension == "VK_NV_scissor_exclusive" ) || ( extension == "VK_NV_device_diagnostic_checkpoints" ) || 3246 ( extension == "VK_KHR_timeline_semaphore" ) || ( extension == "VK_INTEL_shader_integer_functions2" ) || 3247 ( extension == "VK_INTEL_performance_query" ) || ( extension == "VK_KHR_vulkan_memory_model" ) || ( extension == "VK_EXT_pci_bus_info" ) || 3248 ( extension == "VK_AMD_display_native_hdr" ) || ( extension == "VK_KHR_shader_terminate_invocation" ) || 3249 ( extension == "VK_EXT_fragment_density_map" ) || ( extension == "VK_EXT_scalar_block_layout" ) || 3250 ( extension == "VK_GOOGLE_hlsl_functionality1" ) || ( extension == "VK_GOOGLE_decorate_string" ) || 3251 ( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_fragment_shading_rate" ) || 3252 ( extension == "VK_AMD_shader_core_properties2" ) || ( extension == "VK_AMD_device_coherent_memory" ) || 3253 ( extension == "VK_KHR_dynamic_rendering_local_read" ) || ( extension == "VK_EXT_shader_image_atomic_int64" ) || 3254 ( extension == "VK_KHR_shader_quad_control" ) || ( extension == "VK_KHR_spirv_1_4" ) || ( extension == "VK_EXT_memory_budget" ) || 3255 ( extension == "VK_EXT_memory_priority" ) || ( extension == "VK_NV_dedicated_allocation_image_aliasing" ) || 3256 ( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_buffer_device_address" ) || 3257 ( extension == "VK_EXT_tooling_info" ) || ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_present_wait" ) || 3258 ( extension == "VK_NV_cooperative_matrix" ) || ( extension == "VK_NV_coverage_reduction_mode" ) || 3259 ( extension == "VK_EXT_fragment_shader_interlock" ) || ( extension == "VK_EXT_ycbcr_image_arrays" ) || 3260 ( extension == "VK_KHR_uniform_buffer_standard_layout" ) || ( extension == "VK_EXT_provoking_vertex" ) 3261 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3262 || ( extension == "VK_EXT_full_screen_exclusive" ) 3263 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3264 || ( extension == "VK_KHR_buffer_device_address" ) || ( extension == "VK_EXT_line_rasterization" ) || ( extension == "VK_EXT_shader_atomic_float" ) || 3265 ( extension == "VK_EXT_host_query_reset" ) || ( extension == "VK_EXT_index_type_uint8" ) || ( extension == "VK_EXT_extended_dynamic_state" ) || 3266 ( extension == "VK_KHR_deferred_host_operations" ) || ( extension == "VK_KHR_pipeline_executable_properties" ) || 3267 ( extension == "VK_EXT_host_image_copy" ) || ( extension == "VK_KHR_map_memory2" ) || ( extension == "VK_EXT_map_memory_placed" ) || 3268 ( extension == "VK_EXT_shader_atomic_float2" ) || ( extension == "VK_EXT_swapchain_maintenance1" ) || 3269 ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) || ( extension == "VK_NV_device_generated_commands" ) || 3270 ( extension == "VK_NV_inherited_viewport_scissor" ) || ( extension == "VK_KHR_shader_integer_dot_product" ) || 3271 ( extension == "VK_EXT_texel_buffer_alignment" ) || ( extension == "VK_QCOM_render_pass_transform" ) || 3272 ( extension == "VK_EXT_depth_bias_control" ) || ( extension == "VK_EXT_device_memory_report" ) || ( extension == "VK_EXT_robustness2" ) || 3273 ( extension == "VK_EXT_custom_border_color" ) || ( extension == "VK_GOOGLE_user_type" ) || ( extension == "VK_KHR_pipeline_library" ) || 3274 ( extension == "VK_NV_present_barrier" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) || ( extension == "VK_KHR_present_id" ) || 3275 ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) || 3276 ( extension == "VK_KHR_video_encode_queue" ) || ( extension == "VK_NV_device_diagnostics_config" ) || 3277 ( extension == "VK_QCOM_render_pass_store_ops" ) 3278 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3279 || ( extension == "VK_NV_cuda_kernel_launch" ) 3280 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3281 || ( extension == "VK_NV_low_latency" ) 3282 #if defined( VK_USE_PLATFORM_METAL_EXT ) 3283 || ( extension == "VK_EXT_metal_objects" ) 3284 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 3285 || ( extension == "VK_KHR_synchronization2" ) || ( extension == "VK_EXT_descriptor_buffer" ) || ( extension == "VK_EXT_graphics_pipeline_library" ) || 3286 ( extension == "VK_AMD_shader_early_and_late_fragment_tests" ) || ( extension == "VK_KHR_fragment_shader_barycentric" ) || 3287 ( extension == "VK_KHR_shader_subgroup_uniform_control_flow" ) || ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || 3288 ( extension == "VK_NV_fragment_shading_rate_enums" ) || ( extension == "VK_NV_ray_tracing_motion_blur" ) || ( extension == "VK_EXT_mesh_shader" ) || 3289 ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) || ( extension == "VK_EXT_fragment_density_map2" ) || 3290 ( extension == "VK_QCOM_rotated_copy_commands" ) || ( extension == "VK_EXT_image_robustness" ) || 3291 ( extension == "VK_KHR_workgroup_memory_explicit_layout" ) || ( extension == "VK_KHR_copy_commands2" ) || 3292 ( extension == "VK_EXT_image_compression_control" ) || ( extension == "VK_EXT_attachment_feedback_loop_layout" ) || 3293 ( extension == "VK_EXT_4444_formats" ) || ( extension == "VK_EXT_device_fault" ) || 3294 ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_EXT_rgba10x6_formats" ) 3295 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3296 || ( extension == "VK_NV_acquire_winrt_display" ) 3297 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3298 || ( extension == "VK_VALVE_mutable_descriptor_type" ) || ( extension == "VK_EXT_vertex_input_dynamic_state" ) || 3299 ( extension == "VK_EXT_physical_device_drm" ) || ( extension == "VK_EXT_device_address_binding_report" ) || 3300 ( extension == "VK_EXT_depth_clip_control" ) || ( extension == "VK_EXT_primitive_topology_list_restart" ) || 3301 ( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_EXT_present_mode_fifo_latest_ready" ) 3302 #if defined( VK_USE_PLATFORM_FUCHSIA ) 3303 || ( extension == "VK_FUCHSIA_external_memory" ) || ( extension == "VK_FUCHSIA_external_semaphore" ) || ( extension == "VK_FUCHSIA_buffer_collection" ) 3304 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 3305 || ( extension == "VK_HUAWEI_subpass_shading" ) || ( extension == "VK_HUAWEI_invocation_mask" ) || ( extension == "VK_NV_external_memory_rdma" ) || 3306 ( extension == "VK_EXT_pipeline_properties" ) || ( extension == "VK_EXT_frame_boundary" ) || 3307 ( extension == "VK_EXT_multisampled_render_to_single_sampled" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) || 3308 ( extension == "VK_EXT_color_write_enable" ) || ( extension == "VK_EXT_primitives_generated_query" ) || 3309 ( extension == "VK_KHR_ray_tracing_maintenance1" ) || ( extension == "VK_EXT_global_priority_query" ) || 3310 ( extension == "VK_EXT_image_view_min_lod" ) || ( extension == "VK_EXT_multi_draw" ) || ( extension == "VK_EXT_image_2d_view_of_3d" ) || 3311 ( extension == "VK_EXT_shader_tile_image" ) || ( extension == "VK_EXT_opacity_micromap" ) 3312 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3313 || ( extension == "VK_NV_displacement_micromap" ) 3314 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3315 || ( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_HUAWEI_cluster_culling_shader" ) || 3316 ( extension == "VK_EXT_border_color_swizzle" ) || ( extension == "VK_EXT_pageable_device_local_memory" ) || ( extension == "VK_KHR_maintenance4" ) || 3317 ( extension == "VK_ARM_shader_core_properties" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) || 3318 ( extension == "VK_ARM_scheduling_controls" ) || ( extension == "VK_EXT_image_sliced_view_of_3d" ) || 3319 ( extension == "VK_VALVE_descriptor_set_host_mapping" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) || 3320 ( extension == "VK_EXT_non_seamless_cube_map" ) || ( extension == "VK_ARM_render_pass_striped" ) || 3321 ( extension == "VK_QCOM_fragment_density_map_offset" ) || ( extension == "VK_NV_copy_memory_indirect" ) || 3322 ( extension == "VK_NV_memory_decompression" ) || ( extension == "VK_NV_device_generated_commands_compute" ) || 3323 ( extension == "VK_NV_ray_tracing_linear_swept_spheres" ) || ( extension == "VK_NV_linear_color_attachment" ) || 3324 ( extension == "VK_KHR_shader_maximal_reconvergence" ) || ( extension == "VK_EXT_image_compression_control_swapchain" ) || 3325 ( extension == "VK_QCOM_image_processing" ) || ( extension == "VK_EXT_nested_command_buffer" ) || 3326 ( extension == "VK_EXT_external_memory_acquire_unmodified" ) || ( extension == "VK_EXT_extended_dynamic_state3" ) || 3327 ( extension == "VK_EXT_subpass_merge_feedback" ) || ( extension == "VK_EXT_shader_module_identifier" ) || 3328 ( extension == "VK_EXT_rasterization_order_attachment_access" ) || ( extension == "VK_NV_optical_flow" ) || 3329 ( extension == "VK_EXT_legacy_dithering" ) || ( extension == "VK_EXT_pipeline_protected_access" ) 3330 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 3331 || ( extension == "VK_ANDROID_external_format_resolve" ) 3332 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 3333 || ( extension == "VK_KHR_maintenance5" ) || ( extension == "VK_AMD_anti_lag" ) || ( extension == "VK_KHR_ray_tracing_position_fetch" ) || 3334 ( extension == "VK_EXT_shader_object" ) || ( extension == "VK_KHR_pipeline_binary" ) || ( extension == "VK_QCOM_tile_properties" ) || 3335 ( extension == "VK_SEC_amigo_profiling" ) || ( extension == "VK_QCOM_multiview_per_view_viewports" ) || 3336 ( extension == "VK_NV_ray_tracing_invocation_reorder" ) || ( extension == "VK_NV_cooperative_vector" ) || 3337 ( extension == "VK_NV_extended_sparse_address_space" ) || ( extension == "VK_EXT_mutable_descriptor_type" ) || 3338 ( extension == "VK_EXT_legacy_vertex_attributes" ) || ( extension == "VK_ARM_shader_core_builtins" ) || 3339 ( extension == "VK_EXT_pipeline_library_group_handles" ) || ( extension == "VK_EXT_dynamic_rendering_unused_attachments" ) || 3340 ( extension == "VK_NV_low_latency2" ) || ( extension == "VK_KHR_cooperative_matrix" ) || 3341 ( extension == "VK_QCOM_multiview_per_view_render_areas" ) || ( extension == "VK_KHR_compute_shader_derivatives" ) || 3342 ( extension == "VK_KHR_video_decode_av1" ) || ( extension == "VK_KHR_video_encode_av1" ) || ( extension == "VK_KHR_video_maintenance1" ) || 3343 ( extension == "VK_NV_per_stage_descriptor_set" ) || ( extension == "VK_QCOM_image_processing2" ) || 3344 ( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) || ( extension == "VK_QCOM_filter_cubic_clamp" ) || 3345 ( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) || ( extension == "VK_KHR_vertex_attribute_divisor" ) || 3346 ( extension == "VK_KHR_load_store_op_none" ) || ( extension == "VK_KHR_shader_float_controls2" ) 3347 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 3348 || ( extension == "VK_QNX_external_memory_screen_buffer" ) 3349 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 3350 || ( extension == "VK_MSFT_layered_driver" ) || ( extension == "VK_KHR_index_type_uint8" ) || ( extension == "VK_KHR_line_rasterization" ) || 3351 ( extension == "VK_KHR_calibrated_timestamps" ) || ( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ) || 3352 ( extension == "VK_NV_descriptor_pool_overallocation" ) || ( extension == "VK_KHR_video_encode_quantization_map" ) || 3353 ( extension == "VK_NV_raw_access_chains" ) || ( extension == "VK_KHR_shader_relaxed_extended_instruction" ) || 3354 ( extension == "VK_NV_command_buffer_inheritance" ) || ( extension == "VK_KHR_maintenance7" ) || 3355 ( extension == "VK_NV_shader_atomic_float16_vector" ) || ( extension == "VK_EXT_shader_replicated_composites" ) || 3356 ( extension == "VK_NV_ray_tracing_validation" ) || ( extension == "VK_NV_cluster_acceleration_structure" ) || 3357 ( extension == "VK_NV_partitioned_acceleration_structure" ) || ( extension == "VK_EXT_device_generated_commands" ) || 3358 ( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) || ( extension == "VK_EXT_depth_clamp_control" ) || 3359 ( extension == "VK_KHR_video_maintenance2" ) || ( extension == "VK_HUAWEI_hdr_vivid" ) || ( extension == "VK_NV_cooperative_matrix2" ) || 3360 ( extension == "VK_ARM_pipeline_opacity_micromap" ) 3361 #if defined( VK_USE_PLATFORM_METAL_EXT ) 3362 || ( extension == "VK_EXT_external_memory_metal" ) 3363 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 3364 || ( extension == "VK_KHR_depth_clamp_zero_one" ) || ( extension == "VK_EXT_vertex_attribute_robustness" ) 3365 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 3366 || ( extension == "VK_NV_present_metering" ) 3367 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 3368 ; 3369 } 3370 isInstanceExtension(std::string const & extension)3371 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ) 3372 { 3373 return ( extension == "VK_KHR_surface" ) || ( extension == "VK_KHR_display" ) 3374 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 3375 || ( extension == "VK_KHR_xlib_surface" ) 3376 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 3377 #if defined( VK_USE_PLATFORM_XCB_KHR ) 3378 || ( extension == "VK_KHR_xcb_surface" ) 3379 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 3380 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 3381 || ( extension == "VK_KHR_wayland_surface" ) 3382 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 3383 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 3384 || ( extension == "VK_KHR_android_surface" ) 3385 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 3386 #if defined( VK_USE_PLATFORM_OHOS ) 3387 || ( extension == "VK_OHOS_surface" ) 3388 #endif /*VK_USE_PLATFORM_OHOS*/ 3389 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3390 || ( extension == "VK_KHR_win32_surface" ) 3391 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3392 || ( extension == "VK_EXT_debug_report" ) 3393 #if defined( VK_USE_PLATFORM_GGP ) 3394 || ( extension == "VK_GGP_stream_descriptor_surface" ) 3395 #endif /*VK_USE_PLATFORM_GGP*/ 3396 || ( extension == "VK_NV_external_memory_capabilities" ) || ( extension == "VK_KHR_get_physical_device_properties2" ) || 3397 ( extension == "VK_EXT_validation_flags" ) 3398 #if defined( VK_USE_PLATFORM_VI_NN ) 3399 || ( extension == "VK_NN_vi_surface" ) 3400 #endif /*VK_USE_PLATFORM_VI_NN*/ 3401 || ( extension == "VK_KHR_device_group_creation" ) || ( extension == "VK_KHR_external_memory_capabilities" ) || 3402 ( extension == "VK_KHR_external_semaphore_capabilities" ) || ( extension == "VK_EXT_direct_mode_display" ) 3403 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 3404 || ( extension == "VK_EXT_acquire_xlib_display" ) 3405 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 3406 || ( extension == "VK_EXT_display_surface_counter" ) || ( extension == "VK_EXT_swapchain_colorspace" ) || 3407 ( extension == "VK_KHR_external_fence_capabilities" ) || ( extension == "VK_KHR_get_surface_capabilities2" ) || 3408 ( extension == "VK_KHR_get_display_properties2" ) 3409 #if defined( VK_USE_PLATFORM_IOS_MVK ) 3410 || ( extension == "VK_MVK_ios_surface" ) 3411 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 3412 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 3413 || ( extension == "VK_MVK_macos_surface" ) 3414 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 3415 || ( extension == "VK_EXT_debug_utils" ) 3416 #if defined( VK_USE_PLATFORM_FUCHSIA ) 3417 || ( extension == "VK_FUCHSIA_imagepipe_surface" ) 3418 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 3419 #if defined( VK_USE_PLATFORM_METAL_EXT ) 3420 || ( extension == "VK_EXT_metal_surface" ) 3421 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 3422 || ( extension == "VK_KHR_surface_protected_capabilities" ) || ( extension == "VK_EXT_validation_features" ) || 3423 ( extension == "VK_EXT_headless_surface" ) || ( extension == "VK_EXT_surface_maintenance1" ) || ( extension == "VK_EXT_acquire_drm_display" ) 3424 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 3425 || ( extension == "VK_EXT_directfb_surface" ) 3426 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 3427 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 3428 || ( extension == "VK_QNX_screen_surface" ) 3429 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 3430 || ( extension == "VK_KHR_portability_enumeration" ) || ( extension == "VK_GOOGLE_surfaceless_query" ) || 3431 ( extension == "VK_LUNARG_direct_driver_loading" ) || ( extension == "VK_EXT_layer_settings" ) || ( extension == "VK_NV_display_stereo" ); 3432 } 3433 isObsoletedExtension(std::string const & extension)3434 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension( std::string const & extension ) 3435 { 3436 return ( extension == "VK_AMD_negative_viewport_height" ); 3437 } 3438 isPromotedExtension(std::string const & extension)3439 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension ) 3440 { 3441 return ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_AMD_draw_indirect_count" ) || 3442 ( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_KHR_multiview" ) || 3443 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 3444 ( extension == "VK_NV_win32_keyed_mutex" ) || 3445 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 3446 ( extension == "VK_KHR_get_physical_device_properties2" ) || ( extension == "VK_KHR_device_group" ) || 3447 ( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) || 3448 ( extension == "VK_EXT_pipeline_robustness" ) || ( extension == "VK_KHR_maintenance1" ) || ( extension == "VK_KHR_device_group_creation" ) || 3449 ( extension == "VK_KHR_external_memory_capabilities" ) || ( extension == "VK_KHR_external_memory" ) || 3450 ( extension == "VK_KHR_external_semaphore_capabilities" ) || ( extension == "VK_KHR_external_semaphore" ) || 3451 ( extension == "VK_KHR_push_descriptor" ) || ( extension == "VK_KHR_shader_float16_int8" ) || ( extension == "VK_KHR_16bit_storage" ) || 3452 ( extension == "VK_KHR_descriptor_update_template" ) || ( extension == "VK_KHR_imageless_framebuffer" ) || 3453 ( extension == "VK_KHR_create_renderpass2" ) || ( extension == "VK_KHR_external_fence_capabilities" ) || ( extension == "VK_KHR_external_fence" ) || 3454 ( extension == "VK_KHR_maintenance2" ) || ( extension == "VK_KHR_variable_pointers" ) || ( extension == "VK_KHR_dedicated_allocation" ) || 3455 ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) || 3456 ( extension == "VK_EXT_inline_uniform_block" ) || ( extension == "VK_KHR_relaxed_block_layout" ) || 3457 ( extension == "VK_KHR_get_memory_requirements2" ) || ( extension == "VK_KHR_image_format_list" ) || 3458 ( extension == "VK_KHR_sampler_ycbcr_conversion" ) || ( extension == "VK_KHR_bind_memory2" ) || ( extension == "VK_EXT_descriptor_indexing" ) || 3459 ( extension == "VK_EXT_shader_viewport_index_layer" ) || ( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || 3460 ( extension == "VK_EXT_global_priority" ) || ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) || 3461 ( extension == "VK_KHR_shader_atomic_int64" ) || ( extension == "VK_EXT_calibrated_timestamps" ) || ( extension == "VK_KHR_global_priority" ) || 3462 ( extension == "VK_EXT_vertex_attribute_divisor" ) || ( extension == "VK_EXT_pipeline_creation_feedback" ) || 3463 ( extension == "VK_KHR_driver_properties" ) || ( extension == "VK_KHR_shader_float_controls" ) || ( extension == "VK_KHR_depth_stencil_resolve" ) || 3464 ( extension == "VK_NV_compute_shader_derivatives" ) || ( extension == "VK_NV_fragment_shader_barycentric" ) || 3465 ( extension == "VK_KHR_timeline_semaphore" ) || ( extension == "VK_KHR_vulkan_memory_model" ) || 3466 ( extension == "VK_KHR_shader_terminate_invocation" ) || ( extension == "VK_EXT_scalar_block_layout" ) || 3467 ( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_dynamic_rendering_local_read" ) || ( extension == "VK_KHR_spirv_1_4" ) || 3468 ( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_tooling_info" ) || 3469 ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_uniform_buffer_standard_layout" ) || 3470 ( extension == "VK_KHR_buffer_device_address" ) || ( extension == "VK_EXT_line_rasterization" ) || ( extension == "VK_EXT_host_query_reset" ) || 3471 ( extension == "VK_EXT_index_type_uint8" ) || ( extension == "VK_EXT_extended_dynamic_state" ) || ( extension == "VK_EXT_host_image_copy" ) || 3472 ( extension == "VK_KHR_map_memory2" ) || ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) || 3473 ( extension == "VK_KHR_shader_integer_dot_product" ) || ( extension == "VK_EXT_texel_buffer_alignment" ) || 3474 ( extension == "VK_KHR_shader_non_semantic_info" ) || ( extension == "VK_EXT_private_data" ) || 3475 ( extension == "VK_EXT_pipeline_creation_cache_control" ) || ( extension == "VK_KHR_synchronization2" ) || 3476 ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) || 3477 ( extension == "VK_EXT_image_robustness" ) || ( extension == "VK_KHR_copy_commands2" ) || ( extension == "VK_EXT_4444_formats" ) || 3478 ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_VALVE_mutable_descriptor_type" ) || 3479 ( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) || 3480 ( extension == "VK_EXT_global_priority_query" ) || ( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_KHR_maintenance4" ) || 3481 ( extension == "VK_KHR_shader_subgroup_rotate" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) || 3482 ( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) || 3483 ( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_KHR_load_store_op_none" ) || 3484 ( extension == "VK_KHR_shader_float_controls2" ) || ( extension == "VK_KHR_index_type_uint8" ) || ( extension == "VK_KHR_line_rasterization" ) || 3485 ( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ); 3486 } 3487 } // namespace VULKAN_HPP_NAMESPACE 3488 3489 #endif 3490