dEQP-VK.api.device_init.create_device_unsupported_features.fragment_density_map2_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.4444_formats_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.rgba10_x6_formats_features_ext
-dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_valve
dEQP-VK.api.device_init.create_device_unsupported_features.vertex_input_dynamic_state_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clip_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.primitive_topology_list_restart_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.fragment_shading_rate_features_khr
dEQP-VK.api.device_init.create_device_unsupported_features.shader_terminate_invocation_features
dEQP-VK.api.device_init.create_device_unsupported_features.fragment_shading_rate_enums_features_nv
-dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_valve
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clip_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.vertex_input_dynamic_state_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.external_memory_rdma_features_nv
dEQP-VK.api.info.get_physical_device_properties2.features.vulkan12_features
dEQP-VK.api.info.get_physical_device_properties2.features.vulkan13_features
dEQP-VK.api.info.get_physical_device_properties2.features.border_color_swizzle_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state3_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.shader_subgroup_uniform_control_flow_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.portability_subset_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.shader_image_atomic_int64_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.image2_d_view_of3_d_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.mutable_descriptor_type_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.depth_clip_control_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.primitives_generated_query_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.legacy_dithering_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.multisampled_render_to_single_sampled_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_protected_access_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.fragment_shader_barycentric_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.rgba10_x6_formats_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.image_view_min_lod_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.image_compression_control_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.image_compression_control_swapchain_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.subpass_merge_feedback_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.opacity_micromap_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_properties_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.non_seamless_cube_map_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_robustness_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.amigo_profiling_features_sec
dEQP-VK.api.info.get_physical_device_properties2.features.attachment_feedback_loop_layout_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.depth_clamp_zero_one_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.address_binding_report_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.fault_features_ext
dEQP-VK.api.info.vulkan1p3.features
dEQP-VK.api.info.vulkan1p3.properties
dEQP-VK.api.info.vulkan1p3.feature_extensions_consistency
dEQP-VK.api.device_init.create_device_global_priority_query_khr.basic
dEQP-VK.api.device_init.create_device_unsupported_features.mesh_shader_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.ray_tracing_maintenance1_features_khr
+dEQP-VK.api.device_init.create_device_unsupported_features.present_barrier_features_nv
+dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state3_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.image2_d_view_of3_d_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.primitives_generated_query_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.legacy_dithering_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.multisampled_render_to_single_sampled_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_protected_access_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.rasterization_order_attachment_access_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.graphics_pipeline_library_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.descriptor_set_host_mapping_features_valve
dEQP-VK.api.device_init.create_device_unsupported_features.image_compression_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.image_compression_control_swapchain_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.subpass_merge_feedback_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.opacity_micromap_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_properties_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.shader_early_and_late_fragment_tests_features_amd
dEQP-VK.api.device_init.create_device_unsupported_features.non_seamless_cube_map_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.amigo_profiling_features_sec
dEQP-VK.api.device_init.create_device_unsupported_features.attachment_feedback_loop_layout_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clamp_zero_one_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.address_binding_report_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.optical_flow_features_nv
+dEQP-VK.api.device_init.create_device_unsupported_features.fault_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.shader_core_builtins_features_arm
dEQP-VK.api.device_init.create_device_queue2_two_queues.basic
dEQP-VK.api.device_init.create_device_queue2_all_protected.basic
dEQP-VK.api.device_init.create_device_queue2_all_unprotected.basic
dEQP-VK.api.info.get_physical_device_properties2.features.border_color_swizzle_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state2_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state3_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.zero_initialize_workgroup_memory_features
dEQP-VK.api.info.get_physical_device_properties2.features.shader_subgroup_uniform_control_flow_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.robustness2_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.fragment_shading_rate_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.shader_terminate_invocation_features
dEQP-VK.api.info.get_physical_device_properties2.features.image2_d_view_of3_d_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.mutable_descriptor_type_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.depth_clip_control_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.vertex_input_dynamic_state_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.color_write_enable_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.primitives_generated_query_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.legacy_dithering_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.multisampled_render_to_single_sampled_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_protected_access_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.ycbcr2_plane444_formats_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.provoking_vertex_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.shader_integer_dot_product_features
dEQP-VK.api.info.get_physical_device_properties2.features.image_compression_control_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.image_compression_control_swapchain_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.subpass_merge_feedback_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.opacity_micromap_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_properties_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.non_seamless_cube_map_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_robustness_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.amigo_profiling_features_sec
dEQP-VK.api.info.get_physical_device_properties2.features.attachment_feedback_loop_layout_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.depth_clamp_zero_one_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.address_binding_report_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.fault_features_ext
dEQP-VK.api.info.get_physical_device_properties2.properties.basic
dEQP-VK.api.info.get_physical_device_properties2.format_properties.basic
dEQP-VK.api.info.get_physical_device_properties2.queue_family_properties.basic
dEQP-VK.api.device_init.create_device_unsupported_features.texture_compression_astchdr_features
dEQP-VK.api.device_init.create_device_unsupported_features.cooperative_matrix_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.ycbcr_image_arrays_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.present_barrier_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.performance_query_features_khr
dEQP-VK.api.device_init.create_device_unsupported_features.coverage_reduction_mode_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.shader_integer_functions2_features_intel
dEQP-VK.api.device_init.create_device_unsupported_features.border_color_swizzle_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state2_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state3_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.diagnostics_config_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.zero_initialize_workgroup_memory_features
dEQP-VK.api.device_init.create_device_unsupported_features.shader_subgroup_uniform_control_flow_features_khr
dEQP-VK.api.device_init.create_device_unsupported_features.shader_terminate_invocation_features
dEQP-VK.api.device_init.create_device_unsupported_features.fragment_shading_rate_enums_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.image2_d_view_of3_d_features_ext
-dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_valve
+dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clip_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.vertex_input_dynamic_state_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.external_memory_rdma_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.primitives_generated_query_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.legacy_dithering_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.multisampled_render_to_single_sampled_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_protected_access_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.inherited_viewport_scissor_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.ycbcr2_plane444_formats_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.provoking_vertex_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.image_compression_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.image_compression_control_swapchain_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.subpass_merge_feedback_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.opacity_micromap_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_properties_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.shader_early_and_late_fragment_tests_features_amd
dEQP-VK.api.device_init.create_device_unsupported_features.non_seamless_cube_map_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.amigo_profiling_features_sec
dEQP-VK.api.device_init.create_device_unsupported_features.attachment_feedback_loop_layout_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clamp_zero_one_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.address_binding_report_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.optical_flow_features_nv
+dEQP-VK.api.device_init.create_device_unsupported_features.fault_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.shader_core_builtins_features_arm
dEQP-VK.api.device_init.create_device_queue2.basic
dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail.basic
dEQP-VK.api.device_init.create_device_queue2_two_queues.basic
GitRepo(
"https://github.com/KhronosGroup/Vulkan-Docs.git",
"git@github.com:KhronosGroup/Vulkan-Docs.git",
- "09d120580acb942d9cc3a96c863815a05990893c",
+ "7a319840243ea33aa4caa42cdce0143b150e02bb",
"vulkan-docs"),
GitRepo(
"https://github.com/google/amber.git",
std::make_tuple(0, 1, 3, "VK_QCOM_render_pass_transform", "VK_KHR_swapchain"),
std::make_tuple(0, 1, 3, "VK_QCOM_render_pass_transform", "VK_KHR_surface"),
std::make_tuple(0, 1, 0, "VK_EXT_device_memory_report", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_NV_present_barrier", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_NV_present_barrier", "VK_KHR_surface"),
+ std::make_tuple(0, 1, 0, "VK_NV_present_barrier", "VK_KHR_get_surface_capabilities2"),
+ std::make_tuple(0, 1, 0, "VK_NV_present_barrier", "VK_KHR_swapchain"),
+ std::make_tuple(0, 1, 1, "VK_NV_present_barrier", "VK_KHR_surface"),
+ std::make_tuple(0, 1, 1, "VK_NV_present_barrier", "VK_KHR_get_surface_capabilities2"),
+ std::make_tuple(0, 1, 1, "VK_NV_present_barrier", "VK_KHR_swapchain"),
+ std::make_tuple(0, 1, 2, "VK_NV_present_barrier", "VK_KHR_surface"),
+ std::make_tuple(0, 1, 2, "VK_NV_present_barrier", "VK_KHR_get_surface_capabilities2"),
+ std::make_tuple(0, 1, 2, "VK_NV_present_barrier", "VK_KHR_swapchain"),
+ std::make_tuple(0, 1, 3, "VK_NV_present_barrier", "VK_KHR_surface"),
+ std::make_tuple(0, 1, 3, "VK_NV_present_barrier", "VK_KHR_get_surface_capabilities2"),
+ std::make_tuple(0, 1, 3, "VK_NV_present_barrier", "VK_KHR_swapchain"),
std::make_tuple(0, 1, 0, "VK_KHR_present_id", "VK_KHR_swapchain"),
std::make_tuple(0, 1, 1, "VK_KHR_present_id", "VK_KHR_swapchain"),
std::make_tuple(0, 1, 2, "VK_KHR_present_id", "VK_KHR_swapchain"),
std::make_tuple(0, 1, 0, "VK_KHR_workgroup_memory_explicit_layout", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_attachment_feedback_loop_layout", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_4444_formats", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_device_fault", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_ARM_rasterization_order_attachment_access", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_rgba10x6_formats", "VK_KHR_sampler_ycbcr_conversion"),
std::make_tuple(0, 1, 0, "VK_NV_acquire_winrt_display", "VK_EXT_direct_mode_display"),
std::make_tuple(0, 1, 0, "VK_VALVE_mutable_descriptor_type", "VK_KHR_maintenance3"),
std::make_tuple(0, 1, 0, "VK_EXT_vertex_input_dynamic_state", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_physical_device_drm", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_device_address_binding_report", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_device_address_binding_report", "VK_EXT_debug_utils"),
+ std::make_tuple(0, 1, 1, "VK_EXT_device_address_binding_report", "VK_EXT_debug_utils"),
+ std::make_tuple(0, 1, 2, "VK_EXT_device_address_binding_report", "VK_EXT_debug_utils"),
+ std::make_tuple(0, 1, 3, "VK_EXT_device_address_binding_report", "VK_EXT_debug_utils"),
std::make_tuple(0, 1, 0, "VK_EXT_depth_clip_control", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_KHR_format_feature_flags2", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_FUCHSIA_external_memory", "VK_KHR_external_memory_capabilities"),
std::make_tuple(0, 1, 0, "VK_EXT_image_view_min_lod", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_image_2d_view_of_3d", "VK_KHR_maintenance1"),
std::make_tuple(0, 1, 0, "VK_EXT_image_2d_view_of_3d", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_opacity_micromap", "VK_KHR_acceleration_structure"),
+ std::make_tuple(0, 1, 0, "VK_EXT_opacity_micromap", "VK_KHR_synchronization2"),
+ std::make_tuple(0, 1, 1, "VK_EXT_opacity_micromap", "VK_KHR_acceleration_structure"),
+ std::make_tuple(0, 1, 1, "VK_EXT_opacity_micromap", "VK_KHR_synchronization2"),
+ std::make_tuple(0, 1, 2, "VK_EXT_opacity_micromap", "VK_KHR_acceleration_structure"),
+ std::make_tuple(0, 1, 2, "VK_EXT_opacity_micromap", "VK_KHR_synchronization2"),
+ std::make_tuple(0, 1, 3, "VK_EXT_opacity_micromap", "VK_KHR_acceleration_structure"),
std::make_tuple(0, 1, 0, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
std::make_tuple(0, 1, 1, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
std::make_tuple(0, 1, 2, "VK_EXT_border_color_swizzle", "VK_EXT_custom_border_color"),
std::make_tuple(0, 1, 0, "VK_QCOM_image_processing", "VK_KHR_format_feature_flags2"),
std::make_tuple(0, 1, 1, "VK_QCOM_image_processing", "VK_KHR_format_feature_flags2"),
std::make_tuple(0, 1, 2, "VK_QCOM_image_processing", "VK_KHR_format_feature_flags2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_extended_dynamic_state3", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_shader_module_identifier", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_EXT_shader_module_identifier", "VK_EXT_pipeline_creation_cache_control"),
std::make_tuple(0, 1, 1, "VK_EXT_shader_module_identifier", "VK_EXT_pipeline_creation_cache_control"),
std::make_tuple(0, 1, 2, "VK_EXT_shader_module_identifier", "VK_EXT_pipeline_creation_cache_control"),
std::make_tuple(0, 1, 0, "VK_EXT_rasterization_order_attachment_access", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_NV_optical_flow", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_NV_optical_flow", "VK_KHR_format_feature_flags2"),
+ std::make_tuple(0, 1, 0, "VK_NV_optical_flow", "VK_KHR_synchronization2"),
+ std::make_tuple(0, 1, 1, "VK_NV_optical_flow", "VK_KHR_format_feature_flags2"),
+ std::make_tuple(0, 1, 1, "VK_NV_optical_flow", "VK_KHR_synchronization2"),
+ std::make_tuple(0, 1, 2, "VK_NV_optical_flow", "VK_KHR_format_feature_flags2"),
+ std::make_tuple(0, 1, 2, "VK_NV_optical_flow", "VK_KHR_synchronization2"),
std::make_tuple(0, 1, 0, "VK_EXT_legacy_dithering", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_pipeline_protected_access", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_QCOM_tile_properties", "VK_KHR_get_physical_device_properties2"),
std::make_tuple(0, 1, 0, "VK_SEC_amigo_profiling", "VK_KHR_get_physical_device_properties2"),
+ std::make_tuple(0, 1, 0, "VK_EXT_mutable_descriptor_type", "VK_KHR_maintenance3"),
};
static const std::tuple<deUint32, deUint32, deUint32, deUint32> releasedApiVersions[] =
{
std::make_tuple(1, 0, "VK_EXT_custom_border_color"),
std::make_tuple(1, 0, "VK_GOOGLE_user_type"),
std::make_tuple(1, 0, "VK_KHR_pipeline_library"),
+ std::make_tuple(1, 0, "VK_NV_present_barrier"),
std::make_tuple(1, 0, "VK_KHR_shader_non_semantic_info"),
std::make_tuple(1, 0, "VK_KHR_present_id"),
std::make_tuple(1, 0, "VK_EXT_private_data"),
std::make_tuple(1, 0, "VK_EXT_image_compression_control"),
std::make_tuple(1, 0, "VK_EXT_attachment_feedback_loop_layout"),
std::make_tuple(1, 0, "VK_EXT_4444_formats"),
+ std::make_tuple(1, 0, "VK_EXT_device_fault"),
std::make_tuple(1, 0, "VK_ARM_rasterization_order_attachment_access"),
std::make_tuple(1, 0, "VK_EXT_rgba10x6_formats"),
std::make_tuple(1, 0, "VK_NV_acquire_winrt_display"),
std::make_tuple(1, 0, "VK_VALVE_mutable_descriptor_type"),
std::make_tuple(1, 0, "VK_EXT_vertex_input_dynamic_state"),
std::make_tuple(1, 0, "VK_EXT_physical_device_drm"),
+ std::make_tuple(1, 0, "VK_EXT_device_address_binding_report"),
std::make_tuple(1, 0, "VK_EXT_depth_clip_control"),
std::make_tuple(1, 0, "VK_EXT_primitive_topology_list_restart"),
std::make_tuple(1, 0, "VK_KHR_format_feature_flags2"),
std::make_tuple(1, 0, "VK_EXT_multi_draw"),
std::make_tuple(1, 0, "VK_EXT_image_2d_view_of_3d"),
std::make_tuple(1, 0, "VK_KHR_portability_enumeration"),
+ std::make_tuple(1, 0, "VK_EXT_opacity_micromap"),
std::make_tuple(1, 0, "VK_EXT_load_store_op_none"),
std::make_tuple(1, 0, "VK_EXT_border_color_swizzle"),
std::make_tuple(1, 0, "VK_EXT_pageable_device_local_memory"),
std::make_tuple(1, 0, "VK_GOOGLE_surfaceless_query"),
std::make_tuple(1, 0, "VK_EXT_image_compression_control_swapchain"),
std::make_tuple(1, 0, "VK_QCOM_image_processing"),
+ std::make_tuple(1, 0, "VK_EXT_extended_dynamic_state3"),
std::make_tuple(1, 0, "VK_EXT_subpass_merge_feedback"),
std::make_tuple(1, 0, "VK_EXT_shader_module_identifier"),
std::make_tuple(1, 0, "VK_EXT_rasterization_order_attachment_access"),
+ std::make_tuple(1, 0, "VK_NV_optical_flow"),
std::make_tuple(1, 0, "VK_EXT_legacy_dithering"),
+ std::make_tuple(1, 0, "VK_EXT_pipeline_protected_access"),
std::make_tuple(1, 0, "VK_QCOM_tile_properties"),
std::make_tuple(1, 0, "VK_SEC_amigo_profiling"),
+ std::make_tuple(1, 0, "VK_EXT_mutable_descriptor_type"),
+ std::make_tuple(1, 0, "VK_ARM_shader_core_builtins"),
};
VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkPrivateDataSlotEXT, HANDLE_TYPE_PRIVATE_DATA_SLOT);
VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkCuModuleNVX, HANDLE_TYPE_CU_MODULE_NVX);
VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkCuFunctionNVX, HANDLE_TYPE_CU_FUNCTION_NVX);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkOpticalFlowSessionNV, HANDLE_TYPE_OPTICAL_FLOW_SESSION_NV);
+VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkMicromapEXT, HANDLE_TYPE_MICROMAP_EXT);
VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDisplayKHR, HANDLE_TYPE_DISPLAY_KHR);
VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkDisplayModeKHR, HANDLE_TYPE_DISPLAY_MODE_KHR);
VK_DEFINE_NON_DISPATCHABLE_HANDLE (VkSurfaceKHR, HANDLE_TYPE_SURFACE_KHR);
{
VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT = 0x00000002,
- VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE = 0x00000004,
+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT = 0x00000004,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
};
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT = 0x00020000,
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR = 0x00080000,
VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR = 0x00100000,
+ VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT = 0x00800000,
+ VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT = 0x01000000,
VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK = 1000138000,
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
- VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = 1000351000,
+ VK_DESCRIPTOR_TYPE_MUTABLE_EXT = 1000351000,
VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM = 1000440000,
VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM = 1000440001,
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK,
+ VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = VK_DESCRIPTOR_TYPE_MUTABLE_EXT,
VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF
};
enum VkDynamicState
{
- VK_DYNAMIC_STATE_VIEWPORT = 0,
- VK_DYNAMIC_STATE_SCISSOR = 1,
- VK_DYNAMIC_STATE_LINE_WIDTH = 2,
- VK_DYNAMIC_STATE_DEPTH_BIAS = 3,
- VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,
- VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,
- VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,
- VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,
- VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,
- VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000,
- VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000,
- VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000,
- VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004,
- VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006,
- VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV = 1000205001,
- VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR = 1000226000,
- VK_DYNAMIC_STATE_LINE_STIPPLE_EXT = 1000259000,
- VK_DYNAMIC_STATE_CULL_MODE = 1000267000,
- VK_DYNAMIC_STATE_FRONT_FACE = 1000267001,
- VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY = 1000267002,
- VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT = 1000267003,
- VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT = 1000267004,
- VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE = 1000267005,
- VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE = 1000267006,
- VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE = 1000267007,
- VK_DYNAMIC_STATE_DEPTH_COMPARE_OP = 1000267008,
- VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE = 1000267009,
- VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE = 1000267010,
- VK_DYNAMIC_STATE_STENCIL_OP = 1000267011,
- VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR = 1000347000,
- VK_DYNAMIC_STATE_VERTEX_INPUT_EXT = 1000352000,
- VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT = 1000377000,
- VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE = 1000377001,
- VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE = 1000377002,
- VK_DYNAMIC_STATE_LOGIC_OP_EXT = 1000377003,
- VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE = 1000377004,
- VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT = 1000381000,
- VK_DYNAMIC_STATE_CULL_MODE_EXT = VK_DYNAMIC_STATE_CULL_MODE,
- VK_DYNAMIC_STATE_FRONT_FACE_EXT = VK_DYNAMIC_STATE_FRONT_FACE,
- VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY,
- VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT,
- VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT,
- VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE,
- VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,
- VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,
- VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,
- VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,
- VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,
- VK_DYNAMIC_STATE_STENCIL_OP_EXT = VK_DYNAMIC_STATE_STENCIL_OP,
- VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE,
- VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE,
- VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE,
- VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF
+ VK_DYNAMIC_STATE_VIEWPORT = 0,
+ VK_DYNAMIC_STATE_SCISSOR = 1,
+ VK_DYNAMIC_STATE_LINE_WIDTH = 2,
+ VK_DYNAMIC_STATE_DEPTH_BIAS = 3,
+ VK_DYNAMIC_STATE_BLEND_CONSTANTS = 4,
+ VK_DYNAMIC_STATE_DEPTH_BOUNDS = 5,
+ VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK = 6,
+ VK_DYNAMIC_STATE_STENCIL_WRITE_MASK = 7,
+ VK_DYNAMIC_STATE_STENCIL_REFERENCE = 8,
+ VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV = 1000087000,
+ VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT = 1000099000,
+ VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT = 1000143000,
+ VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV = 1000164004,
+ VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV = 1000164006,
+ VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV = 1000205001,
+ VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR = 1000226000,
+ VK_DYNAMIC_STATE_LINE_STIPPLE_EXT = 1000259000,
+ VK_DYNAMIC_STATE_CULL_MODE = 1000267000,
+ VK_DYNAMIC_STATE_FRONT_FACE = 1000267001,
+ VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY = 1000267002,
+ VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT = 1000267003,
+ VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT = 1000267004,
+ VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE = 1000267005,
+ VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE = 1000267006,
+ VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE = 1000267007,
+ VK_DYNAMIC_STATE_DEPTH_COMPARE_OP = 1000267008,
+ VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE = 1000267009,
+ VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE = 1000267010,
+ VK_DYNAMIC_STATE_STENCIL_OP = 1000267011,
+ VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR = 1000347000,
+ VK_DYNAMIC_STATE_VERTEX_INPUT_EXT = 1000352000,
+ VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT = 1000377000,
+ VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE = 1000377001,
+ VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE = 1000377002,
+ VK_DYNAMIC_STATE_LOGIC_OP_EXT = 1000377003,
+ VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE = 1000377004,
+ VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT = 1000381000,
+ VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT = 1000455002,
+ VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT = 1000455003,
+ VK_DYNAMIC_STATE_POLYGON_MODE_EXT = 1000455004,
+ VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT = 1000455005,
+ VK_DYNAMIC_STATE_SAMPLE_MASK_EXT = 1000455006,
+ VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT = 1000455007,
+ VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT = 1000455008,
+ VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT = 1000455009,
+ VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT = 1000455010,
+ VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT = 1000455011,
+ VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT = 1000455012,
+ VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT = 1000455013,
+ VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT = 1000455014,
+ VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT = 1000455015,
+ VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT = 1000455016,
+ VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT = 1000455017,
+ VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT = 1000455018,
+ VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT = 1000455019,
+ VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT = 1000455020,
+ VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT = 1000455021,
+ VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT = 1000455022,
+ VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV = 1000455023,
+ VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV = 1000455024,
+ VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV = 1000455025,
+ VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV = 1000455026,
+ VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV = 1000455027,
+ VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV = 1000455028,
+ VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV = 1000455029,
+ VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV = 1000455030,
+ VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV = 1000455031,
+ VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV = 1000455032,
+ VK_DYNAMIC_STATE_CULL_MODE_EXT = VK_DYNAMIC_STATE_CULL_MODE,
+ VK_DYNAMIC_STATE_FRONT_FACE_EXT = VK_DYNAMIC_STATE_FRONT_FACE,
+ VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY,
+ VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT,
+ VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT,
+ VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE,
+ VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,
+ VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,
+ VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,
+ VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,
+ VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,
+ VK_DYNAMIC_STATE_STENCIL_OP_EXT = VK_DYNAMIC_STATE_STENCIL_OP,
+ VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE,
+ VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE,
+ VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE,
+ VK_DYNAMIC_STATE_MAX_ENUM = 0x7FFFFFFF
};
enum VkFenceCreateFlagBits
VK_FORMAT_G16_B16R16_2PLANE_444_UNORM = 1000330003,
VK_FORMAT_A4R4G4B4_UNORM_PACK16 = 1000340000,
VK_FORMAT_A4B4G4R4_UNORM_PACK16 = 1000340001,
+ VK_FORMAT_R16G16_S10_5_NV = 1000464000,
VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK,
VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK,
VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK,
VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = 0x00200000,
VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = 0x00400000,
VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT = 0x00800000,
+ VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = 0x01000000,
VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x02000000,
VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x04000000,
+ VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT = 0x08000000,
+ VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT = 0x40000000,
VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
VK_PIPELINE_CREATE_DISPATCH_BASE_KHR = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT = 1000382000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR = 1000386000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR = 1000386001,
+ VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT = 1000396000,
+ VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT = 1000396001,
VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
};
VK_QUEUE_PROTECTED_BIT = 0x00000010,
VK_QUEUE_VIDEO_DECODE_BIT_KHR = 0x00000020,
VK_QUEUE_VIDEO_ENCODE_BIT_KHR = 0x00000040,
+ VK_QUEUE_OPTICAL_FLOW_BIT_NV = 0x00000100,
VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
};
VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT = 1000039010,
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT = 1000040000,
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT = 1000040001,
- VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT = 1000040002,
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT = 1000040003,
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT = 1000040004,
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT = 1000040005,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT = 1000287001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT = 1000287002,
VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR = 1000290000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV = 1000292000,
+ VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV = 1000292001,
+ VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV = 1000292002,
VK_STRUCTURE_TYPE_PRESENT_ID_KHR = 1000294000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR = 1000294001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES = 1000295000,
VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT = 1000338004,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT = 1000339000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT = 1000340000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT = 1000341000,
+ VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT = 1000341001,
+ VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT = 1000341002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT = 1000342000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT = 1000344000,
VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT = 1000346000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR = 1000347000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR = 1000347001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR = 1000348013,
- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE = 1000351000,
- VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE = 1000351002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT = 1000351000,
+ VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT = 1000351002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT = 1000352000,
VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT = 1000352001,
VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT = 1000352002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT = 1000353000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT = 1000354000,
+ VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT = 1000354001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT = 1000355000,
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT = 1000355001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT = 1000356000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT = 1000393000,
+ VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT = 1000396000,
+ VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT = 1000396001,
+ VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT = 1000396002,
+ VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT = 1000396003,
+ VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT = 1000396004,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT = 1000396005,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT = 1000396006,
+ VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT = 1000396007,
+ VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT = 1000396008,
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT = 1000396009,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT = 1000411000,
VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT = 1000411001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT = 1000412000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM = 1000440000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM = 1000440001,
VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM = 1000440002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT = 1000455000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT = 1000455001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT = 1000458000,
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT = 1000458001,
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT = 1000458002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT = 1000462001,
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT = 1000462002,
VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT = 1000462003,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV = 1000464000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV = 1000464001,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV = 1000464002,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV = 1000464003,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV = 1000464004,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV = 1000464005,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV = 1000464010,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT = 1000465000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT = 1000466000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM = 1000484000,
VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM = 1000484001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC = 1000485000,
VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC = 1000485001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM = 1000497000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM = 1000497001,
VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
VK_STRUCTURE_TYPE_RENDERING_INFO_KHR = VK_STRUCTURE_TYPE_RENDERING_INFO,
VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO,
VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT,
+ VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT,
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR,
{
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT = 0x00000002,
- VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE = 0x00000004,
+ VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT = 0x00000004,
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
+ VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE = VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT,
VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
};
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT = 1000295000,
VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA = 1000366000,
+ VK_OBJECT_TYPE_MICROMAP_EXT = 1000396000,
+ VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV = 1000464000,
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT,
VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR = 0x00000002,
VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 0x00000004,
VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 0x00000008,
+ VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT = 0x00000010,
+ VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT = 0x00000020,
VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR,
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR,
enum VkBuildAccelerationStructureFlagBitsKHR
{
- VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 0x00000001,
- VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 0x00000002,
- VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,
- VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
- VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
- VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV = 0x00000020,
- VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
- VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
- VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
- VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
- VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
- VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR = 0x00000001,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR = 0x00000002,
+ VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR = 0x00000004,
+ VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
+ VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
+ VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV = 0x00000020,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT = 0x00000040,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT = 0x00000080,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT = 0x00000100,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
+ VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
+ VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
+ VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
+ VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
};
typedef VkBuildAccelerationStructureFlagBitsKHR VkBuildAccelerationStructureFlagBitsNV;
static const VkAccessFlagBits2 VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR = 0x4000000000ULL;
static const VkAccessFlagBits2 VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI = 0x8000000000ULL;
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR = 0x10000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV = 0x40000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV = 0x80000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_MICROMAP_READ_BIT_EXT = 0x100000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT = 0x200000000000ULL;
typedef VkAccessFlagBits2 VkAccessFlagBits2KHR;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR = 0x04000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR = 0x08000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR = 0x10000000ULL;
+static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV = 0x20000000ULL;
+static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT = 0x40000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COPY_BIT = 0x100000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_COPY_BIT_KHR = 0x100000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_RESOLVE_BIT = 0x200000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM = 0x1000000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM = 0x2000000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV = 0x4000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV = 0x10000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV = 0x20000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV = 0x40000000000ULL;
typedef VkFormatFeatureFlagBits2 VkFormatFeatureFlagBits2KHR;
VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_MAX_ENUM_EXT = 0x7FFFFFFF
};
+enum VkDeviceAddressBindingFlagBitsEXT
+{
+ VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT = 0x00000001,
+ VK_DEVICE_ADDRESS_BINDING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkDeviceAddressBindingTypeEXT
+{
+ VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT = 0,
+ VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT = 1,
+ VK_DEVICE_ADDRESS_BINDING_TYPE_EXT_LAST,
+ VK_DEVICE_ADDRESS_BINDING_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkMicromapTypeEXT
+{
+ VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT = 0,
+ VK_MICROMAP_TYPE_EXT_LAST,
+ VK_MICROMAP_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkBuildMicromapModeEXT
+{
+ VK_BUILD_MICROMAP_MODE_BUILD_EXT = 0,
+ VK_BUILD_MICROMAP_MODE_EXT_LAST,
+ VK_BUILD_MICROMAP_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkCopyMicromapModeEXT
+{
+ VK_COPY_MICROMAP_MODE_CLONE_EXT = 0,
+ VK_COPY_MICROMAP_MODE_SERIALIZE_EXT = 1,
+ VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT = 2,
+ VK_COPY_MICROMAP_MODE_COMPACT_EXT = 3,
+ VK_COPY_MICROMAP_MODE_EXT_LAST,
+ VK_COPY_MICROMAP_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkBuildMicromapFlagBitsEXT
+{
+ VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT = 0x00000001,
+ VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT = 0x00000002,
+ VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT = 0x00000004,
+ VK_BUILD_MICROMAP_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkMicromapCreateFlagBitsEXT
+{
+ VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT = 0x00000001,
+ VK_MICROMAP_CREATE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkOpacityMicromapFormatEXT
+{
+ VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = 1,
+ VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = 2,
+ VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkOpacityMicromapSpecialIndexEXT
+{
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = -4,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = -3,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = -2,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = -1,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
+enum VkDeviceFaultVendorBinaryHeaderVersionEXT
+{
+ VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT = 1,
+ VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
enum VkColorSpaceKHR
{
VK_COLOR_SPACE_SRGB_NONLINEAR_KHR = 0,
enum VkDebugUtilsMessageTypeFlagBitsEXT
{
- VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 0x00000001,
- VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 0x00000002,
- VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 0x00000004,
- VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+ VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 0x00000001,
+ VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 0x00000002,
+ VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 0x00000004,
+ VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT = 0x00000008,
+ VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
};
enum VkFullScreenExclusiveEXT
VK_GRAPHICS_PIPELINE_LIBRARY_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
};
+enum VkOpticalFlowGridSizeFlagBitsNV
+{
+ VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV = 0x00000002,
+ VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV = 0x00000004,
+ VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV = 0x00000008,
+ VK_OPTICAL_FLOW_GRID_SIZE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+};
+
+enum VkOpticalFlowUsageFlagBitsNV
+{
+ VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV = 0x00000002,
+ VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV = 0x00000004,
+ VK_OPTICAL_FLOW_USAGE_COST_BIT_NV = 0x00000008,
+ VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV = 0x00000010,
+ VK_OPTICAL_FLOW_USAGE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+};
+
+enum VkOpticalFlowPerformanceLevelNV
+{
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV = 1,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV = 2,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV = 3,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_NV_LAST,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MAX_ENUM_NV = 0x7FFFFFFF
+};
+
+enum VkOpticalFlowSessionBindingPointNV
+{
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV = 1,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV = 2,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV = 3,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV = 4,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV = 5,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV = 6,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV = 7,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV = 8,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_NV_LAST,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_MAX_ENUM_NV = 0x7FFFFFFF
+};
+
+enum VkOpticalFlowSessionCreateFlagBitsNV
+{
+ VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV = 0x00000002,
+ VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV = 0x00000004,
+ VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV = 0x00000008,
+ VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV = 0x00000010,
+ VK_OPTICAL_FLOW_SESSION_CREATE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+};
+
+enum VkOpticalFlowExecuteFlagBitsNV
+{
+ VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_EXECUTE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+};
+
+enum VkDeviceFaultAddressTypeEXT
+{
+ VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT = 0,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT = 1,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT = 2,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT = 3,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT = 4,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = 5,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = 6,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_EXT_LAST,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
+};
+
enum VkVendorId
{
VK_VENDOR_ID_VIV = 0x10001,
STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
};
-enum StdVideoH264Level
-{
- STD_VIDEO_H264_LEVEL_1_0 = 0,
- STD_VIDEO_H264_LEVEL_1_1 = 1,
- STD_VIDEO_H264_LEVEL_1_2 = 2,
- STD_VIDEO_H264_LEVEL_1_3 = 3,
- STD_VIDEO_H264_LEVEL_2_0 = 4,
- STD_VIDEO_H264_LEVEL_2_1 = 5,
- STD_VIDEO_H264_LEVEL_2_2 = 6,
- STD_VIDEO_H264_LEVEL_3_0 = 7,
- STD_VIDEO_H264_LEVEL_3_1 = 8,
- STD_VIDEO_H264_LEVEL_3_2 = 9,
- STD_VIDEO_H264_LEVEL_4_0 = 10,
- STD_VIDEO_H264_LEVEL_4_1 = 11,
- STD_VIDEO_H264_LEVEL_4_2 = 12,
- STD_VIDEO_H264_LEVEL_5_0 = 13,
- STD_VIDEO_H264_LEVEL_5_1 = 14,
- STD_VIDEO_H264_LEVEL_5_2 = 15,
- STD_VIDEO_H264_LEVEL_6_0 = 16,
- STD_VIDEO_H264_LEVEL_6_1 = 17,
- STD_VIDEO_H264_LEVEL_6_2 = 18,
- STD_VIDEO_H264_LEVEL_INVALID = 0x7FFFFFFF,
- STD_VIDEO_H264_LEVEL_MAX_ENUM = 0x7FFFFFFF
+enum StdVideoH264LevelIdc
+{
+ STD_VIDEO_H264_LEVEL_IDC_1_0 = 0,
+ STD_VIDEO_H264_LEVEL_IDC_1_1 = 1,
+ STD_VIDEO_H264_LEVEL_IDC_1_2 = 2,
+ STD_VIDEO_H264_LEVEL_IDC_1_3 = 3,
+ STD_VIDEO_H264_LEVEL_IDC_2_0 = 4,
+ STD_VIDEO_H264_LEVEL_IDC_2_1 = 5,
+ STD_VIDEO_H264_LEVEL_IDC_2_2 = 6,
+ STD_VIDEO_H264_LEVEL_IDC_3_0 = 7,
+ STD_VIDEO_H264_LEVEL_IDC_3_1 = 8,
+ STD_VIDEO_H264_LEVEL_IDC_3_2 = 9,
+ STD_VIDEO_H264_LEVEL_IDC_4_0 = 10,
+ STD_VIDEO_H264_LEVEL_IDC_4_1 = 11,
+ STD_VIDEO_H264_LEVEL_IDC_4_2 = 12,
+ STD_VIDEO_H264_LEVEL_IDC_5_0 = 13,
+ STD_VIDEO_H264_LEVEL_IDC_5_1 = 14,
+ STD_VIDEO_H264_LEVEL_IDC_5_2 = 15,
+ STD_VIDEO_H264_LEVEL_IDC_6_0 = 16,
+ STD_VIDEO_H264_LEVEL_IDC_6_1 = 17,
+ STD_VIDEO_H264_LEVEL_IDC_6_2 = 18,
+ STD_VIDEO_H264_LEVEL_IDC_INVALID = 0x7FFFFFFF,
+ STD_VIDEO_H264_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
};
enum StdVideoH264PocType
STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
};
-enum StdVideoH265Level
+enum StdVideoH265LevelIdc
{
- STD_VIDEO_H265_LEVEL_1_0 = 0,
- STD_VIDEO_H265_LEVEL_2_0 = 1,
- STD_VIDEO_H265_LEVEL_2_1 = 2,
- STD_VIDEO_H265_LEVEL_3_0 = 3,
- STD_VIDEO_H265_LEVEL_3_1 = 4,
- STD_VIDEO_H265_LEVEL_4_0 = 5,
- STD_VIDEO_H265_LEVEL_4_1 = 6,
- STD_VIDEO_H265_LEVEL_5_0 = 7,
- STD_VIDEO_H265_LEVEL_5_1 = 8,
- STD_VIDEO_H265_LEVEL_5_2 = 9,
- STD_VIDEO_H265_LEVEL_6_0 = 10,
- STD_VIDEO_H265_LEVEL_6_1 = 11,
- STD_VIDEO_H265_LEVEL_6_2 = 12,
- STD_VIDEO_H265_LEVEL_INVALID = 0x7FFFFFFF,
- STD_VIDEO_H265_LEVEL_MAX_ENUM = 0x7FFFFFFF
+ STD_VIDEO_H265_LEVEL_IDC_1_0 = 0,
+ STD_VIDEO_H265_LEVEL_IDC_2_0 = 1,
+ STD_VIDEO_H265_LEVEL_IDC_2_1 = 2,
+ STD_VIDEO_H265_LEVEL_IDC_3_0 = 3,
+ STD_VIDEO_H265_LEVEL_IDC_3_1 = 4,
+ STD_VIDEO_H265_LEVEL_IDC_4_0 = 5,
+ STD_VIDEO_H265_LEVEL_IDC_4_1 = 6,
+ STD_VIDEO_H265_LEVEL_IDC_5_0 = 7,
+ STD_VIDEO_H265_LEVEL_IDC_5_1 = 8,
+ STD_VIDEO_H265_LEVEL_IDC_5_2 = 9,
+ STD_VIDEO_H265_LEVEL_IDC_6_0 = 10,
+ STD_VIDEO_H265_LEVEL_IDC_6_1 = 11,
+ STD_VIDEO_H265_LEVEL_IDC_6_2 = 12,
+ STD_VIDEO_H265_LEVEL_IDC_INVALID = 0x7FFFFFFF,
+ STD_VIDEO_H265_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
};
enum StdVideoH265SliceType
STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
};
+enum StdVideoH265AspectRatioIdc
+{
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED = 0,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE = 1,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11 = 2,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11 = 3,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11 = 4,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33 = 5,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11 = 6,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11 = 7,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11 = 8,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33 = 9,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11 = 10,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11 = 11,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33 = 12,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99 = 13,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3 = 14,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2 = 15,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1 = 16,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR = 255,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID = 0x7FFFFFFF,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_MAX_ENUM = 0x7FFFFFFF
+};
+
typedef uint32_t VkFramebufferCreateFlags;
typedef uint32_t VkQueryPoolCreateFlags;
typedef VkRenderingFlags VkRenderingFlagsKHR;
+typedef uint32_t VkBuildMicromapFlagsEXT;
+
+typedef uint32_t VkMicromapCreateFlagsEXT;
+
typedef uint32_t VkCompositeAlphaFlagsKHR;
typedef uint32_t VkDisplayPlaneAlphaFlagsKHR;
typedef uint32_t VkExportMetalObjectTypeFlagsEXT;
+typedef uint32_t VkDeviceAddressBindingFlagsEXT;
+
+typedef uint32_t VkOpticalFlowGridSizeFlagsNV;
+
+typedef uint32_t VkOpticalFlowUsageFlagsNV;
+
+typedef uint32_t VkOpticalFlowSessionCreateFlagsNV;
+
+typedef uint32_t VkOpticalFlowExecuteFlagsNV;
+
typedef uint32_t VkVideoCodecOperationFlagsKHR;
typedef uint32_t VkVideoCapabilityFlagsKHR;
#define VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME "VK_AMD_shader_explicit_vertex_parameter"
#define VK_EXT_DEBUG_MARKER_SPEC_VERSION 4
#define VK_EXT_DEBUG_MARKER_EXTENSION_NAME "VK_EXT_debug_marker"
-#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 5
+#define VK_KHR_VIDEO_QUEUE_SPEC_VERSION 7
#define VK_KHR_VIDEO_QUEUE_EXTENSION_NAME "VK_KHR_video_queue"
#define VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION 6
#define VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME "VK_KHR_video_decode_queue"
#define VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME "VK_AMD_gpu_shader_half_float"
#define VK_AMD_SHADER_BALLOT_SPEC_VERSION 1
#define VK_AMD_SHADER_BALLOT_EXTENSION_NAME "VK_AMD_shader_ballot"
-#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 8
+#define VK_EXT_VIDEO_ENCODE_H264_SPEC_VERSION 9
#define VK_EXT_VIDEO_ENCODE_H264_EXTENSION_NAME "VK_EXT_video_encode_h264"
-#define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 8
+#define VK_EXT_VIDEO_ENCODE_H265_SPEC_VERSION 9
#define VK_EXT_VIDEO_ENCODE_H265_EXTENSION_NAME "VK_EXT_video_encode_h265"
-#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 6
+#define VK_EXT_VIDEO_DECODE_H264_SPEC_VERSION 7
#define VK_EXT_VIDEO_DECODE_H264_EXTENSION_NAME "VK_EXT_video_decode_h264"
#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION 1
#define VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME "VK_AMD_texture_gather_bias_lod"
#define VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME "VK_EXT_calibrated_timestamps"
#define VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION 2
#define VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME "VK_AMD_shader_core_properties"
-#define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 4
+#define VK_EXT_VIDEO_DECODE_H265_SPEC_VERSION 5
#define VK_EXT_VIDEO_DECODE_H265_EXTENSION_NAME "VK_EXT_video_decode_h265"
#define VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION 1
#define VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME "VK_KHR_global_priority"
#define VK_GOOGLE_USER_TYPE_EXTENSION_NAME "VK_GOOGLE_user_type"
#define VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION 1
#define VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME "VK_KHR_pipeline_library"
+#define VK_NV_PRESENT_BARRIER_SPEC_VERSION 1
+#define VK_NV_PRESENT_BARRIER_EXTENSION_NAME "VK_NV_present_barrier"
#define VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION 1
#define VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME "VK_KHR_shader_non_semantic_info"
#define VK_KHR_PRESENT_ID_SPEC_VERSION 1
#define VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME "VK_EXT_attachment_feedback_loop_layout"
#define VK_EXT_4444_FORMATS_SPEC_VERSION 1
#define VK_EXT_4444_FORMATS_EXTENSION_NAME "VK_EXT_4444_formats"
+#define VK_EXT_DEVICE_FAULT_SPEC_VERSION 1
+#define VK_EXT_DEVICE_FAULT_EXTENSION_NAME "VK_EXT_device_fault"
#define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION 1
#define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME "VK_ARM_rasterization_order_attachment_access"
#define VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION 1
#define VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME "VK_EXT_vertex_input_dynamic_state"
#define VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION 1
#define VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME "VK_EXT_physical_device_drm"
+#define VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION 1
+#define VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME "VK_EXT_device_address_binding_report"
#define VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION 1
#define VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME "VK_EXT_depth_clip_control"
#define VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION 1
#define VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME "VK_EXT_image_2d_view_of_3d"
#define VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION 1
#define VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME "VK_KHR_portability_enumeration"
+#define VK_EXT_OPACITY_MICROMAP_SPEC_VERSION 2
+#define VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME "VK_EXT_opacity_micromap"
#define VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION 1
#define VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME "VK_EXT_load_store_op_none"
#define VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION 1
#define VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME "VK_QCOM_fragment_density_map_offset"
#define VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION 1
#define VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME "VK_NV_linear_color_attachment"
-#define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 1
+#define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 2
#define VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME "VK_GOOGLE_surfaceless_query"
#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION 1
#define VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME "VK_EXT_image_compression_control_swapchain"
#define VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION 1
#define VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME "VK_QCOM_image_processing"
+#define VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION 2
+#define VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME "VK_EXT_extended_dynamic_state3"
#define VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION 2
#define VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME "VK_EXT_subpass_merge_feedback"
#define VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION 1
#define VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME "VK_EXT_shader_module_identifier"
#define VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION 1
#define VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME "VK_EXT_rasterization_order_attachment_access"
+#define VK_NV_OPTICAL_FLOW_SPEC_VERSION 1
+#define VK_NV_OPTICAL_FLOW_EXTENSION_NAME "VK_NV_optical_flow"
#define VK_EXT_LEGACY_DITHERING_SPEC_VERSION 1
#define VK_EXT_LEGACY_DITHERING_EXTENSION_NAME "VK_EXT_legacy_dithering"
+#define VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME "VK_EXT_pipeline_protected_access"
#define VK_QCOM_TILE_PROPERTIES_SPEC_VERSION 1
#define VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME "VK_QCOM_tile_properties"
#define VK_SEC_AMIGO_PROFILING_SPEC_VERSION 1
#define VK_SEC_AMIGO_PROFILING_EXTENSION_NAME "VK_SEC_amigo_profiling"
+#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION 1
+#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_EXT_mutable_descriptor_type"
+#define VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION 1
+#define VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME "VK_ARM_shader_core_builtins"
#define STD_VIDEO_H264_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS 16
-#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 2
+#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS 64
#define STD_VIDEO_H264_MAX_NUM_LIST_REF 32
#define STD_VIDEO_H264_MAX_CHROMA_PLANES 2
-#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_8
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode"
-#define STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE 15
#define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2
-#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_8
#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_encode"
#define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32
-#define STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE 7
+#define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16
#define STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS 6
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
#define STD_VIDEO_H265_MAX_NUM_LIST_REF 15
#define STD_VIDEO_H265_MAX_CHROMA_PLANES 2
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7
+#define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64
+#define STD_VIDEO_H265_MAX_DPB_SIZE 16
+#define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32
+#define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16
+#define STD_VIDEO_H265_MAX_DELTA_POC 48
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_9
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
#define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_7
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_API_VERSION_0_9_9
#define VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_encode"
virtual void cmdSetLogicOpEXT (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const;
virtual void cmdSetPrimitiveRestartEnable (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable) const;
virtual VkResult createPrivateDataSlot (VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlot* pPrivateDataSlot) const;
+virtual void cmdSetTessellationDomainOriginEXT (VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin) const;
+virtual void cmdSetDepthClampEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClampEnable) const;
+virtual void cmdSetPolygonModeEXT (VkCommandBuffer commandBuffer, VkPolygonMode polygonMode) const;
+virtual void cmdSetRasterizationSamplesEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples) const;
+virtual void cmdSetSampleMaskEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const VkSampleMask* pSampleMask) const;
+virtual void cmdSetAlphaToCoverageEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable) const;
+virtual void cmdSetAlphaToOneEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable) const;
+virtual void cmdSetLogicOpEnableEXT (VkCommandBuffer commandBuffer, VkBool32 logicOpEnable) const;
+virtual void cmdSetColorBlendEnableEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkBool32* pColorBlendEnables) const;
+virtual void cmdSetColorBlendEquationEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendEquationEXT* pColorBlendEquations) const;
+virtual void cmdSetColorWriteMaskEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorComponentFlags* pColorWriteMasks) const;
+virtual void cmdSetRasterizationStreamEXT (VkCommandBuffer commandBuffer, uint32_t rasterizationStream) const;
+virtual void cmdSetConservativeRasterizationModeEXT (VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode) const;
+virtual void cmdSetExtraPrimitiveOverestimationSizeEXT (VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize) const;
+virtual void cmdSetDepthClipEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClipEnable) const;
+virtual void cmdSetSampleLocationsEnableEXT (VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable) const;
+virtual void cmdSetColorBlendAdvancedEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendAdvancedEXT* pColorBlendAdvanced) const;
+virtual void cmdSetProvokingVertexModeEXT (VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode) const;
+virtual void cmdSetLineRasterizationModeEXT (VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode) const;
+virtual void cmdSetLineStippleEnableEXT (VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable) const;
+virtual void cmdSetDepthClipNegativeOneToOneEXT (VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne) const;
+virtual void cmdSetViewportWScalingEnableNV (VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable) const;
+virtual void cmdSetViewportSwizzleNV (VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportSwizzleNV* pViewportSwizzles) const;
+virtual void cmdSetCoverageToColorEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable) const;
+virtual void cmdSetCoverageToColorLocationNV (VkCommandBuffer commandBuffer, uint32_t coverageToColorLocation) const;
+virtual void cmdSetCoverageModulationModeNV (VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode) const;
+virtual void cmdSetCoverageModulationTableEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable) const;
+virtual void cmdSetCoverageModulationTableNV (VkCommandBuffer commandBuffer, uint32_t coverageModulationTableCount, const float* pCoverageModulationTable) const;
+virtual void cmdSetShadingRateImageEnableNV (VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable) const;
+virtual void cmdSetCoverageReductionModeNV (VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode) const;
+virtual void cmdSetRepresentativeFragmentTestEnableNV (VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable) const;
virtual void destroyPrivateDataSlot (VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator) const;
virtual VkResult setPrivateData (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data) const;
virtual void getPrivateData (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t* pData) const;
virtual void destroyVideoSessionParametersKHR (VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkAllocationCallbacks* pAllocator) const;
virtual VkResult getVideoSessionMemoryRequirementsKHR (VkDevice device, VkVideoSessionKHR videoSession, uint32_t* pMemoryRequirementsCount, VkVideoSessionMemoryRequirementsKHR* pMemoryRequirements) const;
virtual VkResult bindVideoSessionMemoryKHR (VkDevice device, VkVideoSessionKHR videoSession, uint32_t bindSessionMemoryInfoCount, const VkBindVideoSessionMemoryInfoKHR* pBindSessionMemoryInfos) const;
-virtual void cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo) const;
+virtual void cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pDecodeInfo) const;
virtual void cmdBeginVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo) const;
virtual void cmdControlVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoCodingControlInfoKHR* pCodingControlInfo) const;
virtual void cmdEndVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoEndCodingInfoKHR* pEndCodingInfo) const;
virtual void cmdEndRendering (VkCommandBuffer commandBuffer) const;
virtual void getDescriptorSetLayoutHostMappingInfoVALVE (VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping) const;
virtual void getDescriptorSetHostMappingVALVE (VkDevice device, VkDescriptorSet descriptorSet, void** ppData) const;
+virtual VkResult createMicromapEXT (VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap) const;
+virtual void cmdBuildMicromapsEXT (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos) const;
+virtual VkResult buildMicromapsEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos) const;
+virtual void destroyMicromapEXT (VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator) const;
+virtual void cmdCopyMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo) const;
+virtual VkResult copyMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo) const;
+virtual void cmdCopyMicromapToMemoryEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo) const;
+virtual VkResult copyMicromapToMemoryEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo) const;
+virtual void cmdCopyMemoryToMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo) const;
+virtual VkResult copyMemoryToMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo) const;
+virtual void cmdWriteMicromapsPropertiesEXT (VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) const;
+virtual VkResult writeMicromapsPropertiesEXT (VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride) const;
+virtual void getDeviceMicromapCompatibilityEXT (VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility) const;
+virtual void getMicromapBuildSizesEXT (VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo) const;
virtual void getShaderModuleIdentifierEXT (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier) const;
virtual void getShaderModuleCreateInfoIdentifierEXT (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier) const;
virtual void getImageSubresourceLayout2EXT (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout) const;
virtual void exportMetalObjectsEXT (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo) const;
virtual VkResult getFramebufferTilePropertiesQCOM (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties) const;
virtual VkResult getDynamicRenderingTilePropertiesQCOM (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties) const;
+virtual VkResult createOpticalFlowSessionNV (VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkOpticalFlowSessionNV* pSession) const;
+virtual void destroyOpticalFlowSessionNV (VkDevice device, VkOpticalFlowSessionNV session, const VkAllocationCallbacks* pAllocator) const;
+virtual VkResult bindOpticalFlowSessionImageNV (VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout) const;
+virtual void cmdOpticalFlowExecuteNV (VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const VkOpticalFlowExecuteInfoNV* pExecuteInfo) const;
+virtual VkResult getDeviceFaultInfoEXT (VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo) const;
virtual VkResult getPhysicalDeviceVideoFormatPropertiesKHR (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo, uint32_t* pVideoFormatPropertyCount, VkVideoFormatPropertiesKHR* pVideoFormatProperties) const;
virtual VkResult acquireDrmDisplayEXT (VkPhysicalDevice physicalDevice, int32_t drmFd, VkDisplayKHR display) const;
virtual VkResult getDrmDisplayEXT (VkPhysicalDevice physicalDevice, int32_t drmFd, uint32_t connectorId, VkDisplayKHR* display) const;
+virtual VkResult getPhysicalDeviceOpticalFlowImageFormatsNV (VkPhysicalDevice physicalDevice, const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties) const;
return m_vk.createPrivateDataSlot(device, pCreateInfo, pAllocator, pPrivateDataSlot);
}
+void DeviceDriver::cmdSetTessellationDomainOriginEXT (VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin) const
+{
+ m_vk.cmdSetTessellationDomainOriginEXT(commandBuffer, domainOrigin);
+}
+
+void DeviceDriver::cmdSetDepthClampEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClampEnable) const
+{
+ m_vk.cmdSetDepthClampEnableEXT(commandBuffer, depthClampEnable);
+}
+
+void DeviceDriver::cmdSetPolygonModeEXT (VkCommandBuffer commandBuffer, VkPolygonMode polygonMode) const
+{
+ m_vk.cmdSetPolygonModeEXT(commandBuffer, polygonMode);
+}
+
+void DeviceDriver::cmdSetRasterizationSamplesEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples) const
+{
+ m_vk.cmdSetRasterizationSamplesEXT(commandBuffer, rasterizationSamples);
+}
+
+void DeviceDriver::cmdSetSampleMaskEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const VkSampleMask* pSampleMask) const
+{
+ m_vk.cmdSetSampleMaskEXT(commandBuffer, samples, pSampleMask);
+}
+
+void DeviceDriver::cmdSetAlphaToCoverageEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable) const
+{
+ m_vk.cmdSetAlphaToCoverageEnableEXT(commandBuffer, alphaToCoverageEnable);
+}
+
+void DeviceDriver::cmdSetAlphaToOneEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable) const
+{
+ m_vk.cmdSetAlphaToOneEnableEXT(commandBuffer, alphaToOneEnable);
+}
+
+void DeviceDriver::cmdSetLogicOpEnableEXT (VkCommandBuffer commandBuffer, VkBool32 logicOpEnable) const
+{
+ m_vk.cmdSetLogicOpEnableEXT(commandBuffer, logicOpEnable);
+}
+
+void DeviceDriver::cmdSetColorBlendEnableEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkBool32* pColorBlendEnables) const
+{
+ m_vk.cmdSetColorBlendEnableEXT(commandBuffer, firstAttachment, attachmentCount, pColorBlendEnables);
+}
+
+void DeviceDriver::cmdSetColorBlendEquationEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendEquationEXT* pColorBlendEquations) const
+{
+ m_vk.cmdSetColorBlendEquationEXT(commandBuffer, firstAttachment, attachmentCount, pColorBlendEquations);
+}
+
+void DeviceDriver::cmdSetColorWriteMaskEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorComponentFlags* pColorWriteMasks) const
+{
+ m_vk.cmdSetColorWriteMaskEXT(commandBuffer, firstAttachment, attachmentCount, pColorWriteMasks);
+}
+
+void DeviceDriver::cmdSetRasterizationStreamEXT (VkCommandBuffer commandBuffer, uint32_t rasterizationStream) const
+{
+ m_vk.cmdSetRasterizationStreamEXT(commandBuffer, rasterizationStream);
+}
+
+void DeviceDriver::cmdSetConservativeRasterizationModeEXT (VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode) const
+{
+ m_vk.cmdSetConservativeRasterizationModeEXT(commandBuffer, conservativeRasterizationMode);
+}
+
+void DeviceDriver::cmdSetExtraPrimitiveOverestimationSizeEXT (VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize) const
+{
+ m_vk.cmdSetExtraPrimitiveOverestimationSizeEXT(commandBuffer, extraPrimitiveOverestimationSize);
+}
+
+void DeviceDriver::cmdSetDepthClipEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClipEnable) const
+{
+ m_vk.cmdSetDepthClipEnableEXT(commandBuffer, depthClipEnable);
+}
+
+void DeviceDriver::cmdSetSampleLocationsEnableEXT (VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable) const
+{
+ m_vk.cmdSetSampleLocationsEnableEXT(commandBuffer, sampleLocationsEnable);
+}
+
+void DeviceDriver::cmdSetColorBlendAdvancedEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendAdvancedEXT* pColorBlendAdvanced) const
+{
+ m_vk.cmdSetColorBlendAdvancedEXT(commandBuffer, firstAttachment, attachmentCount, pColorBlendAdvanced);
+}
+
+void DeviceDriver::cmdSetProvokingVertexModeEXT (VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode) const
+{
+ m_vk.cmdSetProvokingVertexModeEXT(commandBuffer, provokingVertexMode);
+}
+
+void DeviceDriver::cmdSetLineRasterizationModeEXT (VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode) const
+{
+ m_vk.cmdSetLineRasterizationModeEXT(commandBuffer, lineRasterizationMode);
+}
+
+void DeviceDriver::cmdSetLineStippleEnableEXT (VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable) const
+{
+ m_vk.cmdSetLineStippleEnableEXT(commandBuffer, stippledLineEnable);
+}
+
+void DeviceDriver::cmdSetDepthClipNegativeOneToOneEXT (VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne) const
+{
+ m_vk.cmdSetDepthClipNegativeOneToOneEXT(commandBuffer, negativeOneToOne);
+}
+
+void DeviceDriver::cmdSetViewportWScalingEnableNV (VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable) const
+{
+ m_vk.cmdSetViewportWScalingEnableNV(commandBuffer, viewportWScalingEnable);
+}
+
+void DeviceDriver::cmdSetViewportSwizzleNV (VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportSwizzleNV* pViewportSwizzles) const
+{
+ m_vk.cmdSetViewportSwizzleNV(commandBuffer, firstViewport, viewportCount, pViewportSwizzles);
+}
+
+void DeviceDriver::cmdSetCoverageToColorEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable) const
+{
+ m_vk.cmdSetCoverageToColorEnableNV(commandBuffer, coverageToColorEnable);
+}
+
+void DeviceDriver::cmdSetCoverageToColorLocationNV (VkCommandBuffer commandBuffer, uint32_t coverageToColorLocation) const
+{
+ m_vk.cmdSetCoverageToColorLocationNV(commandBuffer, coverageToColorLocation);
+}
+
+void DeviceDriver::cmdSetCoverageModulationModeNV (VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode) const
+{
+ m_vk.cmdSetCoverageModulationModeNV(commandBuffer, coverageModulationMode);
+}
+
+void DeviceDriver::cmdSetCoverageModulationTableEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable) const
+{
+ m_vk.cmdSetCoverageModulationTableEnableNV(commandBuffer, coverageModulationTableEnable);
+}
+
+void DeviceDriver::cmdSetCoverageModulationTableNV (VkCommandBuffer commandBuffer, uint32_t coverageModulationTableCount, const float* pCoverageModulationTable) const
+{
+ m_vk.cmdSetCoverageModulationTableNV(commandBuffer, coverageModulationTableCount, pCoverageModulationTable);
+}
+
+void DeviceDriver::cmdSetShadingRateImageEnableNV (VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable) const
+{
+ m_vk.cmdSetShadingRateImageEnableNV(commandBuffer, shadingRateImageEnable);
+}
+
+void DeviceDriver::cmdSetCoverageReductionModeNV (VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode) const
+{
+ m_vk.cmdSetCoverageReductionModeNV(commandBuffer, coverageReductionMode);
+}
+
+void DeviceDriver::cmdSetRepresentativeFragmentTestEnableNV (VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable) const
+{
+ m_vk.cmdSetRepresentativeFragmentTestEnableNV(commandBuffer, representativeFragmentTestEnable);
+}
+
void DeviceDriver::destroyPrivateDataSlot (VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator) const
{
m_vk.destroyPrivateDataSlot(device, privateDataSlot, pAllocator);
return m_vk.bindVideoSessionMemoryKHR(device, videoSession, bindSessionMemoryInfoCount, pBindSessionMemoryInfos);
}
-void DeviceDriver::cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo) const
+void DeviceDriver::cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pDecodeInfo) const
{
- m_vk.cmdDecodeVideoKHR(commandBuffer, pFrameInfo);
+ m_vk.cmdDecodeVideoKHR(commandBuffer, pDecodeInfo);
}
void DeviceDriver::cmdBeginVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo) const
m_vk.getDescriptorSetHostMappingVALVE(device, descriptorSet, ppData);
}
+VkResult DeviceDriver::createMicromapEXT (VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap) const
+{
+ return m_vk.createMicromapEXT(device, pCreateInfo, pAllocator, pMicromap);
+}
+
+void DeviceDriver::cmdBuildMicromapsEXT (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos) const
+{
+ m_vk.cmdBuildMicromapsEXT(commandBuffer, infoCount, pInfos);
+}
+
+VkResult DeviceDriver::buildMicromapsEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos) const
+{
+ return m_vk.buildMicromapsEXT(device, deferredOperation, infoCount, pInfos);
+}
+
+void DeviceDriver::destroyMicromapEXT (VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator) const
+{
+ m_vk.destroyMicromapEXT(device, micromap, pAllocator);
+}
+
+void DeviceDriver::cmdCopyMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo) const
+{
+ m_vk.cmdCopyMicromapEXT(commandBuffer, pInfo);
+}
+
+VkResult DeviceDriver::copyMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo) const
+{
+ return m_vk.copyMicromapEXT(device, deferredOperation, pInfo);
+}
+
+void DeviceDriver::cmdCopyMicromapToMemoryEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo) const
+{
+ m_vk.cmdCopyMicromapToMemoryEXT(commandBuffer, pInfo);
+}
+
+VkResult DeviceDriver::copyMicromapToMemoryEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo) const
+{
+ return m_vk.copyMicromapToMemoryEXT(device, deferredOperation, pInfo);
+}
+
+void DeviceDriver::cmdCopyMemoryToMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo) const
+{
+ m_vk.cmdCopyMemoryToMicromapEXT(commandBuffer, pInfo);
+}
+
+VkResult DeviceDriver::copyMemoryToMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo) const
+{
+ return m_vk.copyMemoryToMicromapEXT(device, deferredOperation, pInfo);
+}
+
+void DeviceDriver::cmdWriteMicromapsPropertiesEXT (VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) const
+{
+ m_vk.cmdWriteMicromapsPropertiesEXT(commandBuffer, micromapCount, pMicromaps, queryType, queryPool, firstQuery);
+}
+
+VkResult DeviceDriver::writeMicromapsPropertiesEXT (VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride) const
+{
+ return m_vk.writeMicromapsPropertiesEXT(device, micromapCount, pMicromaps, queryType, dataSize, pData, stride);
+}
+
+void DeviceDriver::getDeviceMicromapCompatibilityEXT (VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility) const
+{
+ m_vk.getDeviceMicromapCompatibilityEXT(device, pVersionInfo, pCompatibility);
+}
+
+void DeviceDriver::getMicromapBuildSizesEXT (VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo) const
+{
+ m_vk.getMicromapBuildSizesEXT(device, buildType, pBuildInfo, pSizeInfo);
+}
+
void DeviceDriver::getShaderModuleIdentifierEXT (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier) const
{
m_vk.getShaderModuleIdentifierEXT(device, shaderModule, pIdentifier);
{
return m_vk.getDynamicRenderingTilePropertiesQCOM(device, pRenderingInfo, pProperties);
}
+
+VkResult DeviceDriver::createOpticalFlowSessionNV (VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkOpticalFlowSessionNV* pSession) const
+{
+ return m_vk.createOpticalFlowSessionNV(device, pCreateInfo, pAllocator, pSession);
+}
+
+void DeviceDriver::destroyOpticalFlowSessionNV (VkDevice device, VkOpticalFlowSessionNV session, const VkAllocationCallbacks* pAllocator) const
+{
+ m_vk.destroyOpticalFlowSessionNV(device, session, pAllocator);
+}
+
+VkResult DeviceDriver::bindOpticalFlowSessionImageNV (VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout) const
+{
+ return m_vk.bindOpticalFlowSessionImageNV(device, session, bindingPoint, view, layout);
+}
+
+void DeviceDriver::cmdOpticalFlowExecuteNV (VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const VkOpticalFlowExecuteInfoNV* pExecuteInfo) const
+{
+ m_vk.cmdOpticalFlowExecuteNV(commandBuffer, session, pExecuteInfo);
+}
+
+VkResult DeviceDriver::getDeviceFaultInfoEXT (VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo) const
+{
+ return m_vk.getDeviceFaultInfoEXT(device, pFaultCounts, pFaultInfo);
+}
}
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestPresentBarrierFeaturesNV (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDevicePresentBarrierFeaturesNV>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDevicePresentBarrierFeaturesNV, presentBarrier),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDevicePresentBarrierFeaturesNV*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
tcu::TestStatus createDeviceWithUnsupportedFeaturesTestPerformanceQueryFeaturesKHR (Context& context)
{
const PlatformInterface& vkp = context.getPlatformInterface();
}
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestExtendedDynamicState3FeaturesEXT (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceExtendedDynamicState3FeaturesEXT>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3TessellationDomainOrigin),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3DepthClampEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3PolygonMode),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3RasterizationSamples),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3SampleMask),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3AlphaToCoverageEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3AlphaToOneEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3LogicOpEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ColorBlendEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ColorBlendEquation),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ColorWriteMask),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3RasterizationStream),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ConservativeRasterizationMode),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ExtraPrimitiveOverestimationSize),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3DepthClipEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3SampleLocationsEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ColorBlendAdvanced),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ProvokingVertexMode),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3LineRasterizationMode),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3LineStippleEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3DepthClipNegativeOneToOne),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ViewportWScalingEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ViewportSwizzle),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3CoverageToColorEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3CoverageToColorLocation),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3CoverageModulationMode),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3CoverageModulationTableEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3CoverageModulationTable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3CoverageReductionMode),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3RepresentativeFragmentTestEnable),
+ FEATURE_ITEM (VkPhysicalDeviceExtendedDynamicState3FeaturesEXT, extendedDynamicState3ShadingRateImageEnable),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 31, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
tcu::TestStatus createDeviceWithUnsupportedFeaturesTestDiagnosticsConfigFeaturesNV (Context& context)
{
const PlatformInterface& vkp = context.getPlatformInterface();
}
-tcu::TestStatus createDeviceWithUnsupportedFeaturesTestMutableDescriptorTypeFeaturesVALVE (Context& context)
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestMutableDescriptorTypeFeaturesEXT (Context& context)
{
const PlatformInterface& vkp = context.getPlatformInterface();
tcu::TestLog& log = context.getTestContext().getLog();
for (const string& extension : nonCoreExtensions)
extensionNames.push_back(extension.c_str());
- if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>()))
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT>()))
{
static const Feature features[] =
{
- FEATURE_ITEM (VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE, mutableDescriptorType),
+ FEATURE_ITEM (VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT, mutableDescriptorType),
};
- auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE*>(featuresStruct);
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT*>(featuresStruct);
checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
}
}
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestPipelineProtectedAccessFeaturesEXT (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDevicePipelineProtectedAccessFeaturesEXT>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDevicePipelineProtectedAccessFeaturesEXT, pipelineProtectedAccess),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
tcu::TestStatus createDeviceWithUnsupportedFeaturesTestInheritedViewportScissorFeaturesNV (Context& context)
{
const PlatformInterface& vkp = context.getPlatformInterface();
}
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestOpacityMicromapFeaturesEXT (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceOpacityMicromapFeaturesEXT>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDeviceOpacityMicromapFeaturesEXT, micromap),
+ FEATURE_ITEM (VkPhysicalDeviceOpacityMicromapFeaturesEXT, micromapCaptureReplay),
+ FEATURE_ITEM (VkPhysicalDeviceOpacityMicromapFeaturesEXT, micromapHostCommands),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceOpacityMicromapFeaturesEXT*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 3, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
tcu::TestStatus createDeviceWithUnsupportedFeaturesTestPipelinePropertiesFeaturesEXT (Context& context)
{
const PlatformInterface& vkp = context.getPlatformInterface();
}
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestAddressBindingReportFeaturesEXT (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceAddressBindingReportFeaturesEXT>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDeviceAddressBindingReportFeaturesEXT, reportAddressBinding),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceAddressBindingReportFeaturesEXT*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestOpticalFlowFeaturesNV (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceOpticalFlowFeaturesNV>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDeviceOpticalFlowFeaturesNV, opticalFlow),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceOpticalFlowFeaturesNV*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestFaultFeaturesEXT (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceFaultFeaturesEXT>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDeviceFaultFeaturesEXT, deviceFault),
+ FEATURE_ITEM (VkPhysicalDeviceFaultFeaturesEXT, deviceFaultVendorBinary),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceFaultFeaturesEXT*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 2, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
+tcu::TestStatus createDeviceWithUnsupportedFeaturesTestShaderCoreBuiltinsFeaturesARM (Context& context)
+{
+ const PlatformInterface& vkp = context.getPlatformInterface();
+ tcu::TestLog& log = context.getTestContext().getLog();
+ tcu::ResultCollector resultCollector (log);
+ const CustomInstance instance (createCustomInstanceWithExtensions(context, context.getInstanceExtensions(), DE_NULL, true));
+ const InstanceDriver& instanceDriver (instance.getDriver());
+ const VkPhysicalDevice physicalDevice = chooseDevice(instanceDriver, instance, context.getTestContext().getCommandLine());
+ const deUint32 queueFamilyIndex = 0;
+ const deUint32 queueCount = 1;
+ const float queuePriority = 1.0f;
+ const DeviceFeatures deviceFeaturesAll (context.getInstanceInterface(), context.getUsedApiVersion(), physicalDevice, context.getInstanceExtensions(), context.getDeviceExtensions(), DE_TRUE);
+ const VkPhysicalDeviceFeatures2 deviceFeatures2 = deviceFeaturesAll.getCoreFeatures2();
+ int numErrors = 0;
+ bool isSubProcess = context.getTestContext().getCommandLine().isSubProcess();
+
+
+ VkPhysicalDeviceFeatures emptyDeviceFeatures;
+ deMemset(&emptyDeviceFeatures, 0, sizeof(emptyDeviceFeatures));
+
+ // Only non-core extensions will be used when creating the device.
+ vector<const char*> coreExtensions;
+ getCoreDeviceExtensions(context.getUsedApiVersion(), coreExtensions);
+ vector<string> nonCoreExtensions(removeExtensions(context.getDeviceExtensions(), coreExtensions));
+
+ vector<const char*> extensionNames;
+ extensionNames.reserve(nonCoreExtensions.size());
+ for (const string& extension : nonCoreExtensions)
+ extensionNames.push_back(extension.c_str());
+
+ if (const void* featuresStruct = findStructureInChain(const_cast<const void*>(deviceFeatures2.pNext), getStructureType<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM>()))
+ {
+ static const Feature features[] =
+ {
+ FEATURE_ITEM (VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM, shaderCoreBuiltins),
+ };
+ auto* supportedFeatures = reinterpret_cast<const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM*>(featuresStruct);
+ checkFeatures(vkp, instance, instanceDriver, physicalDevice, 1, features, supportedFeatures, queueFamilyIndex, queueCount, queuePriority, numErrors, resultCollector, &extensionNames, emptyDeviceFeatures, isSubProcess);
+ }
+
+ if (numErrors > 0)
+ return tcu::TestStatus(resultCollector.getResult(), "Enabling unsupported features didn't return VK_ERROR_FEATURE_NOT_PRESENT.");
+ else
+ return tcu::TestStatus(resultCollector.getResult(), resultCollector.getMessage());
+}
+
+
void addSeparateUnsupportedFeatureTests (tcu::TestCaseGroup* testGroup)
{
addFunctionCase(testGroup, "texture_compression_astchdr_features", "createDeviceWithUnsupportedFeaturesTestTextureCompressionASTCHDRFeatures", createDeviceWithUnsupportedFeaturesTestTextureCompressionASTCHDRFeatures);
addFunctionCase(testGroup, "cooperative_matrix_features_nv", "createDeviceWithUnsupportedFeaturesTestCooperativeMatrixFeaturesNV", createDeviceWithUnsupportedFeaturesTestCooperativeMatrixFeaturesNV);
addFunctionCase(testGroup, "ycbcr_image_arrays_features_ext", "createDeviceWithUnsupportedFeaturesTestYcbcrImageArraysFeaturesEXT", createDeviceWithUnsupportedFeaturesTestYcbcrImageArraysFeaturesEXT);
+ addFunctionCase(testGroup, "present_barrier_features_nv", "createDeviceWithUnsupportedFeaturesTestPresentBarrierFeaturesNV", createDeviceWithUnsupportedFeaturesTestPresentBarrierFeaturesNV);
addFunctionCase(testGroup, "performance_query_features_khr", "createDeviceWithUnsupportedFeaturesTestPerformanceQueryFeaturesKHR", createDeviceWithUnsupportedFeaturesTestPerformanceQueryFeaturesKHR);
addFunctionCase(testGroup, "coverage_reduction_mode_features_nv", "createDeviceWithUnsupportedFeaturesTestCoverageReductionModeFeaturesNV", createDeviceWithUnsupportedFeaturesTestCoverageReductionModeFeaturesNV);
addFunctionCase(testGroup, "shader_integer_functions2_features_intel", "createDeviceWithUnsupportedFeaturesTestShaderIntegerFunctions2FeaturesINTEL", createDeviceWithUnsupportedFeaturesTestShaderIntegerFunctions2FeaturesINTEL);
addFunctionCase(testGroup, "border_color_swizzle_features_ext", "createDeviceWithUnsupportedFeaturesTestBorderColorSwizzleFeaturesEXT", createDeviceWithUnsupportedFeaturesTestBorderColorSwizzleFeaturesEXT);
addFunctionCase(testGroup, "extended_dynamic_state_features_ext", "createDeviceWithUnsupportedFeaturesTestExtendedDynamicStateFeaturesEXT", createDeviceWithUnsupportedFeaturesTestExtendedDynamicStateFeaturesEXT);
addFunctionCase(testGroup, "extended_dynamic_state2_features_ext", "createDeviceWithUnsupportedFeaturesTestExtendedDynamicState2FeaturesEXT", createDeviceWithUnsupportedFeaturesTestExtendedDynamicState2FeaturesEXT);
+ addFunctionCase(testGroup, "extended_dynamic_state3_features_ext", "createDeviceWithUnsupportedFeaturesTestExtendedDynamicState3FeaturesEXT", createDeviceWithUnsupportedFeaturesTestExtendedDynamicState3FeaturesEXT);
addFunctionCase(testGroup, "diagnostics_config_features_nv", "createDeviceWithUnsupportedFeaturesTestDiagnosticsConfigFeaturesNV", createDeviceWithUnsupportedFeaturesTestDiagnosticsConfigFeaturesNV);
addFunctionCase(testGroup, "zero_initialize_workgroup_memory_features", "createDeviceWithUnsupportedFeaturesTestZeroInitializeWorkgroupMemoryFeatures", createDeviceWithUnsupportedFeaturesTestZeroInitializeWorkgroupMemoryFeatures);
addFunctionCase(testGroup, "shader_subgroup_uniform_control_flow_features_khr", "createDeviceWithUnsupportedFeaturesTestShaderSubgroupUniformControlFlowFeaturesKHR", createDeviceWithUnsupportedFeaturesTestShaderSubgroupUniformControlFlowFeaturesKHR);
addFunctionCase(testGroup, "shader_terminate_invocation_features", "createDeviceWithUnsupportedFeaturesTestShaderTerminateInvocationFeatures", createDeviceWithUnsupportedFeaturesTestShaderTerminateInvocationFeatures);
addFunctionCase(testGroup, "fragment_shading_rate_enums_features_nv", "createDeviceWithUnsupportedFeaturesTestFragmentShadingRateEnumsFeaturesNV", createDeviceWithUnsupportedFeaturesTestFragmentShadingRateEnumsFeaturesNV);
addFunctionCase(testGroup, "image2_d_view_of3_d_features_ext", "createDeviceWithUnsupportedFeaturesTestImage2DViewOf3DFeaturesEXT", createDeviceWithUnsupportedFeaturesTestImage2DViewOf3DFeaturesEXT);
- addFunctionCase(testGroup, "mutable_descriptor_type_features_valve", "createDeviceWithUnsupportedFeaturesTestMutableDescriptorTypeFeaturesVALVE", createDeviceWithUnsupportedFeaturesTestMutableDescriptorTypeFeaturesVALVE);
+ addFunctionCase(testGroup, "mutable_descriptor_type_features_ext", "createDeviceWithUnsupportedFeaturesTestMutableDescriptorTypeFeaturesEXT", createDeviceWithUnsupportedFeaturesTestMutableDescriptorTypeFeaturesEXT);
addFunctionCase(testGroup, "depth_clip_control_features_ext", "createDeviceWithUnsupportedFeaturesTestDepthClipControlFeaturesEXT", createDeviceWithUnsupportedFeaturesTestDepthClipControlFeaturesEXT);
addFunctionCase(testGroup, "vertex_input_dynamic_state_features_ext", "createDeviceWithUnsupportedFeaturesTestVertexInputDynamicStateFeaturesEXT", createDeviceWithUnsupportedFeaturesTestVertexInputDynamicStateFeaturesEXT);
addFunctionCase(testGroup, "external_memory_rdma_features_nv", "createDeviceWithUnsupportedFeaturesTestExternalMemoryRDMAFeaturesNV", createDeviceWithUnsupportedFeaturesTestExternalMemoryRDMAFeaturesNV);
addFunctionCase(testGroup, "primitives_generated_query_features_ext", "createDeviceWithUnsupportedFeaturesTestPrimitivesGeneratedQueryFeaturesEXT", createDeviceWithUnsupportedFeaturesTestPrimitivesGeneratedQueryFeaturesEXT);
addFunctionCase(testGroup, "legacy_dithering_features_ext", "createDeviceWithUnsupportedFeaturesTestLegacyDitheringFeaturesEXT", createDeviceWithUnsupportedFeaturesTestLegacyDitheringFeaturesEXT);
addFunctionCase(testGroup, "multisampled_render_to_single_sampled_features_ext", "createDeviceWithUnsupportedFeaturesTestMultisampledRenderToSingleSampledFeaturesEXT", createDeviceWithUnsupportedFeaturesTestMultisampledRenderToSingleSampledFeaturesEXT);
+ addFunctionCase(testGroup, "pipeline_protected_access_features_ext", "createDeviceWithUnsupportedFeaturesTestPipelineProtectedAccessFeaturesEXT", createDeviceWithUnsupportedFeaturesTestPipelineProtectedAccessFeaturesEXT);
addFunctionCase(testGroup, "inherited_viewport_scissor_features_nv", "createDeviceWithUnsupportedFeaturesTestInheritedViewportScissorFeaturesNV", createDeviceWithUnsupportedFeaturesTestInheritedViewportScissorFeaturesNV);
addFunctionCase(testGroup, "ycbcr2_plane444_formats_features_ext", "createDeviceWithUnsupportedFeaturesTestYcbcr2Plane444FormatsFeaturesEXT", createDeviceWithUnsupportedFeaturesTestYcbcr2Plane444FormatsFeaturesEXT);
addFunctionCase(testGroup, "provoking_vertex_features_ext", "createDeviceWithUnsupportedFeaturesTestProvokingVertexFeaturesEXT", createDeviceWithUnsupportedFeaturesTestProvokingVertexFeaturesEXT);
addFunctionCase(testGroup, "image_compression_control_features_ext", "createDeviceWithUnsupportedFeaturesTestImageCompressionControlFeaturesEXT", createDeviceWithUnsupportedFeaturesTestImageCompressionControlFeaturesEXT);
addFunctionCase(testGroup, "image_compression_control_swapchain_features_ext", "createDeviceWithUnsupportedFeaturesTestImageCompressionControlSwapchainFeaturesEXT", createDeviceWithUnsupportedFeaturesTestImageCompressionControlSwapchainFeaturesEXT);
addFunctionCase(testGroup, "subpass_merge_feedback_features_ext", "createDeviceWithUnsupportedFeaturesTestSubpassMergeFeedbackFeaturesEXT", createDeviceWithUnsupportedFeaturesTestSubpassMergeFeedbackFeaturesEXT);
+ addFunctionCase(testGroup, "opacity_micromap_features_ext", "createDeviceWithUnsupportedFeaturesTestOpacityMicromapFeaturesEXT", createDeviceWithUnsupportedFeaturesTestOpacityMicromapFeaturesEXT);
addFunctionCase(testGroup, "pipeline_properties_features_ext", "createDeviceWithUnsupportedFeaturesTestPipelinePropertiesFeaturesEXT", createDeviceWithUnsupportedFeaturesTestPipelinePropertiesFeaturesEXT);
addFunctionCase(testGroup, "shader_early_and_late_fragment_tests_features_amd", "createDeviceWithUnsupportedFeaturesTestShaderEarlyAndLateFragmentTestsFeaturesAMD", createDeviceWithUnsupportedFeaturesTestShaderEarlyAndLateFragmentTestsFeaturesAMD);
addFunctionCase(testGroup, "non_seamless_cube_map_features_ext", "createDeviceWithUnsupportedFeaturesTestNonSeamlessCubeMapFeaturesEXT", createDeviceWithUnsupportedFeaturesTestNonSeamlessCubeMapFeaturesEXT);
addFunctionCase(testGroup, "amigo_profiling_features_sec", "createDeviceWithUnsupportedFeaturesTestAmigoProfilingFeaturesSEC", createDeviceWithUnsupportedFeaturesTestAmigoProfilingFeaturesSEC);
addFunctionCase(testGroup, "attachment_feedback_loop_layout_features_ext", "createDeviceWithUnsupportedFeaturesTestAttachmentFeedbackLoopLayoutFeaturesEXT", createDeviceWithUnsupportedFeaturesTestAttachmentFeedbackLoopLayoutFeaturesEXT);
addFunctionCase(testGroup, "depth_clamp_zero_one_features_ext", "createDeviceWithUnsupportedFeaturesTestDepthClampZeroOneFeaturesEXT", createDeviceWithUnsupportedFeaturesTestDepthClampZeroOneFeaturesEXT);
+ addFunctionCase(testGroup, "address_binding_report_features_ext", "createDeviceWithUnsupportedFeaturesTestAddressBindingReportFeaturesEXT", createDeviceWithUnsupportedFeaturesTestAddressBindingReportFeaturesEXT);
+ addFunctionCase(testGroup, "optical_flow_features_nv", "createDeviceWithUnsupportedFeaturesTestOpticalFlowFeaturesNV", createDeviceWithUnsupportedFeaturesTestOpticalFlowFeaturesNV);
+ addFunctionCase(testGroup, "fault_features_ext", "createDeviceWithUnsupportedFeaturesTestFaultFeaturesEXT", createDeviceWithUnsupportedFeaturesTestFaultFeaturesEXT);
+ addFunctionCase(testGroup, "shader_core_builtins_features_arm", "createDeviceWithUnsupportedFeaturesTestShaderCoreBuiltinsFeaturesARM", createDeviceWithUnsupportedFeaturesTestShaderCoreBuiltinsFeaturesARM);
}
template<> void initFeatureFromBlob<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(VkPhysicalDeviceCooperativeMatrixFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT>(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDevicePresentBarrierFeaturesNV>(VkPhysicalDevicePresentBarrierFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDevicePerformanceQueryFeaturesKHR>(VkPhysicalDevicePerformanceQueryFeaturesKHR&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(VkPhysicalDeviceCoverageReductionModeFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceExtendedDynamicState3FeaturesEXT>(VkPhysicalDeviceExtendedDynamicState3FeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(VkPhysicalDeviceDiagnosticsConfigFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceRobustness2FeaturesEXT>(VkPhysicalDeviceRobustness2FeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>(VkPhysicalDeviceFragmentShadingRateFeaturesKHR&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT&, const AllFeaturesBlobs&) {}
-template<> void initFeatureFromBlob<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>(VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT>(VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceDepthClipControlFeaturesEXT>(VkPhysicalDeviceDepthClipControlFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceLegacyDitheringFeaturesEXT>(VkPhysicalDeviceLegacyDitheringFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>(VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDevicePipelineProtectedAccessFeaturesEXT>(VkPhysicalDevicePipelineProtectedAccessFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>(VkPhysicalDeviceInheritedViewportScissorFeaturesNV&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceProvokingVertexFeaturesEXT>(VkPhysicalDeviceProvokingVertexFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceImageCompressionControlFeaturesEXT>(VkPhysicalDeviceImageCompressionControlFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>(VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>(VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceOpacityMicromapFeaturesEXT>(VkPhysicalDeviceOpacityMicromapFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(VkPhysicalDevicePipelinePropertiesFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>(VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>(VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceAmigoProfilingFeaturesSEC>(VkPhysicalDeviceAmigoProfilingFeaturesSEC&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>(VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT&, const AllFeaturesBlobs&) {}
template<> void initFeatureFromBlob<VkPhysicalDeviceDepthClampZeroOneFeaturesEXT>(VkPhysicalDeviceDepthClampZeroOneFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceAddressBindingReportFeaturesEXT>(VkPhysicalDeviceAddressBindingReportFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceOpticalFlowFeaturesNV>(VkPhysicalDeviceOpticalFlowFeaturesNV&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceFaultFeaturesEXT>(VkPhysicalDeviceFaultFeaturesEXT&, const AllFeaturesBlobs&) {}
+template<> void initFeatureFromBlob<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM>(VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM&, const AllFeaturesBlobs&) {}
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTransformFeedbackFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT, VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME, VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION, 127}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDynamicRenderingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR, VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME, VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION, 126}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCornerSampledImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME, VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION, 125}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiviewFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 124}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION, 123}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceASTCDecodeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION, 122}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineRobustnessFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION, 121}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME, VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION, 120}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderFloat16Int8Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR, VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME, VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION, 119}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice16BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR, VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION, 118}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION, 117}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImagelessFramebufferFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION, 116}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePerformanceQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 115}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVariablePointersFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR, VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME, VK_KHR_VARIABLE_POINTERS_SPEC_VERSION, 114}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInlineUniformBlockFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 113}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 112}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAccelerationStructureFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 111}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 110}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, VK_KHR_RAY_QUERY_EXTENSION_NAME, VK_KHR_RAY_QUERY_SPEC_VERSION, 109}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION, 108}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSamplerYcbcrConversionFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, 107}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorIndexingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 106}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 105}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShadingRateImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 104}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION, 103}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION, 102}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice8BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION, 101}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicInt64Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR, VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME, VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION, 100}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderClockFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, VK_KHR_SHADER_CLOCK_EXTENSION_NAME, VK_KHR_SHADER_CLOCK_SPEC_VERSION, 99}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME, VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION, 98}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION, 97}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME, VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION, 96}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 95}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageFootprintFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME, VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION, 94}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExclusiveScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION, 93}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTimelineSemaphoreFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR, VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME, VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION, 92}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION, 91}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVulkanMemoryModelFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR, VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME, VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION, 90}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderTerminateInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR, VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME, VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION, 89}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 88}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceScalarBlockLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT, VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME, VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION, 87}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubgroupSizeControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 86}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 85}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoherentMemoryFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME, VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION, 84}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION, 83}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMemoryPriorityFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION, 82}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION, 81}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION, 80}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 79}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentWaitFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, VK_KHR_PRESENT_WAIT_EXTENSION_NAME, VK_KHR_PRESENT_WAIT_SPEC_VERSION, 78}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 77}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME, VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION, 76}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION, 75}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT, VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME, VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION, 74}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceUniformBufferStandardLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION, 73}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProvokingVertexFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 72}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 71}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLineRasterizationFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 70}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION, 69}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceHostQueryResetFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION, 68}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION, 67}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION, 66}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION, 65}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION, 64}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION, 63}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 62}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME, VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION, 61}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerDotProductFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 60}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION, 59}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION, 58}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRobustness2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 57}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCustomBorderColorFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 56}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentIdFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION, 55}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrivateDataFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT, VK_EXT_PRIVATE_DATA_EXTENSION_NAME, VK_EXT_PRIVATE_DATA_SPEC_VERSION, 54}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineCreationCacheControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION, 53}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME, VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION, 52}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSynchronization2Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR, VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME, VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION, 51}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 50}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION, 49}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 48}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION, 47}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR, VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME, VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION, 46}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 45}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME, VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION, 44}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT, VK_EXT_MESH_SHADER_EXTENSION_NAME, VK_EXT_MESH_SHADER_SPEC_VERSION, 43}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT, VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME, VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION, 42}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 41}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageRobustnessFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT, VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION, 40}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR, VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME, VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION, 39}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageCompressionControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT, VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION, 38}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION, 37}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice4444FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, VK_EXT_4444_FORMATS_EXTENSION_NAME, VK_EXT_4444_FORMATS_SPEC_VERSION, 36}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME, VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION, 35}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION, 34}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT, VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION, 33}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION, 32}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION, 31}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION, 30}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME, VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION, 29}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME, VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION, 28}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT, VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME, VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION, 27}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION, 26}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION, 25}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceColorWriteEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME, VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION, 24}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME, VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION, 23}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR, VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME, VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION, 22}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageViewMinLodFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME, VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION, 21}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiDrawFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 20}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME, VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION, 19}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME, VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION, 18}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION, 17}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMaintenance4Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION, 16}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION, 15}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClampZeroOneFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT, VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME, VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION, 14}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT, VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME, VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION, 13}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 12}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME, VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION, 11}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION, 10}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageProcessingFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION, 9}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT, VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME, VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION, 8}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION, 7}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT, VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME, VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION, 6}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLegacyDitheringFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT, VK_EXT_LEGACY_DITHERING_EXTENSION_NAME, VK_EXT_LEGACY_DITHERING_SPEC_VERSION, 5}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM, VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME, VK_QCOM_TILE_PROPERTIES_SPEC_VERSION, 4}; }
-template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAmigoProfilingFeaturesSEC>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC, VK_SEC_AMIGO_PROFILING_EXTENSION_NAME, VK_SEC_AMIGO_PROFILING_SPEC_VERSION, 3}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTransformFeedbackFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT, VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME, VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION, 135}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDynamicRenderingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR, VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME, VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION, 134}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCornerSampledImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV, VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME, VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION, 133}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiviewFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 132}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTextureCompressionASTCHDRFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME, VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION, 131}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceASTCDecodeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT, VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME, VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION, 130}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineRobustnessFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION, 129}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceConditionalRenderingFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT, VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME, VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION, 128}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderFloat16Int8Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR, VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME, VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION, 127}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice16BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR, VK_KHR_16BIT_STORAGE_EXTENSION_NAME, VK_KHR_16BIT_STORAGE_SPEC_VERSION, 126}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT, VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION, 125}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImagelessFramebufferFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR, VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME, VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION, 124}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePerformanceQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 123}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVariablePointersFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR, VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME, VK_KHR_VARIABLE_POINTERS_SPEC_VERSION, 122}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInlineUniformBlockFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 121}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 120}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAccelerationStructureFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 119}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingPipelineFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 118}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR, VK_KHR_RAY_QUERY_EXTENSION_NAME, VK_KHR_RAY_QUERY_SPEC_VERSION, 117}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSMBuiltinsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION, 116}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSamplerYcbcrConversionFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR, VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME, VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION, 115}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorIndexingFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 114}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePortabilitySubsetFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 113}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShadingRateImageFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 112}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME, VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION, 111}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION, 110}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice8BitStorageFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR, VK_KHR_8BIT_STORAGE_EXTENSION_NAME, VK_KHR_8BIT_STORAGE_SPEC_VERSION, 109}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicInt64Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR, VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME, VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION, 108}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderClockFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR, VK_KHR_SHADER_CLOCK_EXTENSION_NAME, VK_KHR_SHADER_CLOCK_SPEC_VERSION, 107}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR, VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME, VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION, 106}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION, 105}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceComputeShaderDerivativesFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV, VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME, VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION, 104}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 103}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageFootprintFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV, VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME, VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION, 102}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExclusiveScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV, VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME, VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION, 101}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTimelineSemaphoreFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR, VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME, VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION, 100}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME, VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION, 99}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVulkanMemoryModelFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR, VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME, VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION, 98}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderTerminateInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR, VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME, VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION, 97}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 96}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceScalarBlockLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT, VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME, VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION, 95}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubgroupSizeControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 94}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 93}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoherentMemoryFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD, VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME, VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION, 92}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME, VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION, 91}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMemoryPriorityFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT, VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME, VK_EXT_MEMORY_PRIORITY_SPEC_VERSION, 90}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME, VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION, 89}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME, VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION, 88}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT, VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 87}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentWaitFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR, VK_KHR_PRESENT_WAIT_EXTENSION_NAME, VK_KHR_PRESENT_WAIT_SPEC_VERSION, 86}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCooperativeMatrixFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 85}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCoverageReductionModeFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV, VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME, VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION, 84}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT, VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME, VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION, 83}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceYcbcrImageArraysFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT, VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME, VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION, 82}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceUniformBufferStandardLayoutFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME, VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION, 81}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProvokingVertexFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 80}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBufferDeviceAddressFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR, VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME, VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION, 79}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLineRasterizationFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 78}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloatFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION, 77}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceHostQueryResetFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT, VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME, VK_EXT_HOST_QUERY_RESET_SPEC_VERSION, 76}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceIndexTypeUint8FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT, VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME, VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION, 75}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicStateFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION, 74}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME, VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION, 73}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT, VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME, VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION, 72}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME, VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION, 71}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 70}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInheritedViewportScissorFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV, VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME, VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION, 69}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderIntegerDotProductFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 68}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION, 67}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT, VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION, 66}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRobustness2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 65}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceCustomBorderColorFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 64}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentBarrierFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV, VK_NV_PRESENT_BARRIER_EXTENSION_NAME, VK_NV_PRESENT_BARRIER_SPEC_VERSION, 63}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePresentIdFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION, 62}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrivateDataFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT, VK_EXT_PRIVATE_DATA_EXTENSION_NAME, VK_EXT_PRIVATE_DATA_SPEC_VERSION, 61}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineCreationCacheControlFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION, 60}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDiagnosticsConfigFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV, VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME, VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION, 59}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSynchronization2Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR, VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME, VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION, 58}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 57}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME, VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION, 56}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 55}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME, VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION, 54}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR, VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME, VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION, 53}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 52}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMotionBlurFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV, VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME, VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION, 51}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMeshShaderFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT, VK_EXT_MESH_SHADER_EXTENSION_NAME, VK_EXT_MESH_SHADER_SPEC_VERSION, 50}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT, VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME, VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION, 49}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMap2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 48}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageRobustnessFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT, VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION, 47}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR, VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME, VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION, 46}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageCompressionControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT, VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION, 45}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION, 44}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevice4444FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT, VK_EXT_4444_FORMATS_EXTENSION_NAME, VK_EXT_4444_FORMATS_SPEC_VERSION, 43}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFaultFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT, VK_EXT_DEVICE_FAULT_EXTENSION_NAME, VK_EXT_DEVICE_FAULT_SPEC_VERSION, 42}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT, VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME, VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION, 41}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT, VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION, 40}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAddressBindingReportFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT, VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION, 39}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClipControlFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT, VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION, 38}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION, 37}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION, 36}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceInvocationMaskFeaturesHUAWEI>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI, VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME, VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION, 35}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExternalMemoryRDMAFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV, VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME, VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION, 34}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT, VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME, VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION, 33}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME, VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION, 32}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicState2FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION, 31}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceColorWriteEnableFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT, VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME, VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION, 30}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT, VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME, VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION, 29}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR, VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME, VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION, 28}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageViewMinLodFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT, VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME, VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION, 27}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMultiDrawFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 26}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT, VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME, VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION, 25}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceOpacityMicromapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT, VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME, VK_EXT_OPACITY_MICROMAP_SPEC_VERSION, 24}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT, VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME, VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION, 23}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION, 22}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMaintenance4Features>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION, 21}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME, VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION, 20}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceDepthClampZeroOneFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT, VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME, VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION, 19}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT, VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME, VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION, 18}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 17}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV, VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME, VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION, 16}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION, 15}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceImageProcessingFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION, 14}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceExtendedDynamicState3FeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION, 13}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT, VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME, VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION, 12}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION, 11}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT, VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME, VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION, 10}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceOpticalFlowFeaturesNV>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV, VK_NV_OPTICAL_FLOW_EXTENSION_NAME, VK_NV_OPTICAL_FLOW_SPEC_VERSION, 9}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceLegacyDitheringFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT, VK_EXT_LEGACY_DITHERING_EXTENSION_NAME, VK_EXT_LEGACY_DITHERING_SPEC_VERSION, 8}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDevicePipelineProtectedAccessFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT, VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME, VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION, 7}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM, VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME, VK_QCOM_TILE_PROPERTIES_SPEC_VERSION, 6}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceAmigoProfilingFeaturesSEC>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC, VK_SEC_AMIGO_PROFILING_EXTENSION_NAME, VK_SEC_AMIGO_PROFILING_SPEC_VERSION, 5}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT, VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION, 4}; }
+template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM, VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME, VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION, 3}; }
template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceProtectedMemoryFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 2}; }
template<> FeatureDesc makeFeatureDesc<VkPhysicalDeviceShaderDrawParametersFeatures>(void) { return FeatureDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES, DECL_SHADER_DRAW_PARAMETERS_EXTENSION_NAME, 0, 1}; }
{ createFeatureStructWrapper<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>, VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceRobustness2FeaturesEXT>, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceCustomBorderColorFeaturesEXT>, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDevicePresentBarrierFeaturesNV>, VK_NV_PRESENT_BARRIER_EXTENSION_NAME, VK_NV_PRESENT_BARRIER_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDevicePresentIdFeaturesKHR>, VK_KHR_PRESENT_ID_EXTENSION_NAME, VK_KHR_PRESENT_ID_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDevicePrivateDataFeatures>, VK_EXT_PRIVATE_DATA_EXTENSION_NAME, VK_EXT_PRIVATE_DATA_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDevicePipelineCreationCacheControlFeatures>, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME, VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceImageCompressionControlFeaturesEXT>, VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME, VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDevice4444FormatsFeaturesEXT>, VK_EXT_4444_FORMATS_EXTENSION_NAME, VK_EXT_4444_FORMATS_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceFaultFeaturesEXT>, VK_EXT_DEVICE_FAULT_EXTENSION_NAME, VK_EXT_DEVICE_FAULT_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>, VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME, VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION },
- { createFeatureStructWrapper<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>, VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME, VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceAddressBindingReportFeaturesEXT>, VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME, VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceDepthClipControlFeaturesEXT>, VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME, VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME, VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceImageViewMinLodFeaturesEXT>, VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME, VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceMultiDrawFeaturesEXT>, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>, VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME, VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceOpacityMicromapFeaturesEXT>, VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME, VK_EXT_OPACITY_MICROMAP_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>, VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME, VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME, VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceMaintenance4Features>, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>, VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME, VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME, VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceImageProcessingFeaturesQCOM>, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceExtendedDynamicState3FeaturesEXT>, VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>, VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME, VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT>, VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME, VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceOpticalFlowFeaturesNV>, VK_NV_OPTICAL_FLOW_EXTENSION_NAME, VK_NV_OPTICAL_FLOW_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceLegacyDitheringFeaturesEXT>, VK_EXT_LEGACY_DITHERING_EXTENSION_NAME, VK_EXT_LEGACY_DITHERING_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDevicePipelineProtectedAccessFeaturesEXT>, VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME, VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceTilePropertiesFeaturesQCOM>, VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME, VK_QCOM_TILE_PROPERTIES_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceAmigoProfilingFeaturesSEC>, VK_SEC_AMIGO_PROFILING_EXTENSION_NAME, VK_SEC_AMIGO_PROFILING_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT>, VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME, VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION },
+ { createFeatureStructWrapper<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM>, VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME, VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION },
{ createFeatureStructWrapper<VkPhysicalDeviceProtectedMemoryFeatures>, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0 },
{ createFeatureStructWrapper<VkPhysicalDeviceShaderDrawParametersFeatures>, DECL_SHADER_DRAW_PARAMETERS_EXTENSION_NAME, 0 },
};
return tcu::TestStatus::pass("Querying succeeded");
}
+tcu::TestStatus testPhysicalDeviceFeatureExtendedDynamicState3FeaturesEXT (Context& context)
+{
+ const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
+ const CustomInstance instance (createCustomInstanceWithExtension(context, "VK_KHR_get_physical_device_properties2"));
+ const InstanceDriver& vki (instance.getDriver());
+ const int count = 2u;
+ TestLog& log = context.getTestContext().getLog();
+ VkPhysicalDeviceFeatures2 extFeatures;
+ vector<VkExtensionProperties> properties = enumerateDeviceExtensionProperties(vki, physicalDevice, DE_NULL);
+
+ VkPhysicalDeviceExtendedDynamicState3FeaturesEXT deviceExtendedDynamicState3FeaturesEXT[count];
+ const bool isExtendedDynamicState3FeaturesEXT = checkExtension(properties, "VK_EXT_extended_dynamic_state3");
+
+ for (int ndx = 0; ndx < count; ++ndx)
+ {
+ deMemset(&deviceExtendedDynamicState3FeaturesEXT[ndx], 0xFF * ndx, sizeof(VkPhysicalDeviceExtendedDynamicState3FeaturesEXT));
+ deviceExtendedDynamicState3FeaturesEXT[ndx].sType = isExtendedDynamicState3FeaturesEXT ? VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT : VK_STRUCTURE_TYPE_MAX_ENUM;
+ deviceExtendedDynamicState3FeaturesEXT[ndx].pNext = DE_NULL;
+
+ deMemset(&extFeatures.features, 0xcd, sizeof(extFeatures.features));
+ extFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+ extFeatures.pNext = &deviceExtendedDynamicState3FeaturesEXT[ndx];
+
+ vki.getPhysicalDeviceFeatures2(physicalDevice, &extFeatures);
+ }
+
+ if (isExtendedDynamicState3FeaturesEXT)
+ log << TestLog::Message << deviceExtendedDynamicState3FeaturesEXT[0] << TestLog::EndMessage;
+
+ if (isExtendedDynamicState3FeaturesEXT &&
+ (deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3TessellationDomainOrigin != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3TessellationDomainOrigin ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3DepthClampEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3DepthClampEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3PolygonMode != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3PolygonMode ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3RasterizationSamples != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3RasterizationSamples ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3SampleMask != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3SampleMask ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3AlphaToCoverageEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3AlphaToCoverageEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3AlphaToOneEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3AlphaToOneEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3LogicOpEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3LogicOpEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ColorBlendEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ColorBlendEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ColorBlendEquation != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ColorBlendEquation ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ColorWriteMask != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ColorWriteMask ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3RasterizationStream != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3RasterizationStream ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ConservativeRasterizationMode != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ConservativeRasterizationMode ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ExtraPrimitiveOverestimationSize != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ExtraPrimitiveOverestimationSize ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3DepthClipEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3DepthClipEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3SampleLocationsEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3SampleLocationsEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ColorBlendAdvanced != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ColorBlendAdvanced ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ProvokingVertexMode != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ProvokingVertexMode ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3LineRasterizationMode != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3LineRasterizationMode ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3LineStippleEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3LineStippleEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3DepthClipNegativeOneToOne != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3DepthClipNegativeOneToOne ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ViewportWScalingEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ViewportWScalingEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ViewportSwizzle != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ViewportSwizzle ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3CoverageToColorEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3CoverageToColorEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3CoverageToColorLocation != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3CoverageToColorLocation ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3CoverageModulationMode != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3CoverageModulationMode ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3CoverageModulationTableEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3CoverageModulationTableEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3CoverageModulationTable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3CoverageModulationTable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3CoverageReductionMode != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3CoverageReductionMode ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3RepresentativeFragmentTestEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3RepresentativeFragmentTestEnable ||
+ deviceExtendedDynamicState3FeaturesEXT[0].extendedDynamicState3ShadingRateImageEnable != deviceExtendedDynamicState3FeaturesEXT[1].extendedDynamicState3ShadingRateImageEnable))
+ {
+ TCU_FAIL("Mismatch between VkPhysicalDeviceExtendedDynamicState3FeaturesEXT");
+ }
+ return tcu::TestStatus::pass("Querying succeeded");
+}
+
tcu::TestStatus testPhysicalDeviceFeatureZeroInitializeWorkgroupMemoryFeatures (Context& context)
{
const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
return tcu::TestStatus::pass("Querying succeeded");
}
+tcu::TestStatus testPhysicalDeviceFeatureMutableDescriptorTypeFeaturesEXT (Context& context)
+{
+ const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
+ const CustomInstance instance (createCustomInstanceWithExtension(context, "VK_KHR_get_physical_device_properties2"));
+ const InstanceDriver& vki (instance.getDriver());
+ const int count = 2u;
+ TestLog& log = context.getTestContext().getLog();
+ VkPhysicalDeviceFeatures2 extFeatures;
+ vector<VkExtensionProperties> properties = enumerateDeviceExtensionProperties(vki, physicalDevice, DE_NULL);
+
+ VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT deviceMutableDescriptorTypeFeaturesEXT[count];
+ const bool isMutableDescriptorTypeFeaturesEXT = checkExtension(properties, "VK_EXT_mutable_descriptor_type");
+
+ for (int ndx = 0; ndx < count; ++ndx)
+ {
+ deMemset(&deviceMutableDescriptorTypeFeaturesEXT[ndx], 0xFF * ndx, sizeof(VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT));
+ deviceMutableDescriptorTypeFeaturesEXT[ndx].sType = isMutableDescriptorTypeFeaturesEXT ? VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT : VK_STRUCTURE_TYPE_MAX_ENUM;
+ deviceMutableDescriptorTypeFeaturesEXT[ndx].pNext = DE_NULL;
+
+ deMemset(&extFeatures.features, 0xcd, sizeof(extFeatures.features));
+ extFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+ extFeatures.pNext = &deviceMutableDescriptorTypeFeaturesEXT[ndx];
+
+ vki.getPhysicalDeviceFeatures2(physicalDevice, &extFeatures);
+ }
+
+ if (isMutableDescriptorTypeFeaturesEXT)
+ log << TestLog::Message << deviceMutableDescriptorTypeFeaturesEXT[0] << TestLog::EndMessage;
+
+ if (isMutableDescriptorTypeFeaturesEXT &&
+ (deviceMutableDescriptorTypeFeaturesEXT[0].mutableDescriptorType != deviceMutableDescriptorTypeFeaturesEXT[1].mutableDescriptorType))
+ {
+ TCU_FAIL("Mismatch between VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT");
+ }
+ return tcu::TestStatus::pass("Querying succeeded");
+}
+
tcu::TestStatus testPhysicalDeviceFeatureDepthClipControlFeaturesEXT (Context& context)
{
const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
return tcu::TestStatus::pass("Querying succeeded");
}
+tcu::TestStatus testPhysicalDeviceFeaturePipelineProtectedAccessFeaturesEXT (Context& context)
+{
+ const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
+ const CustomInstance instance (createCustomInstanceWithExtension(context, "VK_KHR_get_physical_device_properties2"));
+ const InstanceDriver& vki (instance.getDriver());
+ const int count = 2u;
+ TestLog& log = context.getTestContext().getLog();
+ VkPhysicalDeviceFeatures2 extFeatures;
+ vector<VkExtensionProperties> properties = enumerateDeviceExtensionProperties(vki, physicalDevice, DE_NULL);
+
+ VkPhysicalDevicePipelineProtectedAccessFeaturesEXT devicePipelineProtectedAccessFeaturesEXT[count];
+ const bool isPipelineProtectedAccessFeaturesEXT = checkExtension(properties, "VK_EXT_pipeline_protected_access");
+
+ for (int ndx = 0; ndx < count; ++ndx)
+ {
+ deMemset(&devicePipelineProtectedAccessFeaturesEXT[ndx], 0xFF * ndx, sizeof(VkPhysicalDevicePipelineProtectedAccessFeaturesEXT));
+ devicePipelineProtectedAccessFeaturesEXT[ndx].sType = isPipelineProtectedAccessFeaturesEXT ? VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT : VK_STRUCTURE_TYPE_MAX_ENUM;
+ devicePipelineProtectedAccessFeaturesEXT[ndx].pNext = DE_NULL;
+
+ deMemset(&extFeatures.features, 0xcd, sizeof(extFeatures.features));
+ extFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+ extFeatures.pNext = &devicePipelineProtectedAccessFeaturesEXT[ndx];
+
+ vki.getPhysicalDeviceFeatures2(physicalDevice, &extFeatures);
+ }
+
+ if (isPipelineProtectedAccessFeaturesEXT)
+ log << TestLog::Message << devicePipelineProtectedAccessFeaturesEXT[0] << TestLog::EndMessage;
+
+ if (isPipelineProtectedAccessFeaturesEXT &&
+ (devicePipelineProtectedAccessFeaturesEXT[0].pipelineProtectedAccess != devicePipelineProtectedAccessFeaturesEXT[1].pipelineProtectedAccess))
+ {
+ TCU_FAIL("Mismatch between VkPhysicalDevicePipelineProtectedAccessFeaturesEXT");
+ }
+ return tcu::TestStatus::pass("Querying succeeded");
+}
+
tcu::TestStatus testPhysicalDeviceFeatureYcbcr2Plane444FormatsFeaturesEXT (Context& context)
{
const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
return tcu::TestStatus::pass("Querying succeeded");
}
+tcu::TestStatus testPhysicalDeviceFeatureOpacityMicromapFeaturesEXT (Context& context)
+{
+ const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
+ const CustomInstance instance (createCustomInstanceWithExtension(context, "VK_KHR_get_physical_device_properties2"));
+ const InstanceDriver& vki (instance.getDriver());
+ const int count = 2u;
+ TestLog& log = context.getTestContext().getLog();
+ VkPhysicalDeviceFeatures2 extFeatures;
+ vector<VkExtensionProperties> properties = enumerateDeviceExtensionProperties(vki, physicalDevice, DE_NULL);
+
+ VkPhysicalDeviceOpacityMicromapFeaturesEXT deviceOpacityMicromapFeaturesEXT[count];
+ const bool isOpacityMicromapFeaturesEXT = checkExtension(properties, "VK_EXT_opacity_micromap");
+
+ for (int ndx = 0; ndx < count; ++ndx)
+ {
+ deMemset(&deviceOpacityMicromapFeaturesEXT[ndx], 0xFF * ndx, sizeof(VkPhysicalDeviceOpacityMicromapFeaturesEXT));
+ deviceOpacityMicromapFeaturesEXT[ndx].sType = isOpacityMicromapFeaturesEXT ? VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT : VK_STRUCTURE_TYPE_MAX_ENUM;
+ deviceOpacityMicromapFeaturesEXT[ndx].pNext = DE_NULL;
+
+ deMemset(&extFeatures.features, 0xcd, sizeof(extFeatures.features));
+ extFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+ extFeatures.pNext = &deviceOpacityMicromapFeaturesEXT[ndx];
+
+ vki.getPhysicalDeviceFeatures2(physicalDevice, &extFeatures);
+ }
+
+ if (isOpacityMicromapFeaturesEXT)
+ log << TestLog::Message << deviceOpacityMicromapFeaturesEXT[0] << TestLog::EndMessage;
+
+ if (isOpacityMicromapFeaturesEXT &&
+ (deviceOpacityMicromapFeaturesEXT[0].micromap != deviceOpacityMicromapFeaturesEXT[1].micromap ||
+ deviceOpacityMicromapFeaturesEXT[0].micromapCaptureReplay != deviceOpacityMicromapFeaturesEXT[1].micromapCaptureReplay ||
+ deviceOpacityMicromapFeaturesEXT[0].micromapHostCommands != deviceOpacityMicromapFeaturesEXT[1].micromapHostCommands))
+ {
+ TCU_FAIL("Mismatch between VkPhysicalDeviceOpacityMicromapFeaturesEXT");
+ }
+ return tcu::TestStatus::pass("Querying succeeded");
+}
+
tcu::TestStatus testPhysicalDeviceFeaturePipelinePropertiesFeaturesEXT (Context& context)
{
const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
return tcu::TestStatus::pass("Querying succeeded");
}
+tcu::TestStatus testPhysicalDeviceFeatureAddressBindingReportFeaturesEXT (Context& context)
+{
+ const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
+ const CustomInstance instance (createCustomInstanceWithExtension(context, "VK_KHR_get_physical_device_properties2"));
+ const InstanceDriver& vki (instance.getDriver());
+ const int count = 2u;
+ TestLog& log = context.getTestContext().getLog();
+ VkPhysicalDeviceFeatures2 extFeatures;
+ vector<VkExtensionProperties> properties = enumerateDeviceExtensionProperties(vki, physicalDevice, DE_NULL);
+
+ VkPhysicalDeviceAddressBindingReportFeaturesEXT deviceAddressBindingReportFeaturesEXT[count];
+ const bool isAddressBindingReportFeaturesEXT = checkExtension(properties, "VK_EXT_device_address_binding_report");
+
+ for (int ndx = 0; ndx < count; ++ndx)
+ {
+ deMemset(&deviceAddressBindingReportFeaturesEXT[ndx], 0xFF * ndx, sizeof(VkPhysicalDeviceAddressBindingReportFeaturesEXT));
+ deviceAddressBindingReportFeaturesEXT[ndx].sType = isAddressBindingReportFeaturesEXT ? VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT : VK_STRUCTURE_TYPE_MAX_ENUM;
+ deviceAddressBindingReportFeaturesEXT[ndx].pNext = DE_NULL;
+
+ deMemset(&extFeatures.features, 0xcd, sizeof(extFeatures.features));
+ extFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+ extFeatures.pNext = &deviceAddressBindingReportFeaturesEXT[ndx];
+
+ vki.getPhysicalDeviceFeatures2(physicalDevice, &extFeatures);
+ }
+
+ if (isAddressBindingReportFeaturesEXT)
+ log << TestLog::Message << deviceAddressBindingReportFeaturesEXT[0] << TestLog::EndMessage;
+
+ if (isAddressBindingReportFeaturesEXT &&
+ (deviceAddressBindingReportFeaturesEXT[0].reportAddressBinding != deviceAddressBindingReportFeaturesEXT[1].reportAddressBinding))
+ {
+ TCU_FAIL("Mismatch between VkPhysicalDeviceAddressBindingReportFeaturesEXT");
+ }
+ return tcu::TestStatus::pass("Querying succeeded");
+}
+
+tcu::TestStatus testPhysicalDeviceFeatureFaultFeaturesEXT (Context& context)
+{
+ const VkPhysicalDevice physicalDevice = context.getPhysicalDevice();
+ const CustomInstance instance (createCustomInstanceWithExtension(context, "VK_KHR_get_physical_device_properties2"));
+ const InstanceDriver& vki (instance.getDriver());
+ const int count = 2u;
+ TestLog& log = context.getTestContext().getLog();
+ VkPhysicalDeviceFeatures2 extFeatures;
+ vector<VkExtensionProperties> properties = enumerateDeviceExtensionProperties(vki, physicalDevice, DE_NULL);
+
+ VkPhysicalDeviceFaultFeaturesEXT deviceFaultFeaturesEXT[count];
+ const bool isFaultFeaturesEXT = checkExtension(properties, "VK_EXT_device_fault");
+
+ for (int ndx = 0; ndx < count; ++ndx)
+ {
+ deMemset(&deviceFaultFeaturesEXT[ndx], 0xFF * ndx, sizeof(VkPhysicalDeviceFaultFeaturesEXT));
+ deviceFaultFeaturesEXT[ndx].sType = isFaultFeaturesEXT ? VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT : VK_STRUCTURE_TYPE_MAX_ENUM;
+ deviceFaultFeaturesEXT[ndx].pNext = DE_NULL;
+
+ deMemset(&extFeatures.features, 0xcd, sizeof(extFeatures.features));
+ extFeatures.sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
+ extFeatures.pNext = &deviceFaultFeaturesEXT[ndx];
+
+ vki.getPhysicalDeviceFeatures2(physicalDevice, &extFeatures);
+ }
+
+ if (isFaultFeaturesEXT)
+ log << TestLog::Message << deviceFaultFeaturesEXT[0] << TestLog::EndMessage;
+
+ if (isFaultFeaturesEXT &&
+ (deviceFaultFeaturesEXT[0].deviceFault != deviceFaultFeaturesEXT[1].deviceFault ||
+ deviceFaultFeaturesEXT[0].deviceFaultVendorBinary != deviceFaultFeaturesEXT[1].deviceFaultVendorBinary))
+ {
+ TCU_FAIL("Mismatch between VkPhysicalDeviceFaultFeaturesEXT");
+ }
+ return tcu::TestStatus::pass("Querying succeeded");
+}
+
void addSeparateFeatureTests (tcu::TestCaseGroup* testGroup)
{
addFunctionCase(testGroup, "private_data_features", "VkPhysicalDevicePrivateDataFeatures", testPhysicalDeviceFeaturePrivateDataFeatures);
addFunctionCase(testGroup, "border_color_swizzle_features_ext", "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT", testPhysicalDeviceFeatureBorderColorSwizzleFeaturesEXT);
addFunctionCase(testGroup, "extended_dynamic_state_features_ext", "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT", testPhysicalDeviceFeatureExtendedDynamicStateFeaturesEXT);
addFunctionCase(testGroup, "extended_dynamic_state2_features_ext", "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT", testPhysicalDeviceFeatureExtendedDynamicState2FeaturesEXT);
+ addFunctionCase(testGroup, "extended_dynamic_state3_features_ext", "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT", testPhysicalDeviceFeatureExtendedDynamicState3FeaturesEXT);
addFunctionCase(testGroup, "zero_initialize_workgroup_memory_features", "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures", testPhysicalDeviceFeatureZeroInitializeWorkgroupMemoryFeatures);
addFunctionCase(testGroup, "shader_subgroup_uniform_control_flow_features_khr", "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR", testPhysicalDeviceFeatureShaderSubgroupUniformControlFlowFeaturesKHR);
addFunctionCase(testGroup, "robustness2_features_ext", "VkPhysicalDeviceRobustness2FeaturesEXT", testPhysicalDeviceFeatureRobustness2FeaturesEXT);
addFunctionCase(testGroup, "fragment_shading_rate_features_khr", "VkPhysicalDeviceFragmentShadingRateFeaturesKHR", testPhysicalDeviceFeatureFragmentShadingRateFeaturesKHR);
addFunctionCase(testGroup, "shader_terminate_invocation_features", "VkPhysicalDeviceShaderTerminateInvocationFeatures", testPhysicalDeviceFeatureShaderTerminateInvocationFeatures);
addFunctionCase(testGroup, "image2_d_view_of3_d_features_ext", "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT", testPhysicalDeviceFeatureImage2DViewOf3DFeaturesEXT);
+ addFunctionCase(testGroup, "mutable_descriptor_type_features_ext", "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT", testPhysicalDeviceFeatureMutableDescriptorTypeFeaturesEXT);
addFunctionCase(testGroup, "depth_clip_control_features_ext", "VkPhysicalDeviceDepthClipControlFeaturesEXT", testPhysicalDeviceFeatureDepthClipControlFeaturesEXT);
addFunctionCase(testGroup, "vertex_input_dynamic_state_features_ext", "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT", testPhysicalDeviceFeatureVertexInputDynamicStateFeaturesEXT);
addFunctionCase(testGroup, "color_write_enable_features_ext", "VkPhysicalDeviceColorWriteEnableFeaturesEXT", testPhysicalDeviceFeatureColorWriteEnableFeaturesEXT);
addFunctionCase(testGroup, "primitives_generated_query_features_ext", "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT", testPhysicalDeviceFeaturePrimitivesGeneratedQueryFeaturesEXT);
addFunctionCase(testGroup, "legacy_dithering_features_ext", "VkPhysicalDeviceLegacyDitheringFeaturesEXT", testPhysicalDeviceFeatureLegacyDitheringFeaturesEXT);
addFunctionCase(testGroup, "multisampled_render_to_single_sampled_features_ext", "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT", testPhysicalDeviceFeatureMultisampledRenderToSingleSampledFeaturesEXT);
+ addFunctionCase(testGroup, "pipeline_protected_access_features_ext", "VkPhysicalDevicePipelineProtectedAccessFeaturesEXT", testPhysicalDeviceFeaturePipelineProtectedAccessFeaturesEXT);
addFunctionCase(testGroup, "ycbcr2_plane444_formats_features_ext", "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT", testPhysicalDeviceFeatureYcbcr2Plane444FormatsFeaturesEXT);
addFunctionCase(testGroup, "provoking_vertex_features_ext", "VkPhysicalDeviceProvokingVertexFeaturesEXT", testPhysicalDeviceFeatureProvokingVertexFeaturesEXT);
addFunctionCase(testGroup, "shader_integer_dot_product_features", "VkPhysicalDeviceShaderIntegerDotProductFeatures", testPhysicalDeviceFeatureShaderIntegerDotProductFeatures);
addFunctionCase(testGroup, "image_compression_control_features_ext", "VkPhysicalDeviceImageCompressionControlFeaturesEXT", testPhysicalDeviceFeatureImageCompressionControlFeaturesEXT);
addFunctionCase(testGroup, "image_compression_control_swapchain_features_ext", "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT", testPhysicalDeviceFeatureImageCompressionControlSwapchainFeaturesEXT);
addFunctionCase(testGroup, "subpass_merge_feedback_features_ext", "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT", testPhysicalDeviceFeatureSubpassMergeFeedbackFeaturesEXT);
+ addFunctionCase(testGroup, "opacity_micromap_features_ext", "VkPhysicalDeviceOpacityMicromapFeaturesEXT", testPhysicalDeviceFeatureOpacityMicromapFeaturesEXT);
addFunctionCase(testGroup, "pipeline_properties_features_ext", "VkPhysicalDevicePipelinePropertiesFeaturesEXT", testPhysicalDeviceFeaturePipelinePropertiesFeaturesEXT);
addFunctionCase(testGroup, "non_seamless_cube_map_features_ext", "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT", testPhysicalDeviceFeatureNonSeamlessCubeMapFeaturesEXT);
addFunctionCase(testGroup, "pipeline_robustness_features_ext", "VkPhysicalDevicePipelineRobustnessFeaturesEXT", testPhysicalDeviceFeaturePipelineRobustnessFeaturesEXT);
addFunctionCase(testGroup, "amigo_profiling_features_sec", "VkPhysicalDeviceAmigoProfilingFeaturesSEC", testPhysicalDeviceFeatureAmigoProfilingFeaturesSEC);
addFunctionCase(testGroup, "attachment_feedback_loop_layout_features_ext", "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT", testPhysicalDeviceFeatureAttachmentFeedbackLoopLayoutFeaturesEXT);
addFunctionCase(testGroup, "depth_clamp_zero_one_features_ext", "VkPhysicalDeviceDepthClampZeroOneFeaturesEXT", testPhysicalDeviceFeatureDepthClampZeroOneFeaturesEXT);
+ addFunctionCase(testGroup, "address_binding_report_features_ext", "VkPhysicalDeviceAddressBindingReportFeaturesEXT", testPhysicalDeviceFeatureAddressBindingReportFeaturesEXT);
+ addFunctionCase(testGroup, "fault_features_ext", "VkPhysicalDeviceFaultFeaturesEXT", testPhysicalDeviceFeatureFaultFeaturesEXT);
}
const vk::VkPhysicalDeviceDeviceMemoryReportFeaturesEXT& getDeviceMemoryReportFeaturesEXT (void) const;
const vk::VkPhysicalDeviceRobustness2FeaturesEXT& getRobustness2FeaturesEXT (void) const;
const vk::VkPhysicalDeviceCustomBorderColorFeaturesEXT& getCustomBorderColorFeaturesEXT (void) const;
+const vk::VkPhysicalDevicePresentBarrierFeaturesNV& getPresentBarrierFeatures (void) const;
const vk::VkPhysicalDevicePresentIdFeaturesKHR& getPresentIdFeatures (void) const;
const vk::VkPhysicalDevicePrivateDataFeatures& getPrivateDataFeatures (void) const;
const vk::VkPhysicalDevicePipelineCreationCacheControlFeatures& getPipelineCreationCacheControlFeatures (void) const;
const vk::VkPhysicalDeviceImageCompressionControlFeaturesEXT& getImageCompressionControlFeaturesEXT (void) const;
const vk::VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT& getAttachmentFeedbackLoopLayoutFeaturesEXT (void) const;
const vk::VkPhysicalDevice4444FormatsFeaturesEXT& get4444FormatsFeaturesEXT (void) const;
+const vk::VkPhysicalDeviceFaultFeaturesEXT& getFaultFeaturesEXT (void) const;
const vk::VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT& getRGBA10X6FormatsFeaturesEXT (void) const;
-const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE& getMutableDescriptorTypeFeaturesVALVE (void) const;
const vk::VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT& getVertexInputDynamicStateFeaturesEXT (void) const;
+const vk::VkPhysicalDeviceAddressBindingReportFeaturesEXT& getAddressBindingReportFeaturesEXT (void) const;
const vk::VkPhysicalDeviceDepthClipControlFeaturesEXT& getDepthClipControlFeaturesEXT (void) const;
const vk::VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT& getPrimitiveTopologyListRestartFeaturesEXT (void) const;
const vk::VkPhysicalDeviceSubpassShadingFeaturesHUAWEI& getSubpassShadingFeaturesHUAWEI (void) const;
const vk::VkPhysicalDeviceImageViewMinLodFeaturesEXT& getImageViewMinLodFeaturesEXT (void) const;
const vk::VkPhysicalDeviceMultiDrawFeaturesEXT& getMultiDrawFeaturesEXT (void) const;
const vk::VkPhysicalDeviceImage2DViewOf3DFeaturesEXT& getImage2DViewOf3DFeaturesEXT (void) const;
+const vk::VkPhysicalDeviceOpacityMicromapFeaturesEXT& getOpacityMicromapFeaturesEXT (void) const;
const vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT& getBorderColorSwizzleFeaturesEXT (void) const;
const vk::VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT& getPageableDeviceLocalMemoryFeaturesEXT (void) const;
const vk::VkPhysicalDeviceMaintenance4Features& getMaintenance4Features (void) const;
const vk::VkPhysicalDeviceLinearColorAttachmentFeaturesNV& getLinearColorAttachmentFeatures (void) const;
const vk::VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& getImageCompressionControlSwapchainFeaturesEXT (void) const;
const vk::VkPhysicalDeviceImageProcessingFeaturesQCOM& getImageProcessingFeaturesQCOM (void) const;
+const vk::VkPhysicalDeviceExtendedDynamicState3FeaturesEXT& getExtendedDynamicState3FeaturesEXT (void) const;
const vk::VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT& getSubpassMergeFeedbackFeaturesEXT (void) const;
const vk::VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT& getShaderModuleIdentifierFeaturesEXT (void) const;
const vk::VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT& getRasterizationOrderAttachmentAccessFeaturesEXT (void) const;
+const vk::VkPhysicalDeviceOpticalFlowFeaturesNV& getOpticalFlowFeatures (void) const;
const vk::VkPhysicalDeviceLegacyDitheringFeaturesEXT& getLegacyDitheringFeaturesEXT (void) const;
+const vk::VkPhysicalDevicePipelineProtectedAccessFeaturesEXT& getPipelineProtectedAccessFeaturesEXT (void) const;
const vk::VkPhysicalDeviceTilePropertiesFeaturesQCOM& getTilePropertiesFeaturesQCOM (void) const;
const vk::VkPhysicalDeviceAmigoProfilingFeaturesSEC& getAmigoProfilingFeaturesSEC (void) const;
+const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT& getMutableDescriptorTypeFeaturesEXT (void) const;
+const vk::VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM& getShaderCoreBuiltinsFeaturesARM (void) const;
const vk::VkPhysicalDeviceProtectedMemoryFeatures& getProtectedMemoryFeatures (void) const;
const vk::VkPhysicalDeviceShaderDrawParametersFeatures& getShaderDrawParametersFeatures (void) const;
const vk::VkPhysicalDeviceDeviceMemoryReportFeaturesEXT& Context::getDeviceMemoryReportFeaturesEXT (void) const { return m_device->getDeviceMemoryReportFeaturesEXT(); }
const vk::VkPhysicalDeviceRobustness2FeaturesEXT& Context::getRobustness2FeaturesEXT (void) const { return m_device->getRobustness2FeaturesEXT(); }
const vk::VkPhysicalDeviceCustomBorderColorFeaturesEXT& Context::getCustomBorderColorFeaturesEXT (void) const { return m_device->getCustomBorderColorFeaturesEXT(); }
+const vk::VkPhysicalDevicePresentBarrierFeaturesNV& Context::getPresentBarrierFeatures (void) const { return m_device->getPresentBarrierFeatures(); }
const vk::VkPhysicalDevicePresentIdFeaturesKHR& Context::getPresentIdFeatures (void) const { return m_device->getPresentIdFeatures(); }
const vk::VkPhysicalDevicePrivateDataFeatures& Context::getPrivateDataFeatures (void) const { return m_device->getPrivateDataFeatures(); }
const vk::VkPhysicalDevicePipelineCreationCacheControlFeatures& Context::getPipelineCreationCacheControlFeatures (void) const { return m_device->getPipelineCreationCacheControlFeatures(); }
const vk::VkPhysicalDeviceImageCompressionControlFeaturesEXT& Context::getImageCompressionControlFeaturesEXT (void) const { return m_device->getImageCompressionControlFeaturesEXT(); }
const vk::VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT& Context::getAttachmentFeedbackLoopLayoutFeaturesEXT (void) const { return m_device->getAttachmentFeedbackLoopLayoutFeaturesEXT(); }
const vk::VkPhysicalDevice4444FormatsFeaturesEXT& Context::get4444FormatsFeaturesEXT (void) const { return m_device->get4444FormatsFeaturesEXT(); }
+const vk::VkPhysicalDeviceFaultFeaturesEXT& Context::getFaultFeaturesEXT (void) const { return m_device->getFaultFeaturesEXT(); }
const vk::VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT& Context::getRGBA10X6FormatsFeaturesEXT (void) const { return m_device->getRGBA10X6FormatsFeaturesEXT(); }
-const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE& Context::getMutableDescriptorTypeFeaturesVALVE (void) const { return m_device->getMutableDescriptorTypeFeaturesVALVE(); }
const vk::VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT& Context::getVertexInputDynamicStateFeaturesEXT (void) const { return m_device->getVertexInputDynamicStateFeaturesEXT(); }
+const vk::VkPhysicalDeviceAddressBindingReportFeaturesEXT& Context::getAddressBindingReportFeaturesEXT (void) const { return m_device->getAddressBindingReportFeaturesEXT(); }
const vk::VkPhysicalDeviceDepthClipControlFeaturesEXT& Context::getDepthClipControlFeaturesEXT (void) const { return m_device->getDepthClipControlFeaturesEXT(); }
const vk::VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT& Context::getPrimitiveTopologyListRestartFeaturesEXT (void) const { return m_device->getPrimitiveTopologyListRestartFeaturesEXT(); }
const vk::VkPhysicalDeviceSubpassShadingFeaturesHUAWEI& Context::getSubpassShadingFeaturesHUAWEI (void) const { return m_device->getSubpassShadingFeaturesHUAWEI(); }
const vk::VkPhysicalDeviceImageViewMinLodFeaturesEXT& Context::getImageViewMinLodFeaturesEXT (void) const { return m_device->getImageViewMinLodFeaturesEXT(); }
const vk::VkPhysicalDeviceMultiDrawFeaturesEXT& Context::getMultiDrawFeaturesEXT (void) const { return m_device->getMultiDrawFeaturesEXT(); }
const vk::VkPhysicalDeviceImage2DViewOf3DFeaturesEXT& Context::getImage2DViewOf3DFeaturesEXT (void) const { return m_device->getImage2DViewOf3DFeaturesEXT(); }
+const vk::VkPhysicalDeviceOpacityMicromapFeaturesEXT& Context::getOpacityMicromapFeaturesEXT (void) const { return m_device->getOpacityMicromapFeaturesEXT(); }
const vk::VkPhysicalDeviceBorderColorSwizzleFeaturesEXT& Context::getBorderColorSwizzleFeaturesEXT (void) const { return m_device->getBorderColorSwizzleFeaturesEXT(); }
const vk::VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT& Context::getPageableDeviceLocalMemoryFeaturesEXT (void) const { return m_device->getPageableDeviceLocalMemoryFeaturesEXT(); }
const vk::VkPhysicalDeviceMaintenance4Features& Context::getMaintenance4Features (void) const { return m_device->getMaintenance4Features(); }
const vk::VkPhysicalDeviceLinearColorAttachmentFeaturesNV& Context::getLinearColorAttachmentFeatures (void) const { return m_device->getLinearColorAttachmentFeatures(); }
const vk::VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& Context::getImageCompressionControlSwapchainFeaturesEXT (void) const { return m_device->getImageCompressionControlSwapchainFeaturesEXT(); }
const vk::VkPhysicalDeviceImageProcessingFeaturesQCOM& Context::getImageProcessingFeaturesQCOM (void) const { return m_device->getImageProcessingFeaturesQCOM(); }
+const vk::VkPhysicalDeviceExtendedDynamicState3FeaturesEXT& Context::getExtendedDynamicState3FeaturesEXT (void) const { return m_device->getExtendedDynamicState3FeaturesEXT(); }
const vk::VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT& Context::getSubpassMergeFeedbackFeaturesEXT (void) const { return m_device->getSubpassMergeFeedbackFeaturesEXT(); }
const vk::VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT& Context::getShaderModuleIdentifierFeaturesEXT (void) const { return m_device->getShaderModuleIdentifierFeaturesEXT(); }
const vk::VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT& Context::getRasterizationOrderAttachmentAccessFeaturesEXT (void) const { return m_device->getRasterizationOrderAttachmentAccessFeaturesEXT(); }
+const vk::VkPhysicalDeviceOpticalFlowFeaturesNV& Context::getOpticalFlowFeatures (void) const { return m_device->getOpticalFlowFeatures(); }
const vk::VkPhysicalDeviceLegacyDitheringFeaturesEXT& Context::getLegacyDitheringFeaturesEXT (void) const { return m_device->getLegacyDitheringFeaturesEXT(); }
+const vk::VkPhysicalDevicePipelineProtectedAccessFeaturesEXT& Context::getPipelineProtectedAccessFeaturesEXT (void) const { return m_device->getPipelineProtectedAccessFeaturesEXT(); }
const vk::VkPhysicalDeviceTilePropertiesFeaturesQCOM& Context::getTilePropertiesFeaturesQCOM (void) const { return m_device->getTilePropertiesFeaturesQCOM(); }
const vk::VkPhysicalDeviceAmigoProfilingFeaturesSEC& Context::getAmigoProfilingFeaturesSEC (void) const { return m_device->getAmigoProfilingFeaturesSEC(); }
+const vk::VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT& Context::getMutableDescriptorTypeFeaturesEXT (void) const { return m_device->getMutableDescriptorTypeFeaturesEXT(); }
+const vk::VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM& Context::getShaderCoreBuiltinsFeaturesARM (void) const { return m_device->getShaderCoreBuiltinsFeaturesARM(); }
const vk::VkPhysicalDeviceProtectedMemoryFeatures& Context::getProtectedMemoryFeatures (void) const { return m_device->getProtectedMemoryFeatures(); }
const vk::VkPhysicalDeviceShaderDrawParametersFeatures& Context::getShaderDrawParametersFeatures (void) const { return m_device->getShaderDrawParametersFeatures(); }
const VkPhysicalDeviceDeviceMemoryReportFeaturesEXT& getDeviceMemoryReportFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDeviceMemoryReportFeaturesEXT>(); }
const VkPhysicalDeviceRobustness2FeaturesEXT& getRobustness2FeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRobustness2FeaturesEXT>(); }
const VkPhysicalDeviceCustomBorderColorFeaturesEXT& getCustomBorderColorFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceCustomBorderColorFeaturesEXT>(); }
+const VkPhysicalDevicePresentBarrierFeaturesNV& getPresentBarrierFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePresentBarrierFeaturesNV>(); }
const VkPhysicalDevicePresentIdFeaturesKHR& getPresentIdFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePresentIdFeaturesKHR>(); }
const VkPhysicalDevicePrivateDataFeatures& getPrivateDataFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrivateDataFeatures>(); }
const VkPhysicalDevicePipelineCreationCacheControlFeatures& getPipelineCreationCacheControlFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineCreationCacheControlFeatures>(); }
const VkPhysicalDeviceImageCompressionControlFeaturesEXT& getImageCompressionControlFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageCompressionControlFeaturesEXT>(); }
const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT& getAttachmentFeedbackLoopLayoutFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT>(); }
const VkPhysicalDevice4444FormatsFeaturesEXT& get4444FormatsFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevice4444FormatsFeaturesEXT>(); }
+const VkPhysicalDeviceFaultFeaturesEXT& getFaultFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceFaultFeaturesEXT>(); }
const VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT& getRGBA10X6FormatsFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT>(); }
-const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE& getMutableDescriptorTypeFeaturesVALVE (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE>(); }
const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT& getVertexInputDynamicStateFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT>(); }
+const VkPhysicalDeviceAddressBindingReportFeaturesEXT& getAddressBindingReportFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAddressBindingReportFeaturesEXT>(); }
const VkPhysicalDeviceDepthClipControlFeaturesEXT& getDepthClipControlFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceDepthClipControlFeaturesEXT>(); }
const VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT& getPrimitiveTopologyListRestartFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>(); }
const VkPhysicalDeviceSubpassShadingFeaturesHUAWEI& getSubpassShadingFeaturesHUAWEI (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubpassShadingFeaturesHUAWEI>(); }
const VkPhysicalDeviceImageViewMinLodFeaturesEXT& getImageViewMinLodFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageViewMinLodFeaturesEXT>(); }
const VkPhysicalDeviceMultiDrawFeaturesEXT& getMultiDrawFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMultiDrawFeaturesEXT>(); }
const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT& getImage2DViewOf3DFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImage2DViewOf3DFeaturesEXT>(); }
+const VkPhysicalDeviceOpacityMicromapFeaturesEXT& getOpacityMicromapFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceOpacityMicromapFeaturesEXT>(); }
const VkPhysicalDeviceBorderColorSwizzleFeaturesEXT& getBorderColorSwizzleFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceBorderColorSwizzleFeaturesEXT>(); }
const VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT& getPageableDeviceLocalMemoryFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT>(); }
const VkPhysicalDeviceMaintenance4Features& getMaintenance4Features (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMaintenance4Features>(); }
const VkPhysicalDeviceLinearColorAttachmentFeaturesNV& getLinearColorAttachmentFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceLinearColorAttachmentFeaturesNV>(); }
const VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT& getImageCompressionControlSwapchainFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT>(); }
const VkPhysicalDeviceImageProcessingFeaturesQCOM& getImageProcessingFeaturesQCOM (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceImageProcessingFeaturesQCOM>(); }
+const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT& getExtendedDynamicState3FeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceExtendedDynamicState3FeaturesEXT>(); }
const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT& getSubpassMergeFeedbackFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT>(); }
const VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT& getShaderModuleIdentifierFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT>(); }
const VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT& getRasterizationOrderAttachmentAccessFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT>(); }
+const VkPhysicalDeviceOpticalFlowFeaturesNV& getOpticalFlowFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceOpticalFlowFeaturesNV>(); }
const VkPhysicalDeviceLegacyDitheringFeaturesEXT& getLegacyDitheringFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceLegacyDitheringFeaturesEXT>(); }
+const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT& getPipelineProtectedAccessFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDevicePipelineProtectedAccessFeaturesEXT>(); }
const VkPhysicalDeviceTilePropertiesFeaturesQCOM& getTilePropertiesFeaturesQCOM (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(); }
const VkPhysicalDeviceAmigoProfilingFeaturesSEC& getAmigoProfilingFeaturesSEC (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceAmigoProfilingFeaturesSEC>(); }
+const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT& getMutableDescriptorTypeFeaturesEXT (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT>(); }
+const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM& getShaderCoreBuiltinsFeaturesARM (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM>(); }
const VkPhysicalDeviceProtectedMemoryFeatures& getProtectedMemoryFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceProtectedMemoryFeatures>(); }
const VkPhysicalDeviceShaderDrawParametersFeatures& getShaderDrawParametersFeatures (void) const { return m_deviceFeatures.getFeatureType<VkPhysicalDeviceShaderDrawParametersFeatures>(); }
CmdSetLogicOpEXTFunc cmdSetLogicOpEXT;
CmdSetPrimitiveRestartEnableFunc cmdSetPrimitiveRestartEnable;
CreatePrivateDataSlotFunc createPrivateDataSlot;
+CmdSetTessellationDomainOriginEXTFunc cmdSetTessellationDomainOriginEXT;
+CmdSetDepthClampEnableEXTFunc cmdSetDepthClampEnableEXT;
+CmdSetPolygonModeEXTFunc cmdSetPolygonModeEXT;
+CmdSetRasterizationSamplesEXTFunc cmdSetRasterizationSamplesEXT;
+CmdSetSampleMaskEXTFunc cmdSetSampleMaskEXT;
+CmdSetAlphaToCoverageEnableEXTFunc cmdSetAlphaToCoverageEnableEXT;
+CmdSetAlphaToOneEnableEXTFunc cmdSetAlphaToOneEnableEXT;
+CmdSetLogicOpEnableEXTFunc cmdSetLogicOpEnableEXT;
+CmdSetColorBlendEnableEXTFunc cmdSetColorBlendEnableEXT;
+CmdSetColorBlendEquationEXTFunc cmdSetColorBlendEquationEXT;
+CmdSetColorWriteMaskEXTFunc cmdSetColorWriteMaskEXT;
+CmdSetRasterizationStreamEXTFunc cmdSetRasterizationStreamEXT;
+CmdSetConservativeRasterizationModeEXTFunc cmdSetConservativeRasterizationModeEXT;
+CmdSetExtraPrimitiveOverestimationSizeEXTFunc cmdSetExtraPrimitiveOverestimationSizeEXT;
+CmdSetDepthClipEnableEXTFunc cmdSetDepthClipEnableEXT;
+CmdSetSampleLocationsEnableEXTFunc cmdSetSampleLocationsEnableEXT;
+CmdSetColorBlendAdvancedEXTFunc cmdSetColorBlendAdvancedEXT;
+CmdSetProvokingVertexModeEXTFunc cmdSetProvokingVertexModeEXT;
+CmdSetLineRasterizationModeEXTFunc cmdSetLineRasterizationModeEXT;
+CmdSetLineStippleEnableEXTFunc cmdSetLineStippleEnableEXT;
+CmdSetDepthClipNegativeOneToOneEXTFunc cmdSetDepthClipNegativeOneToOneEXT;
+CmdSetViewportWScalingEnableNVFunc cmdSetViewportWScalingEnableNV;
+CmdSetViewportSwizzleNVFunc cmdSetViewportSwizzleNV;
+CmdSetCoverageToColorEnableNVFunc cmdSetCoverageToColorEnableNV;
+CmdSetCoverageToColorLocationNVFunc cmdSetCoverageToColorLocationNV;
+CmdSetCoverageModulationModeNVFunc cmdSetCoverageModulationModeNV;
+CmdSetCoverageModulationTableEnableNVFunc cmdSetCoverageModulationTableEnableNV;
+CmdSetCoverageModulationTableNVFunc cmdSetCoverageModulationTableNV;
+CmdSetShadingRateImageEnableNVFunc cmdSetShadingRateImageEnableNV;
+CmdSetCoverageReductionModeNVFunc cmdSetCoverageReductionModeNV;
+CmdSetRepresentativeFragmentTestEnableNVFunc cmdSetRepresentativeFragmentTestEnableNV;
DestroyPrivateDataSlotFunc destroyPrivateDataSlot;
SetPrivateDataFunc setPrivateData;
GetPrivateDataFunc getPrivateData;
CmdEndRenderingFunc cmdEndRendering;
GetDescriptorSetLayoutHostMappingInfoVALVEFunc getDescriptorSetLayoutHostMappingInfoVALVE;
GetDescriptorSetHostMappingVALVEFunc getDescriptorSetHostMappingVALVE;
+CreateMicromapEXTFunc createMicromapEXT;
+CmdBuildMicromapsEXTFunc cmdBuildMicromapsEXT;
+BuildMicromapsEXTFunc buildMicromapsEXT;
+DestroyMicromapEXTFunc destroyMicromapEXT;
+CmdCopyMicromapEXTFunc cmdCopyMicromapEXT;
+CopyMicromapEXTFunc copyMicromapEXT;
+CmdCopyMicromapToMemoryEXTFunc cmdCopyMicromapToMemoryEXT;
+CopyMicromapToMemoryEXTFunc copyMicromapToMemoryEXT;
+CmdCopyMemoryToMicromapEXTFunc cmdCopyMemoryToMicromapEXT;
+CopyMemoryToMicromapEXTFunc copyMemoryToMicromapEXT;
+CmdWriteMicromapsPropertiesEXTFunc cmdWriteMicromapsPropertiesEXT;
+WriteMicromapsPropertiesEXTFunc writeMicromapsPropertiesEXT;
+GetDeviceMicromapCompatibilityEXTFunc getDeviceMicromapCompatibilityEXT;
+GetMicromapBuildSizesEXTFunc getMicromapBuildSizesEXT;
GetShaderModuleIdentifierEXTFunc getShaderModuleIdentifierEXT;
GetShaderModuleCreateInfoIdentifierEXTFunc getShaderModuleCreateInfoIdentifierEXT;
GetImageSubresourceLayout2EXTFunc getImageSubresourceLayout2EXT;
ExportMetalObjectsEXTFunc exportMetalObjectsEXT;
GetFramebufferTilePropertiesQCOMFunc getFramebufferTilePropertiesQCOM;
GetDynamicRenderingTilePropertiesQCOMFunc getDynamicRenderingTilePropertiesQCOM;
+CreateOpticalFlowSessionNVFunc createOpticalFlowSessionNV;
+DestroyOpticalFlowSessionNVFunc destroyOpticalFlowSessionNV;
+BindOpticalFlowSessionImageNVFunc bindOpticalFlowSessionImageNV;
+CmdOpticalFlowExecuteNVFunc cmdOpticalFlowExecuteNV;
+GetDeviceFaultInfoEXTFunc getDeviceFaultInfoEXT;
template<> void initPropertyFromBlob<VkPhysicalDeviceLineRasterizationPropertiesEXT>(VkPhysicalDeviceLineRasterizationPropertiesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceToolProperties>(VkPhysicalDeviceToolProperties&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceCustomBorderColorPropertiesEXT>(VkPhysicalDeviceCustomBorderColorPropertiesEXT&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceExtendedDynamicState3PropertiesEXT>(VkPhysicalDeviceExtendedDynamicState3PropertiesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceRobustness2PropertiesEXT>(VkPhysicalDeviceRobustness2PropertiesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDevicePortabilitySubsetPropertiesKHR>(VkPhysicalDevicePortabilitySubsetPropertiesKHR&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>(VkPhysicalDeviceFragmentShadingRatePropertiesKHR&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>(VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>(VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceOpacityMicromapPropertiesEXT>(VkPhysicalDeviceOpacityMicromapPropertiesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDevicePipelinePropertiesFeaturesEXT>(VkPhysicalDevicePipelinePropertiesFeaturesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDevicePipelineRobustnessPropertiesEXT>(VkPhysicalDevicePipelineRobustnessPropertiesEXT&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceImageProcessingPropertiesQCOM>(VkPhysicalDeviceImageProcessingPropertiesQCOM&, const AllPropertiesBlobs&) {}
template<> void initPropertyFromBlob<VkPhysicalDeviceTilePropertiesFeaturesQCOM>(VkPhysicalDeviceTilePropertiesFeaturesQCOM&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceOpticalFlowPropertiesNV>(VkPhysicalDeviceOpticalFlowPropertiesNV&, const AllPropertiesBlobs&) {}
+template<> void initPropertyFromBlob<VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM>(VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM&, const AllPropertiesBlobs&) {}
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceTransformFeedbackPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT, VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME, VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION, 57}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 56}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePipelineRobustnessPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION, 55}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceIDProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR, VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME, VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION, 54}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePushDescriptorPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION, 53}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION, 52}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, 51}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME, VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION, 50}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePerformanceQueryPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 49}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePointClippingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR, VK_KHR_MAINTENANCE_2_EXTENSION_NAME, VK_KHR_MAINTENANCE_2_SPEC_VERSION, 48}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSamplerFilterMinmaxProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT, VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME, VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION, 47}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceInlineUniformBlockProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 46}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSampleLocationsPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION, 45}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 44}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceAccelerationStructurePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 43}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPipelinePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 42}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderSMBuiltinsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION, 41}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDescriptorIndexingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 40}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePortabilitySubsetPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 39}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShadingRateImagePropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 38}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, VK_NV_RAY_TRACING_EXTENSION_NAME, VK_NV_RAY_TRACING_SPEC_VERSION, 37}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance3Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR, VK_KHR_MAINTENANCE_3_EXTENSION_NAME, VK_KHR_MAINTENANCE_3_SPEC_VERSION, 36}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION, 35}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCorePropertiesAMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION, 34}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION, 33}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDriverProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR, VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME, VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION, 32}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFloatControlsProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR, VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME, VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION, 31}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDepthStencilResolveProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION, 30}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 29}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceTimelineSemaphoreProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR, VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME, VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION, 28}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePCIBusInfoPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT, VK_EXT_PCI_BUS_INFO_EXTENSION_NAME, VK_EXT_PCI_BUS_INFO_SPEC_VERSION, 27}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 26}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubgroupSizeControlProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 25}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 24}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCoreProperties2AMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION, 23}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCooperativeMatrixPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 22}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProvokingVertexPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 21}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceLineRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 20}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 19}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderIntegerDotProductProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 18}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceTexelBufferAlignmentProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION, 17}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRobustness2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 16}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCustomBorderColorPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 15}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 14}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 13}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 12}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT, VK_EXT_MESH_SHADER_EXTENSION_NAME, VK_EXT_MESH_SHADER_SPEC_VERSION, 11}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 10}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDrmPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME, VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION, 9}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION, 8}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiDrawPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 7}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance4Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION, 6}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 5}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceImageProcessingPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION, 4}; }
-template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION, 3}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceTransformFeedbackPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT, VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME, VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION, 61}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR, VK_KHR_MULTIVIEW_EXTENSION_NAME, VK_KHR_MULTIVIEW_SPEC_VERSION, 60}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePipelineRobustnessPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT, VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME, VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION, 59}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceIDProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR, VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME, VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION, 58}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePushDescriptorPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR, VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME, VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION, 57}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME, VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION, 56}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDiscardRectanglePropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT, VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME, VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION, 55}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceConservativeRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME, VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION, 54}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePerformanceQueryPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR, VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME, VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION, 53}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePointClippingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR, VK_KHR_MAINTENANCE_2_EXTENSION_NAME, VK_KHR_MAINTENANCE_2_SPEC_VERSION, 52}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSamplerFilterMinmaxProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT, VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME, VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION, 51}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceInlineUniformBlockProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT, VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME, VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION, 50}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSampleLocationsPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT, VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME, VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION, 49}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT, VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME, VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION, 48}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceAccelerationStructurePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR, VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME, VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION, 47}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPipelinePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR, VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME, VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION, 46}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderSMBuiltinsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV, VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME, VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION, 45}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDescriptorIndexingProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT, VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME, VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION, 44}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePortabilitySubsetPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR, VK_KHR_PORTABILITY_SUBSET_EXTENSION_NAME, VK_KHR_PORTABILITY_SUBSET_SPEC_VERSION, 43}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShadingRateImagePropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV, VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME, VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION, 42}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRayTracingPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV, VK_NV_RAY_TRACING_EXTENSION_NAME, VK_NV_RAY_TRACING_SPEC_VERSION, 41}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance3Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR, VK_KHR_MAINTENANCE_3_EXTENSION_NAME, VK_KHR_MAINTENANCE_3_SPEC_VERSION, 40}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExternalMemoryHostPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT, VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME, VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION, 39}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCorePropertiesAMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD, VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION, 38}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME, VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION, 37}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDriverProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR, VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME, VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION, 36}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFloatControlsProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR, VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME, VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION, 35}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDepthStencilResolveProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR, VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME, VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION, 34}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV, VK_NV_MESH_SHADER_EXTENSION_NAME, VK_NV_MESH_SHADER_SPEC_VERSION, 33}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceTimelineSemaphoreProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR, VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME, VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION, 32}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDevicePCIBusInfoPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT, VK_EXT_PCI_BUS_INFO_EXTENSION_NAME, VK_EXT_PCI_BUS_INFO_SPEC_VERSION, 31}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION, 30}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubgroupSizeControlProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT, VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME, VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION, 29}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRatePropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION, 28}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCoreProperties2AMD>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD, VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME, VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION, 27}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCooperativeMatrixPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV, VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME, VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION, 26}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProvokingVertexPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT, VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME, VK_EXT_PROVOKING_VERTEX_SPEC_VERSION, 25}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceLineRasterizationPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT, VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME, VK_EXT_LINE_RASTERIZATION_SPEC_VERSION, 24}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV, VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME, VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION, 23}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderIntegerDotProductProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME, VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION, 22}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceTexelBufferAlignmentProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT, VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME, VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION, 21}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceRobustness2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT, VK_EXT_ROBUSTNESS_2_EXTENSION_NAME, VK_EXT_ROBUSTNESS_2_SPEC_VERSION, 20}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceCustomBorderColorPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT, VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME, VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION, 19}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME, VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION, 18}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME, VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION, 17}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME, VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION, 16}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMeshShaderPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT, VK_EXT_MESH_SHADER_EXTENSION_NAME, VK_EXT_MESH_SHADER_SPEC_VERSION, 15}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMap2PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT, VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME, VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION, 14}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceDrmPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT, VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME, VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION, 13}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION, 12}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMultiDrawPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION, 11}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceOpacityMicromapPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT, VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME, VK_EXT_OPACITY_MICROMAP_SPEC_VERSION, 10}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceMaintenance4Properties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION, 9}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION, 8}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceImageProcessingPropertiesQCOM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION, 7}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceExtendedDynamicState3PropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT, VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION, 6}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION, 5}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceOpticalFlowPropertiesNV>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV, VK_NV_OPTICAL_FLOW_EXTENSION_NAME, VK_NV_OPTICAL_FLOW_SPEC_VERSION, 4}; }
+template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM, VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME, VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION, 3}; }
template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceSubgroupProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES, DECL_SUBGROUP_EXTENSION_NAME, 0, 2}; }
template<> PropertyDesc makePropertyDesc<VkPhysicalDeviceProtectedMemoryProperties>(void) { return PropertyDesc{VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0, 1}; }
{ createPropertyStructWrapper<VkPhysicalDeviceDrmPropertiesEXT>, VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME, VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI>, VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME, VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceMultiDrawPropertiesEXT>, VK_EXT_MULTI_DRAW_EXTENSION_NAME, VK_EXT_MULTI_DRAW_SPEC_VERSION },
+ { createPropertyStructWrapper<VkPhysicalDeviceOpacityMicromapPropertiesEXT>, VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME, VK_EXT_OPACITY_MICROMAP_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceMaintenance4Properties>, VK_KHR_MAINTENANCE_4_EXTENSION_NAME, VK_KHR_MAINTENANCE_4_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME, VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceImageProcessingPropertiesQCOM>, VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME, VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION },
+ { createPropertyStructWrapper<VkPhysicalDeviceExtendedDynamicState3PropertiesEXT>, VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME, VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>, VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME, VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION },
+ { createPropertyStructWrapper<VkPhysicalDeviceOpticalFlowPropertiesNV>, VK_NV_OPTICAL_FLOW_EXTENSION_NAME, VK_NV_OPTICAL_FLOW_SPEC_VERSION },
+ { createPropertyStructWrapper<VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM>, VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME, VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION },
{ createPropertyStructWrapper<VkPhysicalDeviceSubgroupProperties>, DECL_SUBGROUP_EXTENSION_NAME, 0 },
{ createPropertyStructWrapper<VkPhysicalDeviceProtectedMemoryProperties>, DECL_PROTECTED_MEMORY_EXTENSION_NAME, 0 },
};
const vk::VkPhysicalDeviceDrmPropertiesEXT& getDrmPropertiesEXT (void) const;
const vk::VkPhysicalDeviceSubpassShadingPropertiesHUAWEI& getSubpassShadingPropertiesHUAWEI (void) const;
const vk::VkPhysicalDeviceMultiDrawPropertiesEXT& getMultiDrawPropertiesEXT (void) const;
+const vk::VkPhysicalDeviceOpacityMicromapPropertiesEXT& getOpacityMicromapPropertiesEXT (void) const;
const vk::VkPhysicalDeviceMaintenance4Properties& getMaintenance4Properties (void) const;
const vk::VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM& getFragmentDensityMapOffsetPropertiesQCOM (void) const;
const vk::VkPhysicalDeviceImageProcessingPropertiesQCOM& getImageProcessingPropertiesQCOM (void) const;
+const vk::VkPhysicalDeviceExtendedDynamicState3PropertiesEXT& getExtendedDynamicState3PropertiesEXT (void) const;
const vk::VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT& getShaderModuleIdentifierPropertiesEXT (void) const;
+const vk::VkPhysicalDeviceOpticalFlowPropertiesNV& getOpticalFlowProperties (void) const;
+const vk::VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM& getShaderCoreBuiltinsPropertiesARM (void) const;
const vk::VkPhysicalDeviceSubgroupProperties& getSubgroupProperties (void) const;
const vk::VkPhysicalDeviceProtectedMemoryProperties& getProtectedMemoryProperties (void) const;
const vk::VkPhysicalDeviceDrmPropertiesEXT& Context::getDrmPropertiesEXT (void) const { return m_device->getDrmPropertiesEXT(); }
const vk::VkPhysicalDeviceSubpassShadingPropertiesHUAWEI& Context::getSubpassShadingPropertiesHUAWEI (void) const { return m_device->getSubpassShadingPropertiesHUAWEI(); }
const vk::VkPhysicalDeviceMultiDrawPropertiesEXT& Context::getMultiDrawPropertiesEXT (void) const { return m_device->getMultiDrawPropertiesEXT(); }
+const vk::VkPhysicalDeviceOpacityMicromapPropertiesEXT& Context::getOpacityMicromapPropertiesEXT (void) const { return m_device->getOpacityMicromapPropertiesEXT(); }
const vk::VkPhysicalDeviceMaintenance4Properties& Context::getMaintenance4Properties (void) const { return m_device->getMaintenance4Properties(); }
const vk::VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM& Context::getFragmentDensityMapOffsetPropertiesQCOM (void) const { return m_device->getFragmentDensityMapOffsetPropertiesQCOM(); }
const vk::VkPhysicalDeviceImageProcessingPropertiesQCOM& Context::getImageProcessingPropertiesQCOM (void) const { return m_device->getImageProcessingPropertiesQCOM(); }
+const vk::VkPhysicalDeviceExtendedDynamicState3PropertiesEXT& Context::getExtendedDynamicState3PropertiesEXT (void) const { return m_device->getExtendedDynamicState3PropertiesEXT(); }
const vk::VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT& Context::getShaderModuleIdentifierPropertiesEXT (void) const { return m_device->getShaderModuleIdentifierPropertiesEXT(); }
+const vk::VkPhysicalDeviceOpticalFlowPropertiesNV& Context::getOpticalFlowProperties (void) const { return m_device->getOpticalFlowProperties(); }
+const vk::VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM& Context::getShaderCoreBuiltinsPropertiesARM (void) const { return m_device->getShaderCoreBuiltinsPropertiesARM(); }
const vk::VkPhysicalDeviceSubgroupProperties& Context::getSubgroupProperties (void) const { return m_device->getSubgroupProperties(); }
const vk::VkPhysicalDeviceProtectedMemoryProperties& Context::getProtectedMemoryProperties (void) const { return m_device->getProtectedMemoryProperties(); }
const VkPhysicalDeviceDrmPropertiesEXT& getDrmPropertiesEXT (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceDrmPropertiesEXT>(); }
const VkPhysicalDeviceSubpassShadingPropertiesHUAWEI& getSubpassShadingPropertiesHUAWEI (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceSubpassShadingPropertiesHUAWEI>(); }
const VkPhysicalDeviceMultiDrawPropertiesEXT& getMultiDrawPropertiesEXT (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceMultiDrawPropertiesEXT>(); }
+const VkPhysicalDeviceOpacityMicromapPropertiesEXT& getOpacityMicromapPropertiesEXT (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceOpacityMicromapPropertiesEXT>(); }
const VkPhysicalDeviceMaintenance4Properties& getMaintenance4Properties (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceMaintenance4Properties>(); }
const VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM& getFragmentDensityMapOffsetPropertiesQCOM (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM>(); }
const VkPhysicalDeviceImageProcessingPropertiesQCOM& getImageProcessingPropertiesQCOM (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceImageProcessingPropertiesQCOM>(); }
+const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT& getExtendedDynamicState3PropertiesEXT (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceExtendedDynamicState3PropertiesEXT>(); }
const VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT& getShaderModuleIdentifierPropertiesEXT (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT>(); }
+const VkPhysicalDeviceOpticalFlowPropertiesNV& getOpticalFlowProperties (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceOpticalFlowPropertiesNV>(); }
+const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM& getShaderCoreBuiltinsPropertiesARM (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM>(); }
const VkPhysicalDeviceSubgroupProperties& getSubgroupProperties (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceSubgroupProperties>(); }
const VkPhysicalDeviceProtectedMemoryProperties& getProtectedMemoryProperties (void) const { return m_deviceProperties.getPropertyType<VkPhysicalDeviceProtectedMemoryProperties>(); }
{
return;
}
+ if (extName == "VK_NV_present_barrier")
+ {
+ return;
+ }
if (extName == "VK_KHR_shader_non_semantic_info")
{
return;
{
return;
}
+ if (extName == "VK_EXT_device_fault")
+ {
+ return;
+ }
if (extName == "VK_ARM_rasterization_order_attachment_access")
{
return;
{
return;
}
+ if (extName == "VK_EXT_device_address_binding_report")
+ {
+ return;
+ }
if (extName == "VK_EXT_depth_clip_control")
{
return;
{
return;
}
+ if (extName == "VK_EXT_opacity_micromap")
+ {
+ return;
+ }
if (extName == "VK_EXT_load_store_op_none")
{
return;
{
return;
}
+ if (extName == "VK_EXT_extended_dynamic_state3")
+ {
+ return;
+ }
if (extName == "VK_EXT_subpass_merge_feedback")
{
return;
{
return;
}
+ if (extName == "VK_NV_optical_flow")
+ {
+ functions.push_back("vkGetPhysicalDeviceOpticalFlowImageFormatsNV");
+ return;
+ }
if (extName == "VK_EXT_legacy_dithering")
{
return;
}
+ if (extName == "VK_EXT_pipeline_protected_access")
+ {
+ return;
+ }
if (extName == "VK_QCOM_tile_properties")
{
return;
{
return;
}
+ if (extName == "VK_EXT_mutable_descriptor_type")
+ {
+ return;
+ }
+ if (extName == "VK_ARM_shader_core_builtins")
+ {
+ return;
+ }
if (extName == "vulkan_video_codecs_common")
{
return;
{
return;
}
+ if (extName == "VK_NV_present_barrier")
+ {
+ return;
+ }
if (extName == "VK_KHR_shader_non_semantic_info")
{
return;
{
return;
}
+ if (extName == "VK_EXT_device_fault")
+ {
+ functions.push_back("vkGetDeviceFaultInfoEXT");
+ return;
+ }
if (extName == "VK_ARM_rasterization_order_attachment_access")
{
return;
{
return;
}
+ if (extName == "VK_EXT_device_address_binding_report")
+ {
+ return;
+ }
if (extName == "VK_EXT_depth_clip_control")
{
return;
{
return;
}
+ if (extName == "VK_EXT_opacity_micromap")
+ {
+ functions.push_back("vkCreateMicromapEXT");
+ functions.push_back("vkDestroyMicromapEXT");
+ functions.push_back("vkCmdBuildMicromapsEXT");
+ functions.push_back("vkBuildMicromapsEXT");
+ functions.push_back("vkCopyMicromapEXT");
+ functions.push_back("vkCopyMicromapToMemoryEXT");
+ functions.push_back("vkCopyMemoryToMicromapEXT");
+ functions.push_back("vkWriteMicromapsPropertiesEXT");
+ functions.push_back("vkCmdCopyMicromapEXT");
+ functions.push_back("vkCmdCopyMicromapToMemoryEXT");
+ functions.push_back("vkCmdCopyMemoryToMicromapEXT");
+ functions.push_back("vkCmdWriteMicromapsPropertiesEXT");
+ functions.push_back("vkGetDeviceMicromapCompatibilityEXT");
+ functions.push_back("vkGetMicromapBuildSizesEXT");
+ return;
+ }
if (extName == "VK_EXT_load_store_op_none")
{
return;
{
return;
}
+ if (extName == "VK_EXT_extended_dynamic_state3")
+ {
+ functions.push_back("vkCmdSetTessellationDomainOriginEXT");
+ functions.push_back("vkCmdSetDepthClampEnableEXT");
+ functions.push_back("vkCmdSetPolygonModeEXT");
+ functions.push_back("vkCmdSetRasterizationSamplesEXT");
+ functions.push_back("vkCmdSetSampleMaskEXT");
+ functions.push_back("vkCmdSetAlphaToCoverageEnableEXT");
+ functions.push_back("vkCmdSetAlphaToOneEnableEXT");
+ functions.push_back("vkCmdSetLogicOpEnableEXT");
+ functions.push_back("vkCmdSetColorBlendEnableEXT");
+ functions.push_back("vkCmdSetColorBlendEquationEXT");
+ functions.push_back("vkCmdSetColorWriteMaskEXT");
+ functions.push_back("vkCmdSetRasterizationStreamEXT");
+ functions.push_back("vkCmdSetConservativeRasterizationModeEXT");
+ functions.push_back("vkCmdSetExtraPrimitiveOverestimationSizeEXT");
+ functions.push_back("vkCmdSetDepthClipEnableEXT");
+ functions.push_back("vkCmdSetSampleLocationsEnableEXT");
+ functions.push_back("vkCmdSetColorBlendAdvancedEXT");
+ functions.push_back("vkCmdSetProvokingVertexModeEXT");
+ functions.push_back("vkCmdSetLineRasterizationModeEXT");
+ functions.push_back("vkCmdSetLineStippleEnableEXT");
+ functions.push_back("vkCmdSetDepthClipNegativeOneToOneEXT");
+ return;
+ }
if (extName == "VK_EXT_subpass_merge_feedback")
{
return;
{
return;
}
+ if (extName == "VK_NV_optical_flow")
+ {
+ functions.push_back("vkCreateOpticalFlowSessionNV");
+ functions.push_back("vkDestroyOpticalFlowSessionNV");
+ functions.push_back("vkBindOpticalFlowSessionImageNV");
+ functions.push_back("vkCmdOpticalFlowExecuteNV");
+ return;
+ }
if (extName == "VK_EXT_legacy_dithering")
{
return;
}
+ if (extName == "VK_EXT_pipeline_protected_access")
+ {
+ return;
+ }
if (extName == "VK_QCOM_tile_properties")
{
functions.push_back("vkGetFramebufferTilePropertiesQCOM");
{
return;
}
+ if (extName == "VK_EXT_mutable_descriptor_type")
+ {
+ return;
+ }
+ if (extName == "VK_ARM_shader_core_builtins")
+ {
+ return;
+ }
if (extName == "vulkan_video_codecs_common")
{
return;
"VK_EXT_custom_border_color",
"VK_GOOGLE_user_type",
"VK_KHR_pipeline_library",
+ "VK_NV_present_barrier",
"VK_KHR_shader_non_semantic_info",
"VK_KHR_present_id",
"VK_EXT_private_data",
"VK_EXT_image_compression_control",
"VK_EXT_attachment_feedback_loop_layout",
"VK_EXT_4444_formats",
+ "VK_EXT_device_fault",
"VK_ARM_rasterization_order_attachment_access",
"VK_EXT_rgba10x6_formats",
"VK_NV_acquire_winrt_display",
"VK_VALVE_mutable_descriptor_type",
"VK_EXT_vertex_input_dynamic_state",
"VK_EXT_physical_device_drm",
+ "VK_EXT_device_address_binding_report",
"VK_EXT_depth_clip_control",
"VK_EXT_primitive_topology_list_restart",
"VK_KHR_format_feature_flags2",
"VK_EXT_image_view_min_lod",
"VK_EXT_multi_draw",
"VK_EXT_image_2d_view_of_3d",
+ "VK_EXT_opacity_micromap",
"VK_EXT_load_store_op_none",
"VK_EXT_border_color_swizzle",
"VK_EXT_pageable_device_local_memory",
"VK_NV_linear_color_attachment",
"VK_EXT_image_compression_control_swapchain",
"VK_QCOM_image_processing",
+ "VK_EXT_extended_dynamic_state3",
"VK_EXT_subpass_merge_feedback",
"VK_EXT_shader_module_identifier",
"VK_EXT_rasterization_order_attachment_access",
+ "VK_NV_optical_flow",
"VK_EXT_legacy_dithering",
+ "VK_EXT_pipeline_protected_access",
"VK_QCOM_tile_properties",
"VK_SEC_amigo_profiling",
+ "VK_EXT_mutable_descriptor_type",
+ "VK_ARM_shader_core_builtins",
};
typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetPrimitiveRestartEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* CreatePrivateDataSlotFunc) (VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlot* pPrivateDataSlot);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* CreatePrivateDataSlotEXTFunc) (VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlot* pPrivateDataSlot);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetTessellationDomainOriginEXTFunc) (VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetDepthClampEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 depthClampEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetPolygonModeEXTFunc) (VkCommandBuffer commandBuffer, VkPolygonMode polygonMode);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetRasterizationSamplesEXTFunc) (VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetSampleMaskEXTFunc) (VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const VkSampleMask* pSampleMask);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetAlphaToCoverageEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetAlphaToOneEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetLogicOpEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 logicOpEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetColorBlendEnableEXTFunc) (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkBool32* pColorBlendEnables);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetColorBlendEquationEXTFunc) (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendEquationEXT* pColorBlendEquations);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetColorWriteMaskEXTFunc) (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorComponentFlags* pColorWriteMasks);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetRasterizationStreamEXTFunc) (VkCommandBuffer commandBuffer, uint32_t rasterizationStream);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetConservativeRasterizationModeEXTFunc) (VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetExtraPrimitiveOverestimationSizeEXTFunc) (VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetDepthClipEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 depthClipEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetSampleLocationsEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetColorBlendAdvancedEXTFunc) (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendAdvancedEXT* pColorBlendAdvanced);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetProvokingVertexModeEXTFunc) (VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetLineRasterizationModeEXTFunc) (VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetLineStippleEnableEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetDepthClipNegativeOneToOneEXTFunc) (VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetViewportWScalingEnableNVFunc) (VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetViewportSwizzleNVFunc) (VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportSwizzleNV* pViewportSwizzles);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetCoverageToColorEnableNVFunc) (VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetCoverageToColorLocationNVFunc) (VkCommandBuffer commandBuffer, uint32_t coverageToColorLocation);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetCoverageModulationModeNVFunc) (VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetCoverageModulationTableEnableNVFunc) (VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetCoverageModulationTableNVFunc) (VkCommandBuffer commandBuffer, uint32_t coverageModulationTableCount, const float* pCoverageModulationTable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetShadingRateImageEnableNVFunc) (VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetCoverageReductionModeNVFunc) (VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdSetRepresentativeFragmentTestEnableNVFunc) (VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable);
typedef VKAPI_ATTR void (VKAPI_CALL* DestroyPrivateDataSlotFunc) (VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator);
typedef VKAPI_ATTR void (VKAPI_CALL* DestroyPrivateDataSlotEXTFunc) (VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* SetPrivateDataFunc) (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data);
typedef VKAPI_ATTR void (VKAPI_CALL* DestroyVideoSessionParametersKHRFunc) (VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkAllocationCallbacks* pAllocator);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* GetVideoSessionMemoryRequirementsKHRFunc) (VkDevice device, VkVideoSessionKHR videoSession, uint32_t* pMemoryRequirementsCount, VkVideoSessionMemoryRequirementsKHR* pMemoryRequirements);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* BindVideoSessionMemoryKHRFunc) (VkDevice device, VkVideoSessionKHR videoSession, uint32_t bindSessionMemoryInfoCount, const VkBindVideoSessionMemoryInfoKHR* pBindSessionMemoryInfos);
-typedef VKAPI_ATTR void (VKAPI_CALL* CmdDecodeVideoKHRFunc) (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdDecodeVideoKHRFunc) (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pDecodeInfo);
typedef VKAPI_ATTR void (VKAPI_CALL* CmdBeginVideoCodingKHRFunc) (VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo);
typedef VKAPI_ATTR void (VKAPI_CALL* CmdControlVideoCodingKHRFunc) (VkCommandBuffer commandBuffer, const VkVideoCodingControlInfoKHR* pCodingControlInfo);
typedef VKAPI_ATTR void (VKAPI_CALL* CmdEndVideoCodingKHRFunc) (VkCommandBuffer commandBuffer, const VkVideoEndCodingInfoKHR* pEndCodingInfo);
typedef VKAPI_ATTR void (VKAPI_CALL* CmdEndRenderingKHRFunc) (VkCommandBuffer commandBuffer);
typedef VKAPI_ATTR void (VKAPI_CALL* GetDescriptorSetLayoutHostMappingInfoVALVEFunc) (VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping);
typedef VKAPI_ATTR void (VKAPI_CALL* GetDescriptorSetHostMappingVALVEFunc) (VkDevice device, VkDescriptorSet descriptorSet, void** ppData);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* CreateMicromapEXTFunc) (VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdBuildMicromapsEXTFunc) (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* BuildMicromapsEXTFunc) (VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos);
+typedef VKAPI_ATTR void (VKAPI_CALL* DestroyMicromapEXTFunc) (VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdCopyMicromapEXTFunc) (VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* CopyMicromapEXTFunc) (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdCopyMicromapToMemoryEXTFunc) (VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* CopyMicromapToMemoryEXTFunc) (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdCopyMemoryToMicromapEXTFunc) (VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* CopyMemoryToMicromapEXTFunc) (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdWriteMicromapsPropertiesEXTFunc) (VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* WriteMicromapsPropertiesEXTFunc) (VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride);
+typedef VKAPI_ATTR void (VKAPI_CALL* GetDeviceMicromapCompatibilityEXTFunc) (VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility);
+typedef VKAPI_ATTR void (VKAPI_CALL* GetMicromapBuildSizesEXTFunc) (VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo);
typedef VKAPI_ATTR void (VKAPI_CALL* GetShaderModuleIdentifierEXTFunc) (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier);
typedef VKAPI_ATTR void (VKAPI_CALL* GetShaderModuleCreateInfoIdentifierEXTFunc) (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier);
typedef VKAPI_ATTR void (VKAPI_CALL* GetImageSubresourceLayout2EXTFunc) (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout);
typedef VKAPI_ATTR void (VKAPI_CALL* ExportMetalObjectsEXTFunc) (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* GetFramebufferTilePropertiesQCOMFunc) (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties);
typedef VKAPI_ATTR VkResult (VKAPI_CALL* GetDynamicRenderingTilePropertiesQCOMFunc) (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* GetPhysicalDeviceOpticalFlowImageFormatsNVFunc) (VkPhysicalDevice physicalDevice, const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* CreateOpticalFlowSessionNVFunc) (VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkOpticalFlowSessionNV* pSession);
+typedef VKAPI_ATTR void (VKAPI_CALL* DestroyOpticalFlowSessionNVFunc) (VkDevice device, VkOpticalFlowSessionNV session, const VkAllocationCallbacks* pAllocator);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* BindOpticalFlowSessionImageNVFunc) (VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout);
+typedef VKAPI_ATTR void (VKAPI_CALL* CmdOpticalFlowExecuteNVFunc) (VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const VkOpticalFlowExecuteInfoNV* pExecuteInfo);
+typedef VKAPI_ATTR VkResult (VKAPI_CALL* GetDeviceFaultInfoEXTFunc) (VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo);
return VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT;
}
+template<> VkStructureType getStructureType<VkPhysicalDevicePresentBarrierFeaturesNV> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV;
+}
+
+template<> VkStructureType getStructureType<VkSurfaceCapabilitiesPresentBarrierNV> (void)
+{
+ return VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV;
+}
+
+template<> VkStructureType getStructureType<VkSwapchainPresentBarrierCreateInfoNV> (void)
+{
+ return VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV;
+}
+
template<> VkStructureType getStructureType<VkPhysicalDevicePerformanceQueryFeaturesKHR> (void)
{
return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR;
return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT;
}
+template<> VkStructureType getStructureType<VkPhysicalDeviceExtendedDynamicState3FeaturesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceExtendedDynamicState3PropertiesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT;
+}
+
template<> VkStructureType getStructureType<VkRenderPassTransformBeginInfoQCOM> (void)
{
return VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM;
return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT;
}
-template<> VkStructureType getStructureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE> (void)
+template<> VkStructureType getStructureType<VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT> (void)
{
- return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE;
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT;
}
-template<> VkStructureType getStructureType<VkMutableDescriptorTypeCreateInfoVALVE> (void)
+template<> VkStructureType getStructureType<VkMutableDescriptorTypeCreateInfoEXT> (void)
{
- return VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE;
+ return VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT;
}
template<> VkStructureType getStructureType<VkPhysicalDeviceDepthClipControlFeaturesEXT> (void)
return VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT;
}
+template<> VkStructureType getStructureType<VkPhysicalDevicePipelineProtectedAccessFeaturesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT;
+}
+
template<> VkStructureType getStructureType<VkQueueFamilyVideoPropertiesKHR> (void)
{
return VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR;
return VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT;
}
-template<> VkStructureType getStructureType<VkVideoDecodeH264MvcInfoEXT> (void)
-{
- return VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT;
-}
-
template<> VkStructureType getStructureType<VkVideoDecodeH265ProfileInfoEXT> (void)
{
return VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_EXT;
return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT;
}
+template<> VkStructureType getStructureType<VkMicromapBuildInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkMicromapCreateInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkMicromapVersionInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkCopyMicromapInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkCopyMicromapToMemoryInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkCopyMemoryToMicromapInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkMicromapBuildSizesInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceOpacityMicromapFeaturesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceOpacityMicromapPropertiesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkAccelerationStructureTrianglesOpacityMicromapEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT;
+}
+
template<> VkStructureType getStructureType<VkPipelinePropertiesIdentifierEXT> (void)
{
return VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT;
return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT;
}
+template<> VkStructureType getStructureType<VkPhysicalDeviceAddressBindingReportFeaturesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkDeviceAddressBindingCallbackDataEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceOpticalFlowFeaturesNV> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceOpticalFlowPropertiesNV> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV;
+}
+
+template<> VkStructureType getStructureType<VkOpticalFlowImageFormatInfoNV> (void)
+{
+ return VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkOpticalFlowImageFormatPropertiesNV> (void)
+{
+ return VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV;
+}
+
+template<> VkStructureType getStructureType<VkOpticalFlowSessionCreateInfoNV> (void)
+{
+ return VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkOpticalFlowSessionCreatePrivateDataInfoNV> (void)
+{
+ return VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkOpticalFlowExecuteInfoNV> (void)
+{
+ return VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceFaultFeaturesEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT;
+}
+
+template<> VkStructureType getStructureType<VkDeviceFaultCountsEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT;
+}
+
+template<> VkStructureType getStructureType<VkDeviceFaultInfoEXT> (void)
+{
+ return VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM;
+}
+
+template<> VkStructureType getStructureType<VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM> (void)
+{
+ return VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM;
+}
+
HANDLE_TYPE_PRIVATE_DATA_SLOT,
HANDLE_TYPE_CU_MODULE_NVX,
HANDLE_TYPE_CU_FUNCTION_NVX,
+ HANDLE_TYPE_OPTICAL_FLOW_SESSION_NV,
+ HANDLE_TYPE_MICROMAP_EXT,
HANDLE_TYPE_DISPLAY_KHR,
HANDLE_TYPE_DISPLAY_MODE_KHR,
HANDLE_TYPE_SURFACE_KHR,
m_vk.createPrivateDataSlot = (CreatePrivateDataSlotFunc) GET_PROC_ADDR("vkCreatePrivateDataSlot");
if (!m_vk.createPrivateDataSlot)
m_vk.createPrivateDataSlot = (CreatePrivateDataSlotFunc) GET_PROC_ADDR("vkCreatePrivateDataSlotEXT");
+m_vk.cmdSetTessellationDomainOriginEXT = (CmdSetTessellationDomainOriginEXTFunc) GET_PROC_ADDR("vkCmdSetTessellationDomainOriginEXT");
+m_vk.cmdSetDepthClampEnableEXT = (CmdSetDepthClampEnableEXTFunc) GET_PROC_ADDR("vkCmdSetDepthClampEnableEXT");
+m_vk.cmdSetPolygonModeEXT = (CmdSetPolygonModeEXTFunc) GET_PROC_ADDR("vkCmdSetPolygonModeEXT");
+m_vk.cmdSetRasterizationSamplesEXT = (CmdSetRasterizationSamplesEXTFunc) GET_PROC_ADDR("vkCmdSetRasterizationSamplesEXT");
+m_vk.cmdSetSampleMaskEXT = (CmdSetSampleMaskEXTFunc) GET_PROC_ADDR("vkCmdSetSampleMaskEXT");
+m_vk.cmdSetAlphaToCoverageEnableEXT = (CmdSetAlphaToCoverageEnableEXTFunc) GET_PROC_ADDR("vkCmdSetAlphaToCoverageEnableEXT");
+m_vk.cmdSetAlphaToOneEnableEXT = (CmdSetAlphaToOneEnableEXTFunc) GET_PROC_ADDR("vkCmdSetAlphaToOneEnableEXT");
+m_vk.cmdSetLogicOpEnableEXT = (CmdSetLogicOpEnableEXTFunc) GET_PROC_ADDR("vkCmdSetLogicOpEnableEXT");
+m_vk.cmdSetColorBlendEnableEXT = (CmdSetColorBlendEnableEXTFunc) GET_PROC_ADDR("vkCmdSetColorBlendEnableEXT");
+m_vk.cmdSetColorBlendEquationEXT = (CmdSetColorBlendEquationEXTFunc) GET_PROC_ADDR("vkCmdSetColorBlendEquationEXT");
+m_vk.cmdSetColorWriteMaskEXT = (CmdSetColorWriteMaskEXTFunc) GET_PROC_ADDR("vkCmdSetColorWriteMaskEXT");
+m_vk.cmdSetRasterizationStreamEXT = (CmdSetRasterizationStreamEXTFunc) GET_PROC_ADDR("vkCmdSetRasterizationStreamEXT");
+m_vk.cmdSetConservativeRasterizationModeEXT = (CmdSetConservativeRasterizationModeEXTFunc) GET_PROC_ADDR("vkCmdSetConservativeRasterizationModeEXT");
+m_vk.cmdSetExtraPrimitiveOverestimationSizeEXT = (CmdSetExtraPrimitiveOverestimationSizeEXTFunc) GET_PROC_ADDR("vkCmdSetExtraPrimitiveOverestimationSizeEXT");
+m_vk.cmdSetDepthClipEnableEXT = (CmdSetDepthClipEnableEXTFunc) GET_PROC_ADDR("vkCmdSetDepthClipEnableEXT");
+m_vk.cmdSetSampleLocationsEnableEXT = (CmdSetSampleLocationsEnableEXTFunc) GET_PROC_ADDR("vkCmdSetSampleLocationsEnableEXT");
+m_vk.cmdSetColorBlendAdvancedEXT = (CmdSetColorBlendAdvancedEXTFunc) GET_PROC_ADDR("vkCmdSetColorBlendAdvancedEXT");
+m_vk.cmdSetProvokingVertexModeEXT = (CmdSetProvokingVertexModeEXTFunc) GET_PROC_ADDR("vkCmdSetProvokingVertexModeEXT");
+m_vk.cmdSetLineRasterizationModeEXT = (CmdSetLineRasterizationModeEXTFunc) GET_PROC_ADDR("vkCmdSetLineRasterizationModeEXT");
+m_vk.cmdSetLineStippleEnableEXT = (CmdSetLineStippleEnableEXTFunc) GET_PROC_ADDR("vkCmdSetLineStippleEnableEXT");
+m_vk.cmdSetDepthClipNegativeOneToOneEXT = (CmdSetDepthClipNegativeOneToOneEXTFunc) GET_PROC_ADDR("vkCmdSetDepthClipNegativeOneToOneEXT");
+m_vk.cmdSetViewportWScalingEnableNV = (CmdSetViewportWScalingEnableNVFunc) GET_PROC_ADDR("vkCmdSetViewportWScalingEnableNV");
+m_vk.cmdSetViewportSwizzleNV = (CmdSetViewportSwizzleNVFunc) GET_PROC_ADDR("vkCmdSetViewportSwizzleNV");
+m_vk.cmdSetCoverageToColorEnableNV = (CmdSetCoverageToColorEnableNVFunc) GET_PROC_ADDR("vkCmdSetCoverageToColorEnableNV");
+m_vk.cmdSetCoverageToColorLocationNV = (CmdSetCoverageToColorLocationNVFunc) GET_PROC_ADDR("vkCmdSetCoverageToColorLocationNV");
+m_vk.cmdSetCoverageModulationModeNV = (CmdSetCoverageModulationModeNVFunc) GET_PROC_ADDR("vkCmdSetCoverageModulationModeNV");
+m_vk.cmdSetCoverageModulationTableEnableNV = (CmdSetCoverageModulationTableEnableNVFunc) GET_PROC_ADDR("vkCmdSetCoverageModulationTableEnableNV");
+m_vk.cmdSetCoverageModulationTableNV = (CmdSetCoverageModulationTableNVFunc) GET_PROC_ADDR("vkCmdSetCoverageModulationTableNV");
+m_vk.cmdSetShadingRateImageEnableNV = (CmdSetShadingRateImageEnableNVFunc) GET_PROC_ADDR("vkCmdSetShadingRateImageEnableNV");
+m_vk.cmdSetCoverageReductionModeNV = (CmdSetCoverageReductionModeNVFunc) GET_PROC_ADDR("vkCmdSetCoverageReductionModeNV");
+m_vk.cmdSetRepresentativeFragmentTestEnableNV = (CmdSetRepresentativeFragmentTestEnableNVFunc) GET_PROC_ADDR("vkCmdSetRepresentativeFragmentTestEnableNV");
m_vk.destroyPrivateDataSlot = (DestroyPrivateDataSlotFunc) GET_PROC_ADDR("vkDestroyPrivateDataSlot");
if (!m_vk.destroyPrivateDataSlot)
m_vk.destroyPrivateDataSlot = (DestroyPrivateDataSlotFunc) GET_PROC_ADDR("vkDestroyPrivateDataSlotEXT");
m_vk.cmdEndRendering = (CmdEndRenderingFunc) GET_PROC_ADDR("vkCmdEndRenderingKHR");
m_vk.getDescriptorSetLayoutHostMappingInfoVALVE = (GetDescriptorSetLayoutHostMappingInfoVALVEFunc) GET_PROC_ADDR("vkGetDescriptorSetLayoutHostMappingInfoVALVE");
m_vk.getDescriptorSetHostMappingVALVE = (GetDescriptorSetHostMappingVALVEFunc) GET_PROC_ADDR("vkGetDescriptorSetHostMappingVALVE");
+m_vk.createMicromapEXT = (CreateMicromapEXTFunc) GET_PROC_ADDR("vkCreateMicromapEXT");
+m_vk.cmdBuildMicromapsEXT = (CmdBuildMicromapsEXTFunc) GET_PROC_ADDR("vkCmdBuildMicromapsEXT");
+m_vk.buildMicromapsEXT = (BuildMicromapsEXTFunc) GET_PROC_ADDR("vkBuildMicromapsEXT");
+m_vk.destroyMicromapEXT = (DestroyMicromapEXTFunc) GET_PROC_ADDR("vkDestroyMicromapEXT");
+m_vk.cmdCopyMicromapEXT = (CmdCopyMicromapEXTFunc) GET_PROC_ADDR("vkCmdCopyMicromapEXT");
+m_vk.copyMicromapEXT = (CopyMicromapEXTFunc) GET_PROC_ADDR("vkCopyMicromapEXT");
+m_vk.cmdCopyMicromapToMemoryEXT = (CmdCopyMicromapToMemoryEXTFunc) GET_PROC_ADDR("vkCmdCopyMicromapToMemoryEXT");
+m_vk.copyMicromapToMemoryEXT = (CopyMicromapToMemoryEXTFunc) GET_PROC_ADDR("vkCopyMicromapToMemoryEXT");
+m_vk.cmdCopyMemoryToMicromapEXT = (CmdCopyMemoryToMicromapEXTFunc) GET_PROC_ADDR("vkCmdCopyMemoryToMicromapEXT");
+m_vk.copyMemoryToMicromapEXT = (CopyMemoryToMicromapEXTFunc) GET_PROC_ADDR("vkCopyMemoryToMicromapEXT");
+m_vk.cmdWriteMicromapsPropertiesEXT = (CmdWriteMicromapsPropertiesEXTFunc) GET_PROC_ADDR("vkCmdWriteMicromapsPropertiesEXT");
+m_vk.writeMicromapsPropertiesEXT = (WriteMicromapsPropertiesEXTFunc) GET_PROC_ADDR("vkWriteMicromapsPropertiesEXT");
+m_vk.getDeviceMicromapCompatibilityEXT = (GetDeviceMicromapCompatibilityEXTFunc) GET_PROC_ADDR("vkGetDeviceMicromapCompatibilityEXT");
+m_vk.getMicromapBuildSizesEXT = (GetMicromapBuildSizesEXTFunc) GET_PROC_ADDR("vkGetMicromapBuildSizesEXT");
m_vk.getShaderModuleIdentifierEXT = (GetShaderModuleIdentifierEXTFunc) GET_PROC_ADDR("vkGetShaderModuleIdentifierEXT");
m_vk.getShaderModuleCreateInfoIdentifierEXT = (GetShaderModuleCreateInfoIdentifierEXTFunc) GET_PROC_ADDR("vkGetShaderModuleCreateInfoIdentifierEXT");
m_vk.getImageSubresourceLayout2EXT = (GetImageSubresourceLayout2EXTFunc) GET_PROC_ADDR("vkGetImageSubresourceLayout2EXT");
m_vk.exportMetalObjectsEXT = (ExportMetalObjectsEXTFunc) GET_PROC_ADDR("vkExportMetalObjectsEXT");
m_vk.getFramebufferTilePropertiesQCOM = (GetFramebufferTilePropertiesQCOMFunc) GET_PROC_ADDR("vkGetFramebufferTilePropertiesQCOM");
m_vk.getDynamicRenderingTilePropertiesQCOM = (GetDynamicRenderingTilePropertiesQCOMFunc) GET_PROC_ADDR("vkGetDynamicRenderingTilePropertiesQCOM");
+m_vk.createOpticalFlowSessionNV = (CreateOpticalFlowSessionNVFunc) GET_PROC_ADDR("vkCreateOpticalFlowSessionNV");
+m_vk.destroyOpticalFlowSessionNV = (DestroyOpticalFlowSessionNVFunc) GET_PROC_ADDR("vkDestroyOpticalFlowSessionNV");
+m_vk.bindOpticalFlowSessionImageNV = (BindOpticalFlowSessionImageNVFunc) GET_PROC_ADDR("vkBindOpticalFlowSessionImageNV");
+m_vk.cmdOpticalFlowExecuteNV = (CmdOpticalFlowExecuteNVFunc) GET_PROC_ADDR("vkCmdOpticalFlowExecuteNV");
+m_vk.getDeviceFaultInfoEXT = (GetDeviceFaultInfoEXTFunc) GET_PROC_ADDR("vkGetDeviceFaultInfoEXT");
m_vk.getPhysicalDeviceVideoFormatPropertiesKHR = (GetPhysicalDeviceVideoFormatPropertiesKHRFunc) GET_PROC_ADDR("vkGetPhysicalDeviceVideoFormatPropertiesKHR");
m_vk.acquireDrmDisplayEXT = (AcquireDrmDisplayEXTFunc) GET_PROC_ADDR("vkAcquireDrmDisplayEXT");
m_vk.getDrmDisplayEXT = (GetDrmDisplayEXTFunc) GET_PROC_ADDR("vkGetDrmDisplayEXT");
+m_vk.getPhysicalDeviceOpticalFlowImageFormatsNV = (GetPhysicalDeviceOpticalFlowImageFormatsNVFunc) GET_PROC_ADDR("vkGetPhysicalDeviceOpticalFlowImageFormatsNV");
{
return m_vk.getDrmDisplayEXT(physicalDevice, drmFd, connectorId, display);
}
+
+VkResult InstanceDriver::getPhysicalDeviceOpticalFlowImageFormatsNV (VkPhysicalDevice physicalDevice, const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties) const
+{
+ return m_vk.getPhysicalDeviceOpticalFlowImageFormatsNV(physicalDevice, pOpticalFlowImageFormatInfo, pFormatCount, pImageFormatProperties);
+}
GetPhysicalDeviceVideoFormatPropertiesKHRFunc getPhysicalDeviceVideoFormatPropertiesKHR;
AcquireDrmDisplayEXTFunc acquireDrmDisplayEXT;
GetDrmDisplayEXTFunc getDrmDisplayEXT;
+GetPhysicalDeviceOpticalFlowImageFormatsNVFunc getPhysicalDeviceOpticalFlowImageFormatsNV;
VK_NULL_RETURN((*pCollection = allocateNonDispHandle<BufferCollectionFUCHSIA, VkBufferCollectionFUCHSIA>(device, pCreateInfo, pAllocator)));
}
+VKAPI_ATTR VkResult VKAPI_CALL createMicromapEXT (VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap)
+{
+ DE_UNREF(pAllocator);
+ VK_NULL_RETURN((*pMicromap = allocateNonDispHandle<MicromapEXT, VkMicromapEXT>(device, pCreateInfo, pAllocator)));
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL createOpticalFlowSessionNV (VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkOpticalFlowSessionNV* pSession)
+{
+ DE_UNREF(pAllocator);
+ VK_NULL_RETURN((*pSession = allocateNonDispHandle<OpticalFlowSessionNV, VkOpticalFlowSessionNV>(device, pCreateInfo, pAllocator)));
+}
+
VKAPI_ATTR void VKAPI_CALL destroyInstance (VkInstance instance, const VkAllocationCallbacks* pAllocator)
{
freeHandle<Instance, VkInstance>(instance, pAllocator);
freeNonDispHandle<BufferCollectionFUCHSIA, VkBufferCollectionFUCHSIA>(collection, pAllocator);
}
+VKAPI_ATTR void VKAPI_CALL destroyMicromapEXT (VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator)
+{
+ DE_UNREF(device);
+ freeNonDispHandle<MicromapEXT, VkMicromapEXT>(micromap, pAllocator);
+}
+
+VKAPI_ATTR void VKAPI_CALL destroyOpticalFlowSessionNV (VkDevice device, VkOpticalFlowSessionNV session, const VkAllocationCallbacks* pAllocator)
+{
+ DE_UNREF(device);
+ freeNonDispHandle<OpticalFlowSessionNV, VkOpticalFlowSessionNV>(session, pAllocator);
+}
+
VKAPI_ATTR VkResult VKAPI_CALL enumerateInstanceVersion (uint32_t* pApiVersion)
{
DE_UNREF(pApiVersion);
DE_UNREF(primitiveRestartEnable);
}
+VKAPI_ATTR void VKAPI_CALL cmdSetTessellationDomainOriginEXT (VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(domainOrigin);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetDepthClampEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClampEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(depthClampEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetPolygonModeEXT (VkCommandBuffer commandBuffer, VkPolygonMode polygonMode)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(polygonMode);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetRasterizationSamplesEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(rasterizationSamples);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetSampleMaskEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const VkSampleMask* pSampleMask)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(samples);
+ DE_UNREF(pSampleMask);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetAlphaToCoverageEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(alphaToCoverageEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetAlphaToOneEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(alphaToOneEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetLogicOpEnableEXT (VkCommandBuffer commandBuffer, VkBool32 logicOpEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(logicOpEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetColorBlendEnableEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkBool32* pColorBlendEnables)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(firstAttachment);
+ DE_UNREF(attachmentCount);
+ DE_UNREF(pColorBlendEnables);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetColorBlendEquationEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendEquationEXT* pColorBlendEquations)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(firstAttachment);
+ DE_UNREF(attachmentCount);
+ DE_UNREF(pColorBlendEquations);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetColorWriteMaskEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorComponentFlags* pColorWriteMasks)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(firstAttachment);
+ DE_UNREF(attachmentCount);
+ DE_UNREF(pColorWriteMasks);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetRasterizationStreamEXT (VkCommandBuffer commandBuffer, uint32_t rasterizationStream)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(rasterizationStream);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetConservativeRasterizationModeEXT (VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(conservativeRasterizationMode);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetExtraPrimitiveOverestimationSizeEXT (VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(extraPrimitiveOverestimationSize);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetDepthClipEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClipEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(depthClipEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetSampleLocationsEnableEXT (VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(sampleLocationsEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetColorBlendAdvancedEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendAdvancedEXT* pColorBlendAdvanced)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(firstAttachment);
+ DE_UNREF(attachmentCount);
+ DE_UNREF(pColorBlendAdvanced);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetProvokingVertexModeEXT (VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(provokingVertexMode);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetLineRasterizationModeEXT (VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(lineRasterizationMode);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetLineStippleEnableEXT (VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(stippledLineEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetDepthClipNegativeOneToOneEXT (VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(negativeOneToOne);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetViewportWScalingEnableNV (VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(viewportWScalingEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetViewportSwizzleNV (VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportSwizzleNV* pViewportSwizzles)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(firstViewport);
+ DE_UNREF(viewportCount);
+ DE_UNREF(pViewportSwizzles);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetCoverageToColorEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(coverageToColorEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetCoverageToColorLocationNV (VkCommandBuffer commandBuffer, uint32_t coverageToColorLocation)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(coverageToColorLocation);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetCoverageModulationModeNV (VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(coverageModulationMode);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetCoverageModulationTableEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(coverageModulationTableEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetCoverageModulationTableNV (VkCommandBuffer commandBuffer, uint32_t coverageModulationTableCount, const float* pCoverageModulationTable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(coverageModulationTableCount);
+ DE_UNREF(pCoverageModulationTable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetShadingRateImageEnableNV (VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(shadingRateImageEnable);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetCoverageReductionModeNV (VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(coverageReductionMode);
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdSetRepresentativeFragmentTestEnableNV (VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(representativeFragmentTestEnable);
+}
+
VKAPI_ATTR VkResult VKAPI_CALL setPrivateData (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data)
{
DE_UNREF(device);
return VK_SUCCESS;
}
-VKAPI_ATTR void VKAPI_CALL cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo)
+VKAPI_ATTR void VKAPI_CALL cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pDecodeInfo)
{
DE_UNREF(commandBuffer);
- DE_UNREF(pFrameInfo);
+ DE_UNREF(pDecodeInfo);
}
VKAPI_ATTR void VKAPI_CALL cmdBeginVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo)
DE_UNREF(ppData);
}
+VKAPI_ATTR void VKAPI_CALL cmdBuildMicromapsEXT (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(infoCount);
+ DE_UNREF(pInfos);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL buildMicromapsEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos)
+{
+ DE_UNREF(device);
+ DE_UNREF(deferredOperation);
+ DE_UNREF(infoCount);
+ DE_UNREF(pInfos);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdCopyMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(pInfo);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL copyMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo)
+{
+ DE_UNREF(device);
+ DE_UNREF(deferredOperation);
+ DE_UNREF(pInfo);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdCopyMicromapToMemoryEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(pInfo);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL copyMicromapToMemoryEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo)
+{
+ DE_UNREF(device);
+ DE_UNREF(deferredOperation);
+ DE_UNREF(pInfo);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdCopyMemoryToMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(pInfo);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL copyMemoryToMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo)
+{
+ DE_UNREF(device);
+ DE_UNREF(deferredOperation);
+ DE_UNREF(pInfo);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdWriteMicromapsPropertiesEXT (VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(micromapCount);
+ DE_UNREF(pMicromaps);
+ DE_UNREF(queryType);
+ DE_UNREF(queryPool);
+ DE_UNREF(firstQuery);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL writeMicromapsPropertiesEXT (VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride)
+{
+ DE_UNREF(device);
+ DE_UNREF(micromapCount);
+ DE_UNREF(pMicromaps);
+ DE_UNREF(queryType);
+ DE_UNREF(dataSize);
+ DE_UNREF(pData);
+ DE_UNREF(stride);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL getDeviceMicromapCompatibilityEXT (VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility)
+{
+ DE_UNREF(device);
+ DE_UNREF(pVersionInfo);
+ DE_UNREF(pCompatibility);
+}
+
+VKAPI_ATTR void VKAPI_CALL getMicromapBuildSizesEXT (VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo)
+{
+ DE_UNREF(device);
+ DE_UNREF(buildType);
+ DE_UNREF(pBuildInfo);
+ DE_UNREF(pSizeInfo);
+}
+
VKAPI_ATTR void VKAPI_CALL getShaderModuleIdentifierEXT (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier)
{
DE_UNREF(device);
return VK_SUCCESS;
}
+VKAPI_ATTR VkResult VKAPI_CALL getPhysicalDeviceOpticalFlowImageFormatsNV (VkPhysicalDevice physicalDevice, const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties)
+{
+ DE_UNREF(physicalDevice);
+ DE_UNREF(pOpticalFlowImageFormatInfo);
+ DE_UNREF(pFormatCount);
+ DE_UNREF(pImageFormatProperties);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL bindOpticalFlowSessionImageNV (VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout)
+{
+ DE_UNREF(device);
+ DE_UNREF(session);
+ DE_UNREF(bindingPoint);
+ DE_UNREF(view);
+ DE_UNREF(layout);
+ return VK_SUCCESS;
+}
+
+VKAPI_ATTR void VKAPI_CALL cmdOpticalFlowExecuteNV (VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const VkOpticalFlowExecuteInfoNV* pExecuteInfo)
+{
+ DE_UNREF(commandBuffer);
+ DE_UNREF(session);
+ DE_UNREF(pExecuteInfo);
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL getDeviceFaultInfoEXT (VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo)
+{
+ DE_UNREF(device);
+ DE_UNREF(pFaultCounts);
+ DE_UNREF(pFaultInfo);
+ return VK_SUCCESS;
+}
+
static const tcu::StaticFunctionLibrary::Entry s_platformFunctions[] =
{
VK_NULL_FUNC_ENTRY(vkCreateInstance, createInstance),
VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceVideoFormatPropertiesKHR, getPhysicalDeviceVideoFormatPropertiesKHR),
VK_NULL_FUNC_ENTRY(vkAcquireDrmDisplayEXT, acquireDrmDisplayEXT),
VK_NULL_FUNC_ENTRY(vkGetDrmDisplayEXT, getDrmDisplayEXT),
+ VK_NULL_FUNC_ENTRY(vkGetPhysicalDeviceOpticalFlowImageFormatsNV, getPhysicalDeviceOpticalFlowImageFormatsNV),
};
static const tcu::StaticFunctionLibrary::Entry s_deviceFunctions[] =
VK_NULL_FUNC_ENTRY(vkCmdSetLogicOpEXT, cmdSetLogicOpEXT),
VK_NULL_FUNC_ENTRY(vkCmdSetPrimitiveRestartEnable, cmdSetPrimitiveRestartEnable),
VK_NULL_FUNC_ENTRY(vkCreatePrivateDataSlot, createPrivateDataSlot),
+ VK_NULL_FUNC_ENTRY(vkCmdSetTessellationDomainOriginEXT, cmdSetTessellationDomainOriginEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetDepthClampEnableEXT, cmdSetDepthClampEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetPolygonModeEXT, cmdSetPolygonModeEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetRasterizationSamplesEXT, cmdSetRasterizationSamplesEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetSampleMaskEXT, cmdSetSampleMaskEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetAlphaToCoverageEnableEXT, cmdSetAlphaToCoverageEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetAlphaToOneEnableEXT, cmdSetAlphaToOneEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetLogicOpEnableEXT, cmdSetLogicOpEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetColorBlendEnableEXT, cmdSetColorBlendEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetColorBlendEquationEXT, cmdSetColorBlendEquationEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetColorWriteMaskEXT, cmdSetColorWriteMaskEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetRasterizationStreamEXT, cmdSetRasterizationStreamEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetConservativeRasterizationModeEXT, cmdSetConservativeRasterizationModeEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetExtraPrimitiveOverestimationSizeEXT, cmdSetExtraPrimitiveOverestimationSizeEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetDepthClipEnableEXT, cmdSetDepthClipEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetSampleLocationsEnableEXT, cmdSetSampleLocationsEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetColorBlendAdvancedEXT, cmdSetColorBlendAdvancedEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetProvokingVertexModeEXT, cmdSetProvokingVertexModeEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetLineRasterizationModeEXT, cmdSetLineRasterizationModeEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetLineStippleEnableEXT, cmdSetLineStippleEnableEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetDepthClipNegativeOneToOneEXT, cmdSetDepthClipNegativeOneToOneEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdSetViewportWScalingEnableNV, cmdSetViewportWScalingEnableNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetViewportSwizzleNV, cmdSetViewportSwizzleNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetCoverageToColorEnableNV, cmdSetCoverageToColorEnableNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetCoverageToColorLocationNV, cmdSetCoverageToColorLocationNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetCoverageModulationModeNV, cmdSetCoverageModulationModeNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetCoverageModulationTableEnableNV, cmdSetCoverageModulationTableEnableNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetCoverageModulationTableNV, cmdSetCoverageModulationTableNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetShadingRateImageEnableNV, cmdSetShadingRateImageEnableNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetCoverageReductionModeNV, cmdSetCoverageReductionModeNV),
+ VK_NULL_FUNC_ENTRY(vkCmdSetRepresentativeFragmentTestEnableNV, cmdSetRepresentativeFragmentTestEnableNV),
VK_NULL_FUNC_ENTRY(vkDestroyPrivateDataSlot, destroyPrivateDataSlot),
VK_NULL_FUNC_ENTRY(vkSetPrivateData, setPrivateData),
VK_NULL_FUNC_ENTRY(vkGetPrivateData, getPrivateData),
VK_NULL_FUNC_ENTRY(vkCmdEndRendering, cmdEndRendering),
VK_NULL_FUNC_ENTRY(vkGetDescriptorSetLayoutHostMappingInfoVALVE, getDescriptorSetLayoutHostMappingInfoVALVE),
VK_NULL_FUNC_ENTRY(vkGetDescriptorSetHostMappingVALVE, getDescriptorSetHostMappingVALVE),
+ VK_NULL_FUNC_ENTRY(vkCreateMicromapEXT, createMicromapEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdBuildMicromapsEXT, cmdBuildMicromapsEXT),
+ VK_NULL_FUNC_ENTRY(vkBuildMicromapsEXT, buildMicromapsEXT),
+ VK_NULL_FUNC_ENTRY(vkDestroyMicromapEXT, destroyMicromapEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdCopyMicromapEXT, cmdCopyMicromapEXT),
+ VK_NULL_FUNC_ENTRY(vkCopyMicromapEXT, copyMicromapEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdCopyMicromapToMemoryEXT, cmdCopyMicromapToMemoryEXT),
+ VK_NULL_FUNC_ENTRY(vkCopyMicromapToMemoryEXT, copyMicromapToMemoryEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdCopyMemoryToMicromapEXT, cmdCopyMemoryToMicromapEXT),
+ VK_NULL_FUNC_ENTRY(vkCopyMemoryToMicromapEXT, copyMemoryToMicromapEXT),
+ VK_NULL_FUNC_ENTRY(vkCmdWriteMicromapsPropertiesEXT, cmdWriteMicromapsPropertiesEXT),
+ VK_NULL_FUNC_ENTRY(vkWriteMicromapsPropertiesEXT, writeMicromapsPropertiesEXT),
+ VK_NULL_FUNC_ENTRY(vkGetDeviceMicromapCompatibilityEXT, getDeviceMicromapCompatibilityEXT),
+ VK_NULL_FUNC_ENTRY(vkGetMicromapBuildSizesEXT, getMicromapBuildSizesEXT),
VK_NULL_FUNC_ENTRY(vkGetShaderModuleIdentifierEXT, getShaderModuleIdentifierEXT),
VK_NULL_FUNC_ENTRY(vkGetShaderModuleCreateInfoIdentifierEXT, getShaderModuleCreateInfoIdentifierEXT),
VK_NULL_FUNC_ENTRY(vkGetImageSubresourceLayout2EXT, getImageSubresourceLayout2EXT),
VK_NULL_FUNC_ENTRY(vkExportMetalObjectsEXT, exportMetalObjectsEXT),
VK_NULL_FUNC_ENTRY(vkGetFramebufferTilePropertiesQCOM, getFramebufferTilePropertiesQCOM),
VK_NULL_FUNC_ENTRY(vkGetDynamicRenderingTilePropertiesQCOM, getDynamicRenderingTilePropertiesQCOM),
+ VK_NULL_FUNC_ENTRY(vkCreateOpticalFlowSessionNV, createOpticalFlowSessionNV),
+ VK_NULL_FUNC_ENTRY(vkDestroyOpticalFlowSessionNV, destroyOpticalFlowSessionNV),
+ VK_NULL_FUNC_ENTRY(vkBindOpticalFlowSessionImageNV, bindOpticalFlowSessionImageNV),
+ VK_NULL_FUNC_ENTRY(vkCmdOpticalFlowExecuteNV, cmdOpticalFlowExecuteNV),
+ VK_NULL_FUNC_ENTRY(vkGetDeviceFaultInfoEXT, getDeviceFaultInfoEXT),
};
template<> inline VkObjectType getObjectType<VkPrivateDataSlot> (void) { return VK_OBJECT_TYPE_PRIVATE_DATA_SLOT; }
template<> inline VkObjectType getObjectType<VkCuModuleNVX> (void) { return VK_OBJECT_TYPE_CU_MODULE_NVX; }
template<> inline VkObjectType getObjectType<VkCuFunctionNVX> (void) { return VK_OBJECT_TYPE_CU_FUNCTION_NVX; }
+template<> inline VkObjectType getObjectType<VkOpticalFlowSessionNV> (void) { return VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV; }
+template<> inline VkObjectType getObjectType<VkMicromapEXT> (void) { return VK_OBJECT_TYPE_MICROMAP_EXT; }
template<> inline VkObjectType getObjectType<VkDisplayKHR> (void) { return VK_OBJECT_TYPE_DISPLAY_KHR; }
template<> inline VkObjectType getObjectType<VkDisplayModeKHR> (void) { return VK_OBJECT_TYPE_DISPLAY_MODE_KHR; }
template<> inline VkObjectType getObjectType<VkSurfaceKHR> (void) { return VK_OBJECT_TYPE_SURFACE_KHR; }
Move<VkCuModuleNVX> createCuModuleNVX (const DeviceInterface& vk, VkDevice device, const VkCuModuleCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
Move<VkCuFunctionNVX> createCuFunctionNVX (const DeviceInterface& vk, VkDevice device, const VkCuFunctionCreateInfoNVX* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
Move<VkBufferCollectionFUCHSIA> createBufferCollectionFUCHSIA (const DeviceInterface& vk, VkDevice device, const VkBufferCollectionCreateInfoFUCHSIA* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
+Move<VkMicromapEXT> createMicromapEXT (const DeviceInterface& vk, VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
+Move<VkOpticalFlowSessionNV> createOpticalFlowSessionNV (const DeviceInterface& vk, VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator = DE_NULL);
m_deviceIface->destroyBufferCollectionFUCHSIA(m_device, obj, m_allocator);
}
+template<>
+void Deleter<VkMicromapEXT>::operator() (VkMicromapEXT obj) const
+{
+ m_deviceIface->destroyMicromapEXT(m_device, obj, m_allocator);
+}
+
+template<>
+void Deleter<VkOpticalFlowSessionNV>::operator() (VkOpticalFlowSessionNV obj) const
+{
+ m_deviceIface->destroyOpticalFlowSessionNV(m_device, obj, m_allocator);
+}
+
} // refdetails
Move<VkInstance> createInstance (const PlatformInterface& vk, const VkInstanceCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator)
return Move<VkBufferCollectionFUCHSIA>(check<VkBufferCollectionFUCHSIA>(object), Deleter<VkBufferCollectionFUCHSIA>(vk, device, pAllocator));
}
+Move<VkMicromapEXT> createMicromapEXT (const DeviceInterface& vk, VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator)
+{
+ VkMicromapEXT object = 0;
+ VK_CHECK(vk.createMicromapEXT(device, pCreateInfo, pAllocator, &object));
+ return Move<VkMicromapEXT>(check<VkMicromapEXT>(object), Deleter<VkMicromapEXT>(vk, device, pAllocator));
+}
+
+Move<VkOpticalFlowSessionNV> createOpticalFlowSessionNV (const DeviceInterface& vk, VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator)
+{
+ VkOpticalFlowSessionNV object = 0;
+ VK_CHECK(vk.createOpticalFlowSessionNV(device, pCreateInfo, pAllocator, &object));
+ return Move<VkOpticalFlowSessionNV>(check<VkOpticalFlowSessionNV>(object), Deleter<VkOpticalFlowSessionNV>(vk, device, pAllocator));
+}
+
const char* getProvokingVertexModeEXTName (VkProvokingVertexModeEXT value);
const char* getPipelineRobustnessBufferBehaviorEXTName (VkPipelineRobustnessBufferBehaviorEXT value);
const char* getPipelineRobustnessImageBehaviorEXTName (VkPipelineRobustnessImageBehaviorEXT value);
+const char* getDeviceAddressBindingTypeEXTName (VkDeviceAddressBindingTypeEXT value);
+const char* getMicromapTypeEXTName (VkMicromapTypeEXT value);
+const char* getBuildMicromapModeEXTName (VkBuildMicromapModeEXT value);
+const char* getCopyMicromapModeEXTName (VkCopyMicromapModeEXT value);
+const char* getOpacityMicromapFormatEXTName (VkOpacityMicromapFormatEXT value);
+const char* getOpacityMicromapSpecialIndexEXTName (VkOpacityMicromapSpecialIndexEXT value);
+const char* getDeviceFaultVendorBinaryHeaderVersionEXTName (VkDeviceFaultVendorBinaryHeaderVersionEXT value);
const char* getColorSpaceKHRName (VkColorSpaceKHR value);
const char* getPresentModeKHRName (VkPresentModeKHR value);
const char* getDebugReportObjectTypeEXTName (VkDebugReportObjectTypeEXT value);
const char* getFullScreenExclusiveEXTName (VkFullScreenExclusiveEXT value);
const char* getShaderFloatControlsIndependenceName (VkShaderFloatControlsIndependence value);
const char* getFragmentShadingRateCombinerOpKHRName (VkFragmentShadingRateCombinerOpKHR value);
+const char* getOpticalFlowPerformanceLevelNVName (VkOpticalFlowPerformanceLevelNV value);
+const char* getOpticalFlowSessionBindingPointNVName (VkOpticalFlowSessionBindingPointNV value);
+const char* getDeviceFaultAddressTypeEXTName (VkDeviceFaultAddressTypeEXT value);
const char* getVendorIdName (VkVendorId value);
const char* getDriverIdName (VkDriverId value);
const char* getShadingRatePaletteEntryNVName (VkShadingRatePaletteEntryNV value);
const char* getAccelerationStructureMotionInstanceTypeNVName (VkAccelerationStructureMotionInstanceTypeNV value);
const char* getdVideoH264ChromaFormatIdcName (StdVideoH264ChromaFormatIdc value);
const char* getdVideoH264ProfileIdcName (StdVideoH264ProfileIdc value);
-const char* getdVideoH264LevelName (StdVideoH264Level value);
+const char* getdVideoH264LevelIdcName (StdVideoH264LevelIdc value);
const char* getdVideoH264PocTypeName (StdVideoH264PocType value);
const char* getdVideoH264AspectRatioIdcName (StdVideoH264AspectRatioIdc value);
const char* getdVideoH264WeightedBipredIdcName (StdVideoH264WeightedBipredIdc value);
const char* getdVideoDecodeH264FieldOrderCountName (StdVideoDecodeH264FieldOrderCount value);
const char* getdVideoH265ChromaFormatIdcName (StdVideoH265ChromaFormatIdc value);
const char* getdVideoH265ProfileIdcName (StdVideoH265ProfileIdc value);
-const char* getdVideoH265LevelName (StdVideoH265Level value);
+const char* getdVideoH265LevelIdcName (StdVideoH265LevelIdc value);
const char* getdVideoH265SliceTypeName (StdVideoH265SliceType value);
const char* getdVideoH265PictureTypeName (StdVideoH265PictureType value);
+const char* getdVideoH265AspectRatioIdcName (StdVideoH265AspectRatioIdc value);
inline tcu::Format::Enum<VkAttachmentLoadOp> getAttachmentLoadOpStr (VkAttachmentLoadOp value) { return tcu::Format::Enum<VkAttachmentLoadOp>(getAttachmentLoadOpName, value); }
inline tcu::Format::Enum<VkAttachmentStoreOp> getAttachmentStoreOpStr (VkAttachmentStoreOp value) { return tcu::Format::Enum<VkAttachmentStoreOp>(getAttachmentStoreOpName, value); }
inline tcu::Format::Enum<VkProvokingVertexModeEXT> getProvokingVertexModeEXTStr (VkProvokingVertexModeEXT value) { return tcu::Format::Enum<VkProvokingVertexModeEXT>(getProvokingVertexModeEXTName, value); }
inline tcu::Format::Enum<VkPipelineRobustnessBufferBehaviorEXT> getPipelineRobustnessBufferBehaviorEXTStr (VkPipelineRobustnessBufferBehaviorEXT value) { return tcu::Format::Enum<VkPipelineRobustnessBufferBehaviorEXT>(getPipelineRobustnessBufferBehaviorEXTName, value); }
inline tcu::Format::Enum<VkPipelineRobustnessImageBehaviorEXT> getPipelineRobustnessImageBehaviorEXTStr (VkPipelineRobustnessImageBehaviorEXT value) { return tcu::Format::Enum<VkPipelineRobustnessImageBehaviorEXT>(getPipelineRobustnessImageBehaviorEXTName, value); }
+inline tcu::Format::Enum<VkDeviceAddressBindingTypeEXT> getDeviceAddressBindingTypeEXTStr (VkDeviceAddressBindingTypeEXT value) { return tcu::Format::Enum<VkDeviceAddressBindingTypeEXT>(getDeviceAddressBindingTypeEXTName, value); }
+inline tcu::Format::Enum<VkMicromapTypeEXT> getMicromapTypeEXTStr (VkMicromapTypeEXT value) { return tcu::Format::Enum<VkMicromapTypeEXT>(getMicromapTypeEXTName, value); }
+inline tcu::Format::Enum<VkBuildMicromapModeEXT> getBuildMicromapModeEXTStr (VkBuildMicromapModeEXT value) { return tcu::Format::Enum<VkBuildMicromapModeEXT>(getBuildMicromapModeEXTName, value); }
+inline tcu::Format::Enum<VkCopyMicromapModeEXT> getCopyMicromapModeEXTStr (VkCopyMicromapModeEXT value) { return tcu::Format::Enum<VkCopyMicromapModeEXT>(getCopyMicromapModeEXTName, value); }
+inline tcu::Format::Enum<VkOpacityMicromapFormatEXT> getOpacityMicromapFormatEXTStr (VkOpacityMicromapFormatEXT value) { return tcu::Format::Enum<VkOpacityMicromapFormatEXT>(getOpacityMicromapFormatEXTName, value); }
+inline tcu::Format::Enum<VkOpacityMicromapSpecialIndexEXT> getOpacityMicromapSpecialIndexEXTStr (VkOpacityMicromapSpecialIndexEXT value) { return tcu::Format::Enum<VkOpacityMicromapSpecialIndexEXT>(getOpacityMicromapSpecialIndexEXTName, value); }
+inline tcu::Format::Enum<VkDeviceFaultVendorBinaryHeaderVersionEXT> getDeviceFaultVendorBinaryHeaderVersionEXTStr (VkDeviceFaultVendorBinaryHeaderVersionEXT value) { return tcu::Format::Enum<VkDeviceFaultVendorBinaryHeaderVersionEXT>(getDeviceFaultVendorBinaryHeaderVersionEXTName, value); }
inline tcu::Format::Enum<VkColorSpaceKHR> getColorSpaceKHRStr (VkColorSpaceKHR value) { return tcu::Format::Enum<VkColorSpaceKHR>(getColorSpaceKHRName, value); }
inline tcu::Format::Enum<VkPresentModeKHR> getPresentModeKHRStr (VkPresentModeKHR value) { return tcu::Format::Enum<VkPresentModeKHR>(getPresentModeKHRName, value); }
inline tcu::Format::Enum<VkDebugReportObjectTypeEXT> getDebugReportObjectTypeEXTStr (VkDebugReportObjectTypeEXT value) { return tcu::Format::Enum<VkDebugReportObjectTypeEXT>(getDebugReportObjectTypeEXTName, value); }
inline tcu::Format::Enum<VkFullScreenExclusiveEXT> getFullScreenExclusiveEXTStr (VkFullScreenExclusiveEXT value) { return tcu::Format::Enum<VkFullScreenExclusiveEXT>(getFullScreenExclusiveEXTName, value); }
inline tcu::Format::Enum<VkShaderFloatControlsIndependence> getShaderFloatControlsIndependenceStr (VkShaderFloatControlsIndependence value) { return tcu::Format::Enum<VkShaderFloatControlsIndependence>(getShaderFloatControlsIndependenceName, value); }
inline tcu::Format::Enum<VkFragmentShadingRateCombinerOpKHR> getFragmentShadingRateCombinerOpKHRStr (VkFragmentShadingRateCombinerOpKHR value) { return tcu::Format::Enum<VkFragmentShadingRateCombinerOpKHR>(getFragmentShadingRateCombinerOpKHRName, value); }
+inline tcu::Format::Enum<VkOpticalFlowPerformanceLevelNV> getOpticalFlowPerformanceLevelNVStr (VkOpticalFlowPerformanceLevelNV value) { return tcu::Format::Enum<VkOpticalFlowPerformanceLevelNV>(getOpticalFlowPerformanceLevelNVName, value); }
+inline tcu::Format::Enum<VkOpticalFlowSessionBindingPointNV> getOpticalFlowSessionBindingPointNVStr (VkOpticalFlowSessionBindingPointNV value) { return tcu::Format::Enum<VkOpticalFlowSessionBindingPointNV>(getOpticalFlowSessionBindingPointNVName, value); }
+inline tcu::Format::Enum<VkDeviceFaultAddressTypeEXT> getDeviceFaultAddressTypeEXTStr (VkDeviceFaultAddressTypeEXT value) { return tcu::Format::Enum<VkDeviceFaultAddressTypeEXT>(getDeviceFaultAddressTypeEXTName, value); }
inline tcu::Format::Enum<VkVendorId> getVendorIdStr (VkVendorId value) { return tcu::Format::Enum<VkVendorId>(getVendorIdName, value); }
inline tcu::Format::Enum<VkDriverId> getDriverIdStr (VkDriverId value) { return tcu::Format::Enum<VkDriverId>(getDriverIdName, value); }
inline tcu::Format::Enum<VkShadingRatePaletteEntryNV> getShadingRatePaletteEntryNVStr (VkShadingRatePaletteEntryNV value) { return tcu::Format::Enum<VkShadingRatePaletteEntryNV>(getShadingRatePaletteEntryNVName, value); }
inline tcu::Format::Enum<VkAccelerationStructureMotionInstanceTypeNV> getAccelerationStructureMotionInstanceTypeNVStr (VkAccelerationStructureMotionInstanceTypeNV value) { return tcu::Format::Enum<VkAccelerationStructureMotionInstanceTypeNV>(getAccelerationStructureMotionInstanceTypeNVName, value); }
inline tcu::Format::Enum<StdVideoH264ChromaFormatIdc> getdVideoH264ChromaFormatIdcStr (StdVideoH264ChromaFormatIdc value) { return tcu::Format::Enum<StdVideoH264ChromaFormatIdc>(getdVideoH264ChromaFormatIdcName, value); }
inline tcu::Format::Enum<StdVideoH264ProfileIdc> getdVideoH264ProfileIdcStr (StdVideoH264ProfileIdc value) { return tcu::Format::Enum<StdVideoH264ProfileIdc>(getdVideoH264ProfileIdcName, value); }
-inline tcu::Format::Enum<StdVideoH264Level> getdVideoH264LevelStr (StdVideoH264Level value) { return tcu::Format::Enum<StdVideoH264Level>(getdVideoH264LevelName, value); }
+inline tcu::Format::Enum<StdVideoH264LevelIdc> getdVideoH264LevelIdcStr (StdVideoH264LevelIdc value) { return tcu::Format::Enum<StdVideoH264LevelIdc>(getdVideoH264LevelIdcName, value); }
inline tcu::Format::Enum<StdVideoH264PocType> getdVideoH264PocTypeStr (StdVideoH264PocType value) { return tcu::Format::Enum<StdVideoH264PocType>(getdVideoH264PocTypeName, value); }
inline tcu::Format::Enum<StdVideoH264AspectRatioIdc> getdVideoH264AspectRatioIdcStr (StdVideoH264AspectRatioIdc value) { return tcu::Format::Enum<StdVideoH264AspectRatioIdc>(getdVideoH264AspectRatioIdcName, value); }
inline tcu::Format::Enum<StdVideoH264WeightedBipredIdc> getdVideoH264WeightedBipredIdcStr (StdVideoH264WeightedBipredIdc value) { return tcu::Format::Enum<StdVideoH264WeightedBipredIdc>(getdVideoH264WeightedBipredIdcName, value); }
inline tcu::Format::Enum<StdVideoDecodeH264FieldOrderCount> getdVideoDecodeH264FieldOrderCountStr (StdVideoDecodeH264FieldOrderCount value) { return tcu::Format::Enum<StdVideoDecodeH264FieldOrderCount>(getdVideoDecodeH264FieldOrderCountName, value); }
inline tcu::Format::Enum<StdVideoH265ChromaFormatIdc> getdVideoH265ChromaFormatIdcStr (StdVideoH265ChromaFormatIdc value) { return tcu::Format::Enum<StdVideoH265ChromaFormatIdc>(getdVideoH265ChromaFormatIdcName, value); }
inline tcu::Format::Enum<StdVideoH265ProfileIdc> getdVideoH265ProfileIdcStr (StdVideoH265ProfileIdc value) { return tcu::Format::Enum<StdVideoH265ProfileIdc>(getdVideoH265ProfileIdcName, value); }
-inline tcu::Format::Enum<StdVideoH265Level> getdVideoH265LevelStr (StdVideoH265Level value) { return tcu::Format::Enum<StdVideoH265Level>(getdVideoH265LevelName, value); }
+inline tcu::Format::Enum<StdVideoH265LevelIdc> getdVideoH265LevelIdcStr (StdVideoH265LevelIdc value) { return tcu::Format::Enum<StdVideoH265LevelIdc>(getdVideoH265LevelIdcName, value); }
inline tcu::Format::Enum<StdVideoH265SliceType> getdVideoH265SliceTypeStr (StdVideoH265SliceType value) { return tcu::Format::Enum<StdVideoH265SliceType>(getdVideoH265SliceTypeName, value); }
inline tcu::Format::Enum<StdVideoH265PictureType> getdVideoH265PictureTypeStr (StdVideoH265PictureType value) { return tcu::Format::Enum<StdVideoH265PictureType>(getdVideoH265PictureTypeName, value); }
+inline tcu::Format::Enum<StdVideoH265AspectRatioIdc> getdVideoH265AspectRatioIdcStr (StdVideoH265AspectRatioIdc value) { return tcu::Format::Enum<StdVideoH265AspectRatioIdc>(getdVideoH265AspectRatioIdcName, value); }
inline std::ostream& operator<< (std::ostream& s, VkAttachmentLoadOp value) { return s << getAttachmentLoadOpStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkAttachmentStoreOp value) { return s << getAttachmentStoreOpStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkProvokingVertexModeEXT value) { return s << getProvokingVertexModeEXTStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkPipelineRobustnessBufferBehaviorEXT value) { return s << getPipelineRobustnessBufferBehaviorEXTStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkPipelineRobustnessImageBehaviorEXT value) { return s << getPipelineRobustnessImageBehaviorEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkDeviceAddressBindingTypeEXT value) { return s << getDeviceAddressBindingTypeEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkMicromapTypeEXT value) { return s << getMicromapTypeEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkBuildMicromapModeEXT value) { return s << getBuildMicromapModeEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkCopyMicromapModeEXT value) { return s << getCopyMicromapModeEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkOpacityMicromapFormatEXT value) { return s << getOpacityMicromapFormatEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkOpacityMicromapSpecialIndexEXT value) { return s << getOpacityMicromapSpecialIndexEXTStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkDeviceFaultVendorBinaryHeaderVersionEXT value) { return s << getDeviceFaultVendorBinaryHeaderVersionEXTStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkColorSpaceKHR value) { return s << getColorSpaceKHRStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkPresentModeKHR value) { return s << getPresentModeKHRStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkDebugReportObjectTypeEXT value) { return s << getDebugReportObjectTypeEXTStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkFullScreenExclusiveEXT value) { return s << getFullScreenExclusiveEXTStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkShaderFloatControlsIndependence value) { return s << getShaderFloatControlsIndependenceStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkFragmentShadingRateCombinerOpKHR value) { return s << getFragmentShadingRateCombinerOpKHRStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkOpticalFlowPerformanceLevelNV value) { return s << getOpticalFlowPerformanceLevelNVStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkOpticalFlowSessionBindingPointNV value) { return s << getOpticalFlowSessionBindingPointNVStr(value); }
+inline std::ostream& operator<< (std::ostream& s, VkDeviceFaultAddressTypeEXT value) { return s << getDeviceFaultAddressTypeEXTStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkVendorId value) { return s << getVendorIdStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkDriverId value) { return s << getDriverIdStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkShadingRatePaletteEntryNV value) { return s << getShadingRatePaletteEntryNVStr(value); }
inline std::ostream& operator<< (std::ostream& s, VkAccelerationStructureMotionInstanceTypeNV value) { return s << getAccelerationStructureMotionInstanceTypeNVStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH264ChromaFormatIdc value) { return s << getdVideoH264ChromaFormatIdcStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH264ProfileIdc value) { return s << getdVideoH264ProfileIdcStr(value); }
-inline std::ostream& operator<< (std::ostream& s, StdVideoH264Level value) { return s << getdVideoH264LevelStr(value); }
+inline std::ostream& operator<< (std::ostream& s, StdVideoH264LevelIdc value) { return s << getdVideoH264LevelIdcStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH264PocType value) { return s << getdVideoH264PocTypeStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH264AspectRatioIdc value) { return s << getdVideoH264AspectRatioIdcStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH264WeightedBipredIdc value) { return s << getdVideoH264WeightedBipredIdcStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoDecodeH264FieldOrderCount value) { return s << getdVideoDecodeH264FieldOrderCountStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH265ChromaFormatIdc value) { return s << getdVideoH265ChromaFormatIdcStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH265ProfileIdc value) { return s << getdVideoH265ProfileIdcStr(value); }
-inline std::ostream& operator<< (std::ostream& s, StdVideoH265Level value) { return s << getdVideoH265LevelStr(value); }
+inline std::ostream& operator<< (std::ostream& s, StdVideoH265LevelIdc value) { return s << getdVideoH265LevelIdcStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH265SliceType value) { return s << getdVideoH265SliceTypeStr(value); }
inline std::ostream& operator<< (std::ostream& s, StdVideoH265PictureType value) { return s << getdVideoH265PictureTypeStr(value); }
+inline std::ostream& operator<< (std::ostream& s, StdVideoH265AspectRatioIdc value) { return s << getdVideoH265AspectRatioIdcStr(value); }
tcu::Format::Bitfield<32> getFramebufferCreateFlagsStr (VkFramebufferCreateFlags value);
tcu::Format::Bitfield<32> getQueryPoolCreateFlagsStr (VkQueryPoolCreateFlags value);
tcu::Format::Bitfield<32> getAccelerationStructureMotionInstanceFlagsNVStr (VkAccelerationStructureMotionInstanceFlagsNV value);
tcu::Format::Bitfield<64> getFormatFeatureFlags2Str (VkFormatFeatureFlags2 value);
tcu::Format::Bitfield<32> getRenderingFlagsStr (VkRenderingFlags value);
+tcu::Format::Bitfield<32> getBuildMicromapFlagsEXTStr (VkBuildMicromapFlagsEXT value);
+tcu::Format::Bitfield<32> getMicromapCreateFlagsEXTStr (VkMicromapCreateFlagsEXT value);
tcu::Format::Bitfield<32> getCompositeAlphaFlagsKHRStr (VkCompositeAlphaFlagsKHR value);
tcu::Format::Bitfield<32> getDisplayPlaneAlphaFlagsKHRStr (VkDisplayPlaneAlphaFlagsKHR value);
tcu::Format::Bitfield<32> getSurfaceTransformFlagsKHRStr (VkSurfaceTransformFlagsKHR value);
tcu::Format::Bitfield<32> getImageCompressionFlagsEXTStr (VkImageCompressionFlagsEXT value);
tcu::Format::Bitfield<32> getImageCompressionFixedRateFlagsEXTStr (VkImageCompressionFixedRateFlagsEXT value);
tcu::Format::Bitfield<32> getExportMetalObjectTypeFlagsEXTStr (VkExportMetalObjectTypeFlagsEXT value);
+tcu::Format::Bitfield<32> getDeviceAddressBindingFlagsEXTStr (VkDeviceAddressBindingFlagsEXT value);
+tcu::Format::Bitfield<32> getOpticalFlowGridSizeFlagsNVStr (VkOpticalFlowGridSizeFlagsNV value);
+tcu::Format::Bitfield<32> getOpticalFlowUsageFlagsNVStr (VkOpticalFlowUsageFlagsNV value);
+tcu::Format::Bitfield<32> getOpticalFlowSessionCreateFlagsNVStr (VkOpticalFlowSessionCreateFlagsNV value);
+tcu::Format::Bitfield<32> getOpticalFlowExecuteFlagsNVStr (VkOpticalFlowExecuteFlagsNV value);
tcu::Format::Bitfield<32> getVideoCodecOperationFlagsKHRStr (VkVideoCodecOperationFlagsKHR value);
tcu::Format::Bitfield<32> getVideoCapabilityFlagsKHRStr (VkVideoCapabilityFlagsKHR value);
tcu::Format::Bitfield<32> getVideoSessionCreateFlagsKHRStr (VkVideoSessionCreateFlagsKHR value);
std::ostream& operator<< (std::ostream& s, const VkSurfaceFullScreenExclusiveInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkSurfaceFullScreenExclusiveWin32InfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilitiesFullScreenExclusiveEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePresentBarrierFeaturesNV& value);
+std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilitiesPresentBarrierNV& value);
+std::ostream& operator<< (std::ostream& s, const VkSwapchainPresentBarrierCreateInfoNV& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePerformanceQueryFeaturesKHR& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePerformanceQueryPropertiesKHR& value);
std::ostream& operator<< (std::ostream& s, const VkPerformanceCounterKHR& value);
std::ostream& operator<< (std::ostream& s, const VkPipelineLibraryCreateInfoKHR& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicStateFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState2FeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkColorBlendEquationEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkColorBlendAdvancedEXT& value);
std::ostream& operator<< (std::ostream& s, const VkRenderPassTransformBeginInfoQCOM& value);
std::ostream& operator<< (std::ostream& s, const VkCopyCommandTransformInfoQCOM& value);
std::ostream& operator<< (std::ostream& s, const VkCommandBufferInheritanceRenderPassTransformInfoQCOM& value);
std::ostream& operator<< (std::ostream& s, const VkPipelineFragmentShadingRateEnumStateCreateInfoNV& value);
std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureBuildSizesInfoKHR& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceImage2DViewOf3DFeaturesEXT& value);
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE& value);
-std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeListVALVE& value);
-std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeCreateInfoVALVE& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeListEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeCreateInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDepthClipControlFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPipelineViewportDepthClipControlCreateInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkSubpassResolvePerformanceQueryEXT& value);
std::ostream& operator<< (std::ostream& s, const VkMultisampledRenderToSingleSampledInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkQueueFamilyVideoPropertiesKHR& value);
std::ostream& operator<< (std::ostream& s, const VkQueueFamilyQueryResultStatusPropertiesKHR& value);
std::ostream& operator<< (std::ostream& s, const VkVideoProfileListInfoKHR& value);
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH264SessionParametersCreateInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH264PictureInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH264DpbSlotInfoEXT& value);
-std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH264MvcInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH265ProfileInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH265CapabilitiesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH265SessionParametersAddInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkRenderPassSubpassFeedbackInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkRenderPassSubpassFeedbackCreateInfoEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMicromapBuildInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMicromapCreateInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMicromapVersionInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkCopyMicromapInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkCopyMicromapToMemoryInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkCopyMemoryToMicromapInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMicromapBuildSizesInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMicromapUsageEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkMicromapTriangleEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpacityMicromapFeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpacityMicromapPropertiesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureTrianglesOpacityMicromapEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPipelinePropertiesIdentifierEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelinePropertiesFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD& value);
std::ostream& operator<< (std::ostream& s, const VkAmigoProfilingSubmitInfoSEC& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT& value);
std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceDepthClampZeroOneFeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceAddressBindingReportFeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkDeviceAddressBindingCallbackDataEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpticalFlowFeaturesNV& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpticalFlowPropertiesNV& value);
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowImageFormatInfoNV& value);
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowImageFormatPropertiesNV& value);
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowSessionCreateInfoNV& value);
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowSessionCreatePrivateDataInfoNV& value);
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowExecuteInfoNV& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFaultFeaturesEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultAddressInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultVendorInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultCountsEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultInfoEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultVendorBinaryHeaderVersionOneEXT& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM& value);
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH264SpsVuiFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH264HrdParameters& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH264SequenceParameterSetVui& value);
std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264PictureInfo& value);
std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264ReferenceInfoFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264ReferenceInfo& value);
-std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264MvcElementFlags& value);
-std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264MvcElement& value);
-std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264Mvc& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264WeightTableFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264WeightTable& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264SliceHeaderFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264PictureInfo& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264ReferenceInfo& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264SliceHeader& value);
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ProfileTierLevelFlags& value);
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ProfileTierLevel& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265DecPicBufMgr& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265SubLayerHrdParameters& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265HrdFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265VpsFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265VideoParameterSet& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265ScalingLists& value);
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ShortTermRefPicSetFlags& value);
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ShortTermRefPicSet& value);
+std::ostream& operator<< (std::ostream& s, const StdVideoH265LongTermRefPicsSps& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265SpsVuiFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265SequenceParameterSetVui& value);
std::ostream& operator<< (std::ostream& s, const StdVideoH265PredictorPaletteEntries& value);
std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH265ReferenceInfo& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265WeightTableFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265WeightTable& value);
+std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265SliceSegmentLongTermRefPics& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265SliceSegmentHeaderFlags& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265SliceSegmentHeader& value);
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265ReferenceModificationFlags& value);
template<> const char* getTypeName<VkPrivateDataSlot> (void) { return "VkPrivateDataSlot"; }
template<> const char* getTypeName<VkCuModuleNVX> (void) { return "VkCuModuleNVX"; }
template<> const char* getTypeName<VkCuFunctionNVX> (void) { return "VkCuFunctionNVX"; }
+template<> const char* getTypeName<VkOpticalFlowSessionNV> (void) { return "VkOpticalFlowSessionNV"; }
+template<> const char* getTypeName<VkMicromapEXT> (void) { return "VkMicromapEXT"; }
template<> const char* getTypeName<VkDisplayKHR> (void) { return "VkDisplayKHR"; }
template<> const char* getTypeName<VkDisplayModeKHR> (void) { return "VkDisplayModeKHR"; }
template<> const char* getTypeName<VkSurfaceKHR> (void) { return "VkSurfaceKHR"; }
{
tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR"),
tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT"),
- tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE"),
+ tcu::Format::BitDesc(VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT, "VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
tcu::Format::BitDesc(VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT, "VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT"),
tcu::Format::BitDesc(VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR"),
tcu::Format::BitDesc(VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR, "VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR"),
+ tcu::Format::BitDesc(VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT, "VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT"),
+ tcu::Format::BitDesc(VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT, "VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
case VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK: return "VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK";
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR: return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR";
case VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV: return "VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV";
- case VK_DESCRIPTOR_TYPE_MUTABLE_VALVE: return "VK_DESCRIPTOR_TYPE_MUTABLE_VALVE";
+ case VK_DESCRIPTOR_TYPE_MUTABLE_EXT: return "VK_DESCRIPTOR_TYPE_MUTABLE_EXT";
case VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM: return "VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM";
case VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM: return "VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM";
default: return DE_NULL;
{
switch (value)
{
- case VK_DYNAMIC_STATE_VIEWPORT: return "VK_DYNAMIC_STATE_VIEWPORT";
- case VK_DYNAMIC_STATE_SCISSOR: return "VK_DYNAMIC_STATE_SCISSOR";
- case VK_DYNAMIC_STATE_LINE_WIDTH: return "VK_DYNAMIC_STATE_LINE_WIDTH";
- case VK_DYNAMIC_STATE_DEPTH_BIAS: return "VK_DYNAMIC_STATE_DEPTH_BIAS";
- case VK_DYNAMIC_STATE_BLEND_CONSTANTS: return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
- case VK_DYNAMIC_STATE_DEPTH_BOUNDS: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
- case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK: return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK";
- case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK: return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
- case VK_DYNAMIC_STATE_STENCIL_REFERENCE: return "VK_DYNAMIC_STATE_STENCIL_REFERENCE";
- case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV: return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV";
- case VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT: return "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT";
- case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT: return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT";
- case VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV: return "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV";
- case VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV: return "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV";
- case VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV: return "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV";
- case VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR: return "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR";
- case VK_DYNAMIC_STATE_LINE_STIPPLE_EXT: return "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT";
- case VK_DYNAMIC_STATE_CULL_MODE: return "VK_DYNAMIC_STATE_CULL_MODE";
- case VK_DYNAMIC_STATE_FRONT_FACE: return "VK_DYNAMIC_STATE_FRONT_FACE";
- case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY: return "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY";
- case VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT: return "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT";
- case VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT: return "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT";
- case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE: return "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE";
- case VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE";
- case VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE";
- case VK_DYNAMIC_STATE_DEPTH_COMPARE_OP: return "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP";
- case VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE";
- case VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE: return "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE";
- case VK_DYNAMIC_STATE_STENCIL_OP: return "VK_DYNAMIC_STATE_STENCIL_OP";
- case VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR: return "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR";
- case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT: return "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT";
- case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT: return "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT";
- case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE: return "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE";
- case VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE";
- case VK_DYNAMIC_STATE_LOGIC_OP_EXT: return "VK_DYNAMIC_STATE_LOGIC_OP_EXT";
- case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE: return "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE";
- case VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT: return "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT";
- default: return DE_NULL;
+ case VK_DYNAMIC_STATE_VIEWPORT: return "VK_DYNAMIC_STATE_VIEWPORT";
+ case VK_DYNAMIC_STATE_SCISSOR: return "VK_DYNAMIC_STATE_SCISSOR";
+ case VK_DYNAMIC_STATE_LINE_WIDTH: return "VK_DYNAMIC_STATE_LINE_WIDTH";
+ case VK_DYNAMIC_STATE_DEPTH_BIAS: return "VK_DYNAMIC_STATE_DEPTH_BIAS";
+ case VK_DYNAMIC_STATE_BLEND_CONSTANTS: return "VK_DYNAMIC_STATE_BLEND_CONSTANTS";
+ case VK_DYNAMIC_STATE_DEPTH_BOUNDS: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS";
+ case VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK: return "VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK";
+ case VK_DYNAMIC_STATE_STENCIL_WRITE_MASK: return "VK_DYNAMIC_STATE_STENCIL_WRITE_MASK";
+ case VK_DYNAMIC_STATE_STENCIL_REFERENCE: return "VK_DYNAMIC_STATE_STENCIL_REFERENCE";
+ case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV: return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV";
+ case VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT: return "VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT";
+ case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT: return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT";
+ case VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV: return "VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV";
+ case VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV: return "VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV";
+ case VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV: return "VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV";
+ case VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR: return "VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR";
+ case VK_DYNAMIC_STATE_LINE_STIPPLE_EXT: return "VK_DYNAMIC_STATE_LINE_STIPPLE_EXT";
+ case VK_DYNAMIC_STATE_CULL_MODE: return "VK_DYNAMIC_STATE_CULL_MODE";
+ case VK_DYNAMIC_STATE_FRONT_FACE: return "VK_DYNAMIC_STATE_FRONT_FACE";
+ case VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY: return "VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY";
+ case VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT: return "VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT";
+ case VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT: return "VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT";
+ case VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE: return "VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE";
+ case VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE";
+ case VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE";
+ case VK_DYNAMIC_STATE_DEPTH_COMPARE_OP: return "VK_DYNAMIC_STATE_DEPTH_COMPARE_OP";
+ case VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE";
+ case VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE: return "VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE";
+ case VK_DYNAMIC_STATE_STENCIL_OP: return "VK_DYNAMIC_STATE_STENCIL_OP";
+ case VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR: return "VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR";
+ case VK_DYNAMIC_STATE_VERTEX_INPUT_EXT: return "VK_DYNAMIC_STATE_VERTEX_INPUT_EXT";
+ case VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT: return "VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE: return "VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE";
+ case VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE: return "VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE";
+ case VK_DYNAMIC_STATE_LOGIC_OP_EXT: return "VK_DYNAMIC_STATE_LOGIC_OP_EXT";
+ case VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE: return "VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE";
+ case VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT: return "VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT: return "VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT";
+ case VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT: return "VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_POLYGON_MODE_EXT: return "VK_DYNAMIC_STATE_POLYGON_MODE_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT: return "VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT";
+ case VK_DYNAMIC_STATE_SAMPLE_MASK_EXT: return "VK_DYNAMIC_STATE_SAMPLE_MASK_EXT";
+ case VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT: return "VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT: return "VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT: return "VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT: return "VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT: return "VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT";
+ case VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT: return "VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT";
+ case VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT: return "VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT";
+ case VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT: return "VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT";
+ case VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT: return "VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT";
+ case VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT: return "VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT: return "VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT: return "VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT";
+ case VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT: return "VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT";
+ case VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT: return "VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT";
+ case VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT: return "VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT";
+ case VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT: return "VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT";
+ case VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV: return "VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV";
+ case VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV: return "VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV: return "VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV: return "VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV: return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV: return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV: return "VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV";
+ case VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV: return "VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV";
+ case VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV: return "VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV";
+ case VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV: return "VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV";
+ default: return DE_NULL;
}
}
case VK_FORMAT_G16_B16R16_2PLANE_444_UNORM: return "VK_FORMAT_G16_B16R16_2PLANE_444_UNORM";
case VK_FORMAT_A4R4G4B4_UNORM_PACK16: return "VK_FORMAT_A4R4G4B4_UNORM_PACK16";
case VK_FORMAT_A4B4G4R4_UNORM_PACK16: return "VK_FORMAT_A4B4G4R4_UNORM_PACK16";
+ case VK_FORMAT_R16G16_S10_5_NV: return "VK_FORMAT_R16G16_S10_5_NV";
default: return DE_NULL;
}
}
tcu::Format::BitDesc(VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR"),
tcu::Format::BitDesc(VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT, "VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT"),
tcu::Format::BitDesc(VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT, "VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT"),
+ tcu::Format::BitDesc(VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT, "VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT"),
tcu::Format::BitDesc(VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT, "VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"),
tcu::Format::BitDesc(VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT, "VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT"),
+ tcu::Format::BitDesc(VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT, "VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT"),
+ tcu::Format::BitDesc(VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT, "VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
case VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT: return "VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT";
case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR: return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR";
case VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR: return "VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR";
+ case VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT: return "VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT";
+ case VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT: return "VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT";
default: return DE_NULL;
}
}
tcu::Format::BitDesc(VK_QUEUE_PROTECTED_BIT, "VK_QUEUE_PROTECTED_BIT"),
tcu::Format::BitDesc(VK_QUEUE_VIDEO_DECODE_BIT_KHR, "VK_QUEUE_VIDEO_DECODE_BIT_KHR"),
tcu::Format::BitDesc(VK_QUEUE_VIDEO_ENCODE_BIT_KHR, "VK_QUEUE_VIDEO_ENCODE_BIT_KHR"),
+ tcu::Format::BitDesc(VK_QUEUE_OPTICAL_FLOW_BIT_NV, "VK_QUEUE_OPTICAL_FLOW_BIT_NV"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
case VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT: return "VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT";
case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT: return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT";
case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT: return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT";
- case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT: return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT";
case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT: return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT";
case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT: return "VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR: return "VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV: return "VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV";
+ case VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV";
case VK_STRUCTURE_TYPE_PRESENT_ID_KHR: return "VK_STRUCTURE_TYPE_PRESENT_ID_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES";
case VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT: return "VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT: return "VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT";
case VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR";
- case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE";
- case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE: return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT";
case VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT: return "VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT";
case VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT: return "VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT: return "VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT: return "VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT: return "VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT: return "VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT: return "VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT";
+ case VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT: return "VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT";
+ case VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT: return "VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT";
+ case VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT: return "VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT";
case VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM";
case VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM: return "VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT";
case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT: return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT";
case VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT";
case VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT: return "VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT";
case VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT: return "VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV: return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV: return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV: return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV: return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV";
+ case VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV: return "VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM";
case VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM: return "VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM";
case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC";
case VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC: return "VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM";
+ case VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM: return "VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM";
default: return DE_NULL;
}
}
{
tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT, "VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT"),
tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT, "VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT"),
- tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE, "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE"),
+ tcu::Format::BitDesc(VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT, "VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
case VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV: return "VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV";
case VK_OBJECT_TYPE_PRIVATE_DATA_SLOT: return "VK_OBJECT_TYPE_PRIVATE_DATA_SLOT";
case VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA: return "VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA";
+ case VK_OBJECT_TYPE_MICROMAP_EXT: return "VK_OBJECT_TYPE_MICROMAP_EXT";
+ case VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV: return "VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV";
default: return DE_NULL;
}
}
tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR, "VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR"),
tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR, "VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR"),
tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR, "VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR"),
+ tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT, "VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT"),
+ tcu::Format::BitDesc(VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT, "VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
{
static const tcu::Format::BitDesc s_desc[] =
{
- tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR"),
- tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR"),
- tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR"),
- tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR"),
- tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR"),
- tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV, "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR, "VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV, "VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT"),
+ tcu::Format::BitDesc(VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT, "VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
tcu::Format::BitDesc(VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR, "VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR"),
tcu::Format::BitDesc(VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI, "VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI"),
tcu::Format::BitDesc(VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR, "VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR"),
+ tcu::Format::BitDesc(VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV, "VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV"),
+ tcu::Format::BitDesc(VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV, "VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV"),
+ tcu::Format::BitDesc(VK_ACCESS_2_MICROMAP_READ_BIT_EXT, "VK_ACCESS_2_MICROMAP_READ_BIT_EXT"),
+ tcu::Format::BitDesc(VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT, "VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT"),
};
return tcu::Format::Bitfield<64>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR, "VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR"),
tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR, "VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR"),
tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR, "VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR"),
+ tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV, "VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV"),
+ tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT, "VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT"),
tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_COPY_BIT, "VK_PIPELINE_STAGE_2_COPY_BIT"),
tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_RESOLVE_BIT, "VK_PIPELINE_STAGE_2_RESOLVE_BIT"),
tcu::Format::BitDesc(VK_PIPELINE_STAGE_2_BLIT_BIT, "VK_PIPELINE_STAGE_2_BLIT_BIT"),
tcu::Format::BitDesc(VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM, "VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM"),
tcu::Format::BitDesc(VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM, "VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM"),
tcu::Format::BitDesc(VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV, "VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV"),
+ tcu::Format::BitDesc(VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV, "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV"),
+ tcu::Format::BitDesc(VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV, "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV"),
+ tcu::Format::BitDesc(VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV, "VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV"),
};
return tcu::Format::Bitfield<64>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
}
}
+tcu::Format::Bitfield<32> getDeviceAddressBindingFlagsEXTStr (VkDeviceAddressBindingFlagsEXT value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT, "VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+const char* getDeviceAddressBindingTypeEXTName (VkDeviceAddressBindingTypeEXT value)
+{
+ switch (value)
+ {
+ case VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT: return "VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT";
+ case VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT: return "VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT";
+ default: return DE_NULL;
+ }
+}
+
+const char* getMicromapTypeEXTName (VkMicromapTypeEXT value)
+{
+ switch (value)
+ {
+ case VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT: return "VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT";
+ default: return DE_NULL;
+ }
+}
+
+const char* getBuildMicromapModeEXTName (VkBuildMicromapModeEXT value)
+{
+ switch (value)
+ {
+ case VK_BUILD_MICROMAP_MODE_BUILD_EXT: return "VK_BUILD_MICROMAP_MODE_BUILD_EXT";
+ default: return DE_NULL;
+ }
+}
+
+const char* getCopyMicromapModeEXTName (VkCopyMicromapModeEXT value)
+{
+ switch (value)
+ {
+ case VK_COPY_MICROMAP_MODE_CLONE_EXT: return "VK_COPY_MICROMAP_MODE_CLONE_EXT";
+ case VK_COPY_MICROMAP_MODE_SERIALIZE_EXT: return "VK_COPY_MICROMAP_MODE_SERIALIZE_EXT";
+ case VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT: return "VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT";
+ case VK_COPY_MICROMAP_MODE_COMPACT_EXT: return "VK_COPY_MICROMAP_MODE_COMPACT_EXT";
+ default: return DE_NULL;
+ }
+}
+
+tcu::Format::Bitfield<32> getBuildMicromapFlagsEXTStr (VkBuildMicromapFlagsEXT value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT, "VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT"),
+ tcu::Format::BitDesc(VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT, "VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT"),
+ tcu::Format::BitDesc(VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT, "VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+tcu::Format::Bitfield<32> getMicromapCreateFlagsEXTStr (VkMicromapCreateFlagsEXT value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT, "VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+const char* getOpacityMicromapFormatEXTName (VkOpacityMicromapFormatEXT value)
+{
+ switch (value)
+ {
+ case VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT: return "VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT";
+ case VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT: return "VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT";
+ default: return DE_NULL;
+ }
+}
+
+const char* getOpacityMicromapSpecialIndexEXTName (VkOpacityMicromapSpecialIndexEXT value)
+{
+ switch (value)
+ {
+ case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT: return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT";
+ case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT: return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT";
+ case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT: return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT";
+ case VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT: return "VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT";
+ default: return DE_NULL;
+ }
+}
+
+const char* getDeviceFaultVendorBinaryHeaderVersionEXTName (VkDeviceFaultVendorBinaryHeaderVersionEXT value)
+{
+ switch (value)
+ {
+ case VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT: return "VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT";
+ default: return DE_NULL;
+ }
+}
+
const char* getColorSpaceKHRName (VkColorSpaceKHR value)
{
switch (value)
{
static const tcu::Format::BitDesc s_desc[] =
{
- tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT"),
- tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT"),
- tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT"),
+ tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT"),
+ tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT"),
+ tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT"),
+ tcu::Format::BitDesc(VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT, "VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT"),
};
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
}
+tcu::Format::Bitfield<32> getOpticalFlowGridSizeFlagsNVStr (VkOpticalFlowGridSizeFlagsNV value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV, "VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV, "VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV, "VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV, "VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV, "VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+tcu::Format::Bitfield<32> getOpticalFlowUsageFlagsNVStr (VkOpticalFlowUsageFlagsNV value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV, "VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV, "VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV, "VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV, "VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_USAGE_COST_BIT_NV, "VK_OPTICAL_FLOW_USAGE_COST_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV, "VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+const char* getOpticalFlowPerformanceLevelNVName (VkOpticalFlowPerformanceLevelNV value)
+{
+ switch (value)
+ {
+ case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV: return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV";
+ case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV: return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV";
+ case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV: return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV";
+ case VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV: return "VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV";
+ default: return DE_NULL;
+ }
+}
+
+const char* getOpticalFlowSessionBindingPointNVName (VkOpticalFlowSessionBindingPointNV value)
+{
+ switch (value)
+ {
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV";
+ case VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV: return "VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV";
+ default: return DE_NULL;
+ }
+}
+
+tcu::Format::Bitfield<32> getOpticalFlowSessionCreateFlagsNVStr (VkOpticalFlowSessionCreateFlagsNV value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV, "VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV, "VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV, "VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV, "VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV"),
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV, "VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+tcu::Format::Bitfield<32> getOpticalFlowExecuteFlagsNVStr (VkOpticalFlowExecuteFlagsNV value)
+{
+ static const tcu::Format::BitDesc s_desc[] =
+ {
+ tcu::Format::BitDesc(VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV, "VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV"),
+ };
+ return tcu::Format::Bitfield<32>(value, DE_ARRAY_BEGIN(s_desc), DE_ARRAY_END(s_desc));
+}
+
+const char* getDeviceFaultAddressTypeEXTName (VkDeviceFaultAddressTypeEXT value)
+{
+ switch (value)
+ {
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT";
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT";
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT";
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT";
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT";
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT";
+ case VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT: return "VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT";
+ default: return DE_NULL;
+ }
+}
+
const char* getVendorIdName (VkVendorId value)
{
switch (value)
}
}
-const char* getdVideoH264LevelName (StdVideoH264Level value)
+const char* getdVideoH264LevelIdcName (StdVideoH264LevelIdc value)
{
switch (value)
{
- case STD_VIDEO_H264_LEVEL_1_0: return "STD_VIDEO_H264_LEVEL_1_0";
- case STD_VIDEO_H264_LEVEL_1_1: return "STD_VIDEO_H264_LEVEL_1_1";
- case STD_VIDEO_H264_LEVEL_1_2: return "STD_VIDEO_H264_LEVEL_1_2";
- case STD_VIDEO_H264_LEVEL_1_3: return "STD_VIDEO_H264_LEVEL_1_3";
- case STD_VIDEO_H264_LEVEL_2_0: return "STD_VIDEO_H264_LEVEL_2_0";
- case STD_VIDEO_H264_LEVEL_2_1: return "STD_VIDEO_H264_LEVEL_2_1";
- case STD_VIDEO_H264_LEVEL_2_2: return "STD_VIDEO_H264_LEVEL_2_2";
- case STD_VIDEO_H264_LEVEL_3_0: return "STD_VIDEO_H264_LEVEL_3_0";
- case STD_VIDEO_H264_LEVEL_3_1: return "STD_VIDEO_H264_LEVEL_3_1";
- case STD_VIDEO_H264_LEVEL_3_2: return "STD_VIDEO_H264_LEVEL_3_2";
- case STD_VIDEO_H264_LEVEL_4_0: return "STD_VIDEO_H264_LEVEL_4_0";
- case STD_VIDEO_H264_LEVEL_4_1: return "STD_VIDEO_H264_LEVEL_4_1";
- case STD_VIDEO_H264_LEVEL_4_2: return "STD_VIDEO_H264_LEVEL_4_2";
- case STD_VIDEO_H264_LEVEL_5_0: return "STD_VIDEO_H264_LEVEL_5_0";
- case STD_VIDEO_H264_LEVEL_5_1: return "STD_VIDEO_H264_LEVEL_5_1";
- case STD_VIDEO_H264_LEVEL_5_2: return "STD_VIDEO_H264_LEVEL_5_2";
- case STD_VIDEO_H264_LEVEL_6_0: return "STD_VIDEO_H264_LEVEL_6_0";
- case STD_VIDEO_H264_LEVEL_6_1: return "STD_VIDEO_H264_LEVEL_6_1";
- case STD_VIDEO_H264_LEVEL_6_2: return "STD_VIDEO_H264_LEVEL_6_2";
- case STD_VIDEO_H264_LEVEL_INVALID: return "STD_VIDEO_H264_LEVEL_INVALID";
- default: return DE_NULL;
+ case STD_VIDEO_H264_LEVEL_IDC_1_0: return "STD_VIDEO_H264_LEVEL_IDC_1_0";
+ case STD_VIDEO_H264_LEVEL_IDC_1_1: return "STD_VIDEO_H264_LEVEL_IDC_1_1";
+ case STD_VIDEO_H264_LEVEL_IDC_1_2: return "STD_VIDEO_H264_LEVEL_IDC_1_2";
+ case STD_VIDEO_H264_LEVEL_IDC_1_3: return "STD_VIDEO_H264_LEVEL_IDC_1_3";
+ case STD_VIDEO_H264_LEVEL_IDC_2_0: return "STD_VIDEO_H264_LEVEL_IDC_2_0";
+ case STD_VIDEO_H264_LEVEL_IDC_2_1: return "STD_VIDEO_H264_LEVEL_IDC_2_1";
+ case STD_VIDEO_H264_LEVEL_IDC_2_2: return "STD_VIDEO_H264_LEVEL_IDC_2_2";
+ case STD_VIDEO_H264_LEVEL_IDC_3_0: return "STD_VIDEO_H264_LEVEL_IDC_3_0";
+ case STD_VIDEO_H264_LEVEL_IDC_3_1: return "STD_VIDEO_H264_LEVEL_IDC_3_1";
+ case STD_VIDEO_H264_LEVEL_IDC_3_2: return "STD_VIDEO_H264_LEVEL_IDC_3_2";
+ case STD_VIDEO_H264_LEVEL_IDC_4_0: return "STD_VIDEO_H264_LEVEL_IDC_4_0";
+ case STD_VIDEO_H264_LEVEL_IDC_4_1: return "STD_VIDEO_H264_LEVEL_IDC_4_1";
+ case STD_VIDEO_H264_LEVEL_IDC_4_2: return "STD_VIDEO_H264_LEVEL_IDC_4_2";
+ case STD_VIDEO_H264_LEVEL_IDC_5_0: return "STD_VIDEO_H264_LEVEL_IDC_5_0";
+ case STD_VIDEO_H264_LEVEL_IDC_5_1: return "STD_VIDEO_H264_LEVEL_IDC_5_1";
+ case STD_VIDEO_H264_LEVEL_IDC_5_2: return "STD_VIDEO_H264_LEVEL_IDC_5_2";
+ case STD_VIDEO_H264_LEVEL_IDC_6_0: return "STD_VIDEO_H264_LEVEL_IDC_6_0";
+ case STD_VIDEO_H264_LEVEL_IDC_6_1: return "STD_VIDEO_H264_LEVEL_IDC_6_1";
+ case STD_VIDEO_H264_LEVEL_IDC_6_2: return "STD_VIDEO_H264_LEVEL_IDC_6_2";
+ case STD_VIDEO_H264_LEVEL_IDC_INVALID: return "STD_VIDEO_H264_LEVEL_IDC_INVALID";
+ default: return DE_NULL;
}
}
}
}
-const char* getdVideoH265LevelName (StdVideoH265Level value)
+const char* getdVideoH265LevelIdcName (StdVideoH265LevelIdc value)
{
switch (value)
{
- case STD_VIDEO_H265_LEVEL_1_0: return "STD_VIDEO_H265_LEVEL_1_0";
- case STD_VIDEO_H265_LEVEL_2_0: return "STD_VIDEO_H265_LEVEL_2_0";
- case STD_VIDEO_H265_LEVEL_2_1: return "STD_VIDEO_H265_LEVEL_2_1";
- case STD_VIDEO_H265_LEVEL_3_0: return "STD_VIDEO_H265_LEVEL_3_0";
- case STD_VIDEO_H265_LEVEL_3_1: return "STD_VIDEO_H265_LEVEL_3_1";
- case STD_VIDEO_H265_LEVEL_4_0: return "STD_VIDEO_H265_LEVEL_4_0";
- case STD_VIDEO_H265_LEVEL_4_1: return "STD_VIDEO_H265_LEVEL_4_1";
- case STD_VIDEO_H265_LEVEL_5_0: return "STD_VIDEO_H265_LEVEL_5_0";
- case STD_VIDEO_H265_LEVEL_5_1: return "STD_VIDEO_H265_LEVEL_5_1";
- case STD_VIDEO_H265_LEVEL_5_2: return "STD_VIDEO_H265_LEVEL_5_2";
- case STD_VIDEO_H265_LEVEL_6_0: return "STD_VIDEO_H265_LEVEL_6_0";
- case STD_VIDEO_H265_LEVEL_6_1: return "STD_VIDEO_H265_LEVEL_6_1";
- case STD_VIDEO_H265_LEVEL_6_2: return "STD_VIDEO_H265_LEVEL_6_2";
- case STD_VIDEO_H265_LEVEL_INVALID: return "STD_VIDEO_H265_LEVEL_INVALID";
- default: return DE_NULL;
+ case STD_VIDEO_H265_LEVEL_IDC_1_0: return "STD_VIDEO_H265_LEVEL_IDC_1_0";
+ case STD_VIDEO_H265_LEVEL_IDC_2_0: return "STD_VIDEO_H265_LEVEL_IDC_2_0";
+ case STD_VIDEO_H265_LEVEL_IDC_2_1: return "STD_VIDEO_H265_LEVEL_IDC_2_1";
+ case STD_VIDEO_H265_LEVEL_IDC_3_0: return "STD_VIDEO_H265_LEVEL_IDC_3_0";
+ case STD_VIDEO_H265_LEVEL_IDC_3_1: return "STD_VIDEO_H265_LEVEL_IDC_3_1";
+ case STD_VIDEO_H265_LEVEL_IDC_4_0: return "STD_VIDEO_H265_LEVEL_IDC_4_0";
+ case STD_VIDEO_H265_LEVEL_IDC_4_1: return "STD_VIDEO_H265_LEVEL_IDC_4_1";
+ case STD_VIDEO_H265_LEVEL_IDC_5_0: return "STD_VIDEO_H265_LEVEL_IDC_5_0";
+ case STD_VIDEO_H265_LEVEL_IDC_5_1: return "STD_VIDEO_H265_LEVEL_IDC_5_1";
+ case STD_VIDEO_H265_LEVEL_IDC_5_2: return "STD_VIDEO_H265_LEVEL_IDC_5_2";
+ case STD_VIDEO_H265_LEVEL_IDC_6_0: return "STD_VIDEO_H265_LEVEL_IDC_6_0";
+ case STD_VIDEO_H265_LEVEL_IDC_6_1: return "STD_VIDEO_H265_LEVEL_IDC_6_1";
+ case STD_VIDEO_H265_LEVEL_IDC_6_2: return "STD_VIDEO_H265_LEVEL_IDC_6_2";
+ case STD_VIDEO_H265_LEVEL_IDC_INVALID: return "STD_VIDEO_H265_LEVEL_IDC_INVALID";
+ default: return DE_NULL;
}
}
}
}
+const char* getdVideoH265AspectRatioIdcName (StdVideoH265AspectRatioIdc value)
+{
+ switch (value)
+ {
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR";
+ case STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID: return "STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID";
+ default: return DE_NULL;
+ }
+}
+
tcu::Format::Bitfield<32> getQueryPoolCreateFlagsStr (VkQueryPoolCreateFlags value)
{
return tcu::Format::Bitfield<32>(value, DE_NULL, DE_NULL);
return s;
}
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePresentBarrierFeaturesNV& value)
+{
+ s << "VkPhysicalDevicePresentBarrierFeaturesNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tpresentBarrier = " << value.presentBarrier << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkSurfaceCapabilitiesPresentBarrierNV& value)
+{
+ s << "VkSurfaceCapabilitiesPresentBarrierNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tpresentBarrierSupported = " << value.presentBarrierSupported << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkSwapchainPresentBarrierCreateInfoNV& value)
+{
+ s << "VkSwapchainPresentBarrierCreateInfoNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tpresentBarrierEnable = " << value.presentBarrierEnable << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePerformanceQueryFeaturesKHR& value)
{
s << "VkPhysicalDevicePerformanceQueryFeaturesKHR = {\n";
return s;
}
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState3FeaturesEXT& value)
+{
+ s << "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\textendedDynamicState3TessellationDomainOrigin = " << value.extendedDynamicState3TessellationDomainOrigin << '\n';
+ s << "\textendedDynamicState3DepthClampEnable = " << value.extendedDynamicState3DepthClampEnable << '\n';
+ s << "\textendedDynamicState3PolygonMode = " << value.extendedDynamicState3PolygonMode << '\n';
+ s << "\textendedDynamicState3RasterizationSamples = " << value.extendedDynamicState3RasterizationSamples << '\n';
+ s << "\textendedDynamicState3SampleMask = " << value.extendedDynamicState3SampleMask << '\n';
+ s << "\textendedDynamicState3AlphaToCoverageEnable = " << value.extendedDynamicState3AlphaToCoverageEnable << '\n';
+ s << "\textendedDynamicState3AlphaToOneEnable = " << value.extendedDynamicState3AlphaToOneEnable << '\n';
+ s << "\textendedDynamicState3LogicOpEnable = " << value.extendedDynamicState3LogicOpEnable << '\n';
+ s << "\textendedDynamicState3ColorBlendEnable = " << value.extendedDynamicState3ColorBlendEnable << '\n';
+ s << "\textendedDynamicState3ColorBlendEquation = " << value.extendedDynamicState3ColorBlendEquation << '\n';
+ s << "\textendedDynamicState3ColorWriteMask = " << value.extendedDynamicState3ColorWriteMask << '\n';
+ s << "\textendedDynamicState3RasterizationStream = " << value.extendedDynamicState3RasterizationStream << '\n';
+ s << "\textendedDynamicState3ConservativeRasterizationMode = " << value.extendedDynamicState3ConservativeRasterizationMode << '\n';
+ s << "\textendedDynamicState3ExtraPrimitiveOverestimationSize = " << value.extendedDynamicState3ExtraPrimitiveOverestimationSize << '\n';
+ s << "\textendedDynamicState3DepthClipEnable = " << value.extendedDynamicState3DepthClipEnable << '\n';
+ s << "\textendedDynamicState3SampleLocationsEnable = " << value.extendedDynamicState3SampleLocationsEnable << '\n';
+ s << "\textendedDynamicState3ColorBlendAdvanced = " << value.extendedDynamicState3ColorBlendAdvanced << '\n';
+ s << "\textendedDynamicState3ProvokingVertexMode = " << value.extendedDynamicState3ProvokingVertexMode << '\n';
+ s << "\textendedDynamicState3LineRasterizationMode = " << value.extendedDynamicState3LineRasterizationMode << '\n';
+ s << "\textendedDynamicState3LineStippleEnable = " << value.extendedDynamicState3LineStippleEnable << '\n';
+ s << "\textendedDynamicState3DepthClipNegativeOneToOne = " << value.extendedDynamicState3DepthClipNegativeOneToOne << '\n';
+ s << "\textendedDynamicState3ViewportWScalingEnable = " << value.extendedDynamicState3ViewportWScalingEnable << '\n';
+ s << "\textendedDynamicState3ViewportSwizzle = " << value.extendedDynamicState3ViewportSwizzle << '\n';
+ s << "\textendedDynamicState3CoverageToColorEnable = " << value.extendedDynamicState3CoverageToColorEnable << '\n';
+ s << "\textendedDynamicState3CoverageToColorLocation = " << value.extendedDynamicState3CoverageToColorLocation << '\n';
+ s << "\textendedDynamicState3CoverageModulationMode = " << value.extendedDynamicState3CoverageModulationMode << '\n';
+ s << "\textendedDynamicState3CoverageModulationTableEnable = " << value.extendedDynamicState3CoverageModulationTableEnable << '\n';
+ s << "\textendedDynamicState3CoverageModulationTable = " << value.extendedDynamicState3CoverageModulationTable << '\n';
+ s << "\textendedDynamicState3CoverageReductionMode = " << value.extendedDynamicState3CoverageReductionMode << '\n';
+ s << "\textendedDynamicState3RepresentativeFragmentTestEnable = " << value.extendedDynamicState3RepresentativeFragmentTestEnable << '\n';
+ s << "\textendedDynamicState3ShadingRateImageEnable = " << value.extendedDynamicState3ShadingRateImageEnable << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceExtendedDynamicState3PropertiesEXT& value)
+{
+ s << "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tdynamicPrimitiveTopologyUnrestricted = " << value.dynamicPrimitiveTopologyUnrestricted << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkColorBlendEquationEXT& value)
+{
+ s << "VkColorBlendEquationEXT = {\n";
+ s << "\tsrcColorBlendFactor = " << value.srcColorBlendFactor << '\n';
+ s << "\tdstColorBlendFactor = " << value.dstColorBlendFactor << '\n';
+ s << "\tcolorBlendOp = " << value.colorBlendOp << '\n';
+ s << "\tsrcAlphaBlendFactor = " << value.srcAlphaBlendFactor << '\n';
+ s << "\tdstAlphaBlendFactor = " << value.dstAlphaBlendFactor << '\n';
+ s << "\talphaBlendOp = " << value.alphaBlendOp << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkColorBlendAdvancedEXT& value)
+{
+ s << "VkColorBlendAdvancedEXT = {\n";
+ s << "\tadvancedBlendOp = " << value.advancedBlendOp << '\n';
+ s << "\tsrcPremultiplied = " << value.srcPremultiplied << '\n';
+ s << "\tdstPremultiplied = " << value.dstPremultiplied << '\n';
+ s << "\tblendOverlap = " << value.blendOverlap << '\n';
+ s << "\tclampResults = " << value.clampResults << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const VkRenderPassTransformBeginInfoQCOM& value)
{
s << "VkRenderPassTransformBeginInfoQCOM = {\n";
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE& value)
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT& value)
{
- s << "VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE = {\n";
+ s << "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
s << "\tmutableDescriptorType = " << value.mutableDescriptorType << '\n';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeListVALVE& value)
+std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeListEXT& value)
{
- s << "VkMutableDescriptorTypeListVALVE = {\n";
+ s << "VkMutableDescriptorTypeListEXT = {\n";
s << "\tdescriptorTypeCount = " << value.descriptorTypeCount << '\n';
s << "\tpDescriptorTypes = " << value.pDescriptorTypes << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeCreateInfoVALVE& value)
+std::ostream& operator<< (std::ostream& s, const VkMutableDescriptorTypeCreateInfoEXT& value)
{
- s << "VkMutableDescriptorTypeCreateInfoVALVE = {\n";
+ s << "VkMutableDescriptorTypeCreateInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
s << "\tmutableDescriptorTypeListCount = " << value.mutableDescriptorTypeListCount << '\n';
return s;
}
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelineProtectedAccessFeaturesEXT& value)
+{
+ s << "VkPhysicalDevicePipelineProtectedAccessFeaturesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tpipelineProtectedAccess = " << value.pipelineProtectedAccess << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const VkQueueFamilyVideoPropertiesKHR& value)
{
s << "VkQueueFamilyVideoPropertiesKHR = {\n";
s << "VkVideoCapabilitiesKHR = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tcapabilityFlags = " << getVideoCapabilityFlagsKHRStr(value.capabilityFlags) << '\n';
+ s << "\tflags = " << getVideoCapabilityFlagsKHRStr(value.flags) << '\n';
s << "\tminBitstreamBufferOffsetAlignment = " << value.minBitstreamBufferOffsetAlignment << '\n';
s << "\tminBitstreamBufferSizeAlignment = " << value.minBitstreamBufferSizeAlignment << '\n';
- s << "\tvideoPictureExtentGranularity = " << value.videoPictureExtentGranularity << '\n';
- s << "\tminExtent = " << value.minExtent << '\n';
- s << "\tmaxExtent = " << value.maxExtent << '\n';
- s << "\tmaxReferencePicturesSlotsCount = " << value.maxReferencePicturesSlotsCount << '\n';
- s << "\tmaxReferencePicturesActiveCount = " << value.maxReferencePicturesActiveCount << '\n';
+ s << "\tpictureAccessGranularity = " << value.pictureAccessGranularity << '\n';
+ s << "\tminCodedExtent = " << value.minCodedExtent << '\n';
+ s << "\tmaxCodedExtent = " << value.maxCodedExtent << '\n';
+ s << "\tmaxDpbSlots = " << value.maxDpbSlots << '\n';
+ s << "\tmaxActiveReferencePictures = " << value.maxActiveReferencePictures << '\n';
s << "\tstdHeaderVersion = " << value.stdHeaderVersion << '\n';
s << '}';
return s;
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
s << "\tstdProfileIdc = " << value.stdProfileIdc << '\n';
- s << "\tpictureLayout = " << getVideoDecodeH264PictureLayoutFlagsEXTStr(value.pictureLayout) << '\n';
+ s << "\tpictureLayout = " << value.pictureLayout << '\n';
s << '}';
return s;
}
s << "VkVideoDecodeH264CapabilitiesEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmaxLevel = " << value.maxLevel << '\n';
+ s << "\tmaxLevelIdc = " << value.maxLevelIdc << '\n';
s << "\tfieldOffsetGranularity = " << value.fieldOffsetGranularity << '\n';
s << '}';
return s;
s << "VkVideoDecodeH264SessionParametersAddInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tspsStdCount = " << value.spsStdCount << '\n';
- s << "\tpSpsStd = " << value.pSpsStd << '\n';
- s << "\tppsStdCount = " << value.ppsStdCount << '\n';
- s << "\tpPpsStd = " << value.pPpsStd << '\n';
+ s << "\tstdSPSCount = " << value.stdSPSCount << '\n';
+ s << "\tpStdSPSs = " << value.pStdSPSs << '\n';
+ s << "\tstdPPSCount = " << value.stdPPSCount << '\n';
+ s << "\tpStdPPSs = " << value.pStdPPSs << '\n';
s << '}';
return s;
}
s << "VkVideoDecodeH264SessionParametersCreateInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmaxSpsStdCount = " << value.maxSpsStdCount << '\n';
- s << "\tmaxPpsStdCount = " << value.maxPpsStdCount << '\n';
+ s << "\tmaxStdSPSCount = " << value.maxStdSPSCount << '\n';
+ s << "\tmaxStdPPSCount = " << value.maxStdPPSCount << '\n';
s << "\tpParametersAddInfo = " << value.pParametersAddInfo << '\n';
s << '}';
return s;
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
s << "\tpStdPictureInfo = " << value.pStdPictureInfo << '\n';
- s << "\tslicesCount = " << value.slicesCount << '\n';
- s << "\tpSlicesDataOffsets = " << value.pSlicesDataOffsets << '\n';
+ s << "\tsliceCount = " << value.sliceCount << '\n';
+ s << "\tpSliceOffsets = " << value.pSliceOffsets << '\n';
s << '}';
return s;
}
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH264MvcInfoEXT& value)
-{
- s << "VkVideoDecodeH264MvcInfoEXT = {\n";
- s << "\tsType = " << value.sType << '\n';
- s << "\tpNext = " << value.pNext << '\n';
- s << "\tpStdMvc = " << value.pStdMvc << '\n';
- s << '}';
- return s;
-}
-
std::ostream& operator<< (std::ostream& s, const VkVideoDecodeH265ProfileInfoEXT& value)
{
s << "VkVideoDecodeH265ProfileInfoEXT = {\n";
s << "VkVideoDecodeH265CapabilitiesEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmaxLevel = " << value.maxLevel << '\n';
+ s << "\tmaxLevelIdc = " << value.maxLevelIdc << '\n';
s << '}';
return s;
}
s << "VkVideoDecodeH265SessionParametersAddInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tvpsStdCount = " << value.vpsStdCount << '\n';
- s << "\tpVpsStd = " << value.pVpsStd << '\n';
- s << "\tspsStdCount = " << value.spsStdCount << '\n';
- s << "\tpSpsStd = " << value.pSpsStd << '\n';
- s << "\tppsStdCount = " << value.ppsStdCount << '\n';
- s << "\tpPpsStd = " << value.pPpsStd << '\n';
+ s << "\tstdVPSCount = " << value.stdVPSCount << '\n';
+ s << "\tpStdVPSs = " << value.pStdVPSs << '\n';
+ s << "\tstdSPSCount = " << value.stdSPSCount << '\n';
+ s << "\tpStdSPSs = " << value.pStdSPSs << '\n';
+ s << "\tstdPPSCount = " << value.stdPPSCount << '\n';
+ s << "\tpStdPPSs = " << value.pStdPPSs << '\n';
s << '}';
return s;
}
s << "VkVideoDecodeH265SessionParametersCreateInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmaxVpsStdCount = " << value.maxVpsStdCount << '\n';
- s << "\tmaxSpsStdCount = " << value.maxSpsStdCount << '\n';
- s << "\tmaxPpsStdCount = " << value.maxPpsStdCount << '\n';
+ s << "\tmaxStdVPSCount = " << value.maxStdVPSCount << '\n';
+ s << "\tmaxStdSPSCount = " << value.maxStdSPSCount << '\n';
+ s << "\tmaxStdPPSCount = " << value.maxStdPPSCount << '\n';
s << "\tpParametersAddInfo = " << value.pParametersAddInfo << '\n';
s << '}';
return s;
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
s << "\tpStdPictureInfo = " << value.pStdPictureInfo << '\n';
- s << "\tslicesCount = " << value.slicesCount << '\n';
- s << "\tpSlicesDataOffsets = " << value.pSlicesDataOffsets << '\n';
+ s << "\tsliceCount = " << value.sliceCount << '\n';
+ s << "\tpSliceOffsets = " << value.pSliceOffsets << '\n';
s << '}';
return s;
}
s << "\tpVideoProfile = " << value.pVideoProfile << '\n';
s << "\tpictureFormat = " << value.pictureFormat << '\n';
s << "\tmaxCodedExtent = " << value.maxCodedExtent << '\n';
- s << "\treferencePicturesFormat = " << value.referencePicturesFormat << '\n';
- s << "\tmaxReferencePicturesSlotsCount = " << value.maxReferencePicturesSlotsCount << '\n';
- s << "\tmaxReferencePicturesActiveCount = " << value.maxReferencePicturesActiveCount << '\n';
+ s << "\treferencePictureFormat = " << value.referencePictureFormat << '\n';
+ s << "\tmaxDpbSlots = " << value.maxDpbSlots << '\n';
+ s << "\tmaxActiveReferencePictures = " << value.maxActiveReferencePictures << '\n';
s << "\tpStdHeaderVersion = " << value.pStdHeaderVersion << '\n';
s << '}';
return s;
s << "VkVideoEncodeH264SessionParametersAddInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tspsStdCount = " << value.spsStdCount << '\n';
- s << "\tpSpsStd = " << value.pSpsStd << '\n';
- s << "\tppsStdCount = " << value.ppsStdCount << '\n';
- s << "\tpPpsStd = " << value.pPpsStd << '\n';
+ s << "\tstdSPSCount = " << value.stdSPSCount << '\n';
+ s << "\tpStdSPSs = " << value.pStdSPSs << '\n';
+ s << "\tstdPPSCount = " << value.stdPPSCount << '\n';
+ s << "\tpStdPPSs = " << value.pStdPPSs << '\n';
s << '}';
return s;
}
s << "VkVideoEncodeH264SessionParametersCreateInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmaxSpsStdCount = " << value.maxSpsStdCount << '\n';
- s << "\tmaxPpsStdCount = " << value.maxPpsStdCount << '\n';
+ s << "\tmaxStdSPSCount = " << value.maxStdSPSCount << '\n';
+ s << "\tmaxStdPPSCount = " << value.maxStdPPSCount << '\n';
s << "\tpParametersAddInfo = " << value.pParametersAddInfo << '\n';
s << '}';
return s;
s << "VkVideoEncodeH265SessionParametersAddInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tvpsStdCount = " << value.vpsStdCount << '\n';
- s << "\tpVpsStd = " << value.pVpsStd << '\n';
- s << "\tspsStdCount = " << value.spsStdCount << '\n';
- s << "\tpSpsStd = " << value.pSpsStd << '\n';
- s << "\tppsStdCount = " << value.ppsStdCount << '\n';
- s << "\tpPpsStd = " << value.pPpsStd << '\n';
+ s << "\tstdVPSCount = " << value.stdVPSCount << '\n';
+ s << "\tpStdVPSs = " << value.pStdVPSs << '\n';
+ s << "\tstdSPSCount = " << value.stdSPSCount << '\n';
+ s << "\tpStdSPSs = " << value.pStdSPSs << '\n';
+ s << "\tstdPPSCount = " << value.stdPPSCount << '\n';
+ s << "\tpStdPPSs = " << value.pStdPPSs << '\n';
s << '}';
return s;
}
s << "VkVideoEncodeH265SessionParametersCreateInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmaxVpsStdCount = " << value.maxVpsStdCount << '\n';
- s << "\tmaxSpsStdCount = " << value.maxSpsStdCount << '\n';
- s << "\tmaxPpsStdCount = " << value.maxPpsStdCount << '\n';
+ s << "\tmaxStdVPSCount = " << value.maxStdVPSCount << '\n';
+ s << "\tmaxStdSPSCount = " << value.maxStdSPSCount << '\n';
+ s << "\tmaxStdPPSCount = " << value.maxStdPPSCount << '\n';
s << "\tpParametersAddInfo = " << value.pParametersAddInfo << '\n';
s << '}';
return s;
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkPipelinePropertiesIdentifierEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkMicromapBuildInfoEXT& value)
{
- s << "VkPipelinePropertiesIdentifierEXT = {\n";
+ s << "VkMicromapBuildInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tpipelineIdentifier = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.pipelineIdentifier)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.pipelineIdentifier))) << '\n';
+ s << "\ttype = " << value.type << '\n';
+ s << "\tflags = " << getBuildMicromapFlagsEXTStr(value.flags) << '\n';
+ s << "\tmode = " << value.mode << '\n';
+ s << "\tdstMicromap = " << value.dstMicromap << '\n';
+ s << "\tusageCountsCount = " << value.usageCountsCount << '\n';
+ s << "\tpUsageCounts = " << value.pUsageCounts << '\n';
+ s << "\tppUsageCounts = " << value.ppUsageCounts << '\n';
+ s << "\tdata = " << value.data << '\n';
+ s << "\tscratchData = " << value.scratchData << '\n';
+ s << "\ttriangleArray = " << value.triangleArray << '\n';
+ s << "\ttriangleArrayStride = " << value.triangleArrayStride << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelinePropertiesFeaturesEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkMicromapCreateInfoEXT& value)
{
- s << "VkPhysicalDevicePipelinePropertiesFeaturesEXT = {\n";
+ s << "VkMicromapCreateInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tpipelinePropertiesIdentifier = " << value.pipelinePropertiesIdentifier << '\n';
+ s << "\tcreateFlags = " << getMicromapCreateFlagsEXTStr(value.createFlags) << '\n';
+ s << "\tbuffer = " << value.buffer << '\n';
+ s << "\toffset = " << value.offset << '\n';
+ s << "\tsize = " << value.size << '\n';
+ s << "\ttype = " << value.type << '\n';
+ s << "\tdeviceAddress = " << value.deviceAddress << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD& value)
+std::ostream& operator<< (std::ostream& s, const VkMicromapVersionInfoEXT& value)
{
- s << "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = {\n";
+ s << "VkMicromapVersionInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tshaderEarlyAndLateFragmentTests = " << value.shaderEarlyAndLateFragmentTests << '\n';
+ s << "\tpVersionData = " << value.pVersionData << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkExportMetalObjectCreateInfoEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkCopyMicromapInfoEXT& value)
{
- s << "VkExportMetalObjectCreateInfoEXT = {\n";
+ s << "VkCopyMicromapInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\texportObjectType = " << value.exportObjectType << '\n';
+ s << "\tsrc = " << value.src << '\n';
+ s << "\tdst = " << value.dst << '\n';
+ s << "\tmode = " << value.mode << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkExportMetalObjectsInfoEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkCopyMicromapToMemoryInfoEXT& value)
{
- s << "VkExportMetalObjectsInfoEXT = {\n";
+ s << "VkCopyMicromapToMemoryInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
+ s << "\tsrc = " << value.src << '\n';
+ s << "\tdst = " << value.dst << '\n';
+ s << "\tmode = " << value.mode << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkExportMetalDeviceInfoEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkCopyMemoryToMicromapInfoEXT& value)
{
- s << "VkExportMetalDeviceInfoEXT = {\n";
+ s << "VkCopyMemoryToMicromapInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tmtlDevice = " << value.mtlDevice << '\n';
+ s << "\tsrc = " << value.src << '\n';
+ s << "\tdst = " << value.dst << '\n';
+ s << "\tmode = " << value.mode << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkExportMetalCommandQueueInfoEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkMicromapBuildSizesInfoEXT& value)
{
- s << "VkExportMetalCommandQueueInfoEXT = {\n";
+ s << "VkMicromapBuildSizesInfoEXT = {\n";
s << "\tsType = " << value.sType << '\n';
s << "\tpNext = " << value.pNext << '\n';
- s << "\tqueue = " << value.queue << '\n';
- s << "\tmtlCommandQueue = " << value.mtlCommandQueue << '\n';
+ s << "\tmicromapSize = " << value.micromapSize << '\n';
+ s << "\tbuildScratchSize = " << value.buildScratchSize << '\n';
+ s << "\tdiscardable = " << value.discardable << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkExportMetalBufferInfoEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkMicromapUsageEXT& value)
{
- s << "VkExportMetalBufferInfoEXT = {\n";
- s << "\tsType = " << value.sType << '\n';
- s << "\tpNext = " << value.pNext << '\n';
- s << "\tmemory = " << value.memory << '\n';
- s << "\tmtlBuffer = " << value.mtlBuffer << '\n';
+ s << "VkMicromapUsageEXT = {\n";
+ s << "\tcount = " << value.count << '\n';
+ s << "\tsubdivisionLevel = " << value.subdivisionLevel << '\n';
+ s << "\tformat = " << value.format << '\n';
s << '}';
return s;
}
-std::ostream& operator<< (std::ostream& s, const VkImportMetalBufferInfoEXT& value)
+std::ostream& operator<< (std::ostream& s, const VkMicromapTriangleEXT& value)
{
- s << "VkImportMetalBufferInfoEXT = {\n";
- s << "\tsType = " << value.sType << '\n';
- s << "\tpNext = " << value.pNext << '\n';
- s << "\tmtlBuffer = " << value.mtlBuffer << '\n';
+ s << "VkMicromapTriangleEXT = {\n";
+ s << "\tdataOffset = " << value.dataOffset << '\n';
+ s << "\tsubdivisionLevel = " << value.subdivisionLevel << '\n';
+ s << "\tformat = " << value.format << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpacityMicromapFeaturesEXT& value)
+{
+ s << "VkPhysicalDeviceOpacityMicromapFeaturesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tmicromap = " << value.micromap << '\n';
+ s << "\tmicromapCaptureReplay = " << value.micromapCaptureReplay << '\n';
+ s << "\tmicromapHostCommands = " << value.micromapHostCommands << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpacityMicromapPropertiesEXT& value)
+{
+ s << "VkPhysicalDeviceOpacityMicromapPropertiesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tmaxOpacity2StateSubdivisionLevel = " << value.maxOpacity2StateSubdivisionLevel << '\n';
+ s << "\tmaxOpacity4StateSubdivisionLevel = " << value.maxOpacity4StateSubdivisionLevel << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkAccelerationStructureTrianglesOpacityMicromapEXT& value)
+{
+ s << "VkAccelerationStructureTrianglesOpacityMicromapEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tindexType = " << value.indexType << '\n';
+ s << "\tindexBuffer = " << value.indexBuffer << '\n';
+ s << "\tindexStride = " << value.indexStride << '\n';
+ s << "\tbaseTriangle = " << value.baseTriangle << '\n';
+ s << "\tusageCountsCount = " << value.usageCountsCount << '\n';
+ s << "\tpUsageCounts = " << value.pUsageCounts << '\n';
+ s << "\tppUsageCounts = " << value.ppUsageCounts << '\n';
+ s << "\tmicromap = " << value.micromap << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPipelinePropertiesIdentifierEXT& value)
+{
+ s << "VkPipelinePropertiesIdentifierEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tpipelineIdentifier = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.pipelineIdentifier)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.pipelineIdentifier))) << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDevicePipelinePropertiesFeaturesEXT& value)
+{
+ s << "VkPhysicalDevicePipelinePropertiesFeaturesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tpipelinePropertiesIdentifier = " << value.pipelinePropertiesIdentifier << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD& value)
+{
+ s << "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tshaderEarlyAndLateFragmentTests = " << value.shaderEarlyAndLateFragmentTests << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalObjectCreateInfoEXT& value)
+{
+ s << "VkExportMetalObjectCreateInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\texportObjectType = " << value.exportObjectType << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalObjectsInfoEXT& value)
+{
+ s << "VkExportMetalObjectsInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalDeviceInfoEXT& value)
+{
+ s << "VkExportMetalDeviceInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tmtlDevice = " << value.mtlDevice << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalCommandQueueInfoEXT& value)
+{
+ s << "VkExportMetalCommandQueueInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tqueue = " << value.queue << '\n';
+ s << "\tmtlCommandQueue = " << value.mtlCommandQueue << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkExportMetalBufferInfoEXT& value)
+{
+ s << "VkExportMetalBufferInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tmemory = " << value.memory << '\n';
+ s << "\tmtlBuffer = " << value.mtlBuffer << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkImportMetalBufferInfoEXT& value)
+{
+ s << "VkImportMetalBufferInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tmtlBuffer = " << value.mtlBuffer << '\n';
s << '}';
return s;
}
return s;
}
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceAddressBindingReportFeaturesEXT& value)
+{
+ s << "VkPhysicalDeviceAddressBindingReportFeaturesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\treportAddressBinding = " << value.reportAddressBinding << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceAddressBindingCallbackDataEXT& value)
+{
+ s << "VkDeviceAddressBindingCallbackDataEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tflags = " << getDeviceAddressBindingFlagsEXTStr(value.flags) << '\n';
+ s << "\tbaseAddress = " << value.baseAddress << '\n';
+ s << "\tsize = " << value.size << '\n';
+ s << "\tbindingType = " << value.bindingType << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpticalFlowFeaturesNV& value)
+{
+ s << "VkPhysicalDeviceOpticalFlowFeaturesNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\topticalFlow = " << value.opticalFlow << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceOpticalFlowPropertiesNV& value)
+{
+ s << "VkPhysicalDeviceOpticalFlowPropertiesNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tsupportedOutputGridSizes = " << getOpticalFlowGridSizeFlagsNVStr(value.supportedOutputGridSizes) << '\n';
+ s << "\tsupportedHintGridSizes = " << getOpticalFlowGridSizeFlagsNVStr(value.supportedHintGridSizes) << '\n';
+ s << "\thintSupported = " << value.hintSupported << '\n';
+ s << "\tcostSupported = " << value.costSupported << '\n';
+ s << "\tbidirectionalFlowSupported = " << value.bidirectionalFlowSupported << '\n';
+ s << "\tglobalFlowSupported = " << value.globalFlowSupported << '\n';
+ s << "\tminWidth = " << value.minWidth << '\n';
+ s << "\tminHeight = " << value.minHeight << '\n';
+ s << "\tmaxWidth = " << value.maxWidth << '\n';
+ s << "\tmaxHeight = " << value.maxHeight << '\n';
+ s << "\tmaxNumRegionsOfInterest = " << value.maxNumRegionsOfInterest << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowImageFormatInfoNV& value)
+{
+ s << "VkOpticalFlowImageFormatInfoNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tusage = " << getOpticalFlowUsageFlagsNVStr(value.usage) << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowImageFormatPropertiesNV& value)
+{
+ s << "VkOpticalFlowImageFormatPropertiesNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tformat = " << value.format << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowSessionCreateInfoNV& value)
+{
+ s << "VkOpticalFlowSessionCreateInfoNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\twidth = " << value.width << '\n';
+ s << "\theight = " << value.height << '\n';
+ s << "\timageFormat = " << value.imageFormat << '\n';
+ s << "\tflowVectorFormat = " << value.flowVectorFormat << '\n';
+ s << "\tcostFormat = " << value.costFormat << '\n';
+ s << "\toutputGridSize = " << getOpticalFlowGridSizeFlagsNVStr(value.outputGridSize) << '\n';
+ s << "\thintGridSize = " << getOpticalFlowGridSizeFlagsNVStr(value.hintGridSize) << '\n';
+ s << "\tperformanceLevel = " << value.performanceLevel << '\n';
+ s << "\tflags = " << getOpticalFlowSessionCreateFlagsNVStr(value.flags) << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowSessionCreatePrivateDataInfoNV& value)
+{
+ s << "VkOpticalFlowSessionCreatePrivateDataInfoNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tid = " << value.id << '\n';
+ s << "\tsize = " << value.size << '\n';
+ s << "\tpPrivateData = " << value.pPrivateData << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkOpticalFlowExecuteInfoNV& value)
+{
+ s << "VkOpticalFlowExecuteInfoNV = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tflags = " << getOpticalFlowExecuteFlagsNVStr(value.flags) << '\n';
+ s << "\tregionCount = " << value.regionCount << '\n';
+ s << "\tpRegions = " << value.pRegions << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceFaultFeaturesEXT& value)
+{
+ s << "VkPhysicalDeviceFaultFeaturesEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tdeviceFault = " << value.deviceFault << '\n';
+ s << "\tdeviceFaultVendorBinary = " << value.deviceFaultVendorBinary << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultAddressInfoEXT& value)
+{
+ s << "VkDeviceFaultAddressInfoEXT = {\n";
+ s << "\taddressType = " << value.addressType << '\n';
+ s << "\treportedAddress = " << value.reportedAddress << '\n';
+ s << "\taddressPrecision = " << value.addressPrecision << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultVendorInfoEXT& value)
+{
+ s << "VkDeviceFaultVendorInfoEXT = {\n";
+ s << "\tdescription = " << (const char*)value.description << '\n';
+ s << "\tvendorFaultCode = " << value.vendorFaultCode << '\n';
+ s << "\tvendorFaultData = " << value.vendorFaultData << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultCountsEXT& value)
+{
+ s << "VkDeviceFaultCountsEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\taddressInfoCount = " << value.addressInfoCount << '\n';
+ s << "\tvendorInfoCount = " << value.vendorInfoCount << '\n';
+ s << "\tvendorBinarySize = " << value.vendorBinarySize << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultInfoEXT& value)
+{
+ s << "VkDeviceFaultInfoEXT = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tdescription = " << (const char*)value.description << '\n';
+ s << "\tpAddressInfos = " << value.pAddressInfos << '\n';
+ s << "\tpVendorInfos = " << value.pVendorInfos << '\n';
+ s << "\tpVendorBinaryData = " << value.pVendorBinaryData << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkDeviceFaultVendorBinaryHeaderVersionOneEXT& value)
+{
+ s << "VkDeviceFaultVendorBinaryHeaderVersionOneEXT = {\n";
+ s << "\theaderSize = " << value.headerSize << '\n';
+ s << "\theaderVersion = " << value.headerVersion << '\n';
+ s << "\tvendorID = " << value.vendorID << '\n';
+ s << "\tdeviceID = " << value.deviceID << '\n';
+ s << "\tdriverVersion = " << value.driverVersion << '\n';
+ s << "\tpipelineCacheUUID = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.pipelineCacheUUID)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.pipelineCacheUUID))) << '\n';
+ s << "\tapplicationNameOffset = " << value.applicationNameOffset << '\n';
+ s << "\tapplicationVersion = " << value.applicationVersion << '\n';
+ s << "\tengineNameOffset = " << value.engineNameOffset << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM& value)
+{
+ s << "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tshaderCoreCount = " << value.shaderCoreCount << '\n';
+ s << "\tshaderWarpsPerCore = " << value.shaderWarpsPerCore << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM& value)
+{
+ s << "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM = {\n";
+ s << "\tsType = " << value.sType << '\n';
+ s << "\tpNext = " << value.pNext << '\n';
+ s << "\tshaderCoreBuiltins = " << value.shaderCoreBuiltins << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const StdVideoH264SpsVuiFlags& value)
{
s << "StdVideoH264SpsVuiFlags = {\n";
s << "\tcpb_cnt_minus1 = " << value.cpb_cnt_minus1 << '\n';
s << "\tbit_rate_scale = " << value.bit_rate_scale << '\n';
s << "\tcpb_size_scale = " << value.cpb_size_scale << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
s << "\tbit_rate_value_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.bit_rate_value_minus1), DE_ARRAY_END(value.bit_rate_value_minus1)) << '\n';
s << "\tcpb_size_value_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.cpb_size_value_minus1), DE_ARRAY_END(value.cpb_size_value_minus1)) << '\n';
s << "\tcbr_flag = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.cbr_flag)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.cbr_flag))) << '\n';
s << "\tsar_width = " << value.sar_width << '\n';
s << "\tsar_height = " << value.sar_height << '\n';
s << "\tvideo_format = " << value.video_format << '\n';
- s << "\tcolor_primaries = " << value.color_primaries << '\n';
+ s << "\tcolour_primaries = " << value.colour_primaries << '\n';
s << "\ttransfer_characteristics = " << value.transfer_characteristics << '\n';
s << "\tmatrix_coefficients = " << value.matrix_coefficients << '\n';
s << "\tnum_units_in_tick = " << value.num_units_in_tick << '\n';
s << "\ttime_scale = " << value.time_scale << '\n';
- s << "\tpHrdParameters = " << value.pHrdParameters << '\n';
s << "\tmax_num_reorder_frames = " << value.max_num_reorder_frames << '\n';
s << "\tmax_dec_frame_buffering = " << value.max_dec_frame_buffering << '\n';
+ s << "\tchroma_sample_loc_type_top_field = " << value.chroma_sample_loc_type_top_field << '\n';
+ s << "\tchroma_sample_loc_type_bottom_field = " << value.chroma_sample_loc_type_bottom_field << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\tpHrdParameters = " << value.pHrdParameters << '\n';
s << '}';
return s;
}
s << "\tflags = " << value.flags << '\n';
s << "\tprofile_idc = " << value.profile_idc << '\n';
s << "\tlevel_idc = " << value.level_idc << '\n';
- s << "\tseq_parameter_set_id = " << value.seq_parameter_set_id << '\n';
s << "\tchroma_format_idc = " << value.chroma_format_idc << '\n';
+ s << "\tseq_parameter_set_id = " << value.seq_parameter_set_id << '\n';
s << "\tbit_depth_luma_minus8 = " << value.bit_depth_luma_minus8 << '\n';
s << "\tbit_depth_chroma_minus8 = " << value.bit_depth_chroma_minus8 << '\n';
s << "\tlog2_max_frame_num_minus4 = " << value.log2_max_frame_num_minus4 << '\n';
s << "\tpic_order_cnt_type = " << value.pic_order_cnt_type << '\n';
- s << "\tlog2_max_pic_order_cnt_lsb_minus4 = " << value.log2_max_pic_order_cnt_lsb_minus4 << '\n';
s << "\toffset_for_non_ref_pic = " << value.offset_for_non_ref_pic << '\n';
s << "\toffset_for_top_to_bottom_field = " << value.offset_for_top_to_bottom_field << '\n';
+ s << "\tlog2_max_pic_order_cnt_lsb_minus4 = " << value.log2_max_pic_order_cnt_lsb_minus4 << '\n';
s << "\tnum_ref_frames_in_pic_order_cnt_cycle = " << value.num_ref_frames_in_pic_order_cnt_cycle << '\n';
s << "\tmax_num_ref_frames = " << value.max_num_ref_frames << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
s << "\tpic_width_in_mbs_minus1 = " << value.pic_width_in_mbs_minus1 << '\n';
s << "\tpic_height_in_map_units_minus1 = " << value.pic_height_in_map_units_minus1 << '\n';
s << "\tframe_crop_left_offset = " << value.frame_crop_left_offset << '\n';
s << "\tframe_crop_right_offset = " << value.frame_crop_right_offset << '\n';
s << "\tframe_crop_top_offset = " << value.frame_crop_top_offset << '\n';
s << "\tframe_crop_bottom_offset = " << value.frame_crop_bottom_offset << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
s << "\tpOffsetForRefFrame = " << value.pOffsetForRefFrame << '\n';
s << "\tpScalingLists = " << value.pScalingLists << '\n';
s << "\tpSequenceParameterSetVui = " << value.pSequenceParameterSetVui << '\n';
s << "\tredundant_pic_cnt_present_flag = " << value.redundant_pic_cnt_present_flag << '\n';
s << "\tconstrained_intra_pred_flag = " << value.constrained_intra_pred_flag << '\n';
s << "\tdeblocking_filter_control_present_flag = " << value.deblocking_filter_control_present_flag << '\n';
- s << "\tweighted_bipred_idc_flag = " << value.weighted_bipred_idc_flag << '\n';
s << "\tweighted_pred_flag = " << value.weighted_pred_flag << '\n';
- s << "\tpic_order_present_flag = " << value.pic_order_present_flag << '\n';
+ s << "\tbottom_field_pic_order_in_frame_present_flag = " << value.bottom_field_pic_order_in_frame_present_flag << '\n';
s << "\tentropy_coding_mode_flag = " << value.entropy_coding_mode_flag << '\n';
s << "\tpic_scaling_matrix_present_flag = " << value.pic_scaling_matrix_present_flag << '\n';
s << '}';
s << "\tflags = " << value.flags << '\n';
s << "\tseq_parameter_set_id = " << value.seq_parameter_set_id << '\n';
s << "\tpic_parameter_set_id = " << value.pic_parameter_set_id << '\n';
- s << "\treserved = " << value.reserved << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
s << "\tframe_num = " << value.frame_num << '\n';
s << "\tidr_pic_id = " << value.idr_pic_id << '\n';
s << "\tPicOrderCnt = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.PicOrderCnt), DE_ARRAY_END(value.PicOrderCnt)) << '\n';
return s;
}
-std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264MvcElementFlags& value)
-{
- s << "StdVideoDecodeH264MvcElementFlags = {\n";
- s << "\tnon_idr = " << value.non_idr << '\n';
- s << "\tanchor_pic = " << value.anchor_pic << '\n';
- s << "\tinter_view = " << value.inter_view << '\n';
- s << '}';
- return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264MvcElement& value)
-{
- s << "StdVideoDecodeH264MvcElement = {\n";
- s << "\tflags = " << value.flags << '\n';
- s << "\tviewOrderIndex = " << value.viewOrderIndex << '\n';
- s << "\tviewId = " << value.viewId << '\n';
- s << "\ttemporalId = " << value.temporalId << '\n';
- s << "\tpriorityId = " << value.priorityId << '\n';
- s << "\tnumOfAnchorRefsInL0 = " << value.numOfAnchorRefsInL0 << '\n';
- s << "\tviewIdOfAnchorRefsInL0 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewIdOfAnchorRefsInL0), DE_ARRAY_END(value.viewIdOfAnchorRefsInL0)) << '\n';
- s << "\tnumOfAnchorRefsInL1 = " << value.numOfAnchorRefsInL1 << '\n';
- s << "\tviewIdOfAnchorRefsInL1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewIdOfAnchorRefsInL1), DE_ARRAY_END(value.viewIdOfAnchorRefsInL1)) << '\n';
- s << "\tnumOfNonAnchorRefsInL0 = " << value.numOfNonAnchorRefsInL0 << '\n';
- s << "\tviewIdOfNonAnchorRefsInL0 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewIdOfNonAnchorRefsInL0), DE_ARRAY_END(value.viewIdOfNonAnchorRefsInL0)) << '\n';
- s << "\tnumOfNonAnchorRefsInL1 = " << value.numOfNonAnchorRefsInL1 << '\n';
- s << "\tviewIdOfNonAnchorRefsInL1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.viewIdOfNonAnchorRefsInL1), DE_ARRAY_END(value.viewIdOfNonAnchorRefsInL1)) << '\n';
- s << '}';
- return s;
-}
-
-std::ostream& operator<< (std::ostream& s, const StdVideoDecodeH264Mvc& value)
-{
- s << "StdVideoDecodeH264Mvc = {\n";
- s << "\tviewId0 = " << value.viewId0 << '\n';
- s << "\tmvcElementCount = " << value.mvcElementCount << '\n';
- s << "\tpMvcElements = " << value.pMvcElements << '\n';
- s << '}';
- return s;
-}
-
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH264WeightTableFlags& value)
{
s << "StdVideoEncodeH264WeightTableFlags = {\n";
return s;
}
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ProfileTierLevelFlags& value)
+{
+ s << "StdVideoH265ProfileTierLevelFlags = {\n";
+ s << "\tgeneral_tier_flag = " << value.general_tier_flag << '\n';
+ s << "\tgeneral_progressive_source_flag = " << value.general_progressive_source_flag << '\n';
+ s << "\tgeneral_interlaced_source_flag = " << value.general_interlaced_source_flag << '\n';
+ s << "\tgeneral_non_packed_constraint_flag = " << value.general_non_packed_constraint_flag << '\n';
+ s << "\tgeneral_frame_only_constraint_flag = " << value.general_frame_only_constraint_flag << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ProfileTierLevel& value)
+{
+ s << "StdVideoH265ProfileTierLevel = {\n";
+ s << "\tflags = " << value.flags << '\n';
+ s << "\tgeneral_profile_idc = " << value.general_profile_idc << '\n';
+ s << "\tgeneral_level_idc = " << value.general_level_idc << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const StdVideoH265DecPicBufMgr& value)
{
s << "StdVideoH265DecPicBufMgr = {\n";
s << "\tdpb_output_delay_length_minus1 = " << value.dpb_output_delay_length_minus1 << '\n';
s << "\tcpb_cnt_minus1 = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.cpb_cnt_minus1)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.cpb_cnt_minus1))) << '\n';
s << "\telemental_duration_in_tc_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.elemental_duration_in_tc_minus1), DE_ARRAY_END(value.elemental_duration_in_tc_minus1)) << '\n';
- s << "\tpSubLayerHrdParametersNal = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.pSubLayerHrdParametersNal), DE_ARRAY_END(value.pSubLayerHrdParametersNal)) << '\n';
- s << "\tpSubLayerHrdParametersVcl = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.pSubLayerHrdParametersVcl), DE_ARRAY_END(value.pSubLayerHrdParametersVcl)) << '\n';
+ s << "\treserved = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.reserved), DE_ARRAY_END(value.reserved)) << '\n';
+ s << "\tpSubLayerHrdParametersNal = " << value.pSubLayerHrdParametersNal << '\n';
+ s << "\tpSubLayerHrdParametersVcl = " << value.pSubLayerHrdParametersVcl << '\n';
s << '}';
return s;
}
s << "\tflags = " << value.flags << '\n';
s << "\tvps_video_parameter_set_id = " << value.vps_video_parameter_set_id << '\n';
s << "\tvps_max_sub_layers_minus1 = " << value.vps_max_sub_layers_minus1 << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
s << "\tvps_num_units_in_tick = " << value.vps_num_units_in_tick << '\n';
s << "\tvps_time_scale = " << value.vps_time_scale << '\n';
s << "\tvps_num_ticks_poc_diff_one_minus1 = " << value.vps_num_ticks_poc_diff_one_minus1 << '\n';
+ s << "\treserved3 = " << value.reserved3 << '\n';
s << "\tpDecPicBufMgr = " << value.pDecPicBufMgr << '\n';
s << "\tpHrdParameters = " << value.pHrdParameters << '\n';
+ s << "\tpProfileTierLevel = " << value.pProfileTierLevel << '\n';
s << '}';
return s;
}
return s;
}
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ShortTermRefPicSetFlags& value)
+{
+ s << "StdVideoH265ShortTermRefPicSetFlags = {\n";
+ s << "\tinter_ref_pic_set_prediction_flag = " << value.inter_ref_pic_set_prediction_flag << '\n';
+ s << "\tdelta_rps_sign = " << value.delta_rps_sign << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const StdVideoH265ShortTermRefPicSet& value)
+{
+ s << "StdVideoH265ShortTermRefPicSet = {\n";
+ s << "\tflags = " << value.flags << '\n';
+ s << "\tdelta_idx_minus1 = " << value.delta_idx_minus1 << '\n';
+ s << "\tuse_delta_flag = " << value.use_delta_flag << '\n';
+ s << "\tabs_delta_rps_minus1 = " << value.abs_delta_rps_minus1 << '\n';
+ s << "\tused_by_curr_pic_flag = " << value.used_by_curr_pic_flag << '\n';
+ s << "\tused_by_curr_pic_s0_flag = " << value.used_by_curr_pic_s0_flag << '\n';
+ s << "\tused_by_curr_pic_s1_flag = " << value.used_by_curr_pic_s1_flag << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
+ s << "\treserved3 = " << value.reserved3 << '\n';
+ s << "\tnum_negative_pics = " << value.num_negative_pics << '\n';
+ s << "\tnum_positive_pics = " << value.num_positive_pics << '\n';
+ s << "\tdelta_poc_s0_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.delta_poc_s0_minus1), DE_ARRAY_END(value.delta_poc_s0_minus1)) << '\n';
+ s << "\tdelta_poc_s1_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.delta_poc_s1_minus1), DE_ARRAY_END(value.delta_poc_s1_minus1)) << '\n';
+ s << '}';
+ return s;
+}
+
+std::ostream& operator<< (std::ostream& s, const StdVideoH265LongTermRefPicsSps& value)
+{
+ s << "StdVideoH265LongTermRefPicsSps = {\n";
+ s << "\tused_by_curr_pic_lt_sps_flag = " << value.used_by_curr_pic_lt_sps_flag << '\n';
+ s << "\tlt_ref_pic_poc_lsb_sps = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.lt_ref_pic_poc_lsb_sps), DE_ARRAY_END(value.lt_ref_pic_poc_lsb_sps)) << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const StdVideoH265SpsVuiFlags& value)
{
s << "StdVideoH265SpsVuiFlags = {\n";
s << "\tmatrix_coeffs = " << value.matrix_coeffs << '\n';
s << "\tchroma_sample_loc_type_top_field = " << value.chroma_sample_loc_type_top_field << '\n';
s << "\tchroma_sample_loc_type_bottom_field = " << value.chroma_sample_loc_type_bottom_field << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
s << "\tdef_disp_win_left_offset = " << value.def_disp_win_left_offset << '\n';
s << "\tdef_disp_win_right_offset = " << value.def_disp_win_right_offset << '\n';
s << "\tdef_disp_win_top_offset = " << value.def_disp_win_top_offset << '\n';
s << "\tvui_num_units_in_tick = " << value.vui_num_units_in_tick << '\n';
s << "\tvui_time_scale = " << value.vui_time_scale << '\n';
s << "\tvui_num_ticks_poc_diff_one_minus1 = " << value.vui_num_ticks_poc_diff_one_minus1 << '\n';
- s << "\tpHrdParameters = " << value.pHrdParameters << '\n';
s << "\tmin_spatial_segmentation_idc = " << value.min_spatial_segmentation_idc << '\n';
+ s << "\treserved3 = " << value.reserved3 << '\n';
s << "\tmax_bytes_per_pic_denom = " << value.max_bytes_per_pic_denom << '\n';
s << "\tmax_bits_per_min_cu_denom = " << value.max_bits_per_min_cu_denom << '\n';
s << "\tlog2_max_mv_length_horizontal = " << value.log2_max_mv_length_horizontal << '\n';
s << "\tlog2_max_mv_length_vertical = " << value.log2_max_mv_length_vertical << '\n';
+ s << "\tpHrdParameters = " << value.pHrdParameters << '\n';
s << '}';
return s;
}
s << "StdVideoH265SpsFlags = {\n";
s << "\tsps_temporal_id_nesting_flag = " << value.sps_temporal_id_nesting_flag << '\n';
s << "\tseparate_colour_plane_flag = " << value.separate_colour_plane_flag << '\n';
+ s << "\tconformance_window_flag = " << value.conformance_window_flag << '\n';
+ s << "\tsps_sub_layer_ordering_info_present_flag = " << value.sps_sub_layer_ordering_info_present_flag << '\n';
s << "\tscaling_list_enabled_flag = " << value.scaling_list_enabled_flag << '\n';
s << "\tsps_scaling_list_data_present_flag = " << value.sps_scaling_list_data_present_flag << '\n';
s << "\tamp_enabled_flag = " << value.amp_enabled_flag << '\n';
s << "\tsps_scc_extension_flag = " << value.sps_scc_extension_flag << '\n';
s << "\tsps_curr_pic_ref_enabled_flag = " << value.sps_curr_pic_ref_enabled_flag << '\n';
s << "\tpalette_mode_enabled_flag = " << value.palette_mode_enabled_flag << '\n';
- s << "\tsps_palette_predictor_initializer_present_flag = " << value.sps_palette_predictor_initializer_present_flag << '\n';
+ s << "\tsps_palette_predictor_initializers_present_flag = " << value.sps_palette_predictor_initializers_present_flag << '\n';
s << "\tintra_boundary_filtering_disabled_flag = " << value.intra_boundary_filtering_disabled_flag << '\n';
s << '}';
return s;
{
s << "StdVideoH265SequenceParameterSet = {\n";
s << "\tflags = " << value.flags << '\n';
- s << "\tprofile_idc = " << value.profile_idc << '\n';
- s << "\tlevel_idc = " << value.level_idc << '\n';
+ s << "\tchroma_format_idc = " << value.chroma_format_idc << '\n';
s << "\tpic_width_in_luma_samples = " << value.pic_width_in_luma_samples << '\n';
s << "\tpic_height_in_luma_samples = " << value.pic_height_in_luma_samples << '\n';
s << "\tsps_video_parameter_set_id = " << value.sps_video_parameter_set_id << '\n';
s << "\tsps_max_sub_layers_minus1 = " << value.sps_max_sub_layers_minus1 << '\n';
s << "\tsps_seq_parameter_set_id = " << value.sps_seq_parameter_set_id << '\n';
- s << "\tchroma_format_idc = " << value.chroma_format_idc << '\n';
s << "\tbit_depth_luma_minus8 = " << value.bit_depth_luma_minus8 << '\n';
s << "\tbit_depth_chroma_minus8 = " << value.bit_depth_chroma_minus8 << '\n';
s << "\tlog2_max_pic_order_cnt_lsb_minus4 = " << value.log2_max_pic_order_cnt_lsb_minus4 << '\n';
s << "\tpcm_sample_bit_depth_chroma_minus1 = " << value.pcm_sample_bit_depth_chroma_minus1 << '\n';
s << "\tlog2_min_pcm_luma_coding_block_size_minus3 = " << value.log2_min_pcm_luma_coding_block_size_minus3 << '\n';
s << "\tlog2_diff_max_min_pcm_luma_coding_block_size = " << value.log2_diff_max_min_pcm_luma_coding_block_size << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
+ s << "\tpalette_max_size = " << value.palette_max_size << '\n';
+ s << "\tdelta_palette_max_predictor_size = " << value.delta_palette_max_predictor_size << '\n';
+ s << "\tmotion_vector_resolution_control_idc = " << value.motion_vector_resolution_control_idc << '\n';
+ s << "\tsps_num_palette_predictor_initializers_minus1 = " << value.sps_num_palette_predictor_initializers_minus1 << '\n';
s << "\tconf_win_left_offset = " << value.conf_win_left_offset << '\n';
s << "\tconf_win_right_offset = " << value.conf_win_right_offset << '\n';
s << "\tconf_win_top_offset = " << value.conf_win_top_offset << '\n';
s << "\tconf_win_bottom_offset = " << value.conf_win_bottom_offset << '\n';
+ s << "\tpProfileTierLevel = " << value.pProfileTierLevel << '\n';
s << "\tpDecPicBufMgr = " << value.pDecPicBufMgr << '\n';
s << "\tpScalingLists = " << value.pScalingLists << '\n';
+ s << "\tpShortTermRefPicSet = " << value.pShortTermRefPicSet << '\n';
+ s << "\tpLongTermRefPicsSps = " << value.pLongTermRefPicsSps << '\n';
s << "\tpSequenceParameterSetVui = " << value.pSequenceParameterSetVui << '\n';
- s << "\tpalette_max_size = " << value.palette_max_size << '\n';
- s << "\tdelta_palette_max_predictor_size = " << value.delta_palette_max_predictor_size << '\n';
- s << "\tmotion_vector_resolution_control_idc = " << value.motion_vector_resolution_control_idc << '\n';
- s << "\tsps_num_palette_predictor_initializer_minus1 = " << value.sps_num_palette_predictor_initializer_minus1 << '\n';
s << "\tpPredictorPaletteEntries = " << value.pPredictorPaletteEntries << '\n';
s << '}';
return s;
s << "\tpps_curr_pic_ref_enabled_flag = " << value.pps_curr_pic_ref_enabled_flag << '\n';
s << "\tresidual_adaptive_colour_transform_enabled_flag = " << value.residual_adaptive_colour_transform_enabled_flag << '\n';
s << "\tpps_slice_act_qp_offsets_present_flag = " << value.pps_slice_act_qp_offsets_present_flag << '\n';
- s << "\tpps_palette_predictor_initializer_present_flag = " << value.pps_palette_predictor_initializer_present_flag << '\n';
+ s << "\tpps_palette_predictor_initializers_present_flag = " << value.pps_palette_predictor_initializers_present_flag << '\n';
s << "\tmonochrome_palette_flag = " << value.monochrome_palette_flag << '\n';
s << "\tpps_range_extension_flag = " << value.pps_range_extension_flag << '\n';
s << '}';
s << "\tflags = " << value.flags << '\n';
s << "\tpps_pic_parameter_set_id = " << value.pps_pic_parameter_set_id << '\n';
s << "\tpps_seq_parameter_set_id = " << value.pps_seq_parameter_set_id << '\n';
+ s << "\tsps_video_parameter_set_id = " << value.sps_video_parameter_set_id << '\n';
s << "\tnum_extra_slice_header_bits = " << value.num_extra_slice_header_bits << '\n';
s << "\tnum_ref_idx_l0_default_active_minus1 = " << value.num_ref_idx_l0_default_active_minus1 << '\n';
s << "\tnum_ref_idx_l1_default_active_minus1 = " << value.num_ref_idx_l1_default_active_minus1 << '\n';
s << "\tdiff_cu_qp_delta_depth = " << value.diff_cu_qp_delta_depth << '\n';
s << "\tpps_cb_qp_offset = " << value.pps_cb_qp_offset << '\n';
s << "\tpps_cr_qp_offset = " << value.pps_cr_qp_offset << '\n';
- s << "\tnum_tile_columns_minus1 = " << value.num_tile_columns_minus1 << '\n';
- s << "\tnum_tile_rows_minus1 = " << value.num_tile_rows_minus1 << '\n';
- s << "\tcolumn_width_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.column_width_minus1), DE_ARRAY_END(value.column_width_minus1)) << '\n';
- s << "\trow_height_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.row_height_minus1), DE_ARRAY_END(value.row_height_minus1)) << '\n';
s << "\tpps_beta_offset_div2 = " << value.pps_beta_offset_div2 << '\n';
s << "\tpps_tc_offset_div2 = " << value.pps_tc_offset_div2 << '\n';
s << "\tlog2_parallel_merge_level_minus2 = " << value.log2_parallel_merge_level_minus2 << '\n';
- s << "\tpScalingLists = " << value.pScalingLists << '\n';
s << "\tlog2_max_transform_skip_block_size_minus2 = " << value.log2_max_transform_skip_block_size_minus2 << '\n';
s << "\tdiff_cu_chroma_qp_offset_depth = " << value.diff_cu_chroma_qp_offset_depth << '\n';
s << "\tchroma_qp_offset_list_len_minus1 = " << value.chroma_qp_offset_list_len_minus1 << '\n';
s << "\tlog2_sao_offset_scale_chroma = " << value.log2_sao_offset_scale_chroma << '\n';
s << "\tpps_act_y_qp_offset_plus5 = " << value.pps_act_y_qp_offset_plus5 << '\n';
s << "\tpps_act_cb_qp_offset_plus5 = " << value.pps_act_cb_qp_offset_plus5 << '\n';
- s << "\tpps_act_cr_qp_offset_plus5 = " << value.pps_act_cr_qp_offset_plus5 << '\n';
- s << "\tpps_num_palette_predictor_initializer = " << value.pps_num_palette_predictor_initializer << '\n';
+ s << "\tpps_act_cr_qp_offset_plus3 = " << value.pps_act_cr_qp_offset_plus3 << '\n';
+ s << "\tpps_num_palette_predictor_initializers = " << value.pps_num_palette_predictor_initializers << '\n';
s << "\tluma_bit_depth_entry_minus8 = " << value.luma_bit_depth_entry_minus8 << '\n';
s << "\tchroma_bit_depth_entry_minus8 = " << value.chroma_bit_depth_entry_minus8 << '\n';
+ s << "\tnum_tile_columns_minus1 = " << value.num_tile_columns_minus1 << '\n';
+ s << "\tnum_tile_rows_minus1 = " << value.num_tile_rows_minus1 << '\n';
+ s << "\treserved1 = " << value.reserved1 << '\n';
+ s << "\treserved2 = " << value.reserved2 << '\n';
+ s << "\tcolumn_width_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.column_width_minus1), DE_ARRAY_END(value.column_width_minus1)) << '\n';
+ s << "\trow_height_minus1 = " << '\n' << tcu::formatArray(DE_ARRAY_BEGIN(value.row_height_minus1), DE_ARRAY_END(value.row_height_minus1)) << '\n';
+ s << "\treserved3 = " << value.reserved3 << '\n';
+ s << "\tpScalingLists = " << value.pScalingLists << '\n';
s << "\tpPredictorPaletteEntries = " << value.pPredictorPaletteEntries << '\n';
s << '}';
return s;
s << "\tsps_video_parameter_set_id = " << value.sps_video_parameter_set_id << '\n';
s << "\tpps_seq_parameter_set_id = " << value.pps_seq_parameter_set_id << '\n';
s << "\tpps_pic_parameter_set_id = " << value.pps_pic_parameter_set_id << '\n';
- s << "\tnum_short_term_ref_pic_sets = " << value.num_short_term_ref_pic_sets << '\n';
+ s << "\tNumDeltaPocsOfRefRpsIdx = " << value.NumDeltaPocsOfRefRpsIdx << '\n';
s << "\tPicOrderCntVal = " << value.PicOrderCntVal << '\n';
s << "\tNumBitsForSTRefPicSetInSlice = " << value.NumBitsForSTRefPicSetInSlice << '\n';
- s << "\tNumDeltaPocsOfRefRpsIdx = " << value.NumDeltaPocsOfRefRpsIdx << '\n';
+ s << "\treserved = " << value.reserved << '\n';
s << "\tRefPicSetStCurrBefore = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.RefPicSetStCurrBefore)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.RefPicSetStCurrBefore))) << '\n';
s << "\tRefPicSetStCurrAfter = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.RefPicSetStCurrAfter)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.RefPicSetStCurrAfter))) << '\n';
s << "\tRefPicSetLtCurr = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.RefPicSetLtCurr)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.RefPicSetLtCurr))) << '\n';
s << "StdVideoDecodeH265ReferenceInfoFlags = {\n";
s << "\tused_for_long_term_reference = " << value.used_for_long_term_reference << '\n';
s << "\tunused_for_reference = " << value.unused_for_reference << '\n';
- s << "\tis_non_existing = " << value.is_non_existing << '\n';
s << '}';
return s;
}
return s;
}
+std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265SliceSegmentLongTermRefPics& value)
+{
+ s << "StdVideoEncodeH265SliceSegmentLongTermRefPics = {\n";
+ s << "\tnum_long_term_sps = " << value.num_long_term_sps << '\n';
+ s << "\tnum_long_term_pics = " << value.num_long_term_pics << '\n';
+ s << "\tlt_idx_sps = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.lt_idx_sps)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.lt_idx_sps))) << '\n';
+ s << "\tpoc_lsb_lt = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.poc_lsb_lt)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.poc_lsb_lt))) << '\n';
+ s << "\tused_by_curr_pic_lt_flag = " << value.used_by_curr_pic_lt_flag << '\n';
+ s << "\tdelta_poc_msb_present_flag = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.delta_poc_msb_present_flag)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.delta_poc_msb_present_flag))) << '\n';
+ s << "\tdelta_poc_msb_cycle_lt = " << '\n' << tcu::formatArray(tcu::Format::HexIterator<uint8_t>(DE_ARRAY_BEGIN(value.delta_poc_msb_cycle_lt)), tcu::Format::HexIterator<uint8_t>(DE_ARRAY_END(value.delta_poc_msb_cycle_lt))) << '\n';
+ s << '}';
+ return s;
+}
+
std::ostream& operator<< (std::ostream& s, const StdVideoEncodeH265SliceSegmentHeaderFlags& value)
{
s << "StdVideoEncodeH265SliceSegmentHeaderFlags = {\n";
s << "\tnum_ref_idx_active_override_flag = " << value.num_ref_idx_active_override_flag << '\n';
s << "\tmvd_l1_zero_flag = " << value.mvd_l1_zero_flag << '\n';
s << "\tcabac_init_flag = " << value.cabac_init_flag << '\n';
- s << "\tslice_deblocking_filter_disable_flag = " << value.slice_deblocking_filter_disable_flag << '\n';
+ s << "\tcu_chroma_qp_offset_enabled_flag = " << value.cu_chroma_qp_offset_enabled_flag << '\n';
+ s << "\tdeblocking_filter_override_flag = " << value.deblocking_filter_override_flag << '\n';
+ s << "\tslice_deblocking_filter_disabled_flag = " << value.slice_deblocking_filter_disabled_flag << '\n';
s << "\tcollocated_from_l0_flag = " << value.collocated_from_l0_flag << '\n';
s << "\tslice_loop_filter_across_slices_enabled_flag = " << value.slice_loop_filter_across_slices_enabled_flag << '\n';
s << '}';
s << "StdVideoEncodeH265SliceSegmentHeader = {\n";
s << "\tflags = " << value.flags << '\n';
s << "\tslice_type = " << value.slice_type << '\n';
- s << "\tnum_short_term_ref_pic_sets = " << value.num_short_term_ref_pic_sets << '\n';
s << "\tslice_segment_address = " << value.slice_segment_address << '\n';
s << "\tshort_term_ref_pic_set_idx = " << value.short_term_ref_pic_set_idx << '\n';
- s << "\tnum_long_term_sps = " << value.num_long_term_sps << '\n';
- s << "\tnum_long_term_pics = " << value.num_long_term_pics << '\n';
s << "\tcollocated_ref_idx = " << value.collocated_ref_idx << '\n';
s << "\tnum_ref_idx_l0_active_minus1 = " << value.num_ref_idx_l0_active_minus1 << '\n';
s << "\tnum_ref_idx_l1_active_minus1 = " << value.num_ref_idx_l1_active_minus1 << '\n';
s << "\tslice_act_y_qp_offset = " << value.slice_act_y_qp_offset << '\n';
s << "\tslice_act_cb_qp_offset = " << value.slice_act_cb_qp_offset << '\n';
s << "\tslice_act_cr_qp_offset = " << value.slice_act_cr_qp_offset << '\n';
+ s << "\tpShortTermRefPicSet = " << value.pShortTermRefPicSet << '\n';
+ s << "\tpLongTermRefPics = " << value.pLongTermRefPics << '\n';
s << "\tpWeightTable = " << value.pWeightTable << '\n';
s << '}';
return s;
VkBool32 fullScreenExclusiveSupported;
};
+struct VkPhysicalDevicePresentBarrierFeaturesNV
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 presentBarrier;
+};
+
+struct VkSurfaceCapabilitiesPresentBarrierNV
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 presentBarrierSupported;
+};
+
+struct VkSwapchainPresentBarrierCreateInfoNV
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 presentBarrierEnable;
+};
+
struct VkPhysicalDevicePerformanceQueryFeaturesKHR
{
VkStructureType sType;
VkBool32 extendedDynamicState2PatchControlPoints;
};
+struct VkPhysicalDeviceExtendedDynamicState3FeaturesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 extendedDynamicState3TessellationDomainOrigin;
+ VkBool32 extendedDynamicState3DepthClampEnable;
+ VkBool32 extendedDynamicState3PolygonMode;
+ VkBool32 extendedDynamicState3RasterizationSamples;
+ VkBool32 extendedDynamicState3SampleMask;
+ VkBool32 extendedDynamicState3AlphaToCoverageEnable;
+ VkBool32 extendedDynamicState3AlphaToOneEnable;
+ VkBool32 extendedDynamicState3LogicOpEnable;
+ VkBool32 extendedDynamicState3ColorBlendEnable;
+ VkBool32 extendedDynamicState3ColorBlendEquation;
+ VkBool32 extendedDynamicState3ColorWriteMask;
+ VkBool32 extendedDynamicState3RasterizationStream;
+ VkBool32 extendedDynamicState3ConservativeRasterizationMode;
+ VkBool32 extendedDynamicState3ExtraPrimitiveOverestimationSize;
+ VkBool32 extendedDynamicState3DepthClipEnable;
+ VkBool32 extendedDynamicState3SampleLocationsEnable;
+ VkBool32 extendedDynamicState3ColorBlendAdvanced;
+ VkBool32 extendedDynamicState3ProvokingVertexMode;
+ VkBool32 extendedDynamicState3LineRasterizationMode;
+ VkBool32 extendedDynamicState3LineStippleEnable;
+ VkBool32 extendedDynamicState3DepthClipNegativeOneToOne;
+ VkBool32 extendedDynamicState3ViewportWScalingEnable;
+ VkBool32 extendedDynamicState3ViewportSwizzle;
+ VkBool32 extendedDynamicState3CoverageToColorEnable;
+ VkBool32 extendedDynamicState3CoverageToColorLocation;
+ VkBool32 extendedDynamicState3CoverageModulationMode;
+ VkBool32 extendedDynamicState3CoverageModulationTableEnable;
+ VkBool32 extendedDynamicState3CoverageModulationTable;
+ VkBool32 extendedDynamicState3CoverageReductionMode;
+ VkBool32 extendedDynamicState3RepresentativeFragmentTestEnable;
+ VkBool32 extendedDynamicState3ShadingRateImageEnable;
+};
+
+struct VkPhysicalDeviceExtendedDynamicState3PropertiesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 dynamicPrimitiveTopologyUnrestricted;
+};
+
+struct VkColorBlendEquationEXT
+{
+ VkBlendFactor srcColorBlendFactor;
+ VkBlendFactor dstColorBlendFactor;
+ VkBlendOp colorBlendOp;
+ VkBlendFactor srcAlphaBlendFactor;
+ VkBlendFactor dstAlphaBlendFactor;
+ VkBlendOp alphaBlendOp;
+};
+
+struct VkColorBlendAdvancedEXT
+{
+ VkBlendOp advancedBlendOp;
+ VkBool32 srcPremultiplied;
+ VkBool32 dstPremultiplied;
+ VkBlendOverlapEXT blendOverlap;
+ VkBool32 clampResults;
+};
+
struct VkRenderPassTransformBeginInfoQCOM
{
VkStructureType sType;
VkBool32 sampler2DViewOf3D;
};
-struct VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE
+struct VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT
{
VkStructureType sType;
void* pNext;
VkBool32 mutableDescriptorType;
};
-struct VkMutableDescriptorTypeListVALVE
+struct VkMutableDescriptorTypeListEXT
{
uint32_t descriptorTypeCount;
const VkDescriptorType* pDescriptorTypes;
};
-struct VkMutableDescriptorTypeCreateInfoVALVE
+struct VkMutableDescriptorTypeCreateInfoEXT
{
VkStructureType sType;
const void* pNext;
uint32_t mutableDescriptorTypeListCount;
- const VkMutableDescriptorTypeListVALVE* pMutableDescriptorTypeLists;
+ const VkMutableDescriptorTypeListEXT* pMutableDescriptorTypeLists;
};
struct VkPhysicalDeviceDepthClipControlFeaturesEXT
VkSampleCountFlagBits rasterizationSamples;
};
+struct VkPhysicalDevicePipelineProtectedAccessFeaturesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 pipelineProtectedAccess;
+};
+
struct VkQueueFamilyVideoPropertiesKHR
{
VkStructureType sType;
{
VkStructureType sType;
void* pNext;
- VkVideoCapabilityFlagsKHR capabilityFlags;
+ VkVideoCapabilityFlagsKHR flags;
VkDeviceSize minBitstreamBufferOffsetAlignment;
VkDeviceSize minBitstreamBufferSizeAlignment;
- VkExtent2D videoPictureExtentGranularity;
- VkExtent2D minExtent;
- VkExtent2D maxExtent;
- uint32_t maxReferencePicturesSlotsCount;
- uint32_t maxReferencePicturesActiveCount;
+ VkExtent2D pictureAccessGranularity;
+ VkExtent2D minCodedExtent;
+ VkExtent2D maxCodedExtent;
+ uint32_t maxDpbSlots;
+ uint32_t maxActiveReferencePictures;
VkExtensionProperties stdHeaderVersion;
};
{
VkStructureType sType;
const void* pNext;
- int8_t slotIndex;
+ int32_t slotIndex;
const VkVideoPictureResourceInfoKHR* pPictureResource;
};
struct VkVideoDecodeH264ProfileInfoEXT
{
- VkStructureType sType;
- const void* pNext;
- StdVideoH264ProfileIdc stdProfileIdc;
- VkVideoDecodeH264PictureLayoutFlagsEXT pictureLayout;
+ VkStructureType sType;
+ const void* pNext;
+ StdVideoH264ProfileIdc stdProfileIdc;
+ VkVideoDecodeH264PictureLayoutFlagBitsEXT pictureLayout;
};
struct VkVideoDecodeH264CapabilitiesEXT
{
- VkStructureType sType;
- void* pNext;
- StdVideoH264Level maxLevel;
- VkOffset2D fieldOffsetGranularity;
+ VkStructureType sType;
+ void* pNext;
+ StdVideoH264LevelIdc maxLevelIdc;
+ VkOffset2D fieldOffsetGranularity;
};
struct VkVideoDecodeH265ProfileInfoEXT
struct VkVideoDecodeH265CapabilitiesEXT
{
- VkStructureType sType;
- void* pNext;
- StdVideoH265Level maxLevel;
+ VkStructureType sType;
+ void* pNext;
+ StdVideoH265LevelIdc maxLevelIdc;
};
struct VkVideoSessionCreateInfoKHR
const VkVideoProfileInfoKHR* pVideoProfile;
VkFormat pictureFormat;
VkExtent2D maxCodedExtent;
- VkFormat referencePicturesFormat;
- uint32_t maxReferencePicturesSlotsCount;
- uint32_t maxReferencePicturesActiveCount;
+ VkFormat referencePictureFormat;
+ uint32_t maxDpbSlots;
+ uint32_t maxActiveReferencePictures;
const VkExtensionProperties* pStdHeaderVersion;
};
VkBool32 subpassMergeFeedback;
};
+struct VkMicromapCreateInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapCreateFlagsEXT createFlags;
+ VkBuffer buffer;
+ VkDeviceSize offset;
+ VkDeviceSize size;
+ VkMicromapTypeEXT type;
+ VkDeviceAddress deviceAddress;
+};
+
+struct VkMicromapVersionInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ const uint8_t* pVersionData;
+};
+
+struct VkCopyMicromapInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapEXT src;
+ VkMicromapEXT dst;
+ VkCopyMicromapModeEXT mode;
+};
+
+struct VkCopyMicromapToMemoryInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapEXT src;
+ VkDeviceOrHostAddressKHR dst;
+ VkCopyMicromapModeEXT mode;
+};
+
+struct VkCopyMemoryToMicromapInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkDeviceOrHostAddressConstKHR src;
+ VkMicromapEXT dst;
+ VkCopyMicromapModeEXT mode;
+};
+
+struct VkMicromapBuildSizesInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkDeviceSize micromapSize;
+ VkDeviceSize buildScratchSize;
+ VkBool32 discardable;
+};
+
+struct VkMicromapUsageEXT
+{
+ uint32_t count;
+ uint32_t subdivisionLevel;
+ uint32_t format;
+};
+
+struct VkMicromapBuildInfoEXT
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapTypeEXT type;
+ VkBuildMicromapFlagsEXT flags;
+ VkBuildMicromapModeEXT mode;
+ VkMicromapEXT dstMicromap;
+ uint32_t usageCountsCount;
+ const VkMicromapUsageEXT* pUsageCounts;
+ const VkMicromapUsageEXT* const* ppUsageCounts;
+ VkDeviceOrHostAddressConstKHR data;
+ VkDeviceOrHostAddressKHR scratchData;
+ VkDeviceOrHostAddressConstKHR triangleArray;
+ VkDeviceSize triangleArrayStride;
+};
+
+struct VkMicromapTriangleEXT
+{
+ uint32_t dataOffset;
+ uint16_t subdivisionLevel;
+ uint16_t format;
+};
+
+struct VkPhysicalDeviceOpacityMicromapFeaturesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 micromap;
+ VkBool32 micromapCaptureReplay;
+ VkBool32 micromapHostCommands;
+};
+
+struct VkPhysicalDeviceOpacityMicromapPropertiesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ uint32_t maxOpacity2StateSubdivisionLevel;
+ uint32_t maxOpacity4StateSubdivisionLevel;
+};
+
+struct VkAccelerationStructureTrianglesOpacityMicromapEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkIndexType indexType;
+ VkDeviceOrHostAddressConstKHR indexBuffer;
+ VkDeviceSize indexStride;
+ uint32_t baseTriangle;
+ uint32_t usageCountsCount;
+ const VkMicromapUsageEXT* pUsageCounts;
+ const VkMicromapUsageEXT* const* ppUsageCounts;
+ VkMicromapEXT micromap;
+};
+
struct VkPipelinePropertiesIdentifierEXT
{
VkStructureType sType;
VkBool32 depthClampZeroOne;
};
+struct VkPhysicalDeviceAddressBindingReportFeaturesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 reportAddressBinding;
+};
+
+struct VkDeviceAddressBindingCallbackDataEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkDeviceAddressBindingFlagsEXT flags;
+ VkDeviceAddress baseAddress;
+ VkDeviceSize size;
+ VkDeviceAddressBindingTypeEXT bindingType;
+};
+
+struct VkPhysicalDeviceOpticalFlowFeaturesNV
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 opticalFlow;
+};
+
+struct VkPhysicalDeviceOpticalFlowPropertiesNV
+{
+ VkStructureType sType;
+ void* pNext;
+ VkOpticalFlowGridSizeFlagsNV supportedOutputGridSizes;
+ VkOpticalFlowGridSizeFlagsNV supportedHintGridSizes;
+ VkBool32 hintSupported;
+ VkBool32 costSupported;
+ VkBool32 bidirectionalFlowSupported;
+ VkBool32 globalFlowSupported;
+ uint32_t minWidth;
+ uint32_t minHeight;
+ uint32_t maxWidth;
+ uint32_t maxHeight;
+ uint32_t maxNumRegionsOfInterest;
+};
+
+struct VkOpticalFlowImageFormatInfoNV
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkOpticalFlowUsageFlagsNV usage;
+};
+
+struct VkOpticalFlowImageFormatPropertiesNV
+{
+ VkStructureType sType;
+ const void* pNext;
+ VkFormat format;
+};
+
+struct VkOpticalFlowSessionCreateInfoNV
+{
+ VkStructureType sType;
+ void* pNext;
+ uint32_t width;
+ uint32_t height;
+ VkFormat imageFormat;
+ VkFormat flowVectorFormat;
+ VkFormat costFormat;
+ VkOpticalFlowGridSizeFlagsNV outputGridSize;
+ VkOpticalFlowGridSizeFlagsNV hintGridSize;
+ VkOpticalFlowPerformanceLevelNV performanceLevel;
+ VkOpticalFlowSessionCreateFlagsNV flags;
+};
+
+struct VkOpticalFlowSessionCreatePrivateDataInfoNV
+{
+ VkStructureType sType;
+ void* pNext;
+ uint32_t id;
+ uint32_t size;
+ const void* pPrivateData;
+};
+
+struct VkOpticalFlowExecuteInfoNV
+{
+ VkStructureType sType;
+ void* pNext;
+ VkOpticalFlowExecuteFlagsNV flags;
+ uint32_t regionCount;
+ const VkRect2D* pRegions;
+};
+
+struct VkPhysicalDeviceFaultFeaturesEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 deviceFault;
+ VkBool32 deviceFaultVendorBinary;
+};
+
+struct VkDeviceFaultAddressInfoEXT
+{
+ VkDeviceFaultAddressTypeEXT addressType;
+ VkDeviceAddress reportedAddress;
+ VkDeviceSize addressPrecision;
+};
+
+struct VkDeviceFaultVendorInfoEXT
+{
+ char description[VK_MAX_DESCRIPTION_SIZE];
+ uint64_t vendorFaultCode;
+ uint64_t vendorFaultData;
+};
+
+struct VkDeviceFaultCountsEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ uint32_t addressInfoCount;
+ uint32_t vendorInfoCount;
+ VkDeviceSize vendorBinarySize;
+};
+
+struct VkDeviceFaultInfoEXT
+{
+ VkStructureType sType;
+ void* pNext;
+ char description[VK_MAX_DESCRIPTION_SIZE];
+ VkDeviceFaultAddressInfoEXT* pAddressInfos;
+ VkDeviceFaultVendorInfoEXT* pVendorInfos;
+ void* pVendorBinaryData;
+};
+
+struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT
+{
+ uint32_t headerSize;
+ VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion;
+ uint32_t vendorID;
+ uint32_t deviceID;
+ uint32_t driverVersion;
+ uint8_t pipelineCacheUUID[VK_UUID_SIZE];
+ uint32_t applicationNameOffset;
+ uint32_t applicationVersion;
+ uint32_t engineNameOffset;
+};
+
+struct VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM
+{
+ VkStructureType sType;
+ void* pNext;
+ uint32_t shaderCoreCount;
+ uint32_t shaderWarpsPerCore;
+};
+
+struct VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM
+{
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 shaderCoreBuiltins;
+};
+
struct StdVideoH264SpsVuiFlags
{
uint32_t aspect_ratio_info_present_flag:1;
uint8_t cpb_cnt_minus1;
uint8_t bit_rate_scale;
uint8_t cpb_size_scale;
+ uint8_t reserved1;
uint32_t bit_rate_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE];
uint32_t cpb_size_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE];
uint8_t cbr_flag[STD_VIDEO_H264_CPB_CNT_LIST_SIZE];
uint16_t sar_width;
uint16_t sar_height;
uint8_t video_format;
- uint8_t color_primaries;
+ uint8_t colour_primaries;
uint8_t transfer_characteristics;
uint8_t matrix_coefficients;
uint32_t num_units_in_tick;
uint32_t time_scale;
- const StdVideoH264HrdParameters* pHrdParameters;
uint8_t max_num_reorder_frames;
uint8_t max_dec_frame_buffering;
+ uint8_t chroma_sample_loc_type_top_field;
+ uint8_t chroma_sample_loc_type_bottom_field;
+ uint32_t reserved1;
+ const StdVideoH264HrdParameters* pHrdParameters;
};
struct StdVideoH264SpsFlags
struct StdVideoH264ScalingLists
{
- uint8_t scaling_list_present_mask;
- uint8_t use_default_scaling_matrix_mask;
- uint8_t ScalingList4x4[STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS];
- uint8_t ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS];
+ uint16_t scaling_list_present_mask;
+ uint16_t use_default_scaling_matrix_mask;
+ uint8_t ScalingList4x4[STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS];
+ uint8_t ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS];
};
struct StdVideoH264SequenceParameterSet
{
StdVideoH264SpsFlags flags;
StdVideoH264ProfileIdc profile_idc;
- StdVideoH264Level level_idc;
- uint8_t seq_parameter_set_id;
+ StdVideoH264LevelIdc level_idc;
StdVideoH264ChromaFormatIdc chroma_format_idc;
+ uint8_t seq_parameter_set_id;
uint8_t bit_depth_luma_minus8;
uint8_t bit_depth_chroma_minus8;
uint8_t log2_max_frame_num_minus4;
StdVideoH264PocType pic_order_cnt_type;
- uint8_t log2_max_pic_order_cnt_lsb_minus4;
int32_t offset_for_non_ref_pic;
int32_t offset_for_top_to_bottom_field;
+ uint8_t log2_max_pic_order_cnt_lsb_minus4;
uint8_t num_ref_frames_in_pic_order_cnt_cycle;
uint8_t max_num_ref_frames;
+ uint8_t reserved1;
uint32_t pic_width_in_mbs_minus1;
uint32_t pic_height_in_map_units_minus1;
uint32_t frame_crop_left_offset;
uint32_t frame_crop_right_offset;
uint32_t frame_crop_top_offset;
uint32_t frame_crop_bottom_offset;
+ uint32_t reserved2;
const int32_t* pOffsetForRefFrame;
const StdVideoH264ScalingLists* pScalingLists;
const StdVideoH264SequenceParameterSetVui* pSequenceParameterSetVui;
uint32_t redundant_pic_cnt_present_flag:1;
uint32_t constrained_intra_pred_flag:1;
uint32_t deblocking_filter_control_present_flag:1;
- uint32_t weighted_bipred_idc_flag:1;
uint32_t weighted_pred_flag:1;
- uint32_t pic_order_present_flag:1;
+ uint32_t bottom_field_pic_order_in_frame_present_flag:1;
uint32_t entropy_coding_mode_flag:1;
uint32_t pic_scaling_matrix_present_flag:1;
};
{
VkStructureType sType;
const void* pNext;
- uint32_t spsStdCount;
- const StdVideoH264SequenceParameterSet* pSpsStd;
- uint32_t ppsStdCount;
- const StdVideoH264PictureParameterSet* pPpsStd;
+ uint32_t stdSPSCount;
+ const StdVideoH264SequenceParameterSet* pStdSPSs;
+ uint32_t stdPPSCount;
+ const StdVideoH264PictureParameterSet* pStdPPSs;
};
struct VkVideoEncodeH264SessionParametersAddInfoEXT
{
VkStructureType sType;
const void* pNext;
- uint32_t spsStdCount;
- const StdVideoH264SequenceParameterSet* pSpsStd;
- uint32_t ppsStdCount;
- const StdVideoH264PictureParameterSet* pPpsStd;
+ uint32_t stdSPSCount;
+ const StdVideoH264SequenceParameterSet* pStdSPSs;
+ uint32_t stdPPSCount;
+ const StdVideoH264PictureParameterSet* pStdPPSs;
};
struct StdVideoDecodeH264PictureInfoFlags
{
VkStructureType sType;
const void* pNext;
- uint32_t maxSpsStdCount;
- uint32_t maxPpsStdCount;
+ uint32_t maxStdSPSCount;
+ uint32_t maxStdPPSCount;
const VkVideoDecodeH264SessionParametersAddInfoEXT* pParametersAddInfo;
};
{
VkStructureType sType;
const void* pNext;
- uint32_t maxSpsStdCount;
- uint32_t maxPpsStdCount;
+ uint32_t maxStdSPSCount;
+ uint32_t maxStdPPSCount;
const VkVideoEncodeH264SessionParametersAddInfoEXT* pParametersAddInfo;
};
StdVideoDecodeH264PictureInfoFlags flags;
uint8_t seq_parameter_set_id;
uint8_t pic_parameter_set_id;
- uint16_t reserved;
+ uint8_t reserved1;
+ uint8_t reserved2;
uint16_t frame_num;
uint16_t idr_pic_id;
int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
VkStructureType sType;
const void* pNext;
const StdVideoDecodeH264PictureInfo* pStdPictureInfo;
- uint32_t slicesCount;
- const uint32_t* pSlicesDataOffsets;
+ uint32_t sliceCount;
+ const uint32_t* pSliceOffsets;
};
struct StdVideoDecodeH264ReferenceInfoFlags
StdVideoDecodeH264ReferenceInfoFlags flags;
uint16_t FrameNum;
uint16_t reserved;
- int32_t PicOrderCnt[2];
+ int32_t PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
};
struct VkVideoDecodeH264DpbSlotInfoEXT
const StdVideoDecodeH264ReferenceInfo* pStdReferenceInfo;
};
-struct StdVideoDecodeH264MvcElementFlags
-{
- uint32_t non_idr:1;
- uint32_t anchor_pic:1;
- uint32_t inter_view:1;
-};
-
-struct StdVideoDecodeH264MvcElement
-{
- StdVideoDecodeH264MvcElementFlags flags;
- uint16_t viewOrderIndex;
- uint16_t viewId;
- uint16_t temporalId;
- uint16_t priorityId;
- uint16_t numOfAnchorRefsInL0;
- uint16_t viewIdOfAnchorRefsInL0[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
- uint16_t numOfAnchorRefsInL1;
- uint16_t viewIdOfAnchorRefsInL1[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
- uint16_t numOfNonAnchorRefsInL0;
- uint16_t viewIdOfNonAnchorRefsInL0[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
- uint16_t numOfNonAnchorRefsInL1;
- uint16_t viewIdOfNonAnchorRefsInL1[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
-};
-
-struct StdVideoDecodeH264Mvc
-{
- uint32_t viewId0;
- uint32_t mvcElementCount;
- const StdVideoDecodeH264MvcElement* pMvcElements;
-};
-
-struct VkVideoDecodeH264MvcInfoEXT
-{
- VkStructureType sType;
- const void* pNext;
- const StdVideoDecodeH264Mvc* pStdMvc;
-};
-
struct StdVideoEncodeH264WeightTableFlags
{
uint32_t luma_weight_l0_flag;
const StdVideoEncodeH264RefMemMgmtCtrlOperations* pMemMgmtCtrlOperations;
};
-struct StdVideoH265DecPicBufMgr
+struct StdVideoH265ProfileTierLevelFlags
{
- uint32_t max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- uint8_t max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- uint8_t max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
+ uint32_t general_tier_flag:1;
+ uint32_t general_progressive_source_flag:1;
+ uint32_t general_interlaced_source_flag:1;
+ uint32_t general_non_packed_constraint_flag:1;
+ uint32_t general_frame_only_constraint_flag:1;
};
struct VkVideoEncodeH264NaluSliceInfoEXT
const StdVideoEncodeH264SliceHeader* pSliceHeaderStd;
};
-struct StdVideoH265SubLayerHrdParameters
+struct StdVideoH265ProfileTierLevel
{
- uint32_t bit_rate_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
- uint32_t cpb_size_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
- uint32_t cpb_size_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
- uint32_t bit_rate_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
- uint32_t cbr_flag;
+ StdVideoH265ProfileTierLevelFlags flags;
+ StdVideoH265ProfileIdc general_profile_idc;
+ StdVideoH265LevelIdc general_level_idc;
};
struct VkVideoEncodeH264VclFrameInfoEXT
const StdVideoEncodeH264PictureInfo* pCurrentPictureInfo;
};
+struct StdVideoH265DecPicBufMgr
+{
+ uint32_t max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ uint8_t max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ uint8_t max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+};
+
+struct StdVideoH265SubLayerHrdParameters
+{
+ uint32_t bit_rate_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
+ uint32_t cpb_size_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
+ uint32_t cpb_size_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
+ uint32_t bit_rate_du_value_minus1[STD_VIDEO_H265_CPB_CNT_LIST_SIZE];
+ uint32_t cbr_flag;
+};
+
struct StdVideoH265HrdFlags
{
uint32_t nal_hrd_parameters_present_flag:1;
uint8_t initial_cpb_removal_delay_length_minus1;
uint8_t au_cpb_removal_delay_length_minus1;
uint8_t dpb_output_delay_length_minus1;
- uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
+ uint8_t cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ uint16_t elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ uint16_t reserved[3];
+ const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal;
+ const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl;
};
struct StdVideoH265VpsFlags
StdVideoH265VpsFlags flags;
uint8_t vps_video_parameter_set_id;
uint8_t vps_max_sub_layers_minus1;
+ uint8_t reserved1;
+ uint8_t reserved2;
uint32_t vps_num_units_in_tick;
uint32_t vps_time_scale;
uint32_t vps_num_ticks_poc_diff_one_minus1;
+ uint32_t reserved3;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265HrdParameters* pHrdParameters;
+ const StdVideoH265ProfileTierLevel* pProfileTierLevel;
};
struct StdVideoH265ScalingLists
uint8_t ScalingListDCCoef32x32[STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS];
};
+struct StdVideoH265ShortTermRefPicSetFlags
+{
+ uint32_t inter_ref_pic_set_prediction_flag:1;
+ uint32_t delta_rps_sign:1;
+};
+
+struct StdVideoH265ShortTermRefPicSet
+{
+ StdVideoH265ShortTermRefPicSetFlags flags;
+ uint32_t delta_idx_minus1;
+ uint16_t use_delta_flag;
+ uint16_t abs_delta_rps_minus1;
+ uint16_t used_by_curr_pic_flag;
+ uint16_t used_by_curr_pic_s0_flag;
+ uint16_t used_by_curr_pic_s1_flag;
+ uint16_t reserved1;
+ uint8_t reserved2;
+ uint8_t reserved3;
+ uint8_t num_negative_pics;
+ uint8_t num_positive_pics;
+ uint16_t delta_poc_s0_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
+ uint16_t delta_poc_s1_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
+};
+
+struct StdVideoH265LongTermRefPicsSps
+{
+ uint32_t used_by_curr_pic_lt_sps_flag;
+ uint32_t lt_ref_pic_poc_lsb_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
+};
+
struct StdVideoH265SpsVuiFlags
{
uint32_t aspect_ratio_info_present_flag:1;
struct StdVideoH265SequenceParameterSetVui
{
StdVideoH265SpsVuiFlags flags;
- uint8_t aspect_ratio_idc;
+ StdVideoH265AspectRatioIdc aspect_ratio_idc;
uint16_t sar_width;
uint16_t sar_height;
uint8_t video_format;
uint8_t matrix_coeffs;
uint8_t chroma_sample_loc_type_top_field;
uint8_t chroma_sample_loc_type_bottom_field;
+ uint8_t reserved1;
+ uint8_t reserved2;
uint16_t def_disp_win_left_offset;
uint16_t def_disp_win_right_offset;
uint16_t def_disp_win_top_offset;
uint32_t vui_num_units_in_tick;
uint32_t vui_time_scale;
uint32_t vui_num_ticks_poc_diff_one_minus1;
- const StdVideoH265HrdParameters* pHrdParameters;
uint16_t min_spatial_segmentation_idc;
+ uint16_t reserved3;
uint8_t max_bytes_per_pic_denom;
uint8_t max_bits_per_min_cu_denom;
uint8_t log2_max_mv_length_horizontal;
uint8_t log2_max_mv_length_vertical;
+ const StdVideoH265HrdParameters* pHrdParameters;
};
struct StdVideoH265PredictorPaletteEntries
{
uint32_t sps_temporal_id_nesting_flag:1;
uint32_t separate_colour_plane_flag:1;
+ uint32_t conformance_window_flag:1;
+ uint32_t sps_sub_layer_ordering_info_present_flag:1;
uint32_t scaling_list_enabled_flag:1;
uint32_t sps_scaling_list_data_present_flag:1;
uint32_t amp_enabled_flag:1;
uint32_t sps_scc_extension_flag:1;
uint32_t sps_curr_pic_ref_enabled_flag:1;
uint32_t palette_mode_enabled_flag:1;
- uint32_t sps_palette_predictor_initializer_present_flag:1;
+ uint32_t sps_palette_predictor_initializers_present_flag:1;
uint32_t intra_boundary_filtering_disabled_flag:1;
};
struct StdVideoH265SequenceParameterSet
{
StdVideoH265SpsFlags flags;
- StdVideoH265ProfileIdc profile_idc;
- StdVideoH265Level level_idc;
+ StdVideoH265ChromaFormatIdc chroma_format_idc;
uint32_t pic_width_in_luma_samples;
uint32_t pic_height_in_luma_samples;
uint8_t sps_video_parameter_set_id;
uint8_t sps_max_sub_layers_minus1;
uint8_t sps_seq_parameter_set_id;
- uint8_t chroma_format_idc;
uint8_t bit_depth_luma_minus8;
uint8_t bit_depth_chroma_minus8;
uint8_t log2_max_pic_order_cnt_lsb_minus4;
uint8_t pcm_sample_bit_depth_chroma_minus1;
uint8_t log2_min_pcm_luma_coding_block_size_minus3;
uint8_t log2_diff_max_min_pcm_luma_coding_block_size;
+ uint8_t reserved1;
+ uint8_t reserved2;
+ uint8_t palette_max_size;
+ uint8_t delta_palette_max_predictor_size;
+ uint8_t motion_vector_resolution_control_idc;
+ uint8_t sps_num_palette_predictor_initializers_minus1;
uint32_t conf_win_left_offset;
uint32_t conf_win_right_offset;
uint32_t conf_win_top_offset;
uint32_t conf_win_bottom_offset;
+ const StdVideoH265ProfileTierLevel* pProfileTierLevel;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265ScalingLists* pScalingLists;
+ const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
+ const StdVideoH265LongTermRefPicsSps* pLongTermRefPicsSps;
const StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui;
- uint8_t palette_max_size;
- uint8_t delta_palette_max_predictor_size;
- uint8_t motion_vector_resolution_control_idc;
- uint8_t sps_num_palette_predictor_initializer_minus1;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
};
uint32_t pps_curr_pic_ref_enabled_flag:1;
uint32_t residual_adaptive_colour_transform_enabled_flag:1;
uint32_t pps_slice_act_qp_offsets_present_flag:1;
- uint32_t pps_palette_predictor_initializer_present_flag:1;
+ uint32_t pps_palette_predictor_initializers_present_flag:1;
uint32_t monochrome_palette_flag:1;
uint32_t pps_range_extension_flag:1;
};
StdVideoH265PpsFlags flags;
uint8_t pps_pic_parameter_set_id;
uint8_t pps_seq_parameter_set_id;
+ uint8_t sps_video_parameter_set_id;
uint8_t num_extra_slice_header_bits;
uint8_t num_ref_idx_l0_default_active_minus1;
uint8_t num_ref_idx_l1_default_active_minus1;
uint8_t diff_cu_qp_delta_depth;
int8_t pps_cb_qp_offset;
int8_t pps_cr_qp_offset;
- uint8_t num_tile_columns_minus1;
- uint8_t num_tile_rows_minus1;
- uint16_t column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE];
- uint16_t row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE];
int8_t pps_beta_offset_div2;
int8_t pps_tc_offset_div2;
uint8_t log2_parallel_merge_level_minus2;
- const StdVideoH265ScalingLists* pScalingLists;
uint8_t log2_max_transform_skip_block_size_minus2;
uint8_t diff_cu_chroma_qp_offset_depth;
uint8_t chroma_qp_offset_list_len_minus1;
uint8_t log2_sao_offset_scale_chroma;
int8_t pps_act_y_qp_offset_plus5;
int8_t pps_act_cb_qp_offset_plus5;
- int8_t pps_act_cr_qp_offset_plus5;
- uint8_t pps_num_palette_predictor_initializer;
+ int8_t pps_act_cr_qp_offset_plus3;
+ uint8_t pps_num_palette_predictor_initializers;
uint8_t luma_bit_depth_entry_minus8;
uint8_t chroma_bit_depth_entry_minus8;
+ uint8_t num_tile_columns_minus1;
+ uint8_t num_tile_rows_minus1;
+ uint8_t reserved1;
+ uint8_t reserved2;
+ uint16_t column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE];
+ uint16_t row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE];
+ uint32_t reserved3;
+ const StdVideoH265ScalingLists* pScalingLists;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
};
{
VkStructureType sType;
const void* pNext;
- uint32_t vpsStdCount;
- const StdVideoH265VideoParameterSet* pVpsStd;
- uint32_t spsStdCount;
- const StdVideoH265SequenceParameterSet* pSpsStd;
- uint32_t ppsStdCount;
- const StdVideoH265PictureParameterSet* pPpsStd;
+ uint32_t stdVPSCount;
+ const StdVideoH265VideoParameterSet* pStdVPSs;
+ uint32_t stdSPSCount;
+ const StdVideoH265SequenceParameterSet* pStdSPSs;
+ uint32_t stdPPSCount;
+ const StdVideoH265PictureParameterSet* pStdPPSs;
};
struct VkVideoEncodeH265SessionParametersAddInfoEXT
{
VkStructureType sType;
const void* pNext;
- uint32_t vpsStdCount;
- const StdVideoH265VideoParameterSet* pVpsStd;
- uint32_t spsStdCount;
- const StdVideoH265SequenceParameterSet* pSpsStd;
- uint32_t ppsStdCount;
- const StdVideoH265PictureParameterSet* pPpsStd;
+ uint32_t stdVPSCount;
+ const StdVideoH265VideoParameterSet* pStdVPSs;
+ uint32_t stdSPSCount;
+ const StdVideoH265SequenceParameterSet* pStdSPSs;
+ uint32_t stdPPSCount;
+ const StdVideoH265PictureParameterSet* pStdPPSs;
};
struct StdVideoDecodeH265PictureInfoFlags
{
VkStructureType sType;
const void* pNext;
- uint32_t maxVpsStdCount;
- uint32_t maxSpsStdCount;
- uint32_t maxPpsStdCount;
+ uint32_t maxStdVPSCount;
+ uint32_t maxStdSPSCount;
+ uint32_t maxStdPPSCount;
const VkVideoDecodeH265SessionParametersAddInfoEXT* pParametersAddInfo;
};
{
VkStructureType sType;
const void* pNext;
- uint32_t maxVpsStdCount;
- uint32_t maxSpsStdCount;
- uint32_t maxPpsStdCount;
+ uint32_t maxStdVPSCount;
+ uint32_t maxStdSPSCount;
+ uint32_t maxStdPPSCount;
const VkVideoEncodeH265SessionParametersAddInfoEXT* pParametersAddInfo;
};
uint8_t sps_video_parameter_set_id;
uint8_t pps_seq_parameter_set_id;
uint8_t pps_pic_parameter_set_id;
- uint8_t num_short_term_ref_pic_sets;
+ uint8_t NumDeltaPocsOfRefRpsIdx;
int32_t PicOrderCntVal;
uint16_t NumBitsForSTRefPicSetInSlice;
- uint8_t NumDeltaPocsOfRefRpsIdx;
+ uint16_t reserved;
uint8_t RefPicSetStCurrBefore[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
uint8_t RefPicSetStCurrAfter[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
uint8_t RefPicSetLtCurr[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
VkStructureType sType;
const void* pNext;
StdVideoDecodeH265PictureInfo* pStdPictureInfo;
- uint32_t slicesCount;
- const uint32_t* pSlicesDataOffsets;
+ uint32_t sliceCount;
+ const uint32_t* pSliceOffsets;
};
struct StdVideoDecodeH265ReferenceInfoFlags
{
uint32_t used_for_long_term_reference:1;
uint32_t unused_for_reference:1;
- uint32_t is_non_existing:1;
};
struct StdVideoDecodeH265ReferenceInfo
int8_t delta_chroma_offset_l1[STD_VIDEO_H265_MAX_NUM_LIST_REF][STD_VIDEO_H265_MAX_CHROMA_PLANES];
};
+struct StdVideoEncodeH265SliceSegmentLongTermRefPics
+{
+ uint8_t num_long_term_sps;
+ uint8_t num_long_term_pics;
+ uint8_t lt_idx_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
+ uint8_t poc_lsb_lt[STD_VIDEO_H265_MAX_LONG_TERM_PICS];
+ uint16_t used_by_curr_pic_lt_flag;
+ uint8_t delta_poc_msb_present_flag[STD_VIDEO_H265_MAX_DELTA_POC];
+ uint8_t delta_poc_msb_cycle_lt[STD_VIDEO_H265_MAX_DELTA_POC];
+};
+
struct StdVideoEncodeH265SliceSegmentHeaderFlags
{
uint32_t first_slice_segment_in_pic_flag:1;
uint32_t num_ref_idx_active_override_flag:1;
uint32_t mvd_l1_zero_flag:1;
uint32_t cabac_init_flag:1;
- uint32_t slice_deblocking_filter_disable_flag:1;
+ uint32_t cu_chroma_qp_offset_enabled_flag:1;
+ uint32_t deblocking_filter_override_flag:1;
+ uint32_t slice_deblocking_filter_disabled_flag:1;
uint32_t collocated_from_l0_flag:1;
uint32_t slice_loop_filter_across_slices_enabled_flag:1;
};
struct StdVideoEncodeH265SliceSegmentHeader
{
- StdVideoEncodeH265SliceSegmentHeaderFlags flags;
- StdVideoH265SliceType slice_type;
- uint8_t num_short_term_ref_pic_sets;
- uint32_t slice_segment_address;
- uint8_t short_term_ref_pic_set_idx;
- uint8_t num_long_term_sps;
- uint8_t num_long_term_pics;
- uint8_t collocated_ref_idx;
- uint8_t num_ref_idx_l0_active_minus1;
- uint8_t num_ref_idx_l1_active_minus1;
- uint8_t MaxNumMergeCand;
- int8_t slice_cb_qp_offset;
- int8_t slice_cr_qp_offset;
- int8_t slice_beta_offset_div2;
- int8_t slice_tc_offset_div2;
- int8_t slice_act_y_qp_offset;
- int8_t slice_act_cb_qp_offset;
- int8_t slice_act_cr_qp_offset;
- const StdVideoEncodeH265WeightTable* pWeightTable;
+ StdVideoEncodeH265SliceSegmentHeaderFlags flags;
+ StdVideoH265SliceType slice_type;
+ uint32_t slice_segment_address;
+ uint8_t short_term_ref_pic_set_idx;
+ uint8_t collocated_ref_idx;
+ uint8_t num_ref_idx_l0_active_minus1;
+ uint8_t num_ref_idx_l1_active_minus1;
+ uint8_t MaxNumMergeCand;
+ int8_t slice_cb_qp_offset;
+ int8_t slice_cr_qp_offset;
+ int8_t slice_beta_offset_div2;
+ int8_t slice_tc_offset_div2;
+ int8_t slice_act_y_qp_offset;
+ int8_t slice_act_cb_qp_offset;
+ int8_t slice_act_cr_qp_offset;
+ const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
+ const StdVideoEncodeH265SliceSegmentLongTermRefPics* pLongTermRefPics;
+ const StdVideoEncodeH265WeightTable* pWeightTable;
};
struct StdVideoEncodeH265ReferenceModificationFlags
typedef VkPhysicalDeviceShaderTerminateInvocationFeatures VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR;
+typedef VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+
+typedef VkMutableDescriptorTypeListEXT VkMutableDescriptorTypeListVALVE;
+
+typedef VkMutableDescriptorTypeCreateInfoEXT VkMutableDescriptorTypeCreateInfoVALVE;
+
typedef VkMemoryBarrier2 VkMemoryBarrier2KHR;
typedef VkImageMemoryBarrier2 VkImageMemoryBarrier2KHR;
return res;
}
-inline VkMutableDescriptorTypeListVALVE makeMutableDescriptorTypeListVALVE (uint32_t descriptorTypeCount, const VkDescriptorType* pDescriptorTypes)
+inline VkColorBlendEquationEXT makeColorBlendEquationEXT (VkBlendFactor srcColorBlendFactor, VkBlendFactor dstColorBlendFactor, VkBlendOp colorBlendOp, VkBlendFactor srcAlphaBlendFactor, VkBlendFactor dstAlphaBlendFactor, VkBlendOp alphaBlendOp)
{
- VkMutableDescriptorTypeListVALVE res;
+ VkColorBlendEquationEXT res;
+ res.srcColorBlendFactor = srcColorBlendFactor;
+ res.dstColorBlendFactor = dstColorBlendFactor;
+ res.colorBlendOp = colorBlendOp;
+ res.srcAlphaBlendFactor = srcAlphaBlendFactor;
+ res.dstAlphaBlendFactor = dstAlphaBlendFactor;
+ res.alphaBlendOp = alphaBlendOp;
+ return res;
+}
+
+inline VkColorBlendAdvancedEXT makeColorBlendAdvancedEXT (VkBlendOp advancedBlendOp, VkBool32 srcPremultiplied, VkBool32 dstPremultiplied, VkBlendOverlapEXT blendOverlap, VkBool32 clampResults)
+{
+ VkColorBlendAdvancedEXT res;
+ res.advancedBlendOp = advancedBlendOp;
+ res.srcPremultiplied = srcPremultiplied;
+ res.dstPremultiplied = dstPremultiplied;
+ res.blendOverlap = blendOverlap;
+ res.clampResults = clampResults;
+ return res;
+}
+
+inline VkMutableDescriptorTypeListEXT makeMutableDescriptorTypeListEXT (uint32_t descriptorTypeCount, const VkDescriptorType* pDescriptorTypes)
+{
+ VkMutableDescriptorTypeListEXT res;
res.descriptorTypeCount = descriptorTypeCount;
res.pDescriptorTypes = pDescriptorTypes;
return res;
return res;
}
-inline StdVideoDecodeH264Mvc makeStdVideoDecodeH264Mvc (uint32_t viewId0, uint32_t mvcElementCount, const StdVideoDecodeH264MvcElement* pMvcElements)
+inline VkMicromapUsageEXT makeMicromapUsageEXT (uint32_t count, uint32_t subdivisionLevel, uint32_t format)
+{
+ VkMicromapUsageEXT res;
+ res.count = count;
+ res.subdivisionLevel = subdivisionLevel;
+ res.format = format;
+ return res;
+}
+
+inline VkMicromapTriangleEXT makeMicromapTriangleEXT (uint32_t dataOffset, uint16_t subdivisionLevel, uint16_t format)
+{
+ VkMicromapTriangleEXT res;
+ res.dataOffset = dataOffset;
+ res.subdivisionLevel = subdivisionLevel;
+ res.format = format;
+ return res;
+}
+
+inline VkDeviceFaultAddressInfoEXT makeDeviceFaultAddressInfoEXT (VkDeviceFaultAddressTypeEXT addressType, VkDeviceAddress reportedAddress, VkDeviceSize addressPrecision)
{
- StdVideoDecodeH264Mvc res;
- res.viewId0 = viewId0;
- res.mvcElementCount = mvcElementCount;
- res.pMvcElements = pMvcElements;
+ VkDeviceFaultAddressInfoEXT res;
+ res.addressType = addressType;
+ res.reportedAddress = reportedAddress;
+ res.addressPrecision = addressPrecision;
return res;
}
virtual void cmdSetLogicOpEXT (VkCommandBuffer commandBuffer, VkLogicOp logicOp) const = 0;
virtual void cmdSetPrimitiveRestartEnable (VkCommandBuffer commandBuffer, VkBool32 primitiveRestartEnable) const = 0;
virtual VkResult createPrivateDataSlot (VkDevice device, const VkPrivateDataSlotCreateInfo* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkPrivateDataSlot* pPrivateDataSlot) const = 0;
+virtual void cmdSetTessellationDomainOriginEXT (VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin) const = 0;
+virtual void cmdSetDepthClampEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClampEnable) const = 0;
+virtual void cmdSetPolygonModeEXT (VkCommandBuffer commandBuffer, VkPolygonMode polygonMode) const = 0;
+virtual void cmdSetRasterizationSamplesEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples) const = 0;
+virtual void cmdSetSampleMaskEXT (VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const VkSampleMask* pSampleMask) const = 0;
+virtual void cmdSetAlphaToCoverageEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable) const = 0;
+virtual void cmdSetAlphaToOneEnableEXT (VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable) const = 0;
+virtual void cmdSetLogicOpEnableEXT (VkCommandBuffer commandBuffer, VkBool32 logicOpEnable) const = 0;
+virtual void cmdSetColorBlendEnableEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkBool32* pColorBlendEnables) const = 0;
+virtual void cmdSetColorBlendEquationEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendEquationEXT* pColorBlendEquations) const = 0;
+virtual void cmdSetColorWriteMaskEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorComponentFlags* pColorWriteMasks) const = 0;
+virtual void cmdSetRasterizationStreamEXT (VkCommandBuffer commandBuffer, uint32_t rasterizationStream) const = 0;
+virtual void cmdSetConservativeRasterizationModeEXT (VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode) const = 0;
+virtual void cmdSetExtraPrimitiveOverestimationSizeEXT (VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize) const = 0;
+virtual void cmdSetDepthClipEnableEXT (VkCommandBuffer commandBuffer, VkBool32 depthClipEnable) const = 0;
+virtual void cmdSetSampleLocationsEnableEXT (VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable) const = 0;
+virtual void cmdSetColorBlendAdvancedEXT (VkCommandBuffer commandBuffer, uint32_t firstAttachment, uint32_t attachmentCount, const VkColorBlendAdvancedEXT* pColorBlendAdvanced) const = 0;
+virtual void cmdSetProvokingVertexModeEXT (VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode) const = 0;
+virtual void cmdSetLineRasterizationModeEXT (VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode) const = 0;
+virtual void cmdSetLineStippleEnableEXT (VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable) const = 0;
+virtual void cmdSetDepthClipNegativeOneToOneEXT (VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne) const = 0;
+virtual void cmdSetViewportWScalingEnableNV (VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable) const = 0;
+virtual void cmdSetViewportSwizzleNV (VkCommandBuffer commandBuffer, uint32_t firstViewport, uint32_t viewportCount, const VkViewportSwizzleNV* pViewportSwizzles) const = 0;
+virtual void cmdSetCoverageToColorEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable) const = 0;
+virtual void cmdSetCoverageToColorLocationNV (VkCommandBuffer commandBuffer, uint32_t coverageToColorLocation) const = 0;
+virtual void cmdSetCoverageModulationModeNV (VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode) const = 0;
+virtual void cmdSetCoverageModulationTableEnableNV (VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable) const = 0;
+virtual void cmdSetCoverageModulationTableNV (VkCommandBuffer commandBuffer, uint32_t coverageModulationTableCount, const float* pCoverageModulationTable) const = 0;
+virtual void cmdSetShadingRateImageEnableNV (VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable) const = 0;
+virtual void cmdSetCoverageReductionModeNV (VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode) const = 0;
+virtual void cmdSetRepresentativeFragmentTestEnableNV (VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable) const = 0;
virtual void destroyPrivateDataSlot (VkDevice device, VkPrivateDataSlot privateDataSlot, const VkAllocationCallbacks* pAllocator) const = 0;
virtual VkResult setPrivateData (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t data) const = 0;
virtual void getPrivateData (VkDevice device, VkObjectType objectType, uint64_t objectHandle, VkPrivateDataSlot privateDataSlot, uint64_t* pData) const = 0;
virtual void destroyVideoSessionParametersKHR (VkDevice device, VkVideoSessionParametersKHR videoSessionParameters, const VkAllocationCallbacks* pAllocator) const = 0;
virtual VkResult getVideoSessionMemoryRequirementsKHR (VkDevice device, VkVideoSessionKHR videoSession, uint32_t* pMemoryRequirementsCount, VkVideoSessionMemoryRequirementsKHR* pMemoryRequirements) const = 0;
virtual VkResult bindVideoSessionMemoryKHR (VkDevice device, VkVideoSessionKHR videoSession, uint32_t bindSessionMemoryInfoCount, const VkBindVideoSessionMemoryInfoKHR* pBindSessionMemoryInfos) const = 0;
-virtual void cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pFrameInfo) const = 0;
+virtual void cmdDecodeVideoKHR (VkCommandBuffer commandBuffer, const VkVideoDecodeInfoKHR* pDecodeInfo) const = 0;
virtual void cmdBeginVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoBeginCodingInfoKHR* pBeginInfo) const = 0;
virtual void cmdControlVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoCodingControlInfoKHR* pCodingControlInfo) const = 0;
virtual void cmdEndVideoCodingKHR (VkCommandBuffer commandBuffer, const VkVideoEndCodingInfoKHR* pEndCodingInfo) const = 0;
virtual void cmdEndRendering (VkCommandBuffer commandBuffer) const = 0;
virtual void getDescriptorSetLayoutHostMappingInfoVALVE (VkDevice device, const VkDescriptorSetBindingReferenceVALVE* pBindingReference, VkDescriptorSetLayoutHostMappingInfoVALVE* pHostMapping) const = 0;
virtual void getDescriptorSetHostMappingVALVE (VkDevice device, VkDescriptorSet descriptorSet, void** ppData) const = 0;
+virtual VkResult createMicromapEXT (VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap) const = 0;
+virtual void cmdBuildMicromapsEXT (VkCommandBuffer commandBuffer, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos) const = 0;
+virtual VkResult buildMicromapsEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, uint32_t infoCount, const VkMicromapBuildInfoEXT* pInfos) const = 0;
+virtual void destroyMicromapEXT (VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual void cmdCopyMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo) const = 0;
+virtual VkResult copyMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo) const = 0;
+virtual void cmdCopyMicromapToMemoryEXT (VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo) const = 0;
+virtual VkResult copyMicromapToMemoryEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo) const = 0;
+virtual void cmdCopyMemoryToMicromapEXT (VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo) const = 0;
+virtual VkResult copyMemoryToMicromapEXT (VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo) const = 0;
+virtual void cmdWriteMicromapsPropertiesEXT (VkCommandBuffer commandBuffer, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, uint32_t firstQuery) const = 0;
+virtual VkResult writeMicromapsPropertiesEXT (VkDevice device, uint32_t micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, size_t dataSize, void* pData, size_t stride) const = 0;
+virtual void getDeviceMicromapCompatibilityEXT (VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility) const = 0;
+virtual void getMicromapBuildSizesEXT (VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo) const = 0;
virtual void getShaderModuleIdentifierEXT (VkDevice device, VkShaderModule shaderModule, VkShaderModuleIdentifierEXT* pIdentifier) const = 0;
virtual void getShaderModuleCreateInfoIdentifierEXT (VkDevice device, const VkShaderModuleCreateInfo* pCreateInfo, VkShaderModuleIdentifierEXT* pIdentifier) const = 0;
virtual void getImageSubresourceLayout2EXT (VkDevice device, VkImage image, const VkImageSubresource2EXT* pSubresource, VkSubresourceLayout2EXT* pLayout) const = 0;
virtual void exportMetalObjectsEXT (VkDevice device, VkExportMetalObjectsInfoEXT* pMetalObjectsInfo) const = 0;
virtual VkResult getFramebufferTilePropertiesQCOM (VkDevice device, VkFramebuffer framebuffer, uint32_t* pPropertiesCount, VkTilePropertiesQCOM* pProperties) const = 0;
virtual VkResult getDynamicRenderingTilePropertiesQCOM (VkDevice device, const VkRenderingInfo* pRenderingInfo, VkTilePropertiesQCOM* pProperties) const = 0;
+virtual VkResult createOpticalFlowSessionNV (VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkOpticalFlowSessionNV* pSession) const = 0;
+virtual void destroyOpticalFlowSessionNV (VkDevice device, VkOpticalFlowSessionNV session, const VkAllocationCallbacks* pAllocator) const = 0;
+virtual VkResult bindOpticalFlowSessionImageNV (VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout) const = 0;
+virtual void cmdOpticalFlowExecuteNV (VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const VkOpticalFlowExecuteInfoNV* pExecuteInfo) const = 0;
+virtual VkResult getDeviceFaultInfoEXT (VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo) const = 0;
virtual VkResult getPhysicalDeviceVideoFormatPropertiesKHR (VkPhysicalDevice physicalDevice, const VkPhysicalDeviceVideoFormatInfoKHR* pVideoFormatInfo, uint32_t* pVideoFormatPropertyCount, VkVideoFormatPropertiesKHR* pVideoFormatProperties) const = 0;
virtual VkResult acquireDrmDisplayEXT (VkPhysicalDevice physicalDevice, int32_t drmFd, VkDisplayKHR display) const = 0;
virtual VkResult getDrmDisplayEXT (VkPhysicalDevice physicalDevice, int32_t drmFd, uint32_t connectorId, VkDisplayKHR* display) const = 0;
+virtual VkResult getPhysicalDeviceOpticalFlowImageFormatsNV (VkPhysicalDevice physicalDevice, const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo, uint32_t* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties) const = 0;
#define STD_VIDEO_H264_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS 16
-#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 2
+#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS 6
#define STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS 64
#define STD_VIDEO_H264_MAX_NUM_LIST_REF 32
#define STD_VIDEO_H264_MAX_CHROMA_PLANES 2
STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
} StdVideoH264ProfileIdc;
-typedef enum StdVideoH264Level {
- STD_VIDEO_H264_LEVEL_1_0 = 0,
- STD_VIDEO_H264_LEVEL_1_1 = 1,
- STD_VIDEO_H264_LEVEL_1_2 = 2,
- STD_VIDEO_H264_LEVEL_1_3 = 3,
- STD_VIDEO_H264_LEVEL_2_0 = 4,
- STD_VIDEO_H264_LEVEL_2_1 = 5,
- STD_VIDEO_H264_LEVEL_2_2 = 6,
- STD_VIDEO_H264_LEVEL_3_0 = 7,
- STD_VIDEO_H264_LEVEL_3_1 = 8,
- STD_VIDEO_H264_LEVEL_3_2 = 9,
- STD_VIDEO_H264_LEVEL_4_0 = 10,
- STD_VIDEO_H264_LEVEL_4_1 = 11,
- STD_VIDEO_H264_LEVEL_4_2 = 12,
- STD_VIDEO_H264_LEVEL_5_0 = 13,
- STD_VIDEO_H264_LEVEL_5_1 = 14,
- STD_VIDEO_H264_LEVEL_5_2 = 15,
- STD_VIDEO_H264_LEVEL_6_0 = 16,
- STD_VIDEO_H264_LEVEL_6_1 = 17,
- STD_VIDEO_H264_LEVEL_6_2 = 18,
- STD_VIDEO_H264_LEVEL_INVALID = 0x7FFFFFFF,
- STD_VIDEO_H264_LEVEL_MAX_ENUM = 0x7FFFFFFF
-} StdVideoH264Level;
+typedef enum StdVideoH264LevelIdc {
+ STD_VIDEO_H264_LEVEL_IDC_1_0 = 0,
+ STD_VIDEO_H264_LEVEL_IDC_1_1 = 1,
+ STD_VIDEO_H264_LEVEL_IDC_1_2 = 2,
+ STD_VIDEO_H264_LEVEL_IDC_1_3 = 3,
+ STD_VIDEO_H264_LEVEL_IDC_2_0 = 4,
+ STD_VIDEO_H264_LEVEL_IDC_2_1 = 5,
+ STD_VIDEO_H264_LEVEL_IDC_2_2 = 6,
+ STD_VIDEO_H264_LEVEL_IDC_3_0 = 7,
+ STD_VIDEO_H264_LEVEL_IDC_3_1 = 8,
+ STD_VIDEO_H264_LEVEL_IDC_3_2 = 9,
+ STD_VIDEO_H264_LEVEL_IDC_4_0 = 10,
+ STD_VIDEO_H264_LEVEL_IDC_4_1 = 11,
+ STD_VIDEO_H264_LEVEL_IDC_4_2 = 12,
+ STD_VIDEO_H264_LEVEL_IDC_5_0 = 13,
+ STD_VIDEO_H264_LEVEL_IDC_5_1 = 14,
+ STD_VIDEO_H264_LEVEL_IDC_5_2 = 15,
+ STD_VIDEO_H264_LEVEL_IDC_6_0 = 16,
+ STD_VIDEO_H264_LEVEL_IDC_6_1 = 17,
+ STD_VIDEO_H264_LEVEL_IDC_6_2 = 18,
+ STD_VIDEO_H264_LEVEL_IDC_INVALID = 0x7FFFFFFF,
+ STD_VIDEO_H264_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
+} StdVideoH264LevelIdc;
typedef enum StdVideoH264PocType {
STD_VIDEO_H264_POC_TYPE_0 = 0,
deUint8 cpb_cnt_minus1;
deUint8 bit_rate_scale;
deUint8 cpb_size_scale;
+ deUint8 reserved1;
deUint32 bit_rate_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE];
deUint32 cpb_size_value_minus1[STD_VIDEO_H264_CPB_CNT_LIST_SIZE];
deUint8 cbr_flag[STD_VIDEO_H264_CPB_CNT_LIST_SIZE];
deUint16 sar_width;
deUint16 sar_height;
deUint8 video_format;
- deUint8 color_primaries;
+ deUint8 colour_primaries;
deUint8 transfer_characteristics;
deUint8 matrix_coefficients;
deUint32 num_units_in_tick;
deUint32 time_scale;
- const StdVideoH264HrdParameters* pHrdParameters;
deUint8 max_num_reorder_frames;
deUint8 max_dec_frame_buffering;
+ deUint8 chroma_sample_loc_type_top_field;
+ deUint8 chroma_sample_loc_type_bottom_field;
+ deUint32 reserved1;
+ const StdVideoH264HrdParameters* pHrdParameters;
} StdVideoH264SequenceParameterSetVui;
typedef struct StdVideoH264SpsFlags {
} StdVideoH264SpsFlags;
typedef struct StdVideoH264ScalingLists {
- deUint8 scaling_list_present_mask;
- deUint8 use_default_scaling_matrix_mask;
- deUint8 ScalingList4x4[STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS];
- deUint8 ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS];
+ deUint16 scaling_list_present_mask;
+ deUint16 use_default_scaling_matrix_mask;
+ deUint8 ScalingList4x4[STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS];
+ deUint8 ScalingList8x8[STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS][STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS];
} StdVideoH264ScalingLists;
typedef struct StdVideoH264SequenceParameterSet {
StdVideoH264SpsFlags flags;
StdVideoH264ProfileIdc profile_idc;
- StdVideoH264Level level_idc;
- deUint8 seq_parameter_set_id;
+ StdVideoH264LevelIdc level_idc;
StdVideoH264ChromaFormatIdc chroma_format_idc;
+ deUint8 seq_parameter_set_id;
deUint8 bit_depth_luma_minus8;
deUint8 bit_depth_chroma_minus8;
deUint8 log2_max_frame_num_minus4;
StdVideoH264PocType pic_order_cnt_type;
- deUint8 log2_max_pic_order_cnt_lsb_minus4;
deInt32 offset_for_non_ref_pic;
deInt32 offset_for_top_to_bottom_field;
+ deUint8 log2_max_pic_order_cnt_lsb_minus4;
deUint8 num_ref_frames_in_pic_order_cnt_cycle;
deUint8 max_num_ref_frames;
+ deUint8 reserved1;
deUint32 pic_width_in_mbs_minus1;
deUint32 pic_height_in_map_units_minus1;
deUint32 frame_crop_left_offset;
deUint32 frame_crop_right_offset;
deUint32 frame_crop_top_offset;
deUint32 frame_crop_bottom_offset;
+ deUint32 reserved2;
const deInt32* pOffsetForRefFrame;
const StdVideoH264ScalingLists* pScalingLists;
const StdVideoH264SequenceParameterSetVui* pSequenceParameterSetVui;
deUint32 redundant_pic_cnt_present_flag : 1;
deUint32 constrained_intra_pred_flag : 1;
deUint32 deblocking_filter_control_present_flag : 1;
- deUint32 weighted_bipred_idc_flag : 1;
deUint32 weighted_pred_flag : 1;
- deUint32 pic_order_present_flag : 1;
+ deUint32 bottom_field_pic_order_in_frame_present_flag : 1;
deUint32 entropy_coding_mode_flag : 1;
deUint32 pic_scaling_matrix_present_flag : 1;
} StdVideoH264PpsFlags;
#define vulkan_video_codec_h264std_encode 1
// Vulkan 0.9 provisional Vulkan video H.264 encode std specification version number
-#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6) // Patch version should always be set to 0
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_8 VK_MAKE_VIDEO_STD_VERSION(0, 9, 8) // Patch version should always be set to 0
-#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_API_VERSION_0_9_8
#define VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_encode"
typedef struct StdVideoEncodeH264WeightTableFlags {
deUint32 luma_weight_l0_flag;
#define vulkan_video_codec_h265std 1
-#define STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE 7
+#define STD_VIDEO_H265_SUBLAYERS_LIST_SIZE 7
#define STD_VIDEO_H265_CPB_CNT_LIST_SIZE 32
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS 6
#define STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS 16
#define STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS 64
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE 3
#define STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE 128
+#define STD_VIDEO_H265_MAX_DPB_SIZE 16
+#define STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS 32
+#define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE 19
#define STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE 21
-#define STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE 6
#define STD_VIDEO_H265_MAX_NUM_LIST_REF 15
#define STD_VIDEO_H265_MAX_CHROMA_PLANES 2
+#define STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS 64
+#define STD_VIDEO_H265_MAX_LONG_TERM_PICS 16
+#define STD_VIDEO_H265_MAX_DELTA_POC 48
typedef enum StdVideoH265ChromaFormatIdc {
STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME = 0,
STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM = 0x7FFFFFFF
} StdVideoH265ProfileIdc;
-typedef enum StdVideoH265Level {
- STD_VIDEO_H265_LEVEL_1_0 = 0,
- STD_VIDEO_H265_LEVEL_2_0 = 1,
- STD_VIDEO_H265_LEVEL_2_1 = 2,
- STD_VIDEO_H265_LEVEL_3_0 = 3,
- STD_VIDEO_H265_LEVEL_3_1 = 4,
- STD_VIDEO_H265_LEVEL_4_0 = 5,
- STD_VIDEO_H265_LEVEL_4_1 = 6,
- STD_VIDEO_H265_LEVEL_5_0 = 7,
- STD_VIDEO_H265_LEVEL_5_1 = 8,
- STD_VIDEO_H265_LEVEL_5_2 = 9,
- STD_VIDEO_H265_LEVEL_6_0 = 10,
- STD_VIDEO_H265_LEVEL_6_1 = 11,
- STD_VIDEO_H265_LEVEL_6_2 = 12,
- STD_VIDEO_H265_LEVEL_INVALID = 0x7FFFFFFF,
- STD_VIDEO_H265_LEVEL_MAX_ENUM = 0x7FFFFFFF
-} StdVideoH265Level;
+typedef enum StdVideoH265LevelIdc {
+ STD_VIDEO_H265_LEVEL_IDC_1_0 = 0,
+ STD_VIDEO_H265_LEVEL_IDC_2_0 = 1,
+ STD_VIDEO_H265_LEVEL_IDC_2_1 = 2,
+ STD_VIDEO_H265_LEVEL_IDC_3_0 = 3,
+ STD_VIDEO_H265_LEVEL_IDC_3_1 = 4,
+ STD_VIDEO_H265_LEVEL_IDC_4_0 = 5,
+ STD_VIDEO_H265_LEVEL_IDC_4_1 = 6,
+ STD_VIDEO_H265_LEVEL_IDC_5_0 = 7,
+ STD_VIDEO_H265_LEVEL_IDC_5_1 = 8,
+ STD_VIDEO_H265_LEVEL_IDC_5_2 = 9,
+ STD_VIDEO_H265_LEVEL_IDC_6_0 = 10,
+ STD_VIDEO_H265_LEVEL_IDC_6_1 = 11,
+ STD_VIDEO_H265_LEVEL_IDC_6_2 = 12,
+ STD_VIDEO_H265_LEVEL_IDC_INVALID = 0x7FFFFFFF,
+ STD_VIDEO_H265_LEVEL_IDC_MAX_ENUM = 0x7FFFFFFF
+} StdVideoH265LevelIdc;
typedef enum StdVideoH265SliceType {
STD_VIDEO_H265_SLICE_TYPE_B = 0,
STD_VIDEO_H265_PICTURE_TYPE_INVALID = 0x7FFFFFFF,
STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM = 0x7FFFFFFF
} StdVideoH265PictureType;
+
+typedef enum StdVideoH265AspectRatioIdc {
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED = 0,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE = 1,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11 = 2,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11 = 3,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11 = 4,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33 = 5,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11 = 6,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11 = 7,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11 = 8,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33 = 9,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11 = 10,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11 = 11,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33 = 12,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99 = 13,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3 = 14,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2 = 15,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1 = 16,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR = 255,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID = 0x7FFFFFFF,
+ STD_VIDEO_H265_ASPECT_RATIO_IDC_MAX_ENUM = 0x7FFFFFFF
+} StdVideoH265AspectRatioIdc;
typedef struct StdVideoH265DecPicBufMgr {
- deUint32 max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- deUint8 max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- deUint8 max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
+ deUint32 max_latency_increase_plus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ deUint8 max_dec_pic_buffering_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ deUint8 max_num_reorder_pics[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
} StdVideoH265DecPicBufMgr;
typedef struct StdVideoH265SubLayerHrdParameters {
deUint8 initial_cpb_removal_delay_length_minus1;
deUint8 au_cpb_removal_delay_length_minus1;
deUint8 dpb_output_delay_length_minus1;
- deUint8 cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- deUint16 elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
- const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl[STD_VIDEO_H265_SUBLAYERS_MINUS1_LIST_SIZE];
+ deUint8 cpb_cnt_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ deUint16 elemental_duration_in_tc_minus1[STD_VIDEO_H265_SUBLAYERS_LIST_SIZE];
+ deUint16 reserved[3];
+ const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal;
+ const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl;
} StdVideoH265HrdParameters;
typedef struct StdVideoH265VpsFlags {
deUint32 vps_poc_proportional_to_timing_flag : 1;
} StdVideoH265VpsFlags;
+typedef struct StdVideoH265ProfileTierLevelFlags {
+ deUint32 general_tier_flag : 1;
+ deUint32 general_progressive_source_flag : 1;
+ deUint32 general_interlaced_source_flag : 1;
+ deUint32 general_non_packed_constraint_flag : 1;
+ deUint32 general_frame_only_constraint_flag : 1;
+} StdVideoH265ProfileTierLevelFlags;
+
+typedef struct StdVideoH265ProfileTierLevel {
+ StdVideoH265ProfileTierLevelFlags flags;
+ StdVideoH265ProfileIdc general_profile_idc;
+ StdVideoH265LevelIdc general_level_idc;
+} StdVideoH265ProfileTierLevel;
+
typedef struct StdVideoH265VideoParameterSet {
- StdVideoH265VpsFlags flags;
- deUint8 vps_video_parameter_set_id;
- deUint8 vps_max_sub_layers_minus1;
- deUint32 vps_num_units_in_tick;
- deUint32 vps_time_scale;
- deUint32 vps_num_ticks_poc_diff_one_minus1;
- const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
- const StdVideoH265HrdParameters* pHrdParameters;
+ StdVideoH265VpsFlags flags;
+ deUint8 vps_video_parameter_set_id;
+ deUint8 vps_max_sub_layers_minus1;
+ deUint8 reserved1;
+ deUint8 reserved2;
+ deUint32 vps_num_units_in_tick;
+ deUint32 vps_time_scale;
+ deUint32 vps_num_ticks_poc_diff_one_minus1;
+ deUint32 reserved3;
+ const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
+ const StdVideoH265HrdParameters* pHrdParameters;
+ const StdVideoH265ProfileTierLevel* pProfileTierLevel;
} StdVideoH265VideoParameterSet;
typedef struct StdVideoH265ScalingLists {
typedef struct StdVideoH265SequenceParameterSetVui {
StdVideoH265SpsVuiFlags flags;
- deUint8 aspect_ratio_idc;
+ StdVideoH265AspectRatioIdc aspect_ratio_idc;
deUint16 sar_width;
deUint16 sar_height;
deUint8 video_format;
deUint8 matrix_coeffs;
deUint8 chroma_sample_loc_type_top_field;
deUint8 chroma_sample_loc_type_bottom_field;
+ deUint8 reserved1;
+ deUint8 reserved2;
deUint16 def_disp_win_left_offset;
deUint16 def_disp_win_right_offset;
deUint16 def_disp_win_top_offset;
deUint32 vui_num_units_in_tick;
deUint32 vui_time_scale;
deUint32 vui_num_ticks_poc_diff_one_minus1;
- const StdVideoH265HrdParameters* pHrdParameters;
deUint16 min_spatial_segmentation_idc;
+ deUint16 reserved3;
deUint8 max_bytes_per_pic_denom;
deUint8 max_bits_per_min_cu_denom;
deUint8 log2_max_mv_length_horizontal;
deUint8 log2_max_mv_length_vertical;
+ const StdVideoH265HrdParameters* pHrdParameters;
} StdVideoH265SequenceParameterSetVui;
typedef struct StdVideoH265PredictorPaletteEntries {
typedef struct StdVideoH265SpsFlags {
deUint32 sps_temporal_id_nesting_flag : 1;
deUint32 separate_colour_plane_flag : 1;
+ deUint32 conformance_window_flag : 1;
+ deUint32 sps_sub_layer_ordering_info_present_flag : 1;
deUint32 scaling_list_enabled_flag : 1;
deUint32 sps_scaling_list_data_present_flag : 1;
deUint32 amp_enabled_flag : 1;
deUint32 sps_scc_extension_flag : 1;
deUint32 sps_curr_pic_ref_enabled_flag : 1;
deUint32 palette_mode_enabled_flag : 1;
- deUint32 sps_palette_predictor_initializer_present_flag : 1;
+ deUint32 sps_palette_predictor_initializers_present_flag : 1;
deUint32 intra_boundary_filtering_disabled_flag : 1;
} StdVideoH265SpsFlags;
+typedef struct StdVideoH265ShortTermRefPicSetFlags {
+ deUint32 inter_ref_pic_set_prediction_flag : 1;
+ deUint32 delta_rps_sign : 1;
+} StdVideoH265ShortTermRefPicSetFlags;
+
+typedef struct StdVideoH265ShortTermRefPicSet {
+ StdVideoH265ShortTermRefPicSetFlags flags;
+ deUint32 delta_idx_minus1;
+ deUint16 use_delta_flag;
+ deUint16 abs_delta_rps_minus1;
+ deUint16 used_by_curr_pic_flag;
+ deUint16 used_by_curr_pic_s0_flag;
+ deUint16 used_by_curr_pic_s1_flag;
+ deUint16 reserved1;
+ deUint8 reserved2;
+ deUint8 reserved3;
+ deUint8 num_negative_pics;
+ deUint8 num_positive_pics;
+ deUint16 delta_poc_s0_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
+ deUint16 delta_poc_s1_minus1[STD_VIDEO_H265_MAX_DPB_SIZE];
+} StdVideoH265ShortTermRefPicSet;
+
+typedef struct StdVideoH265LongTermRefPicsSps {
+ deUint32 used_by_curr_pic_lt_sps_flag;
+ deUint32 lt_ref_pic_poc_lsb_sps[STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS];
+} StdVideoH265LongTermRefPicsSps;
+
typedef struct StdVideoH265SequenceParameterSet {
StdVideoH265SpsFlags flags;
- StdVideoH265ProfileIdc profile_idc;
- StdVideoH265Level level_idc;
+ StdVideoH265ChromaFormatIdc chroma_format_idc;
deUint32 pic_width_in_luma_samples;
deUint32 pic_height_in_luma_samples;
deUint8 sps_video_parameter_set_id;
deUint8 sps_max_sub_layers_minus1;
deUint8 sps_seq_parameter_set_id;
- deUint8 chroma_format_idc;
deUint8 bit_depth_luma_minus8;
deUint8 bit_depth_chroma_minus8;
deUint8 log2_max_pic_order_cnt_lsb_minus4;
deUint8 pcm_sample_bit_depth_chroma_minus1;
deUint8 log2_min_pcm_luma_coding_block_size_minus3;
deUint8 log2_diff_max_min_pcm_luma_coding_block_size;
+ deUint8 reserved1;
+ deUint8 reserved2;
+ deUint8 palette_max_size;
+ deUint8 delta_palette_max_predictor_size;
+ deUint8 motion_vector_resolution_control_idc;
+ deUint8 sps_num_palette_predictor_initializers_minus1;
deUint32 conf_win_left_offset;
deUint32 conf_win_right_offset;
deUint32 conf_win_top_offset;
deUint32 conf_win_bottom_offset;
+ const StdVideoH265ProfileTierLevel* pProfileTierLevel;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265ScalingLists* pScalingLists;
+ const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
+ const StdVideoH265LongTermRefPicsSps* pLongTermRefPicsSps;
const StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui;
- deUint8 palette_max_size;
- deUint8 delta_palette_max_predictor_size;
- deUint8 motion_vector_resolution_control_idc;
- deUint8 sps_num_palette_predictor_initializer_minus1;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
} StdVideoH265SequenceParameterSet;
deUint32 pps_curr_pic_ref_enabled_flag : 1;
deUint32 residual_adaptive_colour_transform_enabled_flag : 1;
deUint32 pps_slice_act_qp_offsets_present_flag : 1;
- deUint32 pps_palette_predictor_initializer_present_flag : 1;
+ deUint32 pps_palette_predictor_initializers_present_flag : 1;
deUint32 monochrome_palette_flag : 1;
deUint32 pps_range_extension_flag : 1;
} StdVideoH265PpsFlags;
StdVideoH265PpsFlags flags;
deUint8 pps_pic_parameter_set_id;
deUint8 pps_seq_parameter_set_id;
+ deUint8 sps_video_parameter_set_id;
deUint8 num_extra_slice_header_bits;
deUint8 num_ref_idx_l0_default_active_minus1;
deUint8 num_ref_idx_l1_default_active_minus1;
deUint8 diff_cu_qp_delta_depth;
deInt8 pps_cb_qp_offset;
deInt8 pps_cr_qp_offset;
- deUint8 num_tile_columns_minus1;
- deUint8 num_tile_rows_minus1;
- deUint16 column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE];
- deUint16 row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE];
deInt8 pps_beta_offset_div2;
deInt8 pps_tc_offset_div2;
deUint8 log2_parallel_merge_level_minus2;
- const StdVideoH265ScalingLists* pScalingLists;
deUint8 log2_max_transform_skip_block_size_minus2;
deUint8 diff_cu_chroma_qp_offset_depth;
deUint8 chroma_qp_offset_list_len_minus1;
deUint8 log2_sao_offset_scale_chroma;
deInt8 pps_act_y_qp_offset_plus5;
deInt8 pps_act_cb_qp_offset_plus5;
- deInt8 pps_act_cr_qp_offset_plus5;
- deUint8 pps_num_palette_predictor_initializer;
+ deInt8 pps_act_cr_qp_offset_plus3;
+ deUint8 pps_num_palette_predictor_initializers;
deUint8 luma_bit_depth_entry_minus8;
deUint8 chroma_bit_depth_entry_minus8;
+ deUint8 num_tile_columns_minus1;
+ deUint8 num_tile_rows_minus1;
+ deUint8 reserved1;
+ deUint8 reserved2;
+ deUint16 column_width_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE];
+ deUint16 row_height_minus1[STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE];
+ deUint32 reserved3;
+ const StdVideoH265ScalingLists* pScalingLists;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
} StdVideoH265PictureParameterSet;
#define vulkan_video_codec_h264std_decode 1
// Vulkan 0.9 provisional Vulkan video H.264 decode std specification version number
-#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6 VK_MAKE_VIDEO_STD_VERSION(0, 9, 6) // Patch version should always be set to 0
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_8 VK_MAKE_VIDEO_STD_VERSION(0, 9, 8) // Patch version should always be set to 0
#define STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE 2
-#define STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE 15
-#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_6
+#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_API_VERSION_0_9_8
#define VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h264_decode"
typedef enum StdVideoDecodeH264FieldOrderCount {
StdVideoDecodeH264PictureInfoFlags flags;
deUint8 seq_parameter_set_id;
deUint8 pic_parameter_set_id;
- deUint16 reserved;
+ deUint8 reserved1;
+ deUint8 reserved2;
deUint16 frame_num;
deUint16 idr_pic_id;
deInt32 PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
StdVideoDecodeH264ReferenceInfoFlags flags;
deUint16 FrameNum;
deUint16 reserved;
- deInt32 PicOrderCnt[2];
+ deInt32 PicOrderCnt[STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE];
} StdVideoDecodeH264ReferenceInfo;
-typedef struct StdVideoDecodeH264MvcElementFlags {
- deUint32 non_idr : 1;
- deUint32 anchor_pic : 1;
- deUint32 inter_view : 1;
-} StdVideoDecodeH264MvcElementFlags;
-
-typedef struct StdVideoDecodeH264MvcElement {
- StdVideoDecodeH264MvcElementFlags flags;
- deUint16 viewOrderIndex;
- deUint16 viewId;
- deUint16 temporalId;
- deUint16 priorityId;
- deUint16 numOfAnchorRefsInL0;
- deUint16 viewIdOfAnchorRefsInL0[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
- deUint16 numOfAnchorRefsInL1;
- deUint16 viewIdOfAnchorRefsInL1[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
- deUint16 numOfNonAnchorRefsInL0;
- deUint16 viewIdOfNonAnchorRefsInL0[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
- deUint16 numOfNonAnchorRefsInL1;
- deUint16 viewIdOfNonAnchorRefsInL1[STD_VIDEO_DECODE_H264_MVC_REF_LIST_SIZE];
-} StdVideoDecodeH264MvcElement;
-
-typedef struct StdVideoDecodeH264Mvc {
- deUint32 viewId0;
- deUint32 mvcElementCount;
- const StdVideoDecodeH264MvcElement* pMvcElements;
-} StdVideoDecodeH264Mvc;
-
#ifdef __cplusplus
}
#define vulkan_video_codec_h265std_decode 1
// Vulkan 0.9 provisional Vulkan video H.265 decode std specification version number
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7 VK_MAKE_VIDEO_STD_VERSION(0, 9, 7) // Patch version should always be set to 0
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_9 VK_MAKE_VIDEO_STD_VERSION(0, 9, 9) // Patch version should always be set to 0
#define STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE 8
-#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_7
+#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_SPEC_VERSION VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_API_VERSION_0_9_9
#define VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME "VK_STD_vulkan_video_codec_h265_decode"
typedef struct StdVideoDecodeH265PictureInfoFlags {
deUint32 IrapPicFlag : 1;
deUint8 sps_video_parameter_set_id;
deUint8 pps_seq_parameter_set_id;
deUint8 pps_pic_parameter_set_id;
- deUint8 num_short_term_ref_pic_sets;
+ deUint8 NumDeltaPocsOfRefRpsIdx;
deInt32 PicOrderCntVal;
deUint16 NumBitsForSTRefPicSetInSlice;
- deUint8 NumDeltaPocsOfRefRpsIdx;
+ deUint16 reserved;
deUint8 RefPicSetStCurrBefore[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
deUint8 RefPicSetStCurrAfter[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
deUint8 RefPicSetLtCurr[STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE];
typedef struct StdVideoDecodeH265ReferenceInfoFlags {
deUint32 used_for_long_term_reference : 1;
deUint32 unused_for_reference : 1;
- deUint32 is_non_existing : 1;
} StdVideoDecodeH265ReferenceInfoFlags;
typedef struct StdVideoDecodeH265ReferenceInfo {
#define VK_API_VERSION_1_0 VK_MAKE_API_VERSION(0, 1, 0, 0)// Patch version should always be set to 0
// Version of this file
-#define VK_HEADER_VERSION 227
+#define VK_HEADER_VERSION 231
// Complete version of this file
#define VK_HEADER_VERSION_COMPLETE VK_MAKE_API_VERSION(0, 1, 3, VK_HEADER_VERSION)
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT = 1000040001,
#endif
#ifdef VK_ENABLE_BETA_EXTENSIONS
- VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_INFO_EXT = 1000040002,
-#endif
-#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_EXT = 1000040003,
#endif
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT = 1000287001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT = 1000287002,
VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR = 1000290000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV = 1000292000,
+ VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV = 1000292001,
+ VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV = 1000292002,
VK_STRUCTURE_TYPE_PRESENT_ID_KHR = 1000294000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR = 1000294001,
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT = 1000338004,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT = 1000339000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT = 1000340000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT = 1000341000,
+ VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT = 1000341001,
+ VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT = 1000341002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT = 1000344000,
VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT = 1000346000,
- VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE = 1000351000,
- VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE = 1000351002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT = 1000352000,
VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT = 1000352001,
VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT = 1000352002,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT = 1000353000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT = 1000354000,
+ VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT = 1000354001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT = 1000355000,
VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT = 1000355001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT = 1000356000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT = 1000392000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT = 1000392001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT = 1000393000,
+ VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT = 1000396000,
+ VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT = 1000396001,
+ VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT = 1000396002,
+ VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT = 1000396003,
+ VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT = 1000396004,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT = 1000396005,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT = 1000396006,
+ VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT = 1000396007,
+ VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT = 1000396008,
+ VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT = 1000396009,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT = 1000411000,
VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT = 1000411001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT = 1000412000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM = 1000440000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM = 1000440001,
VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM = 1000440002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT = 1000455000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT = 1000455001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT = 1000458000,
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT = 1000458001,
VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT = 1000458002,
VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT = 1000462002,
VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT = 1000462003,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT = 1000342000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV = 1000464000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV = 1000464001,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV = 1000464002,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV = 1000464003,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV = 1000464004,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV = 1000464005,
+ VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV = 1000464010,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT = 1000465000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT = 1000466000,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM = 1000484000,
VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM = 1000484001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC = 1000485000,
VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC = 1000485001,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT = 1000351000,
+ VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT = 1000351002,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM = 1000497000,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM = 1000497001,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT,
+ VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT,
+ VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT,
VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3,
VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR = 1000268000,
VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV = 1000277000,
VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA = 1000366000,
+ VK_OBJECT_TYPE_MICROMAP_EXT = 1000396000,
+ VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV = 1000464000,
VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT,
VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG = 1000054005,
VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG = 1000054006,
VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG = 1000054007,
+ VK_FORMAT_R16G16_S10_5_NV = 1000464000,
VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK,
VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK,
VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK,
VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT = 1000382000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR = 1000386000,
VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR = 1000386001,
+ VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT = 1000396000,
+ VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT = 1000396001,
VK_QUERY_TYPE_MAX_ENUM = 0x7FFFFFFF
} VkQueryType;
VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT = 1000377000,
VK_DYNAMIC_STATE_LOGIC_OP_EXT = 1000377003,
VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT = 1000381000,
+ VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT = 1000455002,
+ VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT = 1000455003,
+ VK_DYNAMIC_STATE_POLYGON_MODE_EXT = 1000455004,
+ VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT = 1000455005,
+ VK_DYNAMIC_STATE_SAMPLE_MASK_EXT = 1000455006,
+ VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT = 1000455007,
+ VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT = 1000455008,
+ VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT = 1000455009,
+ VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT = 1000455010,
+ VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT = 1000455011,
+ VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT = 1000455012,
+ VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT = 1000455013,
+ VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT = 1000455014,
+ VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT = 1000455015,
+ VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT = 1000455016,
+ VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT = 1000455017,
+ VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT = 1000455018,
+ VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT = 1000455019,
+ VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT = 1000455020,
+ VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT = 1000455021,
+ VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT = 1000455022,
+ VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV = 1000455023,
+ VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV = 1000455024,
+ VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV = 1000455025,
+ VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV = 1000455026,
+ VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV = 1000455027,
+ VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV = 1000455028,
+ VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV = 1000455029,
+ VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV = 1000455030,
+ VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV = 1000455031,
+ VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV = 1000455032,
VK_DYNAMIC_STATE_CULL_MODE_EXT = VK_DYNAMIC_STATE_CULL_MODE,
VK_DYNAMIC_STATE_FRONT_FACE_EXT = VK_DYNAMIC_STATE_FRONT_FACE,
VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY,
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK = 1000138000,
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR = 1000150000,
VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV = 1000165000,
- VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = 1000351000,
VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM = 1000440000,
VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM = 1000440001,
+ VK_DESCRIPTOR_TYPE_MUTABLE_EXT = 1000351000,
VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK,
+ VK_DESCRIPTOR_TYPE_MUTABLE_VALVE = VK_DESCRIPTOR_TYPE_MUTABLE_EXT,
VK_DESCRIPTOR_TYPE_MAX_ENUM = 0x7FFFFFFF
} VkDescriptorType;
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_QUEUE_VIDEO_ENCODE_BIT_KHR = 0x00000040,
#endif
+ VK_QUEUE_OPTICAL_FLOW_BIT_NV = 0x00000100,
VK_QUEUE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkQueueFlagBits;
typedef VkFlags VkQueueFlags;
#ifdef VK_ENABLE_BETA_EXTENSIONS
VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR = 0x00010000,
#endif
+ VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT = 0x00800000,
+ VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT = 0x01000000,
VK_BUFFER_USAGE_RAY_TRACING_BIT_NV = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV = 0x00100000,
VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x02000000,
VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT = 0x04000000,
+ VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT = 0x01000000,
+ VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT = 0x08000000,
+ VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT = 0x40000000,
VK_PIPELINE_CREATE_DISPATCH_BASE = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT,
typedef enum VkDescriptorPoolCreateFlagBits {
VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT = 0x00000001,
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT = 0x00000002,
- VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE = 0x00000004,
+ VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT = 0x00000004,
VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
+ VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE = VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT,
VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkDescriptorPoolCreateFlagBits;
typedef VkFlags VkDescriptorPoolCreateFlags;
typedef enum VkDescriptorSetLayoutCreateFlagBits {
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT = 0x00000002,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR = 0x00000001,
- VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE = 0x00000004,
+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT = 0x00000004,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
+ VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE = VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT,
VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM = 0x7FFFFFFF
} VkDescriptorSetLayoutCreateFlagBits;
typedef VkFlags VkDescriptorSetLayoutCreateFlags;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI = 0x8000000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI = 0x10000000000ULL;
static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR = 0x10000000ULL;
+static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT = 0x40000000ULL;
+static const VkPipelineStageFlagBits2 VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV = 0x20000000ULL;
typedef VkFlags64 VkAccessFlags2;
static const VkAccessFlagBits2 VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT = 0x00080000ULL;
static const VkAccessFlagBits2 VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI = 0x8000000000ULL;
static const VkAccessFlagBits2 VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR = 0x10000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_MICROMAP_READ_BIT_EXT = 0x100000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT = 0x200000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV = 0x40000000000ULL;
+static const VkAccessFlagBits2 VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV = 0x80000000000ULL;
typedef enum VkSubmitFlagBits {
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM = 0x800000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM = 0x1000000000ULL;
static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM = 0x2000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV = 0x10000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV = 0x20000000000ULL;
+static const VkFormatFeatureFlagBits2 VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV = 0x40000000000ULL;
typedef struct VkPhysicalDeviceVulkan13Features {
VkStructureType sType;
VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT = 0x00000001,
VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT = 0x00000002,
VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT = 0x00000004,
+ VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT = 0x00000008,
VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
} VkDebugUtilsMessageTypeFlagBitsEXT;
typedef VkFlags VkDebugUtilsMessageTypeFlagsEXT;
VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR = 0x00000002,
VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR = 0x00000004,
VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR = 0x00000008,
+ VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT = 0x00000010,
+ VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT = 0x00000020,
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR,
VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR = 0x00000008,
VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR = 0x00000010,
VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV = 0x00000020,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT = 0x00000040,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT = 0x00000080,
+ VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT = 0x00000100,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
#define VK_GOOGLE_USER_TYPE_EXTENSION_NAME "VK_GOOGLE_user_type"
+#define VK_NV_present_barrier 1
+#define VK_NV_PRESENT_BARRIER_SPEC_VERSION 1
+#define VK_NV_PRESENT_BARRIER_EXTENSION_NAME "VK_NV_present_barrier"
+typedef struct VkPhysicalDevicePresentBarrierFeaturesNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 presentBarrier;
+} VkPhysicalDevicePresentBarrierFeaturesNV;
+
+typedef struct VkSurfaceCapabilitiesPresentBarrierNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 presentBarrierSupported;
+} VkSurfaceCapabilitiesPresentBarrierNV;
+
+typedef struct VkSwapchainPresentBarrierCreateInfoNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 presentBarrierEnable;
+} VkSwapchainPresentBarrierCreateInfoNV;
+
+
+
#define VK_EXT_private_data 1
typedef VkPrivateDataSlot VkPrivateDataSlotEXT;
+#define VK_EXT_device_fault 1
+#define VK_EXT_DEVICE_FAULT_SPEC_VERSION 1
+#define VK_EXT_DEVICE_FAULT_EXTENSION_NAME "VK_EXT_device_fault"
+
+typedef enum VkDeviceFaultAddressTypeEXT {
+ VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT = 0,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT = 1,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT = 2,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT = 3,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT = 4,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT = 5,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT = 6,
+ VK_DEVICE_FAULT_ADDRESS_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkDeviceFaultAddressTypeEXT;
+
+typedef enum VkDeviceFaultVendorBinaryHeaderVersionEXT {
+ VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT = 1,
+ VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkDeviceFaultVendorBinaryHeaderVersionEXT;
+typedef struct VkPhysicalDeviceFaultFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 deviceFault;
+ VkBool32 deviceFaultVendorBinary;
+} VkPhysicalDeviceFaultFeaturesEXT;
+
+typedef struct VkDeviceFaultCountsEXT {
+ VkStructureType sType;
+ void* pNext;
+ deUint32 addressInfoCount;
+ deUint32 vendorInfoCount;
+ VkDeviceSize vendorBinarySize;
+} VkDeviceFaultCountsEXT;
+
+typedef struct VkDeviceFaultAddressInfoEXT {
+ VkDeviceFaultAddressTypeEXT addressType;
+ VkDeviceAddress reportedAddress;
+ VkDeviceSize addressPrecision;
+} VkDeviceFaultAddressInfoEXT;
+
+typedef struct VkDeviceFaultVendorInfoEXT {
+ char description[VK_MAX_DESCRIPTION_SIZE];
+ deUint64 vendorFaultCode;
+ deUint64 vendorFaultData;
+} VkDeviceFaultVendorInfoEXT;
+
+typedef struct VkDeviceFaultInfoEXT {
+ VkStructureType sType;
+ void* pNext;
+ char description[VK_MAX_DESCRIPTION_SIZE];
+ VkDeviceFaultAddressInfoEXT* pAddressInfos;
+ VkDeviceFaultVendorInfoEXT* pVendorInfos;
+ void* pVendorBinaryData;
+} VkDeviceFaultInfoEXT;
+
+typedef struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT {
+ deUint32 headerSize;
+ VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion;
+ deUint32 vendorID;
+ deUint32 deviceID;
+ deUint32 driverVersion;
+ deUint8 pipelineCacheUUID[VK_UUID_SIZE];
+ deUint32 applicationNameOffset;
+ deUint32 applicationVersion;
+ deUint32 engineNameOffset;
+} VkDeviceFaultVendorBinaryHeaderVersionOneEXT;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetDeviceFaultInfoEXT)(VkDevice device, VkDeviceFaultCountsEXT* pFaultCounts, VkDeviceFaultInfoEXT* pFaultInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetDeviceFaultInfoEXT(
+ VkDevice device,
+ VkDeviceFaultCountsEXT* pFaultCounts,
+ VkDeviceFaultInfoEXT* pFaultInfo);
+#endif
+
+
#define VK_ARM_rasterization_order_attachment_access 1
#define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION 1
#define VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME "VK_ARM_rasterization_order_attachment_access"
#define VK_VALVE_mutable_descriptor_type 1
#define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION 1
#define VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_VALVE_mutable_descriptor_type"
-typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE {
+typedef struct VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT {
VkStructureType sType;
void* pNext;
VkBool32 mutableDescriptorType;
-} VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
+} VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT;
+
+typedef VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE;
-typedef struct VkMutableDescriptorTypeListVALVE {
+typedef struct VkMutableDescriptorTypeListEXT {
deUint32 descriptorTypeCount;
const VkDescriptorType* pDescriptorTypes;
-} VkMutableDescriptorTypeListVALVE;
+} VkMutableDescriptorTypeListEXT;
-typedef struct VkMutableDescriptorTypeCreateInfoVALVE {
- VkStructureType sType;
- const void* pNext;
- deUint32 mutableDescriptorTypeListCount;
- const VkMutableDescriptorTypeListVALVE* pMutableDescriptorTypeLists;
-} VkMutableDescriptorTypeCreateInfoVALVE;
+typedef VkMutableDescriptorTypeListEXT VkMutableDescriptorTypeListVALVE;
+
+typedef struct VkMutableDescriptorTypeCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ deUint32 mutableDescriptorTypeListCount;
+ const VkMutableDescriptorTypeListEXT* pMutableDescriptorTypeLists;
+} VkMutableDescriptorTypeCreateInfoEXT;
+
+typedef VkMutableDescriptorTypeCreateInfoEXT VkMutableDescriptorTypeCreateInfoVALVE;
+#define VK_EXT_device_address_binding_report 1
+#define VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION 1
+#define VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME "VK_EXT_device_address_binding_report"
+
+typedef enum VkDeviceAddressBindingTypeEXT {
+ VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT = 0,
+ VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT = 1,
+ VK_DEVICE_ADDRESS_BINDING_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkDeviceAddressBindingTypeEXT;
+
+typedef enum VkDeviceAddressBindingFlagBitsEXT {
+ VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT = 0x00000001,
+ VK_DEVICE_ADDRESS_BINDING_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkDeviceAddressBindingFlagBitsEXT;
+typedef VkFlags VkDeviceAddressBindingFlagsEXT;
+typedef struct VkPhysicalDeviceAddressBindingReportFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 reportAddressBinding;
+} VkPhysicalDeviceAddressBindingReportFeaturesEXT;
+
+typedef struct VkDeviceAddressBindingCallbackDataEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkDeviceAddressBindingFlagsEXT flags;
+ VkDeviceAddress baseAddress;
+ VkDeviceSize size;
+ VkDeviceAddressBindingTypeEXT bindingType;
+} VkDeviceAddressBindingCallbackDataEXT;
+
+
+
#define VK_EXT_depth_clip_control 1
#define VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION 1
#define VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME "VK_EXT_depth_clip_control"
+#define VK_EXT_opacity_micromap 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkMicromapEXT)
+#define VK_EXT_OPACITY_MICROMAP_SPEC_VERSION 2
+#define VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME "VK_EXT_opacity_micromap"
+
+typedef enum VkMicromapTypeEXT {
+ VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT = 0,
+ VK_MICROMAP_TYPE_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkMicromapTypeEXT;
+
+typedef enum VkBuildMicromapModeEXT {
+ VK_BUILD_MICROMAP_MODE_BUILD_EXT = 0,
+ VK_BUILD_MICROMAP_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkBuildMicromapModeEXT;
+
+typedef enum VkCopyMicromapModeEXT {
+ VK_COPY_MICROMAP_MODE_CLONE_EXT = 0,
+ VK_COPY_MICROMAP_MODE_SERIALIZE_EXT = 1,
+ VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT = 2,
+ VK_COPY_MICROMAP_MODE_COMPACT_EXT = 3,
+ VK_COPY_MICROMAP_MODE_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkCopyMicromapModeEXT;
+
+typedef enum VkOpacityMicromapFormatEXT {
+ VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT = 1,
+ VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT = 2,
+ VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkOpacityMicromapFormatEXT;
+
+typedef enum VkOpacityMicromapSpecialIndexEXT {
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT = -1,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT = -2,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT = -3,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT = -4,
+ VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkOpacityMicromapSpecialIndexEXT;
+
+typedef enum VkAccelerationStructureCompatibilityKHR {
+ VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0,
+ VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1,
+ VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureCompatibilityKHR;
+
+typedef enum VkAccelerationStructureBuildTypeKHR {
+ VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0,
+ VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1,
+ VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2,
+ VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
+} VkAccelerationStructureBuildTypeKHR;
+
+typedef enum VkBuildMicromapFlagBitsEXT {
+ VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT = 0x00000001,
+ VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT = 0x00000002,
+ VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT = 0x00000004,
+ VK_BUILD_MICROMAP_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkBuildMicromapFlagBitsEXT;
+typedef VkFlags VkBuildMicromapFlagsEXT;
+
+typedef enum VkMicromapCreateFlagBitsEXT {
+ VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT = 0x00000001,
+ VK_MICROMAP_CREATE_FLAG_BITS_MAX_ENUM_EXT = 0x7FFFFFFF
+} VkMicromapCreateFlagBitsEXT;
+typedef VkFlags VkMicromapCreateFlagsEXT;
+typedef struct VkMicromapUsageEXT {
+ deUint32 count;
+ deUint32 subdivisionLevel;
+ deUint32 format;
+} VkMicromapUsageEXT;
+
+typedef union VkDeviceOrHostAddressKHR {
+ VkDeviceAddress deviceAddress;
+ void* hostAddress;
+} VkDeviceOrHostAddressKHR;
+
+typedef struct VkMicromapBuildInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapTypeEXT type;
+ VkBuildMicromapFlagsEXT flags;
+ VkBuildMicromapModeEXT mode;
+ VkMicromapEXT dstMicromap;
+ deUint32 usageCountsCount;
+ const VkMicromapUsageEXT* pUsageCounts;
+ const VkMicromapUsageEXT* const* ppUsageCounts;
+ VkDeviceOrHostAddressConstKHR data;
+ VkDeviceOrHostAddressKHR scratchData;
+ VkDeviceOrHostAddressConstKHR triangleArray;
+ VkDeviceSize triangleArrayStride;
+} VkMicromapBuildInfoEXT;
+
+typedef struct VkMicromapCreateInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapCreateFlagsEXT createFlags;
+ VkBuffer buffer;
+ VkDeviceSize offset;
+ VkDeviceSize size;
+ VkMicromapTypeEXT type;
+ VkDeviceAddress deviceAddress;
+} VkMicromapCreateInfoEXT;
+
+typedef struct VkPhysicalDeviceOpacityMicromapFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 micromap;
+ VkBool32 micromapCaptureReplay;
+ VkBool32 micromapHostCommands;
+} VkPhysicalDeviceOpacityMicromapFeaturesEXT;
+
+typedef struct VkPhysicalDeviceOpacityMicromapPropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ deUint32 maxOpacity2StateSubdivisionLevel;
+ deUint32 maxOpacity4StateSubdivisionLevel;
+} VkPhysicalDeviceOpacityMicromapPropertiesEXT;
+
+typedef struct VkMicromapVersionInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ const deUint8* pVersionData;
+} VkMicromapVersionInfoEXT;
+
+typedef struct VkCopyMicromapToMemoryInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapEXT src;
+ VkDeviceOrHostAddressKHR dst;
+ VkCopyMicromapModeEXT mode;
+} VkCopyMicromapToMemoryInfoEXT;
+
+typedef struct VkCopyMemoryToMicromapInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkDeviceOrHostAddressConstKHR src;
+ VkMicromapEXT dst;
+ VkCopyMicromapModeEXT mode;
+} VkCopyMemoryToMicromapInfoEXT;
+
+typedef struct VkCopyMicromapInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkMicromapEXT src;
+ VkMicromapEXT dst;
+ VkCopyMicromapModeEXT mode;
+} VkCopyMicromapInfoEXT;
+
+typedef struct VkMicromapBuildSizesInfoEXT {
+ VkStructureType sType;
+ const void* pNext;
+ VkDeviceSize micromapSize;
+ VkDeviceSize buildScratchSize;
+ VkBool32 discardable;
+} VkMicromapBuildSizesInfoEXT;
+
+typedef struct VkAccelerationStructureTrianglesOpacityMicromapEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkIndexType indexType;
+ VkDeviceOrHostAddressConstKHR indexBuffer;
+ VkDeviceSize indexStride;
+ deUint32 baseTriangle;
+ deUint32 usageCountsCount;
+ const VkMicromapUsageEXT* pUsageCounts;
+ const VkMicromapUsageEXT* const* ppUsageCounts;
+ VkMicromapEXT micromap;
+} VkAccelerationStructureTrianglesOpacityMicromapEXT;
+
+typedef struct VkMicromapTriangleEXT {
+ deUint32 dataOffset;
+ deUint16 subdivisionLevel;
+ deUint16 format;
+} VkMicromapTriangleEXT;
+
+typedef VkResult (VKAPI_PTR *PFN_vkCreateMicromapEXT)(VkDevice device, const VkMicromapCreateInfoEXT* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkMicromapEXT* pMicromap);
+typedef void (VKAPI_PTR *PFN_vkDestroyMicromapEXT)(VkDevice device, VkMicromapEXT micromap, const VkAllocationCallbacks* pAllocator);
+typedef void (VKAPI_PTR *PFN_vkCmdBuildMicromapsEXT)(VkCommandBuffer commandBuffer, deUint32 infoCount, const VkMicromapBuildInfoEXT* pInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkBuildMicromapsEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, deUint32 infoCount, const VkMicromapBuildInfoEXT* pInfos);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMicromapEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapInfoEXT* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMicromapToMemoryEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMicromapToMemoryInfoEXT* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkCopyMemoryToMicromapEXT)(VkDevice device, VkDeferredOperationKHR deferredOperation, const VkCopyMemoryToMicromapInfoEXT* pInfo);
+typedef VkResult (VKAPI_PTR *PFN_vkWriteMicromapsPropertiesEXT)(VkDevice device, deUint32 micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, deUintptr dataSize, void* pData, deUintptr stride);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMicromapEXT)(VkCommandBuffer commandBuffer, const VkCopyMicromapInfoEXT* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMicromapToMemoryEXT)(VkCommandBuffer commandBuffer, const VkCopyMicromapToMemoryInfoEXT* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdCopyMemoryToMicromapEXT)(VkCommandBuffer commandBuffer, const VkCopyMemoryToMicromapInfoEXT* pInfo);
+typedef void (VKAPI_PTR *PFN_vkCmdWriteMicromapsPropertiesEXT)(VkCommandBuffer commandBuffer, deUint32 micromapCount, const VkMicromapEXT* pMicromaps, VkQueryType queryType, VkQueryPool queryPool, deUint32 firstQuery);
+typedef void (VKAPI_PTR *PFN_vkGetDeviceMicromapCompatibilityEXT)(VkDevice device, const VkMicromapVersionInfoEXT* pVersionInfo, VkAccelerationStructureCompatibilityKHR* pCompatibility);
+typedef void (VKAPI_PTR *PFN_vkGetMicromapBuildSizesEXT)(VkDevice device, VkAccelerationStructureBuildTypeKHR buildType, const VkMicromapBuildInfoEXT* pBuildInfo, VkMicromapBuildSizesInfoEXT* pSizeInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateMicromapEXT(
+ VkDevice device,
+ const VkMicromapCreateInfoEXT* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkMicromapEXT* pMicromap);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyMicromapEXT(
+ VkDevice device,
+ VkMicromapEXT micromap,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdBuildMicromapsEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 infoCount,
+ const VkMicromapBuildInfoEXT* pInfos);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkBuildMicromapsEXT(
+ VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ deUint32 infoCount,
+ const VkMicromapBuildInfoEXT* pInfos);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCopyMicromapEXT(
+ VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ const VkCopyMicromapInfoEXT* pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCopyMicromapToMemoryEXT(
+ VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ const VkCopyMicromapToMemoryInfoEXT* pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCopyMemoryToMicromapEXT(
+ VkDevice device,
+ VkDeferredOperationKHR deferredOperation,
+ const VkCopyMemoryToMicromapInfoEXT* pInfo);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkWriteMicromapsPropertiesEXT(
+ VkDevice device,
+ deUint32 micromapCount,
+ const VkMicromapEXT* pMicromaps,
+ VkQueryType queryType,
+ deUintptr dataSize,
+ void* pData,
+ deUintptr stride);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyMicromapEXT(
+ VkCommandBuffer commandBuffer,
+ const VkCopyMicromapInfoEXT* pInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyMicromapToMemoryEXT(
+ VkCommandBuffer commandBuffer,
+ const VkCopyMicromapToMemoryInfoEXT* pInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdCopyMemoryToMicromapEXT(
+ VkCommandBuffer commandBuffer,
+ const VkCopyMemoryToMicromapInfoEXT* pInfo);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdWriteMicromapsPropertiesEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 micromapCount,
+ const VkMicromapEXT* pMicromaps,
+ VkQueryType queryType,
+ VkQueryPool queryPool,
+ deUint32 firstQuery);
+
+VKAPI_ATTR void VKAPI_CALL vkGetDeviceMicromapCompatibilityEXT(
+ VkDevice device,
+ const VkMicromapVersionInfoEXT* pVersionInfo,
+ VkAccelerationStructureCompatibilityKHR* pCompatibility);
+
+VKAPI_ATTR void VKAPI_CALL vkGetMicromapBuildSizesEXT(
+ VkDevice device,
+ VkAccelerationStructureBuildTypeKHR buildType,
+ const VkMicromapBuildInfoEXT* pBuildInfo,
+ VkMicromapBuildSizesInfoEXT* pSizeInfo);
+#endif
+
+
#define VK_EXT_load_store_op_none 1
#define VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION 1
#define VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME "VK_EXT_load_store_op_none"
#define VK_GOOGLE_surfaceless_query 1
-#define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 1
+#define VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION 2
#define VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME "VK_GOOGLE_surfaceless_query"
+#define VK_EXT_extended_dynamic_state3 1
+#define VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION 2
+#define VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME "VK_EXT_extended_dynamic_state3"
+typedef struct VkPhysicalDeviceExtendedDynamicState3FeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 extendedDynamicState3TessellationDomainOrigin;
+ VkBool32 extendedDynamicState3DepthClampEnable;
+ VkBool32 extendedDynamicState3PolygonMode;
+ VkBool32 extendedDynamicState3RasterizationSamples;
+ VkBool32 extendedDynamicState3SampleMask;
+ VkBool32 extendedDynamicState3AlphaToCoverageEnable;
+ VkBool32 extendedDynamicState3AlphaToOneEnable;
+ VkBool32 extendedDynamicState3LogicOpEnable;
+ VkBool32 extendedDynamicState3ColorBlendEnable;
+ VkBool32 extendedDynamicState3ColorBlendEquation;
+ VkBool32 extendedDynamicState3ColorWriteMask;
+ VkBool32 extendedDynamicState3RasterizationStream;
+ VkBool32 extendedDynamicState3ConservativeRasterizationMode;
+ VkBool32 extendedDynamicState3ExtraPrimitiveOverestimationSize;
+ VkBool32 extendedDynamicState3DepthClipEnable;
+ VkBool32 extendedDynamicState3SampleLocationsEnable;
+ VkBool32 extendedDynamicState3ColorBlendAdvanced;
+ VkBool32 extendedDynamicState3ProvokingVertexMode;
+ VkBool32 extendedDynamicState3LineRasterizationMode;
+ VkBool32 extendedDynamicState3LineStippleEnable;
+ VkBool32 extendedDynamicState3DepthClipNegativeOneToOne;
+ VkBool32 extendedDynamicState3ViewportWScalingEnable;
+ VkBool32 extendedDynamicState3ViewportSwizzle;
+ VkBool32 extendedDynamicState3CoverageToColorEnable;
+ VkBool32 extendedDynamicState3CoverageToColorLocation;
+ VkBool32 extendedDynamicState3CoverageModulationMode;
+ VkBool32 extendedDynamicState3CoverageModulationTableEnable;
+ VkBool32 extendedDynamicState3CoverageModulationTable;
+ VkBool32 extendedDynamicState3CoverageReductionMode;
+ VkBool32 extendedDynamicState3RepresentativeFragmentTestEnable;
+ VkBool32 extendedDynamicState3ShadingRateImageEnable;
+} VkPhysicalDeviceExtendedDynamicState3FeaturesEXT;
+
+typedef struct VkPhysicalDeviceExtendedDynamicState3PropertiesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 dynamicPrimitiveTopologyUnrestricted;
+} VkPhysicalDeviceExtendedDynamicState3PropertiesEXT;
+
+typedef struct VkColorBlendEquationEXT {
+ VkBlendFactor srcColorBlendFactor;
+ VkBlendFactor dstColorBlendFactor;
+ VkBlendOp colorBlendOp;
+ VkBlendFactor srcAlphaBlendFactor;
+ VkBlendFactor dstAlphaBlendFactor;
+ VkBlendOp alphaBlendOp;
+} VkColorBlendEquationEXT;
+
+typedef struct VkColorBlendAdvancedEXT {
+ VkBlendOp advancedBlendOp;
+ VkBool32 srcPremultiplied;
+ VkBool32 dstPremultiplied;
+ VkBlendOverlapEXT blendOverlap;
+ VkBool32 clampResults;
+} VkColorBlendAdvancedEXT;
+
+typedef void (VKAPI_PTR *PFN_vkCmdSetTessellationDomainOriginEXT)(VkCommandBuffer commandBuffer, VkTessellationDomainOrigin domainOrigin);
+typedef void (VKAPI_PTR *PFN_vkCmdSetDepthClampEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthClampEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetPolygonModeEXT)(VkCommandBuffer commandBuffer, VkPolygonMode polygonMode);
+typedef void (VKAPI_PTR *PFN_vkCmdSetRasterizationSamplesEXT)(VkCommandBuffer commandBuffer, VkSampleCountFlagBits rasterizationSamples);
+typedef void (VKAPI_PTR *PFN_vkCmdSetSampleMaskEXT)(VkCommandBuffer commandBuffer, VkSampleCountFlagBits samples, const VkSampleMask* pSampleMask);
+typedef void (VKAPI_PTR *PFN_vkCmdSetAlphaToCoverageEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 alphaToCoverageEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetAlphaToOneEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 alphaToOneEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetLogicOpEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 logicOpEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetColorBlendEnableEXT)(VkCommandBuffer commandBuffer, deUint32 firstAttachment, deUint32 attachmentCount, const VkBool32* pColorBlendEnables);
+typedef void (VKAPI_PTR *PFN_vkCmdSetColorBlendEquationEXT)(VkCommandBuffer commandBuffer, deUint32 firstAttachment, deUint32 attachmentCount, const VkColorBlendEquationEXT* pColorBlendEquations);
+typedef void (VKAPI_PTR *PFN_vkCmdSetColorWriteMaskEXT)(VkCommandBuffer commandBuffer, deUint32 firstAttachment, deUint32 attachmentCount, const VkColorComponentFlags* pColorWriteMasks);
+typedef void (VKAPI_PTR *PFN_vkCmdSetRasterizationStreamEXT)(VkCommandBuffer commandBuffer, deUint32 rasterizationStream);
+typedef void (VKAPI_PTR *PFN_vkCmdSetConservativeRasterizationModeEXT)(VkCommandBuffer commandBuffer, VkConservativeRasterizationModeEXT conservativeRasterizationMode);
+typedef void (VKAPI_PTR *PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT)(VkCommandBuffer commandBuffer, float extraPrimitiveOverestimationSize);
+typedef void (VKAPI_PTR *PFN_vkCmdSetDepthClipEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 depthClipEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetSampleLocationsEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 sampleLocationsEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetColorBlendAdvancedEXT)(VkCommandBuffer commandBuffer, deUint32 firstAttachment, deUint32 attachmentCount, const VkColorBlendAdvancedEXT* pColorBlendAdvanced);
+typedef void (VKAPI_PTR *PFN_vkCmdSetProvokingVertexModeEXT)(VkCommandBuffer commandBuffer, VkProvokingVertexModeEXT provokingVertexMode);
+typedef void (VKAPI_PTR *PFN_vkCmdSetLineRasterizationModeEXT)(VkCommandBuffer commandBuffer, VkLineRasterizationModeEXT lineRasterizationMode);
+typedef void (VKAPI_PTR *PFN_vkCmdSetLineStippleEnableEXT)(VkCommandBuffer commandBuffer, VkBool32 stippledLineEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetDepthClipNegativeOneToOneEXT)(VkCommandBuffer commandBuffer, VkBool32 negativeOneToOne);
+typedef void (VKAPI_PTR *PFN_vkCmdSetViewportWScalingEnableNV)(VkCommandBuffer commandBuffer, VkBool32 viewportWScalingEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetViewportSwizzleNV)(VkCommandBuffer commandBuffer, deUint32 firstViewport, deUint32 viewportCount, const VkViewportSwizzleNV* pViewportSwizzles);
+typedef void (VKAPI_PTR *PFN_vkCmdSetCoverageToColorEnableNV)(VkCommandBuffer commandBuffer, VkBool32 coverageToColorEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetCoverageToColorLocationNV)(VkCommandBuffer commandBuffer, deUint32 coverageToColorLocation);
+typedef void (VKAPI_PTR *PFN_vkCmdSetCoverageModulationModeNV)(VkCommandBuffer commandBuffer, VkCoverageModulationModeNV coverageModulationMode);
+typedef void (VKAPI_PTR *PFN_vkCmdSetCoverageModulationTableEnableNV)(VkCommandBuffer commandBuffer, VkBool32 coverageModulationTableEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetCoverageModulationTableNV)(VkCommandBuffer commandBuffer, deUint32 coverageModulationTableCount, const float* pCoverageModulationTable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetShadingRateImageEnableNV)(VkCommandBuffer commandBuffer, VkBool32 shadingRateImageEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetRepresentativeFragmentTestEnableNV)(VkCommandBuffer commandBuffer, VkBool32 representativeFragmentTestEnable);
+typedef void (VKAPI_PTR *PFN_vkCmdSetCoverageReductionModeNV)(VkCommandBuffer commandBuffer, VkCoverageReductionModeNV coverageReductionMode);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR void VKAPI_CALL vkCmdSetTessellationDomainOriginEXT(
+ VkCommandBuffer commandBuffer,
+ VkTessellationDomainOrigin domainOrigin);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthClampEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 depthClampEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetPolygonModeEXT(
+ VkCommandBuffer commandBuffer,
+ VkPolygonMode polygonMode);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetRasterizationSamplesEXT(
+ VkCommandBuffer commandBuffer,
+ VkSampleCountFlagBits rasterizationSamples);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetSampleMaskEXT(
+ VkCommandBuffer commandBuffer,
+ VkSampleCountFlagBits samples,
+ const VkSampleMask* pSampleMask);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetAlphaToCoverageEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 alphaToCoverageEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetAlphaToOneEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 alphaToOneEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetLogicOpEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 logicOpEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetColorBlendEnableEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 firstAttachment,
+ deUint32 attachmentCount,
+ const VkBool32* pColorBlendEnables);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetColorBlendEquationEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 firstAttachment,
+ deUint32 attachmentCount,
+ const VkColorBlendEquationEXT* pColorBlendEquations);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetColorWriteMaskEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 firstAttachment,
+ deUint32 attachmentCount,
+ const VkColorComponentFlags* pColorWriteMasks);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetRasterizationStreamEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 rasterizationStream);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetConservativeRasterizationModeEXT(
+ VkCommandBuffer commandBuffer,
+ VkConservativeRasterizationModeEXT conservativeRasterizationMode);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetExtraPrimitiveOverestimationSizeEXT(
+ VkCommandBuffer commandBuffer,
+ float extraPrimitiveOverestimationSize);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthClipEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 depthClipEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetSampleLocationsEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 sampleLocationsEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetColorBlendAdvancedEXT(
+ VkCommandBuffer commandBuffer,
+ deUint32 firstAttachment,
+ deUint32 attachmentCount,
+ const VkColorBlendAdvancedEXT* pColorBlendAdvanced);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetProvokingVertexModeEXT(
+ VkCommandBuffer commandBuffer,
+ VkProvokingVertexModeEXT provokingVertexMode);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetLineRasterizationModeEXT(
+ VkCommandBuffer commandBuffer,
+ VkLineRasterizationModeEXT lineRasterizationMode);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetLineStippleEnableEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 stippledLineEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetDepthClipNegativeOneToOneEXT(
+ VkCommandBuffer commandBuffer,
+ VkBool32 negativeOneToOne);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportWScalingEnableNV(
+ VkCommandBuffer commandBuffer,
+ VkBool32 viewportWScalingEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetViewportSwizzleNV(
+ VkCommandBuffer commandBuffer,
+ deUint32 firstViewport,
+ deUint32 viewportCount,
+ const VkViewportSwizzleNV* pViewportSwizzles);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetCoverageToColorEnableNV(
+ VkCommandBuffer commandBuffer,
+ VkBool32 coverageToColorEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetCoverageToColorLocationNV(
+ VkCommandBuffer commandBuffer,
+ deUint32 coverageToColorLocation);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetCoverageModulationModeNV(
+ VkCommandBuffer commandBuffer,
+ VkCoverageModulationModeNV coverageModulationMode);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetCoverageModulationTableEnableNV(
+ VkCommandBuffer commandBuffer,
+ VkBool32 coverageModulationTableEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetCoverageModulationTableNV(
+ VkCommandBuffer commandBuffer,
+ deUint32 coverageModulationTableCount,
+ const float* pCoverageModulationTable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetShadingRateImageEnableNV(
+ VkCommandBuffer commandBuffer,
+ VkBool32 shadingRateImageEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetRepresentativeFragmentTestEnableNV(
+ VkCommandBuffer commandBuffer,
+ VkBool32 representativeFragmentTestEnable);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdSetCoverageReductionModeNV(
+ VkCommandBuffer commandBuffer,
+ VkCoverageReductionModeNV coverageReductionMode);
+#endif
+
+
#define VK_EXT_subpass_merge_feedback 1
#define VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION 2
#define VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME "VK_EXT_subpass_merge_feedback"
#define VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME "VK_EXT_rasterization_order_attachment_access"
+#define VK_NV_optical_flow 1
+VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkOpticalFlowSessionNV)
+#define VK_NV_OPTICAL_FLOW_SPEC_VERSION 1
+#define VK_NV_OPTICAL_FLOW_EXTENSION_NAME "VK_NV_optical_flow"
+
+typedef enum VkOpticalFlowPerformanceLevelNV {
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV = 1,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV = 2,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV = 3,
+ VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MAX_ENUM_NV = 0x7FFFFFFF
+} VkOpticalFlowPerformanceLevelNV;
+
+typedef enum VkOpticalFlowSessionBindingPointNV {
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV = 1,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV = 2,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV = 3,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV = 4,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV = 5,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV = 6,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV = 7,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV = 8,
+ VK_OPTICAL_FLOW_SESSION_BINDING_POINT_MAX_ENUM_NV = 0x7FFFFFFF
+} VkOpticalFlowSessionBindingPointNV;
+
+typedef enum VkOpticalFlowGridSizeFlagBitsNV {
+ VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV = 0x00000002,
+ VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV = 0x00000004,
+ VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV = 0x00000008,
+ VK_OPTICAL_FLOW_GRID_SIZE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkOpticalFlowGridSizeFlagBitsNV;
+typedef VkFlags VkOpticalFlowGridSizeFlagsNV;
+
+typedef enum VkOpticalFlowUsageFlagBitsNV {
+ VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV = 0,
+ VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV = 0x00000002,
+ VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV = 0x00000004,
+ VK_OPTICAL_FLOW_USAGE_COST_BIT_NV = 0x00000008,
+ VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV = 0x00000010,
+ VK_OPTICAL_FLOW_USAGE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkOpticalFlowUsageFlagBitsNV;
+typedef VkFlags VkOpticalFlowUsageFlagsNV;
+
+typedef enum VkOpticalFlowSessionCreateFlagBitsNV {
+ VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV = 0x00000002,
+ VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV = 0x00000004,
+ VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV = 0x00000008,
+ VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV = 0x00000010,
+ VK_OPTICAL_FLOW_SESSION_CREATE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkOpticalFlowSessionCreateFlagBitsNV;
+typedef VkFlags VkOpticalFlowSessionCreateFlagsNV;
+
+typedef enum VkOpticalFlowExecuteFlagBitsNV {
+ VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV = 0x00000001,
+ VK_OPTICAL_FLOW_EXECUTE_FLAG_BITS_MAX_ENUM_NV = 0x7FFFFFFF
+} VkOpticalFlowExecuteFlagBitsNV;
+typedef VkFlags VkOpticalFlowExecuteFlagsNV;
+typedef struct VkPhysicalDeviceOpticalFlowFeaturesNV {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 opticalFlow;
+} VkPhysicalDeviceOpticalFlowFeaturesNV;
+
+typedef struct VkPhysicalDeviceOpticalFlowPropertiesNV {
+ VkStructureType sType;
+ void* pNext;
+ VkOpticalFlowGridSizeFlagsNV supportedOutputGridSizes;
+ VkOpticalFlowGridSizeFlagsNV supportedHintGridSizes;
+ VkBool32 hintSupported;
+ VkBool32 costSupported;
+ VkBool32 bidirectionalFlowSupported;
+ VkBool32 globalFlowSupported;
+ deUint32 minWidth;
+ deUint32 minHeight;
+ deUint32 maxWidth;
+ deUint32 maxHeight;
+ deUint32 maxNumRegionsOfInterest;
+} VkPhysicalDeviceOpticalFlowPropertiesNV;
+
+typedef struct VkOpticalFlowImageFormatInfoNV {
+ VkStructureType sType;
+ const void* pNext;
+ VkOpticalFlowUsageFlagsNV usage;
+} VkOpticalFlowImageFormatInfoNV;
+
+typedef struct VkOpticalFlowImageFormatPropertiesNV {
+ VkStructureType sType;
+ const void* pNext;
+ VkFormat format;
+} VkOpticalFlowImageFormatPropertiesNV;
+
+typedef struct VkOpticalFlowSessionCreateInfoNV {
+ VkStructureType sType;
+ void* pNext;
+ deUint32 width;
+ deUint32 height;
+ VkFormat imageFormat;
+ VkFormat flowVectorFormat;
+ VkFormat costFormat;
+ VkOpticalFlowGridSizeFlagsNV outputGridSize;
+ VkOpticalFlowGridSizeFlagsNV hintGridSize;
+ VkOpticalFlowPerformanceLevelNV performanceLevel;
+ VkOpticalFlowSessionCreateFlagsNV flags;
+} VkOpticalFlowSessionCreateInfoNV;
+
+typedef struct VkOpticalFlowSessionCreatePrivateDataInfoNV {
+ VkStructureType sType;
+ void* pNext;
+ deUint32 id;
+ deUint32 size;
+ const void* pPrivateData;
+} VkOpticalFlowSessionCreatePrivateDataInfoNV;
+
+typedef struct VkOpticalFlowExecuteInfoNV {
+ VkStructureType sType;
+ void* pNext;
+ VkOpticalFlowExecuteFlagsNV flags;
+ deUint32 regionCount;
+ const VkRect2D* pRegions;
+} VkOpticalFlowExecuteInfoNV;
+
+typedef VkResult (VKAPI_PTR *PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV)(VkPhysicalDevice physicalDevice, const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo, deUint32* pFormatCount, VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties);
+typedef VkResult (VKAPI_PTR *PFN_vkCreateOpticalFlowSessionNV)(VkDevice device, const VkOpticalFlowSessionCreateInfoNV* pCreateInfo, const VkAllocationCallbacks* pAllocator, VkOpticalFlowSessionNV* pSession);
+typedef void (VKAPI_PTR *PFN_vkDestroyOpticalFlowSessionNV)(VkDevice device, VkOpticalFlowSessionNV session, const VkAllocationCallbacks* pAllocator);
+typedef VkResult (VKAPI_PTR *PFN_vkBindOpticalFlowSessionImageNV)(VkDevice device, VkOpticalFlowSessionNV session, VkOpticalFlowSessionBindingPointNV bindingPoint, VkImageView view, VkImageLayout layout);
+typedef void (VKAPI_PTR *PFN_vkCmdOpticalFlowExecuteNV)(VkCommandBuffer commandBuffer, VkOpticalFlowSessionNV session, const VkOpticalFlowExecuteInfoNV* pExecuteInfo);
+
+#ifndef VK_NO_PROTOTYPES
+VKAPI_ATTR VkResult VKAPI_CALL vkGetPhysicalDeviceOpticalFlowImageFormatsNV(
+ VkPhysicalDevice physicalDevice,
+ const VkOpticalFlowImageFormatInfoNV* pOpticalFlowImageFormatInfo,
+ deUint32* pFormatCount,
+ VkOpticalFlowImageFormatPropertiesNV* pImageFormatProperties);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkCreateOpticalFlowSessionNV(
+ VkDevice device,
+ const VkOpticalFlowSessionCreateInfoNV* pCreateInfo,
+ const VkAllocationCallbacks* pAllocator,
+ VkOpticalFlowSessionNV* pSession);
+
+VKAPI_ATTR void VKAPI_CALL vkDestroyOpticalFlowSessionNV(
+ VkDevice device,
+ VkOpticalFlowSessionNV session,
+ const VkAllocationCallbacks* pAllocator);
+
+VKAPI_ATTR VkResult VKAPI_CALL vkBindOpticalFlowSessionImageNV(
+ VkDevice device,
+ VkOpticalFlowSessionNV session,
+ VkOpticalFlowSessionBindingPointNV bindingPoint,
+ VkImageView view,
+ VkImageLayout layout);
+
+VKAPI_ATTR void VKAPI_CALL vkCmdOpticalFlowExecuteNV(
+ VkCommandBuffer commandBuffer,
+ VkOpticalFlowSessionNV session,
+ const VkOpticalFlowExecuteInfoNV* pExecuteInfo);
+#endif
+
+
#define VK_EXT_legacy_dithering 1
#define VK_EXT_LEGACY_DITHERING_SPEC_VERSION 1
#define VK_EXT_LEGACY_DITHERING_EXTENSION_NAME "VK_EXT_legacy_dithering"
+#define VK_EXT_pipeline_protected_access 1
+#define VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION 1
+#define VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME "VK_EXT_pipeline_protected_access"
+typedef struct VkPhysicalDevicePipelineProtectedAccessFeaturesEXT {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 pipelineProtectedAccess;
+} VkPhysicalDevicePipelineProtectedAccessFeaturesEXT;
+
+
+
#define VK_QCOM_tile_properties 1
#define VK_QCOM_TILE_PROPERTIES_SPEC_VERSION 1
#define VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME "VK_QCOM_tile_properties"
+#define VK_EXT_mutable_descriptor_type 1
+#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION 1
+#define VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME "VK_EXT_mutable_descriptor_type"
+
+
+#define VK_ARM_shader_core_builtins 1
+#define VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION 1
+#define VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME "VK_ARM_shader_core_builtins"
+typedef struct VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM {
+ VkStructureType sType;
+ void* pNext;
+ VkBool32 shaderCoreBuiltins;
+} VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM;
+
+typedef struct VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM {
+ VkStructureType sType;
+ void* pNext;
+ deUint32 shaderCoreCount;
+ deUint32 shaderWarpsPerCore;
+} VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM;
+
+
+
#define VK_KHR_acceleration_structure 1
VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkAccelerationStructureKHR)
#define VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION 13
VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR = 0x7FFFFFFF
} VkBuildAccelerationStructureModeKHR;
-typedef enum VkAccelerationStructureBuildTypeKHR {
- VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR = 0,
- VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR = 1,
- VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR = 2,
- VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR = 0x7FFFFFFF
-} VkAccelerationStructureBuildTypeKHR;
-
-typedef enum VkAccelerationStructureCompatibilityKHR {
- VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR = 0,
- VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR = 1,
- VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR = 0x7FFFFFFF
-} VkAccelerationStructureCompatibilityKHR;
-
typedef enum VkAccelerationStructureCreateFlagBitsKHR {
VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR = 0x00000001,
VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV = 0x00000004,
VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR = 0x7FFFFFFF
} VkAccelerationStructureCreateFlagBitsKHR;
typedef VkFlags VkAccelerationStructureCreateFlagsKHR;
-typedef union VkDeviceOrHostAddressKHR {
- VkDeviceAddress deviceAddress;
- void* hostAddress;
-} VkDeviceOrHostAddressKHR;
-
typedef struct VkAccelerationStructureBuildRangeInfoKHR {
deUint32 primitiveCount;
deUint32 primitiveOffset;
NAME (VkDevice, const Vk##NAME##CreateInfo*) {} \
}
+#define VK_NULL_DEFINE_OBJ_WITH_POSTFIX(DEVICE_OR_INSTANCE, NAME, POSTFIX) \
+struct NAME##POSTFIX \
+{ \
+ NAME##POSTFIX (DEVICE_OR_INSTANCE, const Vk##NAME##CreateInfo##POSTFIX*) {} \
+};
+
VK_NULL_DEFINE_DEVICE_OBJ(Fence);
VK_NULL_DEFINE_DEVICE_OBJ(Semaphore);
VK_NULL_DEFINE_DEVICE_OBJ(Event);
VK_NULL_DEFINE_DEVICE_OBJ(QueryPool);
VK_NULL_DEFINE_DEVICE_OBJ(BufferView);
VK_NULL_DEFINE_DEVICE_OBJ(ImageView);
-#ifndef CTS_USES_VULKANSC
-VK_NULL_DEFINE_DEVICE_OBJ(ShaderModule);
-#endif // CTS_USES_VULKANSC
VK_NULL_DEFINE_DEVICE_OBJ(PipelineCache);
VK_NULL_DEFINE_DEVICE_OBJ(PipelineLayout);
VK_NULL_DEFINE_DEVICE_OBJ(DescriptorSetLayout);
VK_NULL_DEFINE_DEVICE_OBJ(Sampler);
VK_NULL_DEFINE_DEVICE_OBJ(Framebuffer);
+VK_NULL_DEFINE_DEVICE_OBJ(SamplerYcbcrConversion);
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, Swapchain, KHR)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkInstance, DebugUtilsMessenger, EXT)
+
+#ifndef CTS_USES_VULKANSC
+VK_NULL_DEFINE_DEVICE_OBJ(ShaderModule);
+VK_NULL_DEFINE_DEVICE_OBJ(DescriptorUpdateTemplate);
+VK_NULL_DEFINE_DEVICE_OBJ(PrivateDataSlot);
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkInstance, DebugReportCallback, EXT)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, CuModule, NVX)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, CuFunction, NVX)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, Micromap, EXT)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, OpticalFlowSession, NV)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, IndirectCommandsLayout, NV)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, AccelerationStructure, NV)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, AccelerationStructure, KHR)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, VideoSession, KHR)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, VideoSessionParameters, KHR)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, ValidationCache, EXT)
+VK_NULL_DEFINE_OBJ_WITH_POSTFIX(VkDevice, BufferCollection, FUCHSIA)
+#endif // CTS_USES_VULKANSC
class Instance
{
~DisplayModeKHR (void) {}
};
-#ifndef CTS_USES_VULKANSC
-class DebugReportCallbackEXT
-{
-public:
- DebugReportCallbackEXT (VkInstance, const VkDebugReportCallbackCreateInfoEXT*) {}
- ~DebugReportCallbackEXT (void) {}
-};
-
-class CuModuleNVX
-{
-public:
- CuModuleNVX (VkDevice, const VkCuModuleCreateInfoNVX*) {}
- ~CuModuleNVX(void) {}
-};
-
-class CuFunctionNVX
-{
-public:
- CuFunctionNVX(VkDevice, const VkCuFunctionCreateInfoNVX*) {}
- ~CuFunctionNVX(void) {}
-};
-
-#endif // CTS_USES_VULKANSC
-
class Device
{
public:
RenderPass (VkDevice, const VkRenderPassCreateInfo2*) {}
};
-class SwapchainKHR
-{
-public:
- SwapchainKHR (VkDevice, const VkSwapchainCreateInfoKHR*) {}
- ~SwapchainKHR (void) {}
-};
-
-class SamplerYcbcrConversion
-{
-public:
- SamplerYcbcrConversion (VkDevice, const VkSamplerYcbcrConversionCreateInfo*) {}
-};
-
class Buffer
{
public:
};
#endif // defined(USE_ANDROID_O_HARDWARE_BUFFER)
-class IndirectCommandsLayoutNV
-{
-public:
- IndirectCommandsLayoutNV (VkDevice, const VkIndirectCommandsLayoutCreateInfoNV*)
- {}
-};
-
-class AccelerationStructureNV
-{
-public:
- AccelerationStructureNV (VkDevice, const VkAccelerationStructureCreateInfoNV*)
- {}
-};
-
-class AccelerationStructureKHR
-{
-public:
- AccelerationStructureKHR (VkDevice, const VkAccelerationStructureCreateInfoKHR*)
- {}
-};
-
#endif // CTS_USES_VULKANSC
-class DebugUtilsMessengerEXT
-{
-public:
- DebugUtilsMessengerEXT(VkInstance, const VkDebugUtilsMessengerCreateInfoEXT*)
- {}
-};
-
class DeferredOperationKHR
{
public:
{}
};
-#ifndef CTS_USES_VULKANSC
-
-class VideoSessionKHR
-{
-public:
- VideoSessionKHR (VkDevice, const VkVideoSessionCreateInfoKHR*)
- {}
-};
-
-class VideoSessionParametersKHR
-{
-public:
- VideoSessionParametersKHR (VkDevice, const VkVideoSessionParametersCreateInfoKHR*)
- {}
-};
-
-class ValidationCacheEXT
-{
-public:
- ValidationCacheEXT (VkDevice, const VkValidationCacheCreateInfoEXT*)
- {}
-};
-
-#endif // CTS_USES_VULKANSC
-
class CommandBuffer
{
public:
{}
};
-#ifndef CTS_USES_VULKANSC
-
-class DescriptorUpdateTemplate
-{
-public:
- DescriptorUpdateTemplate (VkDevice, const VkDescriptorUpdateTemplateCreateInfo*)
- {}
-};
-
-class PrivateDataSlot
-{
-public:
- PrivateDataSlot (VkDevice, const VkPrivateDataSlotCreateInfo*)
- {}
-};
-
-class BufferCollectionFUCHSIA
-{
-public:
- BufferCollectionFUCHSIA (VkDevice, const VkBufferCollectionCreateInfoFUCHSIA*)
- {}
-};
-
-#endif // CTS_USES_VULKANSC
-
class CommandPool
{
public:
dEQP-VK.api.info.get_physical_device_properties2.features.border_color_swizzle_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state2_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.extended_dynamic_state3_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.zero_initialize_workgroup_memory_features
dEQP-VK.api.info.get_physical_device_properties2.features.shader_subgroup_uniform_control_flow_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.robustness2_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.fragment_shading_rate_features_khr
dEQP-VK.api.info.get_physical_device_properties2.features.shader_terminate_invocation_features
dEQP-VK.api.info.get_physical_device_properties2.features.image2_d_view_of3_d_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.mutable_descriptor_type_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.depth_clip_control_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.vertex_input_dynamic_state_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.color_write_enable_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.primitives_generated_query_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.legacy_dithering_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.multisampled_render_to_single_sampled_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_protected_access_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.ycbcr2_plane444_formats_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.provoking_vertex_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.shader_integer_dot_product_features
dEQP-VK.api.info.get_physical_device_properties2.features.image_compression_control_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.image_compression_control_swapchain_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.subpass_merge_feedback_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.opacity_micromap_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_properties_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.non_seamless_cube_map_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.pipeline_robustness_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.amigo_profiling_features_sec
dEQP-VK.api.info.get_physical_device_properties2.features.attachment_feedback_loop_layout_features_ext
dEQP-VK.api.info.get_physical_device_properties2.features.depth_clamp_zero_one_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.address_binding_report_features_ext
+dEQP-VK.api.info.get_physical_device_properties2.features.fault_features_ext
dEQP-VK.api.info.get_physical_device_properties2.properties.basic
dEQP-VK.api.info.get_physical_device_properties2.format_properties.basic
dEQP-VK.api.info.get_physical_device_properties2.queue_family_properties.basic
dEQP-VK.api.device_init.create_device_unsupported_features.texture_compression_astchdr_features
dEQP-VK.api.device_init.create_device_unsupported_features.cooperative_matrix_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.ycbcr_image_arrays_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.present_barrier_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.performance_query_features_khr
dEQP-VK.api.device_init.create_device_unsupported_features.coverage_reduction_mode_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.shader_integer_functions2_features_intel
dEQP-VK.api.device_init.create_device_unsupported_features.border_color_swizzle_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state2_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.extended_dynamic_state3_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.diagnostics_config_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.zero_initialize_workgroup_memory_features
dEQP-VK.api.device_init.create_device_unsupported_features.shader_subgroup_uniform_control_flow_features_khr
dEQP-VK.api.device_init.create_device_unsupported_features.shader_terminate_invocation_features
dEQP-VK.api.device_init.create_device_unsupported_features.fragment_shading_rate_enums_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.image2_d_view_of3_d_features_ext
-dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_valve
+dEQP-VK.api.device_init.create_device_unsupported_features.mutable_descriptor_type_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clip_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.vertex_input_dynamic_state_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.external_memory_rdma_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.primitives_generated_query_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.legacy_dithering_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.multisampled_render_to_single_sampled_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_protected_access_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.inherited_viewport_scissor_features_nv
dEQP-VK.api.device_init.create_device_unsupported_features.ycbcr2_plane444_formats_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.provoking_vertex_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.image_compression_control_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.image_compression_control_swapchain_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.subpass_merge_feedback_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.opacity_micromap_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.pipeline_properties_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.shader_early_and_late_fragment_tests_features_amd
dEQP-VK.api.device_init.create_device_unsupported_features.non_seamless_cube_map_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.amigo_profiling_features_sec
dEQP-VK.api.device_init.create_device_unsupported_features.attachment_feedback_loop_layout_features_ext
dEQP-VK.api.device_init.create_device_unsupported_features.depth_clamp_zero_one_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.address_binding_report_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.optical_flow_features_nv
+dEQP-VK.api.device_init.create_device_unsupported_features.fault_features_ext
+dEQP-VK.api.device_init.create_device_unsupported_features.shader_core_builtins_features_arm
dEQP-VK.api.device_init.create_device_queue2.basic
dEQP-VK.api.device_init.create_instance_device_intentional_alloc_fail.basic
dEQP-VK.api.device_init.create_device_queue2_two_queues.basic
alias = commandNode.get("alias")
# if node is alias then use the fact that alias definition follows aliased structure
if alias is not None:
- lastFunction = self.functions[-1]
- # make sure last structure that was added to list is beeing aliased now
- # if this assert fails use same workaround as for structures
- assert(alias == lastFunction.name)
- lastFunction.aliasList.append(commandNode.get("name"))
+ # aliased command has usually been added recently, so we iterate in reverse order
+ found = False
+ for f in reversed(self.functions):
+ found = (f.name == alias)
+ if found:
+ f.aliasList.append(commandNode.get("name"))
+ break
+ assert found
# go to next node
return
# memorize all parameters
"StdVideoDecodeH265PictureInfoFlags",
"StdVideoDecodeH265ReferenceInfoFlags",
"StdVideoEncodeH265PictureInfoFlags",
- "StdVideoEncodeH265SliceHeaderFlags",
+ "StdVideoEncodeH265SliceSegmentHeaderFlags",
"StdVideoEncodeH265ReferenceModificationFlags",
"StdVideoEncodeH265ReferenceInfoFlags",
- "StdVideoEncodeH265SliceSegmentHeaderFlags",
+ "StdVideoH265ProfileTierLevelFlags",
+ "StdVideoH265ShortTermRefPicSetFlags"
])
def isSimpleStruct (type):