1 // Copyright 2015-2023 The Khronos Group Inc. 2 // 3 // SPDX-License-Identifier: Apache-2.0 OR MIT 4 // 5 6 // This header is generated from the Khronos Vulkan XML API Registry. 7 8 #ifndef VULKAN_EXTENSION_INSPECTION_HPP 9 #define VULKAN_EXTENSION_INSPECTION_HPP 10 11 #include <map> 12 #include <set> 13 #include <vulkan/vulkan.hpp> 14 15 namespace VULKAN_HPP_NAMESPACE 16 { 17 //====================================== 18 //=== Extension inspection functions === 19 //====================================== 20 21 std::set<std::string> const & getDeviceExtensions(); 22 std::set<std::string> const & getInstanceExtensions(); 23 std::map<std::string, std::string> const & getDeprecatedExtensions(); 24 std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension ); 25 std::pair<bool, std::vector<std::vector<std::string>> const &> getExtensionDepends( std::string const & version, std::string const & extension ); 26 std::map<std::string, std::string> const & getObsoletedExtensions(); 27 std::map<std::string, std::string> const & getPromotedExtensions(); 28 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy( std::string const & extension ); 29 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy( std::string const & extension ); 30 VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo( std::string const & extension ); 31 VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension( std::string const & extension ); 32 VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension ); 33 VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ); 34 VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension( std::string const & extension ); 35 VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension ); 36 37 //===================================================== 38 //=== Extension inspection function implementations === 39 //===================================================== 40 getDeprecatedExtensions()41 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getDeprecatedExtensions() 42 { 43 static std::map<std::string, std::string> deprecatedExtensions = { 44 { "VK_EXT_debug_report", "VK_EXT_debug_utils"}, 45 { "VK_NV_glsl_shader", ""}, 46 { "VK_NV_dedicated_allocation", "VK_KHR_dedicated_allocation"}, 47 { "VK_AMD_gpu_shader_half_float", "VK_KHR_shader_float16_int8"}, 48 { "VK_IMG_format_pvrtc", ""}, 49 { "VK_NV_external_memory_capabilities", "VK_KHR_external_memory_capabilities"}, 50 { "VK_NV_external_memory", "VK_KHR_external_memory"}, 51 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 52 { "VK_NV_external_memory_win32", "VK_KHR_external_memory_win32"}, 53 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 54 { "VK_EXT_validation_flags", "VK_EXT_validation_features"}, 55 { "VK_EXT_shader_subgroup_ballot", "VK_VERSION_1_2"}, 56 { "VK_EXT_shader_subgroup_vote", "VK_VERSION_1_1"}, 57 #if defined( VK_USE_PLATFORM_IOS_MVK ) 58 { "VK_MVK_ios_surface", "VK_EXT_metal_surface"}, 59 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 60 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 61 { "VK_MVK_macos_surface", "VK_EXT_metal_surface"}, 62 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 63 { "VK_AMD_gpu_shader_int16", "VK_KHR_shader_float16_int8"}, 64 { "VK_EXT_buffer_device_address", "VK_KHR_buffer_device_address"} }; 65 return deprecatedExtensions; 66 } 67 getDeviceExtensions()68 VULKAN_HPP_INLINE std::set<std::string> const & getDeviceExtensions() 69 { 70 static std::set<std::string> deviceExtensions = { 71 "VK_KHR_swapchain", 72 "VK_KHR_display_swapchain", 73 "VK_NV_glsl_shader", 74 "VK_EXT_depth_range_unrestricted", 75 "VK_KHR_sampler_mirror_clamp_to_edge", 76 "VK_IMG_filter_cubic", 77 "VK_AMD_rasterization_order", 78 "VK_AMD_shader_trinary_minmax", 79 "VK_AMD_shader_explicit_vertex_parameter", 80 "VK_EXT_debug_marker", 81 "VK_KHR_video_queue", 82 "VK_KHR_video_decode_queue", 83 "VK_AMD_gcn_shader", 84 "VK_NV_dedicated_allocation", 85 "VK_EXT_transform_feedback", 86 "VK_NVX_binary_import", 87 "VK_NVX_image_view_handle", 88 "VK_AMD_draw_indirect_count", 89 "VK_AMD_negative_viewport_height", 90 "VK_AMD_gpu_shader_half_float", 91 "VK_AMD_shader_ballot", 92 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 93 "VK_EXT_video_encode_h264", 94 "VK_EXT_video_encode_h265", 95 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 96 "VK_KHR_video_decode_h264", 97 "VK_AMD_texture_gather_bias_lod", 98 "VK_AMD_shader_info", 99 "VK_KHR_dynamic_rendering", 100 "VK_AMD_shader_image_load_store_lod", 101 "VK_NV_corner_sampled_image", 102 "VK_KHR_multiview", 103 "VK_IMG_format_pvrtc", 104 "VK_NV_external_memory", 105 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 106 "VK_NV_external_memory_win32", 107 "VK_NV_win32_keyed_mutex", 108 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 109 "VK_KHR_device_group", 110 "VK_KHR_shader_draw_parameters", 111 "VK_EXT_shader_subgroup_ballot", 112 "VK_EXT_shader_subgroup_vote", 113 "VK_EXT_texture_compression_astc_hdr", 114 "VK_EXT_astc_decode_mode", 115 "VK_EXT_pipeline_robustness", 116 "VK_KHR_maintenance1", 117 "VK_KHR_external_memory", 118 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 119 "VK_KHR_external_memory_win32", 120 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 121 "VK_KHR_external_memory_fd", 122 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 123 "VK_KHR_win32_keyed_mutex", 124 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 125 "VK_KHR_external_semaphore", 126 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 127 "VK_KHR_external_semaphore_win32", 128 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 129 "VK_KHR_external_semaphore_fd", 130 "VK_KHR_push_descriptor", 131 "VK_EXT_conditional_rendering", 132 "VK_KHR_shader_float16_int8", 133 "VK_KHR_16bit_storage", 134 "VK_KHR_incremental_present", 135 "VK_KHR_descriptor_update_template", 136 "VK_NV_clip_space_w_scaling", 137 "VK_EXT_display_control", 138 "VK_GOOGLE_display_timing", 139 "VK_NV_sample_mask_override_coverage", 140 "VK_NV_geometry_shader_passthrough", 141 "VK_NV_viewport_array2", 142 "VK_NVX_multiview_per_view_attributes", 143 "VK_NV_viewport_swizzle", 144 "VK_EXT_discard_rectangles", 145 "VK_EXT_conservative_rasterization", 146 "VK_EXT_depth_clip_enable", 147 "VK_EXT_hdr_metadata", 148 "VK_KHR_imageless_framebuffer", 149 "VK_KHR_create_renderpass2", 150 "VK_KHR_shared_presentable_image", 151 "VK_KHR_external_fence", 152 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 153 "VK_KHR_external_fence_win32", 154 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 155 "VK_KHR_external_fence_fd", 156 "VK_KHR_performance_query", 157 "VK_KHR_maintenance2", 158 "VK_KHR_variable_pointers", 159 "VK_EXT_external_memory_dma_buf", 160 "VK_EXT_queue_family_foreign", 161 "VK_KHR_dedicated_allocation", 162 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 163 "VK_ANDROID_external_memory_android_hardware_buffer", 164 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 165 "VK_EXT_sampler_filter_minmax", 166 "VK_KHR_storage_buffer_storage_class", 167 "VK_AMD_gpu_shader_int16", 168 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 169 "VK_AMDX_shader_enqueue", 170 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 171 "VK_AMD_mixed_attachment_samples", 172 "VK_AMD_shader_fragment_mask", 173 "VK_EXT_inline_uniform_block", 174 "VK_EXT_shader_stencil_export", 175 "VK_EXT_sample_locations", 176 "VK_KHR_relaxed_block_layout", 177 "VK_KHR_get_memory_requirements2", 178 "VK_KHR_image_format_list", 179 "VK_EXT_blend_operation_advanced", 180 "VK_NV_fragment_coverage_to_color", 181 "VK_KHR_acceleration_structure", 182 "VK_KHR_ray_tracing_pipeline", 183 "VK_KHR_ray_query", 184 "VK_NV_framebuffer_mixed_samples", 185 "VK_NV_fill_rectangle", 186 "VK_NV_shader_sm_builtins", 187 "VK_EXT_post_depth_coverage", 188 "VK_KHR_sampler_ycbcr_conversion", 189 "VK_KHR_bind_memory2", 190 "VK_EXT_image_drm_format_modifier", 191 "VK_EXT_validation_cache", 192 "VK_EXT_descriptor_indexing", 193 "VK_EXT_shader_viewport_index_layer", 194 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 195 "VK_KHR_portability_subset", 196 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 197 "VK_NV_shading_rate_image", 198 "VK_NV_ray_tracing", 199 "VK_NV_representative_fragment_test", 200 "VK_KHR_maintenance3", 201 "VK_KHR_draw_indirect_count", 202 "VK_EXT_filter_cubic", 203 "VK_QCOM_render_pass_shader_resolve", 204 "VK_EXT_global_priority", 205 "VK_KHR_shader_subgroup_extended_types", 206 "VK_KHR_8bit_storage", 207 "VK_EXT_external_memory_host", 208 "VK_AMD_buffer_marker", 209 "VK_KHR_shader_atomic_int64", 210 "VK_KHR_shader_clock", 211 "VK_AMD_pipeline_compiler_control", 212 "VK_EXT_calibrated_timestamps", 213 "VK_AMD_shader_core_properties", 214 "VK_KHR_video_decode_h265", 215 "VK_KHR_global_priority", 216 "VK_AMD_memory_overallocation_behavior", 217 "VK_EXT_vertex_attribute_divisor", 218 #if defined( VK_USE_PLATFORM_GGP ) 219 "VK_GGP_frame_token", 220 #endif /*VK_USE_PLATFORM_GGP*/ 221 "VK_EXT_pipeline_creation_feedback", 222 "VK_KHR_driver_properties", 223 "VK_KHR_shader_float_controls", 224 "VK_NV_shader_subgroup_partitioned", 225 "VK_KHR_depth_stencil_resolve", 226 "VK_KHR_swapchain_mutable_format", 227 "VK_NV_compute_shader_derivatives", 228 "VK_NV_mesh_shader", 229 "VK_NV_fragment_shader_barycentric", 230 "VK_NV_shader_image_footprint", 231 "VK_NV_scissor_exclusive", 232 "VK_NV_device_diagnostic_checkpoints", 233 "VK_KHR_timeline_semaphore", 234 "VK_INTEL_shader_integer_functions2", 235 "VK_INTEL_performance_query", 236 "VK_KHR_vulkan_memory_model", 237 "VK_EXT_pci_bus_info", 238 "VK_AMD_display_native_hdr", 239 "VK_KHR_shader_terminate_invocation", 240 "VK_EXT_fragment_density_map", 241 "VK_EXT_scalar_block_layout", 242 "VK_GOOGLE_hlsl_functionality1", 243 "VK_GOOGLE_decorate_string", 244 "VK_EXT_subgroup_size_control", 245 "VK_KHR_fragment_shading_rate", 246 "VK_AMD_shader_core_properties2", 247 "VK_AMD_device_coherent_memory", 248 "VK_EXT_shader_image_atomic_int64", 249 "VK_KHR_spirv_1_4", 250 "VK_EXT_memory_budget", 251 "VK_EXT_memory_priority", 252 "VK_NV_dedicated_allocation_image_aliasing", 253 "VK_KHR_separate_depth_stencil_layouts", 254 "VK_EXT_buffer_device_address", 255 "VK_EXT_tooling_info", 256 "VK_EXT_separate_stencil_usage", 257 "VK_KHR_present_wait", 258 "VK_NV_cooperative_matrix", 259 "VK_NV_coverage_reduction_mode", 260 "VK_EXT_fragment_shader_interlock", 261 "VK_EXT_ycbcr_image_arrays", 262 "VK_KHR_uniform_buffer_standard_layout", 263 "VK_EXT_provoking_vertex", 264 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 265 "VK_EXT_full_screen_exclusive", 266 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 267 "VK_KHR_buffer_device_address", 268 "VK_EXT_line_rasterization", 269 "VK_EXT_shader_atomic_float", 270 "VK_EXT_host_query_reset", 271 "VK_EXT_index_type_uint8", 272 "VK_EXT_extended_dynamic_state", 273 "VK_KHR_deferred_host_operations", 274 "VK_KHR_pipeline_executable_properties", 275 "VK_EXT_host_image_copy", 276 "VK_KHR_map_memory2", 277 "VK_EXT_shader_atomic_float2", 278 "VK_EXT_swapchain_maintenance1", 279 "VK_EXT_shader_demote_to_helper_invocation", 280 "VK_NV_device_generated_commands", 281 "VK_NV_inherited_viewport_scissor", 282 "VK_KHR_shader_integer_dot_product", 283 "VK_EXT_texel_buffer_alignment", 284 "VK_QCOM_render_pass_transform", 285 "VK_EXT_depth_bias_control", 286 "VK_EXT_device_memory_report", 287 "VK_EXT_robustness2", 288 "VK_EXT_custom_border_color", 289 "VK_GOOGLE_user_type", 290 "VK_KHR_pipeline_library", 291 "VK_NV_present_barrier", 292 "VK_KHR_shader_non_semantic_info", 293 "VK_KHR_present_id", 294 "VK_EXT_private_data", 295 "VK_EXT_pipeline_creation_cache_control", 296 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 297 "VK_KHR_video_encode_queue", 298 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 299 "VK_NV_device_diagnostics_config", 300 "VK_QCOM_render_pass_store_ops", 301 "VK_NV_low_latency", 302 #if defined( VK_USE_PLATFORM_METAL_EXT ) 303 "VK_EXT_metal_objects", 304 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 305 "VK_KHR_synchronization2", 306 "VK_EXT_descriptor_buffer", 307 "VK_EXT_graphics_pipeline_library", 308 "VK_AMD_shader_early_and_late_fragment_tests", 309 "VK_KHR_fragment_shader_barycentric", 310 "VK_KHR_shader_subgroup_uniform_control_flow", 311 "VK_KHR_zero_initialize_workgroup_memory", 312 "VK_NV_fragment_shading_rate_enums", 313 "VK_NV_ray_tracing_motion_blur", 314 "VK_EXT_mesh_shader", 315 "VK_EXT_ycbcr_2plane_444_formats", 316 "VK_EXT_fragment_density_map2", 317 "VK_QCOM_rotated_copy_commands", 318 "VK_EXT_image_robustness", 319 "VK_KHR_workgroup_memory_explicit_layout", 320 "VK_KHR_copy_commands2", 321 "VK_EXT_image_compression_control", 322 "VK_EXT_attachment_feedback_loop_layout", 323 "VK_EXT_4444_formats", 324 "VK_EXT_device_fault", 325 "VK_ARM_rasterization_order_attachment_access", 326 "VK_EXT_rgba10x6_formats", 327 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 328 "VK_NV_acquire_winrt_display", 329 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 330 "VK_VALVE_mutable_descriptor_type", 331 "VK_EXT_vertex_input_dynamic_state", 332 "VK_EXT_physical_device_drm", 333 "VK_EXT_device_address_binding_report", 334 "VK_EXT_depth_clip_control", 335 "VK_EXT_primitive_topology_list_restart", 336 "VK_KHR_format_feature_flags2", 337 #if defined( VK_USE_PLATFORM_FUCHSIA ) 338 "VK_FUCHSIA_external_memory", 339 "VK_FUCHSIA_external_semaphore", 340 "VK_FUCHSIA_buffer_collection", 341 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 342 "VK_HUAWEI_subpass_shading", 343 "VK_HUAWEI_invocation_mask", 344 "VK_NV_external_memory_rdma", 345 "VK_EXT_pipeline_properties", 346 "VK_EXT_frame_boundary", 347 "VK_EXT_multisampled_render_to_single_sampled", 348 "VK_EXT_extended_dynamic_state2", 349 "VK_EXT_color_write_enable", 350 "VK_EXT_primitives_generated_query", 351 "VK_KHR_ray_tracing_maintenance1", 352 "VK_EXT_global_priority_query", 353 "VK_EXT_image_view_min_lod", 354 "VK_EXT_multi_draw", 355 "VK_EXT_image_2d_view_of_3d", 356 "VK_EXT_shader_tile_image", 357 "VK_EXT_opacity_micromap", 358 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 359 "VK_NV_displacement_micromap", 360 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 361 "VK_EXT_load_store_op_none", 362 "VK_HUAWEI_cluster_culling_shader", 363 "VK_EXT_border_color_swizzle", 364 "VK_EXT_pageable_device_local_memory", 365 "VK_KHR_maintenance4", 366 "VK_ARM_shader_core_properties", 367 "VK_EXT_image_sliced_view_of_3d", 368 "VK_VALVE_descriptor_set_host_mapping", 369 "VK_EXT_depth_clamp_zero_one", 370 "VK_EXT_non_seamless_cube_map", 371 "VK_QCOM_fragment_density_map_offset", 372 "VK_NV_copy_memory_indirect", 373 "VK_NV_memory_decompression", 374 "VK_NV_device_generated_commands_compute", 375 "VK_NV_linear_color_attachment", 376 "VK_EXT_image_compression_control_swapchain", 377 "VK_QCOM_image_processing", 378 "VK_EXT_external_memory_acquire_unmodified", 379 "VK_EXT_extended_dynamic_state3", 380 "VK_EXT_subpass_merge_feedback", 381 "VK_EXT_shader_module_identifier", 382 "VK_EXT_rasterization_order_attachment_access", 383 "VK_NV_optical_flow", 384 "VK_EXT_legacy_dithering", 385 "VK_EXT_pipeline_protected_access", 386 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 387 "VK_ANDROID_external_format_resolve", 388 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 389 "VK_KHR_maintenance5", 390 "VK_KHR_ray_tracing_position_fetch", 391 "VK_EXT_shader_object", 392 "VK_QCOM_tile_properties", 393 "VK_SEC_amigo_profiling", 394 "VK_QCOM_multiview_per_view_viewports", 395 "VK_NV_ray_tracing_invocation_reorder", 396 "VK_EXT_mutable_descriptor_type", 397 "VK_ARM_shader_core_builtins", 398 "VK_EXT_pipeline_library_group_handles", 399 "VK_EXT_dynamic_rendering_unused_attachments", 400 "VK_NV_low_latency2", 401 "VK_KHR_cooperative_matrix", 402 "VK_QCOM_multiview_per_view_render_areas", 403 "VK_QCOM_image_processing2", 404 "VK_QCOM_filter_cubic_weights", 405 "VK_QCOM_ycbcr_degamma", 406 "VK_QCOM_filter_cubic_clamp", 407 "VK_EXT_attachment_feedback_loop_dynamic_state", 408 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 409 "VK_QNX_external_memory_screen_buffer", 410 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 411 "VK_MSFT_layered_driver", 412 "VK_NV_descriptor_pool_overallocation" }; 413 return deviceExtensions; 414 } 415 getInstanceExtensions()416 VULKAN_HPP_INLINE std::set<std::string> const & getInstanceExtensions() 417 { 418 static std::set<std::string> instanceExtensions = { 419 "VK_KHR_surface", 420 "VK_KHR_display", 421 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 422 "VK_KHR_xlib_surface", 423 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 424 #if defined( VK_USE_PLATFORM_XCB_KHR ) 425 "VK_KHR_xcb_surface", 426 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 427 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 428 "VK_KHR_wayland_surface", 429 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 430 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 431 "VK_KHR_android_surface", 432 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 433 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 434 "VK_KHR_win32_surface", 435 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 436 "VK_EXT_debug_report", 437 #if defined( VK_USE_PLATFORM_GGP ) 438 "VK_GGP_stream_descriptor_surface", 439 #endif /*VK_USE_PLATFORM_GGP*/ 440 "VK_NV_external_memory_capabilities", 441 "VK_KHR_get_physical_device_properties2", 442 "VK_EXT_validation_flags", 443 #if defined( VK_USE_PLATFORM_VI_NN ) 444 "VK_NN_vi_surface", 445 #endif /*VK_USE_PLATFORM_VI_NN*/ 446 "VK_KHR_device_group_creation", 447 "VK_KHR_external_memory_capabilities", 448 "VK_KHR_external_semaphore_capabilities", 449 "VK_EXT_direct_mode_display", 450 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 451 "VK_EXT_acquire_xlib_display", 452 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 453 "VK_EXT_display_surface_counter", 454 "VK_EXT_swapchain_colorspace", 455 "VK_KHR_external_fence_capabilities", 456 "VK_KHR_get_surface_capabilities2", 457 "VK_KHR_get_display_properties2", 458 #if defined( VK_USE_PLATFORM_IOS_MVK ) 459 "VK_MVK_ios_surface", 460 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 461 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 462 "VK_MVK_macos_surface", 463 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 464 "VK_EXT_debug_utils", 465 #if defined( VK_USE_PLATFORM_FUCHSIA ) 466 "VK_FUCHSIA_imagepipe_surface", 467 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 468 #if defined( VK_USE_PLATFORM_METAL_EXT ) 469 "VK_EXT_metal_surface", 470 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 471 "VK_KHR_surface_protected_capabilities", 472 "VK_EXT_validation_features", 473 "VK_EXT_headless_surface", 474 "VK_EXT_surface_maintenance1", 475 "VK_EXT_acquire_drm_display", 476 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 477 "VK_EXT_directfb_surface", 478 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 479 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 480 "VK_QNX_screen_surface", 481 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 482 "VK_KHR_portability_enumeration", 483 "VK_GOOGLE_surfaceless_query", 484 "VK_LUNARG_direct_driver_loading" }; 485 return instanceExtensions; 486 } 487 getExtensionDepends(std::string const & extension)488 VULKAN_HPP_INLINE std::map<std::string, std::vector<std::vector<std::string>>> const & getExtensionDepends( std::string const & extension ) 489 { 490 static std::map<std::string, std::vector<std::vector<std::string>>> noDependencies; 491 static std::map<std::string, std::map<std::string, std::vector<std::vector<std::string>>>> dependencies = { 492 { "VK_KHR_swapchain", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 493 { "VK_KHR_display", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 494 { "VK_KHR_display_swapchain", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_display", } } } } }, 495 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 496 { "VK_KHR_xlib_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 497 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 498 #if defined( VK_USE_PLATFORM_XCB_KHR ) 499 { "VK_KHR_xcb_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 500 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 501 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 502 { "VK_KHR_wayland_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 503 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 504 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 505 { "VK_KHR_android_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 506 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 507 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 508 { "VK_KHR_win32_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 509 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 510 { "VK_EXT_debug_marker", { { "VK_VERSION_1_0", { { "VK_EXT_debug_report", } } } } }, 511 { "VK_KHR_video_queue", { { "VK_VERSION_1_1", { { "VK_KHR_synchronization2", } } } } }, 512 { "VK_KHR_video_decode_queue", { { "VK_VERSION_1_0", { { "VK_KHR_video_queue", "VK_KHR_synchronization2", } } } } }, 513 { "VK_EXT_transform_feedback", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 514 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 515 { "VK_EXT_video_encode_h264", { { "VK_VERSION_1_0", { { "VK_KHR_video_encode_queue", } } } } }, 516 { "VK_EXT_video_encode_h265", { { "VK_VERSION_1_0", { { "VK_KHR_video_encode_queue", } } } } }, 517 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 518 { "VK_KHR_video_decode_h264", { { "VK_VERSION_1_0", { { "VK_KHR_video_decode_queue", } } } } }, 519 { "VK_AMD_texture_gather_bias_lod", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 520 { "VK_KHR_dynamic_rendering", { { "VK_VERSION_1_0", { { "VK_KHR_depth_stencil_resolve", "VK_KHR_get_physical_device_properties2", } } } } }, 521 #if defined( VK_USE_PLATFORM_GGP ) 522 { "VK_GGP_stream_descriptor_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 523 #endif /*VK_USE_PLATFORM_GGP*/ 524 { "VK_NV_corner_sampled_image", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 525 { "VK_KHR_multiview", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 526 { "VK_NV_external_memory", { { "VK_VERSION_1_0", { { "VK_NV_external_memory_capabilities", } } } } }, 527 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 528 { "VK_NV_external_memory_win32", { { "VK_VERSION_1_0", { { "VK_NV_external_memory", } } } } }, 529 { "VK_NV_win32_keyed_mutex", { { "VK_VERSION_1_0", { { "VK_NV_external_memory_win32", } } } } }, 530 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 531 { "VK_KHR_device_group", { { "VK_VERSION_1_0", { { "VK_KHR_device_group_creation", } } } } }, 532 #if defined( VK_USE_PLATFORM_VI_NN ) 533 { "VK_NN_vi_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 534 #endif /*VK_USE_PLATFORM_VI_NN*/ 535 { "VK_EXT_texture_compression_astc_hdr", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 536 { "VK_EXT_astc_decode_mode", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 537 { "VK_EXT_pipeline_robustness", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 538 { "VK_KHR_external_memory_capabilities", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 539 { "VK_KHR_external_memory", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory_capabilities", } } } } }, 540 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 541 { "VK_KHR_external_memory_win32", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory", } } } } }, 542 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 543 { "VK_KHR_external_memory_fd", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory", } } }, { "VK_VERSION_1_1", { { } } } } }, 544 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 545 { "VK_KHR_win32_keyed_mutex", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory_win32", } } } } }, 546 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 547 { "VK_KHR_external_semaphore_capabilities", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 548 { "VK_KHR_external_semaphore", { { "VK_VERSION_1_0", { { "VK_KHR_external_semaphore_capabilities", } } } } }, 549 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 550 { "VK_KHR_external_semaphore_win32", { { "VK_VERSION_1_0", { { "VK_KHR_external_semaphore", } } } } }, 551 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 552 { "VK_KHR_external_semaphore_fd", { { "VK_VERSION_1_0", { { "VK_KHR_external_semaphore", } } }, { "VK_VERSION_1_1", { { } } } } }, 553 { "VK_KHR_push_descriptor", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 554 { "VK_EXT_conditional_rendering", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 555 { "VK_KHR_shader_float16_int8", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 556 { "VK_KHR_16bit_storage", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_storage_buffer_storage_class", } } } } }, 557 { "VK_KHR_incremental_present", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", } } } } }, 558 { "VK_EXT_direct_mode_display", { { "VK_VERSION_1_0", { { "VK_KHR_display", } } } } }, 559 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 560 { "VK_EXT_acquire_xlib_display", { { "VK_VERSION_1_0", { { "VK_EXT_direct_mode_display", } } } } }, 561 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 562 { "VK_EXT_display_surface_counter", { { "VK_VERSION_1_0", { { "VK_KHR_display", } } } } }, 563 { "VK_EXT_display_control", { { "VK_VERSION_1_0", { { "VK_EXT_display_surface_counter", "VK_KHR_swapchain", } } } } }, 564 { "VK_GOOGLE_display_timing", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", } } } } }, 565 { "VK_NVX_multiview_per_view_attributes", { { "VK_VERSION_1_0", { { "VK_KHR_multiview", } } } } }, 566 { "VK_EXT_discard_rectangles", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 567 { "VK_EXT_conservative_rasterization", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 568 { "VK_EXT_depth_clip_enable", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 569 { "VK_EXT_swapchain_colorspace", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 570 { "VK_EXT_hdr_metadata", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", } } } } }, 571 { "VK_KHR_imageless_framebuffer", { { "VK_VERSION_1_0", { { "VK_KHR_maintenance2", "VK_KHR_image_format_list", "VK_KHR_get_physical_device_properties2", } } } } }, 572 { "VK_KHR_create_renderpass2", { { "VK_VERSION_1_0", { { "VK_KHR_multiview", "VK_KHR_maintenance2", } } } } }, 573 { "VK_KHR_shared_presentable_image", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_get_surface_capabilities2", "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { "VK_KHR_swapchain", "VK_KHR_get_surface_capabilities2", } } } } }, 574 { "VK_KHR_external_fence_capabilities", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 575 { "VK_KHR_external_fence", { { "VK_VERSION_1_0", { { "VK_KHR_external_fence_capabilities", } } } } }, 576 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 577 { "VK_KHR_external_fence_win32", { { "VK_VERSION_1_0", { { "VK_KHR_external_fence", } } } } }, 578 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 579 { "VK_KHR_external_fence_fd", { { "VK_VERSION_1_0", { { "VK_KHR_external_fence", } } }, { "VK_VERSION_1_1", { { } } } } }, 580 { "VK_KHR_performance_query", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 581 { "VK_KHR_get_surface_capabilities2", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 582 { "VK_KHR_variable_pointers", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_storage_buffer_storage_class", } } } } }, 583 { "VK_KHR_get_display_properties2", { { "VK_VERSION_1_0", { { "VK_KHR_display", } } } } }, 584 #if defined( VK_USE_PLATFORM_IOS_MVK ) 585 { "VK_MVK_ios_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 586 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 587 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 588 { "VK_MVK_macos_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 589 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 590 { "VK_EXT_external_memory_dma_buf", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory_fd", } } } } }, 591 { "VK_EXT_queue_family_foreign", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory", } } }, { "VK_VERSION_1_1", { { } } } } }, 592 { "VK_KHR_dedicated_allocation", { { "VK_VERSION_1_0", { { "VK_KHR_get_memory_requirements2", } } } } }, 593 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 594 { "VK_ANDROID_external_memory_android_hardware_buffer", { { "VK_VERSION_1_0", { { "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_external_memory", "VK_EXT_queue_family_foreign", "VK_KHR_dedicated_allocation", } } } } }, 595 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 596 { "VK_EXT_sampler_filter_minmax", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 597 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 598 { "VK_AMDX_shader_enqueue", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_synchronization2", "VK_KHR_pipeline_library", "VK_KHR_spirv_1_4", } } } } }, 599 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 600 { "VK_EXT_inline_uniform_block", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_maintenance1", } } } } }, 601 { "VK_EXT_sample_locations", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 602 { "VK_EXT_blend_operation_advanced", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 603 { "VK_KHR_acceleration_structure", { { "VK_VERSION_1_1", { { "VK_EXT_descriptor_indexing", "VK_KHR_buffer_device_address", "VK_KHR_deferred_host_operations", } } } } }, 604 { "VK_KHR_ray_tracing_pipeline", { { "VK_VERSION_1_0", { { "VK_KHR_spirv_1_4", "VK_KHR_acceleration_structure", } } } } }, 605 { "VK_KHR_ray_query", { { "VK_VERSION_1_0", { { "VK_KHR_spirv_1_4", "VK_KHR_acceleration_structure", } } } } }, 606 { "VK_NV_shader_sm_builtins", { { "VK_VERSION_1_1", { { } } } } }, 607 { "VK_KHR_sampler_ycbcr_conversion", { { "VK_VERSION_1_0", { { "VK_KHR_maintenance1", "VK_KHR_bind_memory2", "VK_KHR_get_memory_requirements2", "VK_KHR_get_physical_device_properties2", } } } } }, 608 { "VK_EXT_image_drm_format_modifier", { { "VK_VERSION_1_0", { { "VK_KHR_bind_memory2", "VK_KHR_get_physical_device_properties2", "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_image_format_list", } } }, { "VK_VERSION_1_1", { { "VK_KHR_image_format_list", } } }, { "VK_VERSION_1_2", { { } } } } }, 609 { "VK_EXT_descriptor_indexing", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_maintenance3", } } } } }, 610 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 611 { "VK_KHR_portability_subset", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 612 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 613 { "VK_NV_shading_rate_image", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 614 { "VK_NV_ray_tracing", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_get_memory_requirements2", } } } } }, 615 { "VK_NV_representative_fragment_test", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 616 { "VK_KHR_maintenance3", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 617 { "VK_KHR_shader_subgroup_extended_types", { { "VK_VERSION_1_1", { { } } } } }, 618 { "VK_KHR_8bit_storage", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_storage_buffer_storage_class", } } } } }, 619 { "VK_EXT_external_memory_host", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory", } } }, { "VK_VERSION_1_1", { { } } } } }, 620 { "VK_KHR_shader_atomic_int64", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 621 { "VK_KHR_shader_clock", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 622 { "VK_EXT_calibrated_timestamps", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 623 { "VK_AMD_shader_core_properties", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 624 { "VK_KHR_video_decode_h265", { { "VK_VERSION_1_0", { { "VK_KHR_video_decode_queue", } } } } }, 625 { "VK_KHR_global_priority", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 626 { "VK_EXT_vertex_attribute_divisor", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 627 #if defined( VK_USE_PLATFORM_GGP ) 628 { "VK_GGP_frame_token", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_GGP_stream_descriptor_surface", } } } } }, 629 #endif /*VK_USE_PLATFORM_GGP*/ 630 { "VK_KHR_driver_properties", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 631 { "VK_KHR_shader_float_controls", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 632 { "VK_NV_shader_subgroup_partitioned", { { "VK_VERSION_1_1", { { } } } } }, 633 { "VK_KHR_depth_stencil_resolve", { { "VK_VERSION_1_0", { { "VK_KHR_create_renderpass2", } } } } }, 634 { "VK_KHR_swapchain_mutable_format", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_maintenance2", "VK_KHR_image_format_list", } } }, { "VK_VERSION_1_1", { { "VK_KHR_swapchain", "VK_KHR_image_format_list", } } }, { "VK_VERSION_1_2", { { "VK_KHR_swapchain", } } } } }, 635 { "VK_NV_compute_shader_derivatives", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 636 { "VK_NV_mesh_shader", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 637 { "VK_NV_fragment_shader_barycentric", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 638 { "VK_NV_shader_image_footprint", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 639 { "VK_NV_scissor_exclusive", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 640 { "VK_NV_device_diagnostic_checkpoints", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 641 { "VK_KHR_timeline_semaphore", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 642 { "VK_INTEL_shader_integer_functions2", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 643 { "VK_KHR_vulkan_memory_model", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 644 { "VK_EXT_pci_bus_info", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 645 { "VK_AMD_display_native_hdr", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_get_surface_capabilities2", "VK_KHR_swapchain", } } } } }, 646 #if defined( VK_USE_PLATFORM_FUCHSIA ) 647 { "VK_FUCHSIA_imagepipe_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 648 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 649 { "VK_KHR_shader_terminate_invocation", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 650 #if defined( VK_USE_PLATFORM_METAL_EXT ) 651 { "VK_EXT_metal_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 652 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 653 { "VK_EXT_fragment_density_map", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 654 { "VK_EXT_scalar_block_layout", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 655 { "VK_EXT_subgroup_size_control", { { "VK_VERSION_1_1", { { } } } } }, 656 { "VK_KHR_fragment_shading_rate", { { "VK_VERSION_1_0", { { "VK_KHR_create_renderpass2", "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { "VK_KHR_create_renderpass2", } } }, { "VK_VERSION_1_2", { { } } } } }, 657 { "VK_AMD_shader_core_properties2", { { "VK_VERSION_1_0", { { "VK_AMD_shader_core_properties", } } } } }, 658 { "VK_AMD_device_coherent_memory", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 659 { "VK_EXT_shader_image_atomic_int64", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 660 { "VK_KHR_spirv_1_4", { { "VK_VERSION_1_1", { { "VK_KHR_shader_float_controls", } } } } }, 661 { "VK_EXT_memory_budget", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 662 { "VK_EXT_memory_priority", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 663 { "VK_KHR_surface_protected_capabilities", { { "VK_VERSION_1_1", { { "VK_KHR_get_surface_capabilities2", } } } } }, 664 { "VK_NV_dedicated_allocation_image_aliasing", { { "VK_VERSION_1_0", { { "VK_KHR_dedicated_allocation", "VK_KHR_get_physical_device_properties2", } } } } }, 665 { "VK_KHR_separate_depth_stencil_layouts", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_create_renderpass2", } } } } }, 666 { "VK_EXT_buffer_device_address", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 667 { "VK_KHR_present_wait", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_present_id", } } } } }, 668 { "VK_NV_cooperative_matrix", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 669 { "VK_NV_coverage_reduction_mode", { { "VK_VERSION_1_0", { { "VK_NV_framebuffer_mixed_samples", "VK_KHR_get_physical_device_properties2", } } } } }, 670 { "VK_EXT_fragment_shader_interlock", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 671 { "VK_EXT_ycbcr_image_arrays", { { "VK_VERSION_1_0", { { "VK_KHR_sampler_ycbcr_conversion", } } }, { "VK_VERSION_1_1", { { } } } } }, 672 { "VK_KHR_uniform_buffer_standard_layout", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 673 { "VK_EXT_provoking_vertex", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 674 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 675 { "VK_EXT_full_screen_exclusive", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_surface", "VK_KHR_get_surface_capabilities2", "VK_KHR_swapchain", } } } } }, 676 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 677 { "VK_EXT_headless_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 678 { "VK_KHR_buffer_device_address", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_device_group", } } }, { "VK_VERSION_1_1", { { } } } } }, 679 { "VK_EXT_line_rasterization", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 680 { "VK_EXT_shader_atomic_float", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 681 { "VK_EXT_host_query_reset", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 682 { "VK_EXT_index_type_uint8", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 683 { "VK_EXT_extended_dynamic_state", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 684 { "VK_KHR_pipeline_executable_properties", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 685 { "VK_EXT_host_image_copy", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_copy_commands2", "VK_KHR_format_feature_flags2", } } } } }, 686 { "VK_EXT_shader_atomic_float2", { { "VK_VERSION_1_0", { { "VK_EXT_shader_atomic_float", } } } } }, 687 { "VK_EXT_surface_maintenance1", { { "VK_VERSION_1_0", { { "VK_KHR_surface", "VK_KHR_get_surface_capabilities2", } } } } }, 688 { "VK_EXT_swapchain_maintenance1", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_EXT_surface_maintenance1", "VK_KHR_get_physical_device_properties2", } } } } }, 689 { "VK_EXT_shader_demote_to_helper_invocation", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 690 { "VK_NV_device_generated_commands", { { "VK_VERSION_1_1", { { "VK_KHR_buffer_device_address", } } } } }, 691 { "VK_NV_inherited_viewport_scissor", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 692 { "VK_KHR_shader_integer_dot_product", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 693 { "VK_EXT_texel_buffer_alignment", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 694 { "VK_QCOM_render_pass_transform", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_surface", } } } } }, 695 { "VK_EXT_depth_bias_control", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 696 { "VK_EXT_device_memory_report", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 697 { "VK_EXT_acquire_drm_display", { { "VK_VERSION_1_0", { { "VK_EXT_direct_mode_display", } } } } }, 698 { "VK_EXT_robustness2", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 699 { "VK_EXT_custom_border_color", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 700 { "VK_NV_present_barrier", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_surface", "VK_KHR_get_surface_capabilities2", "VK_KHR_swapchain", } } } } }, 701 { "VK_KHR_present_id", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_get_physical_device_properties2", } } } } }, 702 { "VK_EXT_private_data", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 703 { "VK_EXT_pipeline_creation_cache_control", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 704 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 705 { "VK_KHR_video_encode_queue", { { "VK_VERSION_1_0", { { "VK_KHR_video_queue", "VK_KHR_synchronization2", } } } } }, 706 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 707 { "VK_NV_device_diagnostics_config", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 708 { "VK_KHR_synchronization2", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 709 { "VK_EXT_descriptor_buffer", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_buffer_device_address", "VK_KHR_synchronization2", "VK_EXT_descriptor_indexing", } } } } }, 710 { "VK_EXT_graphics_pipeline_library", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_pipeline_library", } } } } }, 711 { "VK_AMD_shader_early_and_late_fragment_tests", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 712 { "VK_KHR_fragment_shader_barycentric", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 713 { "VK_KHR_shader_subgroup_uniform_control_flow", { { "VK_VERSION_1_1", { { } } } } }, 714 { "VK_KHR_zero_initialize_workgroup_memory", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 715 { "VK_NV_fragment_shading_rate_enums", { { "VK_VERSION_1_0", { { "VK_KHR_fragment_shading_rate", } } } } }, 716 { "VK_NV_ray_tracing_motion_blur", { { "VK_VERSION_1_0", { { "VK_KHR_ray_tracing_pipeline", } } } } }, 717 { "VK_EXT_mesh_shader", { { "VK_VERSION_1_0", { { "VK_KHR_spirv_1_4", } } } } }, 718 { "VK_EXT_ycbcr_2plane_444_formats", { { "VK_VERSION_1_0", { { "VK_KHR_sampler_ycbcr_conversion", } } }, { "VK_VERSION_1_1", { { } } } } }, 719 { "VK_EXT_fragment_density_map2", { { "VK_VERSION_1_0", { { "VK_EXT_fragment_density_map", } } } } }, 720 { "VK_QCOM_rotated_copy_commands", { { "VK_VERSION_1_0", { { "VK_KHR_swapchain", "VK_KHR_copy_commands2", } } } } }, 721 { "VK_EXT_image_robustness", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 722 { "VK_KHR_workgroup_memory_explicit_layout", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 723 { "VK_KHR_copy_commands2", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 724 { "VK_EXT_image_compression_control", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 725 { "VK_EXT_attachment_feedback_loop_layout", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 726 { "VK_EXT_4444_formats", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 727 { "VK_EXT_device_fault", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 728 { "VK_ARM_rasterization_order_attachment_access", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 729 { "VK_EXT_rgba10x6_formats", { { "VK_VERSION_1_0", { { "VK_KHR_sampler_ycbcr_conversion", } } } } }, 730 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 731 { "VK_NV_acquire_winrt_display", { { "VK_VERSION_1_0", { { "VK_EXT_direct_mode_display", } } } } }, 732 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 733 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 734 { "VK_EXT_directfb_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 735 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 736 { "VK_VALVE_mutable_descriptor_type", { { "VK_VERSION_1_0", { { "VK_KHR_maintenance3", } } } } }, 737 { "VK_EXT_vertex_input_dynamic_state", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 738 { "VK_EXT_physical_device_drm", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 739 { "VK_EXT_device_address_binding_report", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_EXT_debug_utils", } } } } }, 740 { "VK_EXT_depth_clip_control", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 741 { "VK_EXT_primitive_topology_list_restart", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 742 { "VK_KHR_format_feature_flags2", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 743 #if defined( VK_USE_PLATFORM_FUCHSIA ) 744 { "VK_FUCHSIA_external_memory", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory_capabilities", "VK_KHR_external_memory", } } } } }, 745 { "VK_FUCHSIA_external_semaphore", { { "VK_VERSION_1_0", { { "VK_KHR_external_semaphore_capabilities", "VK_KHR_external_semaphore", } } } } }, 746 { "VK_FUCHSIA_buffer_collection", { { "VK_VERSION_1_0", { { "VK_FUCHSIA_external_memory", "VK_KHR_sampler_ycbcr_conversion", } } } } }, 747 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 748 { "VK_HUAWEI_subpass_shading", { { "VK_VERSION_1_0", { { "VK_KHR_create_renderpass2", "VK_KHR_synchronization2", } } } } }, 749 { "VK_HUAWEI_invocation_mask", { { "VK_VERSION_1_0", { { "VK_KHR_ray_tracing_pipeline", "VK_KHR_synchronization2", } } } } }, 750 { "VK_NV_external_memory_rdma", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory", } } } } }, 751 { "VK_EXT_pipeline_properties", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 752 { "VK_EXT_multisampled_render_to_single_sampled", { { "VK_VERSION_1_0", { { "VK_KHR_create_renderpass2", "VK_KHR_depth_stencil_resolve", } } } } }, 753 { "VK_EXT_extended_dynamic_state2", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 754 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 755 { "VK_QNX_screen_surface", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 756 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 757 { "VK_EXT_color_write_enable", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } }, { "VK_VERSION_1_1", { { } } } } }, 758 { "VK_EXT_primitives_generated_query", { { "VK_VERSION_1_0", { { "VK_EXT_transform_feedback", } } } } }, 759 { "VK_KHR_ray_tracing_maintenance1", { { "VK_VERSION_1_0", { { "VK_KHR_acceleration_structure", } } } } }, 760 { "VK_EXT_global_priority_query", { { "VK_VERSION_1_0", { { "VK_EXT_global_priority", "VK_KHR_get_physical_device_properties2", } } } } }, 761 { "VK_EXT_image_view_min_lod", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 762 { "VK_EXT_multi_draw", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 763 { "VK_EXT_image_2d_view_of_3d", { { "VK_VERSION_1_0", { { "VK_KHR_maintenance1", "VK_KHR_get_physical_device_properties2", } } } } }, 764 { "VK_EXT_shader_tile_image", { { "VK_VERSION_1_3", { { } } } } }, 765 { "VK_EXT_opacity_micromap", { { "VK_VERSION_1_0", { { "VK_KHR_acceleration_structure", "VK_KHR_synchronization2", } } } } }, 766 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 767 { "VK_NV_displacement_micromap", { { "VK_VERSION_1_0", { { "VK_EXT_opacity_micromap", } } } } }, 768 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 769 { "VK_HUAWEI_cluster_culling_shader", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 770 { "VK_EXT_border_color_swizzle", { { "VK_VERSION_1_0", { { "VK_EXT_custom_border_color", } } } } }, 771 { "VK_EXT_pageable_device_local_memory", { { "VK_VERSION_1_0", { { "VK_EXT_memory_priority", } } } } }, 772 { "VK_KHR_maintenance4", { { "VK_VERSION_1_1", { { } } } } }, 773 { "VK_ARM_shader_core_properties", { { "VK_VERSION_1_1", { { } } } } }, 774 { "VK_EXT_image_sliced_view_of_3d", { { "VK_VERSION_1_0", { { "VK_KHR_maintenance1", "VK_KHR_get_physical_device_properties2", } } } } }, 775 { "VK_VALVE_descriptor_set_host_mapping", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 776 { "VK_EXT_depth_clamp_zero_one", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 777 { "VK_EXT_non_seamless_cube_map", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 778 { "VK_QCOM_fragment_density_map_offset", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_EXT_fragment_density_map", } } } } }, 779 { "VK_NV_copy_memory_indirect", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_buffer_device_address", } } } } }, 780 { "VK_NV_memory_decompression", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_buffer_device_address", } } } } }, 781 { "VK_NV_device_generated_commands_compute", { { "VK_VERSION_1_0", { { "VK_NV_device_generated_commands", } } } } }, 782 { "VK_NV_linear_color_attachment", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 783 { "VK_GOOGLE_surfaceless_query", { { "VK_VERSION_1_0", { { "VK_KHR_surface", } } } } }, 784 { "VK_EXT_image_compression_control_swapchain", { { "VK_VERSION_1_0", { { "VK_EXT_image_compression_control", } } } } }, 785 { "VK_QCOM_image_processing", { { "VK_VERSION_1_0", { { "VK_KHR_format_feature_flags2", } } } } }, 786 { "VK_EXT_external_memory_acquire_unmodified", { { "VK_VERSION_1_0", { { "VK_KHR_external_memory", } } } } }, 787 { "VK_EXT_extended_dynamic_state3", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 788 { "VK_EXT_subpass_merge_feedback", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 789 { "VK_EXT_shader_module_identifier", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_EXT_pipeline_creation_cache_control", } } } } }, 790 { "VK_EXT_rasterization_order_attachment_access", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 791 { "VK_NV_optical_flow", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_format_feature_flags2", "VK_KHR_synchronization2", } } } } }, 792 { "VK_EXT_legacy_dithering", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 793 { "VK_EXT_pipeline_protected_access", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 794 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 795 { "VK_ANDROID_external_format_resolve", { { "VK_VERSION_1_0", { { "VK_ANDROID_external_memory_android_hardware_buffer", } } } } }, 796 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 797 { "VK_KHR_maintenance5", { { "VK_VERSION_1_1", { { "VK_KHR_dynamic_rendering", } } } } }, 798 { "VK_KHR_ray_tracing_position_fetch", { { "VK_VERSION_1_0", { { "VK_KHR_acceleration_structure", } } } } }, 799 { "VK_EXT_shader_object", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_dynamic_rendering", } } }, { "VK_VERSION_1_1", { { "VK_KHR_dynamic_rendering", } } }, { "VK_VERSION_1_3", { { } } } } }, 800 { "VK_QCOM_tile_properties", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 801 { "VK_SEC_amigo_profiling", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 802 { "VK_QCOM_multiview_per_view_viewports", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 803 { "VK_NV_ray_tracing_invocation_reorder", { { "VK_VERSION_1_0", { { "VK_KHR_ray_tracing_pipeline", } } } } }, 804 { "VK_EXT_mutable_descriptor_type", { { "VK_VERSION_1_0", { { "VK_KHR_maintenance3", } } } } }, 805 { "VK_ARM_shader_core_builtins", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 806 { "VK_EXT_pipeline_library_group_handles", { { "VK_VERSION_1_0", { { "VK_KHR_ray_tracing_pipeline", "VK_KHR_pipeline_library", } } } } }, 807 { "VK_EXT_dynamic_rendering_unused_attachments", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_KHR_dynamic_rendering", } } }, { "VK_VERSION_1_1", { { "VK_KHR_dynamic_rendering", } } }, { "VK_VERSION_1_3", { { } } } } }, 808 { "VK_KHR_cooperative_matrix", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 809 { "VK_QCOM_image_processing2", { { "VK_VERSION_1_0", { { "VK_QCOM_image_processing", } } } } }, 810 { "VK_QCOM_filter_cubic_weights", { { "VK_VERSION_1_0", { { "VK_EXT_filter_cubic", } } } } }, 811 { "VK_QCOM_filter_cubic_clamp", { { "VK_VERSION_1_0", { { "VK_EXT_filter_cubic", "VK_EXT_sampler_filter_minmax", } } }, { "VK_VERSION_1_2", { { "VK_EXT_filter_cubic", } } } } }, 812 { "VK_EXT_attachment_feedback_loop_dynamic_state", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", "VK_EXT_attachment_feedback_loop_layout", } } } } }, 813 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 814 { "VK_QNX_external_memory_screen_buffer", { { "VK_VERSION_1_0", { { "VK_KHR_sampler_ycbcr_conversion", "VK_KHR_external_memory", "VK_KHR_dedicated_allocation", } } }, { "VK_VERSION_1_1", { { "VK_EXT_queue_family_foreign", } } } } }, 815 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 816 { "VK_MSFT_layered_driver", { { "VK_VERSION_1_0", { { "VK_KHR_get_physical_device_properties2", } } } } }, 817 { "VK_NV_descriptor_pool_overallocation", { { "VK_VERSION_1_1", { { } } } } } }; 818 auto depIt = dependencies.find( extension ); 819 return ( depIt != dependencies.end() ) ? depIt->second : noDependencies; 820 } 821 getExtensionDepends(std::string const & version,std::string const & extension)822 VULKAN_HPP_INLINE std::pair<bool, std::vector<std::vector<std::string>> const &> getExtensionDepends( std::string const & version, 823 std::string const & extension ) 824 { 825 #if !defined( NDEBUG ) 826 static std::set<std::string> versions = { "VK_VERSION_1_0", "VK_VERSION_1_1", "VK_VERSION_1_2", "VK_VERSION_1_3" }; 827 assert( versions.find( version ) != versions.end() ); 828 #endif 829 static std::vector<std::vector<std::string>> noDependencies; 830 831 std::map<std::string, std::vector<std::vector<std::string>>> const & dependencies = getExtensionDepends( extension ); 832 if ( dependencies.empty() ) 833 { 834 return { true, noDependencies }; 835 } 836 auto depIt = dependencies.lower_bound( version ); 837 if ( ( depIt == dependencies.end() ) || ( depIt->first != version ) ) 838 { 839 depIt = std::prev( depIt ); 840 } 841 if ( depIt == dependencies.end() ) 842 { 843 return { false, noDependencies }; 844 } 845 else 846 { 847 return { true, depIt->second }; 848 } 849 } 850 getObsoletedExtensions()851 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getObsoletedExtensions() 852 { 853 static std::map<std::string, std::string> obsoletedExtensions = { { "VK_AMD_negative_viewport_height", "VK_KHR_maintenance1" } }; 854 return obsoletedExtensions; 855 } 856 getPromotedExtensions()857 VULKAN_HPP_INLINE std::map<std::string, std::string> const & getPromotedExtensions() 858 { 859 static std::map<std::string, std::string> promotedExtensions = { 860 { "VK_KHR_sampler_mirror_clamp_to_edge", "VK_VERSION_1_2"}, 861 { "VK_EXT_debug_marker", "VK_EXT_debug_utils"}, 862 { "VK_AMD_draw_indirect_count", "VK_KHR_draw_indirect_count"}, 863 { "VK_KHR_dynamic_rendering", "VK_VERSION_1_3"}, 864 { "VK_KHR_multiview", "VK_VERSION_1_1"}, 865 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 866 { "VK_NV_win32_keyed_mutex", "VK_KHR_win32_keyed_mutex"}, 867 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 868 { "VK_KHR_get_physical_device_properties2", "VK_VERSION_1_1"}, 869 { "VK_KHR_device_group", "VK_VERSION_1_1"}, 870 { "VK_KHR_shader_draw_parameters", "VK_VERSION_1_1"}, 871 { "VK_EXT_texture_compression_astc_hdr", "VK_VERSION_1_3"}, 872 { "VK_KHR_maintenance1", "VK_VERSION_1_1"}, 873 { "VK_KHR_device_group_creation", "VK_VERSION_1_1"}, 874 { "VK_KHR_external_memory_capabilities", "VK_VERSION_1_1"}, 875 { "VK_KHR_external_memory", "VK_VERSION_1_1"}, 876 { "VK_KHR_external_semaphore_capabilities", "VK_VERSION_1_1"}, 877 { "VK_KHR_external_semaphore", "VK_VERSION_1_1"}, 878 { "VK_KHR_shader_float16_int8", "VK_VERSION_1_2"}, 879 { "VK_KHR_16bit_storage", "VK_VERSION_1_1"}, 880 { "VK_KHR_descriptor_update_template", "VK_VERSION_1_1"}, 881 { "VK_KHR_imageless_framebuffer", "VK_VERSION_1_2"}, 882 { "VK_KHR_create_renderpass2", "VK_VERSION_1_2"}, 883 { "VK_KHR_external_fence_capabilities", "VK_VERSION_1_1"}, 884 { "VK_KHR_external_fence", "VK_VERSION_1_1"}, 885 { "VK_KHR_maintenance2", "VK_VERSION_1_1"}, 886 { "VK_KHR_variable_pointers", "VK_VERSION_1_1"}, 887 { "VK_KHR_dedicated_allocation", "VK_VERSION_1_1"}, 888 { "VK_EXT_sampler_filter_minmax", "VK_VERSION_1_2"}, 889 { "VK_KHR_storage_buffer_storage_class", "VK_VERSION_1_1"}, 890 { "VK_EXT_inline_uniform_block", "VK_VERSION_1_3"}, 891 { "VK_KHR_relaxed_block_layout", "VK_VERSION_1_1"}, 892 { "VK_KHR_get_memory_requirements2", "VK_VERSION_1_1"}, 893 { "VK_KHR_image_format_list", "VK_VERSION_1_2"}, 894 { "VK_KHR_sampler_ycbcr_conversion", "VK_VERSION_1_1"}, 895 { "VK_KHR_bind_memory2", "VK_VERSION_1_1"}, 896 { "VK_EXT_descriptor_indexing", "VK_VERSION_1_2"}, 897 { "VK_EXT_shader_viewport_index_layer", "VK_VERSION_1_2"}, 898 { "VK_KHR_maintenance3", "VK_VERSION_1_1"}, 899 { "VK_KHR_draw_indirect_count", "VK_VERSION_1_2"}, 900 { "VK_EXT_global_priority", "VK_KHR_global_priority"}, 901 { "VK_KHR_shader_subgroup_extended_types", "VK_VERSION_1_2"}, 902 { "VK_KHR_8bit_storage", "VK_VERSION_1_2"}, 903 { "VK_KHR_shader_atomic_int64", "VK_VERSION_1_2"}, 904 { "VK_EXT_pipeline_creation_feedback", "VK_VERSION_1_3"}, 905 { "VK_KHR_driver_properties", "VK_VERSION_1_2"}, 906 { "VK_KHR_shader_float_controls", "VK_VERSION_1_2"}, 907 { "VK_KHR_depth_stencil_resolve", "VK_VERSION_1_2"}, 908 { "VK_NV_fragment_shader_barycentric", "VK_KHR_fragment_shader_barycentric"}, 909 { "VK_KHR_timeline_semaphore", "VK_VERSION_1_2"}, 910 { "VK_KHR_vulkan_memory_model", "VK_VERSION_1_2"}, 911 { "VK_KHR_shader_terminate_invocation", "VK_VERSION_1_3"}, 912 { "VK_EXT_scalar_block_layout", "VK_VERSION_1_2"}, 913 { "VK_EXT_subgroup_size_control", "VK_VERSION_1_3"}, 914 { "VK_KHR_spirv_1_4", "VK_VERSION_1_2"}, 915 { "VK_KHR_separate_depth_stencil_layouts", "VK_VERSION_1_2"}, 916 { "VK_EXT_tooling_info", "VK_VERSION_1_3"}, 917 { "VK_EXT_separate_stencil_usage", "VK_VERSION_1_2"}, 918 { "VK_KHR_uniform_buffer_standard_layout", "VK_VERSION_1_2"}, 919 { "VK_KHR_buffer_device_address", "VK_VERSION_1_2"}, 920 { "VK_EXT_host_query_reset", "VK_VERSION_1_2"}, 921 { "VK_EXT_extended_dynamic_state", "VK_VERSION_1_3"}, 922 { "VK_EXT_shader_demote_to_helper_invocation", "VK_VERSION_1_3"}, 923 { "VK_KHR_shader_integer_dot_product", "VK_VERSION_1_3"}, 924 { "VK_EXT_texel_buffer_alignment", "VK_VERSION_1_3"}, 925 { "VK_KHR_shader_non_semantic_info", "VK_VERSION_1_3"}, 926 { "VK_EXT_private_data", "VK_VERSION_1_3"}, 927 { "VK_EXT_pipeline_creation_cache_control", "VK_VERSION_1_3"}, 928 { "VK_KHR_synchronization2", "VK_VERSION_1_3"}, 929 { "VK_KHR_zero_initialize_workgroup_memory", "VK_VERSION_1_3"}, 930 { "VK_EXT_ycbcr_2plane_444_formats", "VK_VERSION_1_3"}, 931 { "VK_EXT_image_robustness", "VK_VERSION_1_3"}, 932 { "VK_KHR_copy_commands2", "VK_VERSION_1_3"}, 933 { "VK_EXT_4444_formats", "VK_VERSION_1_3"}, 934 { "VK_ARM_rasterization_order_attachment_access", "VK_EXT_rasterization_order_attachment_access"}, 935 { "VK_VALVE_mutable_descriptor_type", "VK_EXT_mutable_descriptor_type"}, 936 { "VK_KHR_format_feature_flags2", "VK_VERSION_1_3"}, 937 { "VK_EXT_extended_dynamic_state2", "VK_VERSION_1_3"}, 938 { "VK_EXT_global_priority_query", "VK_KHR_global_priority"}, 939 { "VK_KHR_maintenance4", "VK_VERSION_1_3"} }; 940 return promotedExtensions; 941 } 942 getExtensionDeprecatedBy(std::string const & extension)943 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionDeprecatedBy( std::string const & extension ) 944 { 945 if ( extension == "VK_EXT_debug_report" ) 946 { 947 return "VK_EXT_debug_utils"; 948 } 949 if ( extension == "VK_NV_glsl_shader" ) 950 { 951 return ""; 952 } 953 if ( extension == "VK_NV_dedicated_allocation" ) 954 { 955 return "VK_KHR_dedicated_allocation"; 956 } 957 if ( extension == "VK_AMD_gpu_shader_half_float" ) 958 { 959 return "VK_KHR_shader_float16_int8"; 960 } 961 if ( extension == "VK_IMG_format_pvrtc" ) 962 { 963 return ""; 964 } 965 if ( extension == "VK_NV_external_memory_capabilities" ) 966 { 967 return "VK_KHR_external_memory_capabilities"; 968 } 969 if ( extension == "VK_NV_external_memory" ) 970 { 971 return "VK_KHR_external_memory"; 972 } 973 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 974 if ( extension == "VK_NV_external_memory_win32" ) 975 { 976 return "VK_KHR_external_memory_win32"; 977 } 978 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 979 if ( extension == "VK_EXT_validation_flags" ) 980 { 981 return "VK_EXT_validation_features"; 982 } 983 if ( extension == "VK_EXT_shader_subgroup_ballot" ) 984 { 985 return "VK_VERSION_1_2"; 986 } 987 if ( extension == "VK_EXT_shader_subgroup_vote" ) 988 { 989 return "VK_VERSION_1_1"; 990 } 991 #if defined( VK_USE_PLATFORM_IOS_MVK ) 992 if ( extension == "VK_MVK_ios_surface" ) 993 { 994 return "VK_EXT_metal_surface"; 995 } 996 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 997 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 998 if ( extension == "VK_MVK_macos_surface" ) 999 { 1000 return "VK_EXT_metal_surface"; 1001 } 1002 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 1003 if ( extension == "VK_AMD_gpu_shader_int16" ) 1004 { 1005 return "VK_KHR_shader_float16_int8"; 1006 } 1007 if ( extension == "VK_EXT_buffer_device_address" ) 1008 { 1009 return "VK_KHR_buffer_device_address"; 1010 } 1011 return ""; 1012 } 1013 getExtensionObsoletedBy(std::string const & extension)1014 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionObsoletedBy( std::string const & extension ) 1015 { 1016 if ( extension == "VK_AMD_negative_viewport_height" ) 1017 { 1018 return "VK_KHR_maintenance1"; 1019 } 1020 return ""; 1021 } 1022 getExtensionPromotedTo(std::string const & extension)1023 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 std::string getExtensionPromotedTo( std::string const & extension ) 1024 { 1025 if ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) 1026 { 1027 return "VK_VERSION_1_2"; 1028 } 1029 if ( extension == "VK_EXT_debug_marker" ) 1030 { 1031 return "VK_EXT_debug_utils"; 1032 } 1033 if ( extension == "VK_AMD_draw_indirect_count" ) 1034 { 1035 return "VK_KHR_draw_indirect_count"; 1036 } 1037 if ( extension == "VK_KHR_dynamic_rendering" ) 1038 { 1039 return "VK_VERSION_1_3"; 1040 } 1041 if ( extension == "VK_KHR_multiview" ) 1042 { 1043 return "VK_VERSION_1_1"; 1044 } 1045 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1046 if ( extension == "VK_NV_win32_keyed_mutex" ) 1047 { 1048 return "VK_KHR_win32_keyed_mutex"; 1049 } 1050 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1051 if ( extension == "VK_KHR_get_physical_device_properties2" ) 1052 { 1053 return "VK_VERSION_1_1"; 1054 } 1055 if ( extension == "VK_KHR_device_group" ) 1056 { 1057 return "VK_VERSION_1_1"; 1058 } 1059 if ( extension == "VK_KHR_shader_draw_parameters" ) 1060 { 1061 return "VK_VERSION_1_1"; 1062 } 1063 if ( extension == "VK_EXT_texture_compression_astc_hdr" ) 1064 { 1065 return "VK_VERSION_1_3"; 1066 } 1067 if ( extension == "VK_KHR_maintenance1" ) 1068 { 1069 return "VK_VERSION_1_1"; 1070 } 1071 if ( extension == "VK_KHR_device_group_creation" ) 1072 { 1073 return "VK_VERSION_1_1"; 1074 } 1075 if ( extension == "VK_KHR_external_memory_capabilities" ) 1076 { 1077 return "VK_VERSION_1_1"; 1078 } 1079 if ( extension == "VK_KHR_external_memory" ) 1080 { 1081 return "VK_VERSION_1_1"; 1082 } 1083 if ( extension == "VK_KHR_external_semaphore_capabilities" ) 1084 { 1085 return "VK_VERSION_1_1"; 1086 } 1087 if ( extension == "VK_KHR_external_semaphore" ) 1088 { 1089 return "VK_VERSION_1_1"; 1090 } 1091 if ( extension == "VK_KHR_shader_float16_int8" ) 1092 { 1093 return "VK_VERSION_1_2"; 1094 } 1095 if ( extension == "VK_KHR_16bit_storage" ) 1096 { 1097 return "VK_VERSION_1_1"; 1098 } 1099 if ( extension == "VK_KHR_descriptor_update_template" ) 1100 { 1101 return "VK_VERSION_1_1"; 1102 } 1103 if ( extension == "VK_KHR_imageless_framebuffer" ) 1104 { 1105 return "VK_VERSION_1_2"; 1106 } 1107 if ( extension == "VK_KHR_create_renderpass2" ) 1108 { 1109 return "VK_VERSION_1_2"; 1110 } 1111 if ( extension == "VK_KHR_external_fence_capabilities" ) 1112 { 1113 return "VK_VERSION_1_1"; 1114 } 1115 if ( extension == "VK_KHR_external_fence" ) 1116 { 1117 return "VK_VERSION_1_1"; 1118 } 1119 if ( extension == "VK_KHR_maintenance2" ) 1120 { 1121 return "VK_VERSION_1_1"; 1122 } 1123 if ( extension == "VK_KHR_variable_pointers" ) 1124 { 1125 return "VK_VERSION_1_1"; 1126 } 1127 if ( extension == "VK_KHR_dedicated_allocation" ) 1128 { 1129 return "VK_VERSION_1_1"; 1130 } 1131 if ( extension == "VK_EXT_sampler_filter_minmax" ) 1132 { 1133 return "VK_VERSION_1_2"; 1134 } 1135 if ( extension == "VK_KHR_storage_buffer_storage_class" ) 1136 { 1137 return "VK_VERSION_1_1"; 1138 } 1139 if ( extension == "VK_EXT_inline_uniform_block" ) 1140 { 1141 return "VK_VERSION_1_3"; 1142 } 1143 if ( extension == "VK_KHR_relaxed_block_layout" ) 1144 { 1145 return "VK_VERSION_1_1"; 1146 } 1147 if ( extension == "VK_KHR_get_memory_requirements2" ) 1148 { 1149 return "VK_VERSION_1_1"; 1150 } 1151 if ( extension == "VK_KHR_image_format_list" ) 1152 { 1153 return "VK_VERSION_1_2"; 1154 } 1155 if ( extension == "VK_KHR_sampler_ycbcr_conversion" ) 1156 { 1157 return "VK_VERSION_1_1"; 1158 } 1159 if ( extension == "VK_KHR_bind_memory2" ) 1160 { 1161 return "VK_VERSION_1_1"; 1162 } 1163 if ( extension == "VK_EXT_descriptor_indexing" ) 1164 { 1165 return "VK_VERSION_1_2"; 1166 } 1167 if ( extension == "VK_EXT_shader_viewport_index_layer" ) 1168 { 1169 return "VK_VERSION_1_2"; 1170 } 1171 if ( extension == "VK_KHR_maintenance3" ) 1172 { 1173 return "VK_VERSION_1_1"; 1174 } 1175 if ( extension == "VK_KHR_draw_indirect_count" ) 1176 { 1177 return "VK_VERSION_1_2"; 1178 } 1179 if ( extension == "VK_EXT_global_priority" ) 1180 { 1181 return "VK_KHR_global_priority"; 1182 } 1183 if ( extension == "VK_KHR_shader_subgroup_extended_types" ) 1184 { 1185 return "VK_VERSION_1_2"; 1186 } 1187 if ( extension == "VK_KHR_8bit_storage" ) 1188 { 1189 return "VK_VERSION_1_2"; 1190 } 1191 if ( extension == "VK_KHR_shader_atomic_int64" ) 1192 { 1193 return "VK_VERSION_1_2"; 1194 } 1195 if ( extension == "VK_EXT_pipeline_creation_feedback" ) 1196 { 1197 return "VK_VERSION_1_3"; 1198 } 1199 if ( extension == "VK_KHR_driver_properties" ) 1200 { 1201 return "VK_VERSION_1_2"; 1202 } 1203 if ( extension == "VK_KHR_shader_float_controls" ) 1204 { 1205 return "VK_VERSION_1_2"; 1206 } 1207 if ( extension == "VK_KHR_depth_stencil_resolve" ) 1208 { 1209 return "VK_VERSION_1_2"; 1210 } 1211 if ( extension == "VK_NV_fragment_shader_barycentric" ) 1212 { 1213 return "VK_KHR_fragment_shader_barycentric"; 1214 } 1215 if ( extension == "VK_KHR_timeline_semaphore" ) 1216 { 1217 return "VK_VERSION_1_2"; 1218 } 1219 if ( extension == "VK_KHR_vulkan_memory_model" ) 1220 { 1221 return "VK_VERSION_1_2"; 1222 } 1223 if ( extension == "VK_KHR_shader_terminate_invocation" ) 1224 { 1225 return "VK_VERSION_1_3"; 1226 } 1227 if ( extension == "VK_EXT_scalar_block_layout" ) 1228 { 1229 return "VK_VERSION_1_2"; 1230 } 1231 if ( extension == "VK_EXT_subgroup_size_control" ) 1232 { 1233 return "VK_VERSION_1_3"; 1234 } 1235 if ( extension == "VK_KHR_spirv_1_4" ) 1236 { 1237 return "VK_VERSION_1_2"; 1238 } 1239 if ( extension == "VK_KHR_separate_depth_stencil_layouts" ) 1240 { 1241 return "VK_VERSION_1_2"; 1242 } 1243 if ( extension == "VK_EXT_tooling_info" ) 1244 { 1245 return "VK_VERSION_1_3"; 1246 } 1247 if ( extension == "VK_EXT_separate_stencil_usage" ) 1248 { 1249 return "VK_VERSION_1_2"; 1250 } 1251 if ( extension == "VK_KHR_uniform_buffer_standard_layout" ) 1252 { 1253 return "VK_VERSION_1_2"; 1254 } 1255 if ( extension == "VK_KHR_buffer_device_address" ) 1256 { 1257 return "VK_VERSION_1_2"; 1258 } 1259 if ( extension == "VK_EXT_host_query_reset" ) 1260 { 1261 return "VK_VERSION_1_2"; 1262 } 1263 if ( extension == "VK_EXT_extended_dynamic_state" ) 1264 { 1265 return "VK_VERSION_1_3"; 1266 } 1267 if ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) 1268 { 1269 return "VK_VERSION_1_3"; 1270 } 1271 if ( extension == "VK_KHR_shader_integer_dot_product" ) 1272 { 1273 return "VK_VERSION_1_3"; 1274 } 1275 if ( extension == "VK_EXT_texel_buffer_alignment" ) 1276 { 1277 return "VK_VERSION_1_3"; 1278 } 1279 if ( extension == "VK_KHR_shader_non_semantic_info" ) 1280 { 1281 return "VK_VERSION_1_3"; 1282 } 1283 if ( extension == "VK_EXT_private_data" ) 1284 { 1285 return "VK_VERSION_1_3"; 1286 } 1287 if ( extension == "VK_EXT_pipeline_creation_cache_control" ) 1288 { 1289 return "VK_VERSION_1_3"; 1290 } 1291 if ( extension == "VK_KHR_synchronization2" ) 1292 { 1293 return "VK_VERSION_1_3"; 1294 } 1295 if ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) 1296 { 1297 return "VK_VERSION_1_3"; 1298 } 1299 if ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) 1300 { 1301 return "VK_VERSION_1_3"; 1302 } 1303 if ( extension == "VK_EXT_image_robustness" ) 1304 { 1305 return "VK_VERSION_1_3"; 1306 } 1307 if ( extension == "VK_KHR_copy_commands2" ) 1308 { 1309 return "VK_VERSION_1_3"; 1310 } 1311 if ( extension == "VK_EXT_4444_formats" ) 1312 { 1313 return "VK_VERSION_1_3"; 1314 } 1315 if ( extension == "VK_ARM_rasterization_order_attachment_access" ) 1316 { 1317 return "VK_EXT_rasterization_order_attachment_access"; 1318 } 1319 if ( extension == "VK_VALVE_mutable_descriptor_type" ) 1320 { 1321 return "VK_EXT_mutable_descriptor_type"; 1322 } 1323 if ( extension == "VK_KHR_format_feature_flags2" ) 1324 { 1325 return "VK_VERSION_1_3"; 1326 } 1327 if ( extension == "VK_EXT_extended_dynamic_state2" ) 1328 { 1329 return "VK_VERSION_1_3"; 1330 } 1331 if ( extension == "VK_EXT_global_priority_query" ) 1332 { 1333 return "VK_KHR_global_priority"; 1334 } 1335 if ( extension == "VK_KHR_maintenance4" ) 1336 { 1337 return "VK_VERSION_1_3"; 1338 } 1339 return ""; 1340 } 1341 isDeprecatedExtension(std::string const & extension)1342 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeprecatedExtension( std::string const & extension ) 1343 { 1344 return ( extension == "VK_EXT_debug_report" ) || ( extension == "VK_NV_glsl_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) || 1345 ( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_IMG_format_pvrtc" ) || ( extension == "VK_NV_external_memory_capabilities" ) || 1346 ( extension == "VK_NV_external_memory" ) || 1347 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1348 ( extension == "VK_NV_external_memory_win32" ) || 1349 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1350 ( extension == "VK_EXT_validation_flags" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || ( extension == "VK_EXT_shader_subgroup_vote" ) || 1351 #if defined( VK_USE_PLATFORM_IOS_MVK ) 1352 ( extension == "VK_MVK_ios_surface" ) || 1353 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 1354 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 1355 ( extension == "VK_MVK_macos_surface" ) || 1356 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 1357 ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_EXT_buffer_device_address" ); 1358 } 1359 isDeviceExtension(std::string const & extension)1360 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension ) 1361 { 1362 return ( extension == "VK_KHR_swapchain" ) || ( extension == "VK_KHR_display_swapchain" ) || ( extension == "VK_NV_glsl_shader" ) || 1363 ( extension == "VK_EXT_depth_range_unrestricted" ) || ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) || 1364 ( extension == "VK_IMG_filter_cubic" ) || ( extension == "VK_AMD_rasterization_order" ) || ( extension == "VK_AMD_shader_trinary_minmax" ) || 1365 ( extension == "VK_AMD_shader_explicit_vertex_parameter" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_KHR_video_queue" ) || 1366 ( extension == "VK_KHR_video_decode_queue" ) || ( extension == "VK_AMD_gcn_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) || 1367 ( extension == "VK_EXT_transform_feedback" ) || ( extension == "VK_NVX_binary_import" ) || ( extension == "VK_NVX_image_view_handle" ) || 1368 ( extension == "VK_AMD_draw_indirect_count" ) || ( extension == "VK_AMD_negative_viewport_height" ) || 1369 ( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_AMD_shader_ballot" ) 1370 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1371 || ( extension == "VK_EXT_video_encode_h264" ) || ( extension == "VK_EXT_video_encode_h265" ) 1372 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1373 || ( extension == "VK_KHR_video_decode_h264" ) || ( extension == "VK_AMD_texture_gather_bias_lod" ) || ( extension == "VK_AMD_shader_info" ) || 1374 ( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_AMD_shader_image_load_store_lod" ) || 1375 ( extension == "VK_NV_corner_sampled_image" ) || ( extension == "VK_KHR_multiview" ) || ( extension == "VK_IMG_format_pvrtc" ) || 1376 ( extension == "VK_NV_external_memory" ) 1377 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1378 || ( extension == "VK_NV_external_memory_win32" ) || ( extension == "VK_NV_win32_keyed_mutex" ) 1379 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1380 || ( extension == "VK_KHR_device_group" ) || ( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || 1381 ( extension == "VK_EXT_shader_subgroup_vote" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) || 1382 ( extension == "VK_EXT_astc_decode_mode" ) || ( extension == "VK_EXT_pipeline_robustness" ) || ( extension == "VK_KHR_maintenance1" ) || 1383 ( extension == "VK_KHR_external_memory" ) 1384 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1385 || ( extension == "VK_KHR_external_memory_win32" ) 1386 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1387 || ( extension == "VK_KHR_external_memory_fd" ) 1388 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1389 || ( extension == "VK_KHR_win32_keyed_mutex" ) 1390 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1391 || ( extension == "VK_KHR_external_semaphore" ) 1392 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1393 || ( extension == "VK_KHR_external_semaphore_win32" ) 1394 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1395 || ( extension == "VK_KHR_external_semaphore_fd" ) || ( extension == "VK_KHR_push_descriptor" ) || ( extension == "VK_EXT_conditional_rendering" ) || 1396 ( extension == "VK_KHR_shader_float16_int8" ) || ( extension == "VK_KHR_16bit_storage" ) || ( extension == "VK_KHR_incremental_present" ) || 1397 ( extension == "VK_KHR_descriptor_update_template" ) || ( extension == "VK_NV_clip_space_w_scaling" ) || ( extension == "VK_EXT_display_control" ) || 1398 ( extension == "VK_GOOGLE_display_timing" ) || ( extension == "VK_NV_sample_mask_override_coverage" ) || 1399 ( extension == "VK_NV_geometry_shader_passthrough" ) || ( extension == "VK_NV_viewport_array2" ) || 1400 ( extension == "VK_NVX_multiview_per_view_attributes" ) || ( extension == "VK_NV_viewport_swizzle" ) || 1401 ( extension == "VK_EXT_discard_rectangles" ) || ( extension == "VK_EXT_conservative_rasterization" ) || 1402 ( extension == "VK_EXT_depth_clip_enable" ) || ( extension == "VK_EXT_hdr_metadata" ) || ( extension == "VK_KHR_imageless_framebuffer" ) || 1403 ( extension == "VK_KHR_create_renderpass2" ) || ( extension == "VK_KHR_shared_presentable_image" ) || ( extension == "VK_KHR_external_fence" ) 1404 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1405 || ( extension == "VK_KHR_external_fence_win32" ) 1406 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1407 || ( extension == "VK_KHR_external_fence_fd" ) || ( extension == "VK_KHR_performance_query" ) || ( extension == "VK_KHR_maintenance2" ) || 1408 ( extension == "VK_KHR_variable_pointers" ) || ( extension == "VK_EXT_external_memory_dma_buf" ) || ( extension == "VK_EXT_queue_family_foreign" ) || 1409 ( extension == "VK_KHR_dedicated_allocation" ) 1410 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 1411 || ( extension == "VK_ANDROID_external_memory_android_hardware_buffer" ) 1412 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 1413 || ( extension == "VK_EXT_sampler_filter_minmax" ) || ( extension == "VK_KHR_storage_buffer_storage_class" ) || 1414 ( extension == "VK_AMD_gpu_shader_int16" ) 1415 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1416 || ( extension == "VK_AMDX_shader_enqueue" ) 1417 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1418 || ( extension == "VK_AMD_mixed_attachment_samples" ) || ( extension == "VK_AMD_shader_fragment_mask" ) || 1419 ( extension == "VK_EXT_inline_uniform_block" ) || ( extension == "VK_EXT_shader_stencil_export" ) || ( extension == "VK_EXT_sample_locations" ) || 1420 ( extension == "VK_KHR_relaxed_block_layout" ) || ( extension == "VK_KHR_get_memory_requirements2" ) || 1421 ( extension == "VK_KHR_image_format_list" ) || ( extension == "VK_EXT_blend_operation_advanced" ) || 1422 ( extension == "VK_NV_fragment_coverage_to_color" ) || ( extension == "VK_KHR_acceleration_structure" ) || 1423 ( extension == "VK_KHR_ray_tracing_pipeline" ) || ( extension == "VK_KHR_ray_query" ) || ( extension == "VK_NV_framebuffer_mixed_samples" ) || 1424 ( extension == "VK_NV_fill_rectangle" ) || ( extension == "VK_NV_shader_sm_builtins" ) || ( extension == "VK_EXT_post_depth_coverage" ) || 1425 ( extension == "VK_KHR_sampler_ycbcr_conversion" ) || ( extension == "VK_KHR_bind_memory2" ) || 1426 ( extension == "VK_EXT_image_drm_format_modifier" ) || ( extension == "VK_EXT_validation_cache" ) || ( extension == "VK_EXT_descriptor_indexing" ) || 1427 ( extension == "VK_EXT_shader_viewport_index_layer" ) 1428 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1429 || ( extension == "VK_KHR_portability_subset" ) 1430 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1431 || ( extension == "VK_NV_shading_rate_image" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_NV_representative_fragment_test" ) || 1432 ( extension == "VK_KHR_maintenance3" ) || ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_filter_cubic" ) || 1433 ( extension == "VK_QCOM_render_pass_shader_resolve" ) || ( extension == "VK_EXT_global_priority" ) || 1434 ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) || 1435 ( extension == "VK_EXT_external_memory_host" ) || ( extension == "VK_AMD_buffer_marker" ) || ( extension == "VK_KHR_shader_atomic_int64" ) || 1436 ( extension == "VK_KHR_shader_clock" ) || ( extension == "VK_AMD_pipeline_compiler_control" ) || ( extension == "VK_EXT_calibrated_timestamps" ) || 1437 ( extension == "VK_AMD_shader_core_properties" ) || ( extension == "VK_KHR_video_decode_h265" ) || ( extension == "VK_KHR_global_priority" ) || 1438 ( extension == "VK_AMD_memory_overallocation_behavior" ) || ( extension == "VK_EXT_vertex_attribute_divisor" ) 1439 #if defined( VK_USE_PLATFORM_GGP ) 1440 || ( extension == "VK_GGP_frame_token" ) 1441 #endif /*VK_USE_PLATFORM_GGP*/ 1442 || ( extension == "VK_EXT_pipeline_creation_feedback" ) || ( extension == "VK_KHR_driver_properties" ) || 1443 ( extension == "VK_KHR_shader_float_controls" ) || ( extension == "VK_NV_shader_subgroup_partitioned" ) || 1444 ( extension == "VK_KHR_depth_stencil_resolve" ) || ( extension == "VK_KHR_swapchain_mutable_format" ) || 1445 ( extension == "VK_NV_compute_shader_derivatives" ) || ( extension == "VK_NV_mesh_shader" ) || 1446 ( extension == "VK_NV_fragment_shader_barycentric" ) || ( extension == "VK_NV_shader_image_footprint" ) || 1447 ( extension == "VK_NV_scissor_exclusive" ) || ( extension == "VK_NV_device_diagnostic_checkpoints" ) || 1448 ( extension == "VK_KHR_timeline_semaphore" ) || ( extension == "VK_INTEL_shader_integer_functions2" ) || 1449 ( extension == "VK_INTEL_performance_query" ) || ( extension == "VK_KHR_vulkan_memory_model" ) || ( extension == "VK_EXT_pci_bus_info" ) || 1450 ( extension == "VK_AMD_display_native_hdr" ) || ( extension == "VK_KHR_shader_terminate_invocation" ) || 1451 ( extension == "VK_EXT_fragment_density_map" ) || ( extension == "VK_EXT_scalar_block_layout" ) || 1452 ( extension == "VK_GOOGLE_hlsl_functionality1" ) || ( extension == "VK_GOOGLE_decorate_string" ) || 1453 ( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_fragment_shading_rate" ) || 1454 ( extension == "VK_AMD_shader_core_properties2" ) || ( extension == "VK_AMD_device_coherent_memory" ) || 1455 ( extension == "VK_EXT_shader_image_atomic_int64" ) || ( extension == "VK_KHR_spirv_1_4" ) || ( extension == "VK_EXT_memory_budget" ) || 1456 ( extension == "VK_EXT_memory_priority" ) || ( extension == "VK_NV_dedicated_allocation_image_aliasing" ) || 1457 ( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_buffer_device_address" ) || 1458 ( extension == "VK_EXT_tooling_info" ) || ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_present_wait" ) || 1459 ( extension == "VK_NV_cooperative_matrix" ) || ( extension == "VK_NV_coverage_reduction_mode" ) || 1460 ( extension == "VK_EXT_fragment_shader_interlock" ) || ( extension == "VK_EXT_ycbcr_image_arrays" ) || 1461 ( extension == "VK_KHR_uniform_buffer_standard_layout" ) || ( extension == "VK_EXT_provoking_vertex" ) 1462 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1463 || ( extension == "VK_EXT_full_screen_exclusive" ) 1464 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1465 || ( extension == "VK_KHR_buffer_device_address" ) || ( extension == "VK_EXT_line_rasterization" ) || 1466 ( extension == "VK_EXT_shader_atomic_float" ) || ( extension == "VK_EXT_host_query_reset" ) || ( extension == "VK_EXT_index_type_uint8" ) || 1467 ( extension == "VK_EXT_extended_dynamic_state" ) || ( extension == "VK_KHR_deferred_host_operations" ) || 1468 ( extension == "VK_KHR_pipeline_executable_properties" ) || ( extension == "VK_EXT_host_image_copy" ) || ( extension == "VK_KHR_map_memory2" ) || 1469 ( extension == "VK_EXT_shader_atomic_float2" ) || ( extension == "VK_EXT_swapchain_maintenance1" ) || 1470 ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) || ( extension == "VK_NV_device_generated_commands" ) || 1471 ( extension == "VK_NV_inherited_viewport_scissor" ) || ( extension == "VK_KHR_shader_integer_dot_product" ) || 1472 ( extension == "VK_EXT_texel_buffer_alignment" ) || ( extension == "VK_QCOM_render_pass_transform" ) || 1473 ( extension == "VK_EXT_depth_bias_control" ) || ( extension == "VK_EXT_device_memory_report" ) || ( extension == "VK_EXT_robustness2" ) || 1474 ( extension == "VK_EXT_custom_border_color" ) || ( extension == "VK_GOOGLE_user_type" ) || ( extension == "VK_KHR_pipeline_library" ) || 1475 ( extension == "VK_NV_present_barrier" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) || ( extension == "VK_KHR_present_id" ) || 1476 ( extension == "VK_EXT_private_data" ) || ( extension == "VK_EXT_pipeline_creation_cache_control" ) 1477 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1478 || ( extension == "VK_KHR_video_encode_queue" ) 1479 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1480 || ( extension == "VK_NV_device_diagnostics_config" ) || ( extension == "VK_QCOM_render_pass_store_ops" ) || ( extension == "VK_NV_low_latency" ) 1481 #if defined( VK_USE_PLATFORM_METAL_EXT ) 1482 || ( extension == "VK_EXT_metal_objects" ) 1483 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 1484 || ( extension == "VK_KHR_synchronization2" ) || ( extension == "VK_EXT_descriptor_buffer" ) || 1485 ( extension == "VK_EXT_graphics_pipeline_library" ) || ( extension == "VK_AMD_shader_early_and_late_fragment_tests" ) || 1486 ( extension == "VK_KHR_fragment_shader_barycentric" ) || ( extension == "VK_KHR_shader_subgroup_uniform_control_flow" ) || 1487 ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || ( extension == "VK_NV_fragment_shading_rate_enums" ) || 1488 ( extension == "VK_NV_ray_tracing_motion_blur" ) || ( extension == "VK_EXT_mesh_shader" ) || ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) || 1489 ( extension == "VK_EXT_fragment_density_map2" ) || ( extension == "VK_QCOM_rotated_copy_commands" ) || ( extension == "VK_EXT_image_robustness" ) || 1490 ( extension == "VK_KHR_workgroup_memory_explicit_layout" ) || ( extension == "VK_KHR_copy_commands2" ) || 1491 ( extension == "VK_EXT_image_compression_control" ) || ( extension == "VK_EXT_attachment_feedback_loop_layout" ) || 1492 ( extension == "VK_EXT_4444_formats" ) || ( extension == "VK_EXT_device_fault" ) || 1493 ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_EXT_rgba10x6_formats" ) 1494 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1495 || ( extension == "VK_NV_acquire_winrt_display" ) 1496 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1497 || ( extension == "VK_VALVE_mutable_descriptor_type" ) || ( extension == "VK_EXT_vertex_input_dynamic_state" ) || 1498 ( extension == "VK_EXT_physical_device_drm" ) || ( extension == "VK_EXT_device_address_binding_report" ) || 1499 ( extension == "VK_EXT_depth_clip_control" ) || ( extension == "VK_EXT_primitive_topology_list_restart" ) || 1500 ( extension == "VK_KHR_format_feature_flags2" ) 1501 #if defined( VK_USE_PLATFORM_FUCHSIA ) 1502 || ( extension == "VK_FUCHSIA_external_memory" ) || ( extension == "VK_FUCHSIA_external_semaphore" ) || 1503 ( extension == "VK_FUCHSIA_buffer_collection" ) 1504 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 1505 || ( extension == "VK_HUAWEI_subpass_shading" ) || ( extension == "VK_HUAWEI_invocation_mask" ) || ( extension == "VK_NV_external_memory_rdma" ) || 1506 ( extension == "VK_EXT_pipeline_properties" ) || ( extension == "VK_EXT_frame_boundary" ) || 1507 ( extension == "VK_EXT_multisampled_render_to_single_sampled" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) || 1508 ( extension == "VK_EXT_color_write_enable" ) || ( extension == "VK_EXT_primitives_generated_query" ) || 1509 ( extension == "VK_KHR_ray_tracing_maintenance1" ) || ( extension == "VK_EXT_global_priority_query" ) || 1510 ( extension == "VK_EXT_image_view_min_lod" ) || ( extension == "VK_EXT_multi_draw" ) || ( extension == "VK_EXT_image_2d_view_of_3d" ) || 1511 ( extension == "VK_EXT_shader_tile_image" ) || ( extension == "VK_EXT_opacity_micromap" ) 1512 #if defined( VK_ENABLE_BETA_EXTENSIONS ) 1513 || ( extension == "VK_NV_displacement_micromap" ) 1514 #endif /*VK_ENABLE_BETA_EXTENSIONS*/ 1515 || ( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_HUAWEI_cluster_culling_shader" ) || 1516 ( extension == "VK_EXT_border_color_swizzle" ) || ( extension == "VK_EXT_pageable_device_local_memory" ) || ( extension == "VK_KHR_maintenance4" ) || 1517 ( extension == "VK_ARM_shader_core_properties" ) || ( extension == "VK_EXT_image_sliced_view_of_3d" ) || 1518 ( extension == "VK_VALVE_descriptor_set_host_mapping" ) || ( extension == "VK_EXT_depth_clamp_zero_one" ) || 1519 ( extension == "VK_EXT_non_seamless_cube_map" ) || ( extension == "VK_QCOM_fragment_density_map_offset" ) || 1520 ( extension == "VK_NV_copy_memory_indirect" ) || ( extension == "VK_NV_memory_decompression" ) || 1521 ( extension == "VK_NV_device_generated_commands_compute" ) || ( extension == "VK_NV_linear_color_attachment" ) || 1522 ( extension == "VK_EXT_image_compression_control_swapchain" ) || ( extension == "VK_QCOM_image_processing" ) || 1523 ( extension == "VK_EXT_external_memory_acquire_unmodified" ) || ( extension == "VK_EXT_extended_dynamic_state3" ) || 1524 ( extension == "VK_EXT_subpass_merge_feedback" ) || ( extension == "VK_EXT_shader_module_identifier" ) || 1525 ( extension == "VK_EXT_rasterization_order_attachment_access" ) || ( extension == "VK_NV_optical_flow" ) || 1526 ( extension == "VK_EXT_legacy_dithering" ) || ( extension == "VK_EXT_pipeline_protected_access" ) 1527 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 1528 || ( extension == "VK_ANDROID_external_format_resolve" ) 1529 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 1530 || ( extension == "VK_KHR_maintenance5" ) || ( extension == "VK_KHR_ray_tracing_position_fetch" ) || ( extension == "VK_EXT_shader_object" ) || 1531 ( extension == "VK_QCOM_tile_properties" ) || ( extension == "VK_SEC_amigo_profiling" ) || ( extension == "VK_QCOM_multiview_per_view_viewports" ) || 1532 ( extension == "VK_NV_ray_tracing_invocation_reorder" ) || ( extension == "VK_EXT_mutable_descriptor_type" ) || 1533 ( extension == "VK_ARM_shader_core_builtins" ) || ( extension == "VK_EXT_pipeline_library_group_handles" ) || 1534 ( extension == "VK_EXT_dynamic_rendering_unused_attachments" ) || ( extension == "VK_NV_low_latency2" ) || 1535 ( extension == "VK_KHR_cooperative_matrix" ) || ( extension == "VK_QCOM_multiview_per_view_render_areas" ) || 1536 ( extension == "VK_QCOM_image_processing2" ) || ( extension == "VK_QCOM_filter_cubic_weights" ) || ( extension == "VK_QCOM_ycbcr_degamma" ) || 1537 ( extension == "VK_QCOM_filter_cubic_clamp" ) || ( extension == "VK_EXT_attachment_feedback_loop_dynamic_state" ) 1538 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 1539 || ( extension == "VK_QNX_external_memory_screen_buffer" ) 1540 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 1541 || ( extension == "VK_MSFT_layered_driver" ) || ( extension == "VK_NV_descriptor_pool_overallocation" ); 1542 } 1543 isInstanceExtension(std::string const & extension)1544 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension ) 1545 { 1546 return ( extension == "VK_KHR_surface" ) || ( extension == "VK_KHR_display" ) 1547 #if defined( VK_USE_PLATFORM_XLIB_KHR ) 1548 || ( extension == "VK_KHR_xlib_surface" ) 1549 #endif /*VK_USE_PLATFORM_XLIB_KHR*/ 1550 #if defined( VK_USE_PLATFORM_XCB_KHR ) 1551 || ( extension == "VK_KHR_xcb_surface" ) 1552 #endif /*VK_USE_PLATFORM_XCB_KHR*/ 1553 #if defined( VK_USE_PLATFORM_WAYLAND_KHR ) 1554 || ( extension == "VK_KHR_wayland_surface" ) 1555 #endif /*VK_USE_PLATFORM_WAYLAND_KHR*/ 1556 #if defined( VK_USE_PLATFORM_ANDROID_KHR ) 1557 || ( extension == "VK_KHR_android_surface" ) 1558 #endif /*VK_USE_PLATFORM_ANDROID_KHR*/ 1559 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1560 || ( extension == "VK_KHR_win32_surface" ) 1561 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1562 || ( extension == "VK_EXT_debug_report" ) 1563 #if defined( VK_USE_PLATFORM_GGP ) 1564 || ( extension == "VK_GGP_stream_descriptor_surface" ) 1565 #endif /*VK_USE_PLATFORM_GGP*/ 1566 || ( extension == "VK_NV_external_memory_capabilities" ) || ( extension == "VK_KHR_get_physical_device_properties2" ) || 1567 ( extension == "VK_EXT_validation_flags" ) 1568 #if defined( VK_USE_PLATFORM_VI_NN ) 1569 || ( extension == "VK_NN_vi_surface" ) 1570 #endif /*VK_USE_PLATFORM_VI_NN*/ 1571 || ( extension == "VK_KHR_device_group_creation" ) || ( extension == "VK_KHR_external_memory_capabilities" ) || 1572 ( extension == "VK_KHR_external_semaphore_capabilities" ) || ( extension == "VK_EXT_direct_mode_display" ) 1573 #if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT ) 1574 || ( extension == "VK_EXT_acquire_xlib_display" ) 1575 #endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/ 1576 || ( extension == "VK_EXT_display_surface_counter" ) || ( extension == "VK_EXT_swapchain_colorspace" ) || 1577 ( extension == "VK_KHR_external_fence_capabilities" ) || ( extension == "VK_KHR_get_surface_capabilities2" ) || 1578 ( extension == "VK_KHR_get_display_properties2" ) 1579 #if defined( VK_USE_PLATFORM_IOS_MVK ) 1580 || ( extension == "VK_MVK_ios_surface" ) 1581 #endif /*VK_USE_PLATFORM_IOS_MVK*/ 1582 #if defined( VK_USE_PLATFORM_MACOS_MVK ) 1583 || ( extension == "VK_MVK_macos_surface" ) 1584 #endif /*VK_USE_PLATFORM_MACOS_MVK*/ 1585 || ( extension == "VK_EXT_debug_utils" ) 1586 #if defined( VK_USE_PLATFORM_FUCHSIA ) 1587 || ( extension == "VK_FUCHSIA_imagepipe_surface" ) 1588 #endif /*VK_USE_PLATFORM_FUCHSIA*/ 1589 #if defined( VK_USE_PLATFORM_METAL_EXT ) 1590 || ( extension == "VK_EXT_metal_surface" ) 1591 #endif /*VK_USE_PLATFORM_METAL_EXT*/ 1592 || ( extension == "VK_KHR_surface_protected_capabilities" ) || ( extension == "VK_EXT_validation_features" ) || 1593 ( extension == "VK_EXT_headless_surface" ) || ( extension == "VK_EXT_surface_maintenance1" ) || ( extension == "VK_EXT_acquire_drm_display" ) 1594 #if defined( VK_USE_PLATFORM_DIRECTFB_EXT ) 1595 || ( extension == "VK_EXT_directfb_surface" ) 1596 #endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/ 1597 #if defined( VK_USE_PLATFORM_SCREEN_QNX ) 1598 || ( extension == "VK_QNX_screen_surface" ) 1599 #endif /*VK_USE_PLATFORM_SCREEN_QNX*/ 1600 || ( extension == "VK_KHR_portability_enumeration" ) || ( extension == "VK_GOOGLE_surfaceless_query" ) || 1601 ( extension == "VK_LUNARG_direct_driver_loading" ); 1602 } 1603 isObsoletedExtension(std::string const & extension)1604 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isObsoletedExtension( std::string const & extension ) 1605 { 1606 return ( extension == "VK_AMD_negative_viewport_height" ); 1607 } 1608 isPromotedExtension(std::string const & extension)1609 VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension ) 1610 { 1611 return ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_AMD_draw_indirect_count" ) || 1612 ( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_KHR_multiview" ) || 1613 #if defined( VK_USE_PLATFORM_WIN32_KHR ) 1614 ( extension == "VK_NV_win32_keyed_mutex" ) || 1615 #endif /*VK_USE_PLATFORM_WIN32_KHR*/ 1616 ( extension == "VK_KHR_get_physical_device_properties2" ) || ( extension == "VK_KHR_device_group" ) || 1617 ( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) || 1618 ( extension == "VK_KHR_maintenance1" ) || ( extension == "VK_KHR_device_group_creation" ) || 1619 ( extension == "VK_KHR_external_memory_capabilities" ) || ( extension == "VK_KHR_external_memory" ) || 1620 ( extension == "VK_KHR_external_semaphore_capabilities" ) || ( extension == "VK_KHR_external_semaphore" ) || 1621 ( extension == "VK_KHR_shader_float16_int8" ) || ( extension == "VK_KHR_16bit_storage" ) || ( extension == "VK_KHR_descriptor_update_template" ) || 1622 ( extension == "VK_KHR_imageless_framebuffer" ) || ( extension == "VK_KHR_create_renderpass2" ) || 1623 ( extension == "VK_KHR_external_fence_capabilities" ) || ( extension == "VK_KHR_external_fence" ) || ( extension == "VK_KHR_maintenance2" ) || 1624 ( extension == "VK_KHR_variable_pointers" ) || ( extension == "VK_KHR_dedicated_allocation" ) || ( extension == "VK_EXT_sampler_filter_minmax" ) || 1625 ( extension == "VK_KHR_storage_buffer_storage_class" ) || ( extension == "VK_EXT_inline_uniform_block" ) || 1626 ( extension == "VK_KHR_relaxed_block_layout" ) || ( extension == "VK_KHR_get_memory_requirements2" ) || 1627 ( extension == "VK_KHR_image_format_list" ) || ( extension == "VK_KHR_sampler_ycbcr_conversion" ) || ( extension == "VK_KHR_bind_memory2" ) || 1628 ( extension == "VK_EXT_descriptor_indexing" ) || ( extension == "VK_EXT_shader_viewport_index_layer" ) || ( extension == "VK_KHR_maintenance3" ) || 1629 ( extension == "VK_KHR_draw_indirect_count" ) || ( extension == "VK_EXT_global_priority" ) || 1630 ( extension == "VK_KHR_shader_subgroup_extended_types" ) || ( extension == "VK_KHR_8bit_storage" ) || 1631 ( extension == "VK_KHR_shader_atomic_int64" ) || ( extension == "VK_EXT_pipeline_creation_feedback" ) || 1632 ( extension == "VK_KHR_driver_properties" ) || ( extension == "VK_KHR_shader_float_controls" ) || ( extension == "VK_KHR_depth_stencil_resolve" ) || 1633 ( extension == "VK_NV_fragment_shader_barycentric" ) || ( extension == "VK_KHR_timeline_semaphore" ) || 1634 ( extension == "VK_KHR_vulkan_memory_model" ) || ( extension == "VK_KHR_shader_terminate_invocation" ) || 1635 ( extension == "VK_EXT_scalar_block_layout" ) || ( extension == "VK_EXT_subgroup_size_control" ) || ( extension == "VK_KHR_spirv_1_4" ) || 1636 ( extension == "VK_KHR_separate_depth_stencil_layouts" ) || ( extension == "VK_EXT_tooling_info" ) || 1637 ( extension == "VK_EXT_separate_stencil_usage" ) || ( extension == "VK_KHR_uniform_buffer_standard_layout" ) || 1638 ( extension == "VK_KHR_buffer_device_address" ) || ( extension == "VK_EXT_host_query_reset" ) || ( extension == "VK_EXT_extended_dynamic_state" ) || 1639 ( extension == "VK_EXT_shader_demote_to_helper_invocation" ) || ( extension == "VK_KHR_shader_integer_dot_product" ) || 1640 ( extension == "VK_EXT_texel_buffer_alignment" ) || ( extension == "VK_KHR_shader_non_semantic_info" ) || ( extension == "VK_EXT_private_data" ) || 1641 ( extension == "VK_EXT_pipeline_creation_cache_control" ) || ( extension == "VK_KHR_synchronization2" ) || 1642 ( extension == "VK_KHR_zero_initialize_workgroup_memory" ) || ( extension == "VK_EXT_ycbcr_2plane_444_formats" ) || 1643 ( extension == "VK_EXT_image_robustness" ) || ( extension == "VK_KHR_copy_commands2" ) || ( extension == "VK_EXT_4444_formats" ) || 1644 ( extension == "VK_ARM_rasterization_order_attachment_access" ) || ( extension == "VK_VALVE_mutable_descriptor_type" ) || 1645 ( extension == "VK_KHR_format_feature_flags2" ) || ( extension == "VK_EXT_extended_dynamic_state2" ) || 1646 ( extension == "VK_EXT_global_priority_query" ) || ( extension == "VK_KHR_maintenance4" ); 1647 } 1648 } // namespace VULKAN_HPP_NAMESPACE 1649 1650 #endif 1651