Update for Vulkan-Docs 1.4.230
This commit is contained in:
parent
33d7f51258
commit
ee3b5caaa7
25 changed files with 18311 additions and 13125 deletions
|
|
@ -144,7 +144,7 @@ typedef enum StdVideoAV1ColorPrimaries {
|
|||
STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_432 = 12,
|
||||
STD_VIDEO_AV1_COLOR_PRIMARIES_EBU_3213 = 22,
|
||||
STD_VIDEO_AV1_COLOR_PRIMARIES_INVALID = 0x7FFFFFFF,
|
||||
// STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED is a deprecated alias
|
||||
// STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED is a legacy alias
|
||||
STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED = STD_VIDEO_AV1_COLOR_PRIMARIES_UNSPECIFIED,
|
||||
STD_VIDEO_AV1_COLOR_PRIMARIES_MAX_ENUM = 0x7FFFFFFF
|
||||
} StdVideoAV1ColorPrimaries;
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -462,6 +462,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
"VK_NV_descriptor_pool_overallocation",
|
||||
"VK_QCOM_tile_memory_heap",
|
||||
"VK_KHR_copy_memory_indirect",
|
||||
"VK_EXT_memory_decompression",
|
||||
"VK_KHR_video_encode_intra_refresh",
|
||||
"VK_KHR_video_encode_quantization_map",
|
||||
"VK_NV_raw_access_chains",
|
||||
|
|
@ -482,6 +483,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
"VK_EXT_depth_clamp_control",
|
||||
"VK_KHR_maintenance9",
|
||||
"VK_KHR_video_maintenance2",
|
||||
#if defined( VK_USE_PLATFORM_OHOS )
|
||||
"VK_OHOS_native_buffer",
|
||||
#endif /*VK_USE_PLATFORM_OHOS*/
|
||||
"VK_HUAWEI_hdr_vivid",
|
||||
"VK_NV_cooperative_matrix2",
|
||||
"VK_ARM_pipeline_opacity_micromap",
|
||||
|
|
@ -499,7 +503,10 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
"VK_EXT_fragment_density_map_offset",
|
||||
"VK_EXT_zero_initialize_device_memory",
|
||||
"VK_KHR_present_mode_fifo_latest_ready",
|
||||
"VK_SEC_pipeline_cache_incremental_mode" };
|
||||
"VK_EXT_shader_64bit_indexing",
|
||||
"VK_KHR_maintenance10",
|
||||
"VK_SEC_pipeline_cache_incremental_mode",
|
||||
"VK_EXT_shader_uniform_buffer_unsized_array" };
|
||||
return deviceExtensions;
|
||||
}
|
||||
|
||||
|
|
@ -600,42 +607,48 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_display",
|
||||
"VK_KHR_swapchain",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_XLIB_KHR )
|
||||
,
|
||||
{ "VK_KHR_xlib_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_XLIB_KHR*/
|
||||
#if defined( VK_USE_PLATFORM_XCB_KHR )
|
||||
,
|
||||
{ "VK_KHR_xcb_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_XCB_KHR*/
|
||||
#if defined( VK_USE_PLATFORM_WAYLAND_KHR )
|
||||
,
|
||||
{ "VK_KHR_wayland_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WAYLAND_KHR*/
|
||||
#if defined( VK_USE_PLATFORM_ANDROID_KHR )
|
||||
,
|
||||
{ "VK_KHR_android_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_KHR_win32_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_EXT_debug_marker",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -694,14 +707,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_depth_stencil_resolve",
|
||||
} } },
|
||||
{ "VK_VERSION_1_2", { {} } } } },
|
||||
{ "VK_VERSION_1_2", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_GGP )
|
||||
,
|
||||
{ "VK_GGP_stream_descriptor_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_GGP*/
|
||||
,
|
||||
{ "VK_NV_corner_sampled_image",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -718,8 +733,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_NV_external_memory_capabilities",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_NV_external_memory_win32",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -729,20 +745,23 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_NV_external_memory_win32",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_KHR_device_group",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_device_group_creation",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_VI_NN )
|
||||
,
|
||||
{ "VK_NN_vi_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_VI_NN*/
|
||||
,
|
||||
{ "VK_EXT_texture_compression_astc_hdr",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -772,28 +791,32 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_external_memory_capabilities",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_KHR_external_memory_win32",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_memory",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_KHR_external_memory_fd",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_memory",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_KHR_win32_keyed_mutex",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_memory_win32",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_KHR_external_semaphore_capabilities",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -804,14 +827,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_semaphore_capabilities",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_KHR_external_semaphore_win32",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_semaphore",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_KHR_external_semaphore_fd",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -852,14 +877,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_display",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_XLIB_XRANDR_EXT )
|
||||
,
|
||||
{ "VK_EXT_acquire_xlib_display",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_EXT_direct_mode_display",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_XLIB_XRANDR_EXT*/
|
||||
,
|
||||
{ "VK_EXT_display_surface_counter",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -957,14 +984,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_fence_capabilities",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_KHR_external_fence_win32",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_fence",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_KHR_external_fence_fd",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -993,21 +1022,24 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_display",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_IOS_MVK )
|
||||
,
|
||||
{ "VK_MVK_ios_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_IOS_MVK*/
|
||||
#if defined( VK_USE_PLATFORM_MACOS_MVK )
|
||||
,
|
||||
{ "VK_MVK_macos_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
|
||||
,
|
||||
{ "VK_EXT_external_memory_dma_buf",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1024,8 +1056,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_get_memory_requirements2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_ANDROID_KHR )
|
||||
,
|
||||
{ "VK_ANDROID_external_memory_android_hardware_buffer",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1037,15 +1070,17 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_EXT_queue_family_foreign",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
|
||||
,
|
||||
{ "VK_EXT_sampler_filter_minmax",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
,
|
||||
{ "VK_AMDX_shader_enqueue",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1059,8 +1094,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_maintenance5",
|
||||
"VK_KHR_pipeline_library",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
,
|
||||
{ "VK_EXT_inline_uniform_block",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1146,15 +1182,17 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
"VK_KHR_get_physical_device_properties2",
|
||||
"VK_KHR_maintenance3",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
,
|
||||
{ "VK_KHR_portability_subset",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
,
|
||||
{ "VK_NV_shading_rate_image",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1234,15 +1272,17 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_GGP )
|
||||
,
|
||||
{ "VK_GGP_frame_token",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_GGP_stream_descriptor_surface",
|
||||
"VK_KHR_swapchain",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_GGP*/
|
||||
,
|
||||
{ "VK_KHR_driver_properties",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1349,27 +1389,31 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_get_surface_capabilities2",
|
||||
"VK_KHR_swapchain",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_FUCHSIA )
|
||||
,
|
||||
{ "VK_FUCHSIA_imagepipe_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_FUCHSIA*/
|
||||
,
|
||||
{ "VK_KHR_shader_terminate_invocation",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_METAL_EXT )
|
||||
,
|
||||
{ "VK_EXT_metal_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
,
|
||||
{ "VK_EXT_fragment_density_map",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1518,8 +1562,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_EXT_full_screen_exclusive",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1533,8 +1578,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
"VK_KHR_get_surface_capabilities2",
|
||||
"VK_KHR_surface",
|
||||
"VK_KHR_swapchain",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
,
|
||||
{ "VK_EXT_headless_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1881,21 +1927,24 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_sampler_ycbcr_conversion",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
,
|
||||
{ "VK_NV_acquire_winrt_display",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_EXT_direct_mode_display",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
#if defined( VK_USE_PLATFORM_DIRECTFB_EXT )
|
||||
,
|
||||
{ "VK_EXT_directfb_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_DIRECTFB_EXT*/
|
||||
,
|
||||
{ "VK_VALVE_mutable_descriptor_type",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1945,8 +1994,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_swapchain",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_FUCHSIA )
|
||||
,
|
||||
{ "VK_FUCHSIA_external_memory",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -1969,8 +2019,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_FUCHSIA_external_memory",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_FUCHSIA*/
|
||||
,
|
||||
{ "VK_HUAWEI_subpass_shading",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2016,14 +2067,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_SCREEN_QNX )
|
||||
,
|
||||
{ "VK_QNX_screen_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
|
||||
,
|
||||
{ "VK_EXT_color_write_enable",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2094,14 +2147,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ "VK_VERSION_1_3",
|
||||
{ {
|
||||
"VK_KHR_acceleration_structure",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
,
|
||||
{ "VK_NV_displacement_micromap",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_EXT_opacity_micromap",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
,
|
||||
{ "VK_HUAWEI_cluster_culling_shader",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2292,21 +2347,24 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#if defined( VK_USE_PLATFORM_ANDROID_KHR )
|
||||
,
|
||||
{ "VK_ANDROID_external_format_resolve",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_ANDROID_external_memory_android_hardware_buffer",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_ANDROID_KHR*/
|
||||
,
|
||||
{ "VK_KHR_maintenance5",
|
||||
{ { "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_KHR_dynamic_rendering",
|
||||
} } },
|
||||
{ "VK_VERSION_1_3", { {} } } } },
|
||||
{ "VK_VERSION_1_3", { {} } } } }
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
,
|
||||
{ "VK_AMDX_dense_geometry_format",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2316,8 +2374,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ "VK_VERSION_1_4",
|
||||
{ {
|
||||
"VK_KHR_acceleration_structure",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
,
|
||||
{ "VK_KHR_present_id2",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2532,8 +2591,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_KHR_shader_float_controls",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_SCREEN_QNX )
|
||||
,
|
||||
{ "VK_QNX_external_memory_screen_buffer",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2545,8 +2605,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ "VK_VERSION_1_1",
|
||||
{ {
|
||||
"VK_EXT_queue_family_foreign",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_SCREEN_QNX*/
|
||||
,
|
||||
{ "VK_MSFT_layered_driver",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2593,6 +2654,12 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_2", { {} } } } },
|
||||
{ "VK_EXT_memory_decompression",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_buffer_device_address",
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } } } },
|
||||
{ "VK_NV_display_stereo",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2659,14 +2726,16 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_video_queue",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_OHOS )
|
||||
,
|
||||
{ "VK_OHOS_surface",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_surface",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#endif /*VK_USE_PLATFORM_OHOS*/
|
||||
,
|
||||
{ "VK_HUAWEI_hdr_vivid",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2688,15 +2757,17 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_EXT_opacity_micromap",
|
||||
} } } } },
|
||||
} } } } }
|
||||
#if defined( VK_USE_PLATFORM_METAL_EXT )
|
||||
,
|
||||
{ "VK_EXT_external_memory_metal",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_external_memory",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
,
|
||||
{ "VK_KHR_depth_clamp_zero_one",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
|
|
@ -2758,7 +2829,19 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_swapchain",
|
||||
} } } } }
|
||||
} } } } },
|
||||
{ "VK_EXT_shader_64bit_indexing",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } },
|
||||
{ "VK_KHR_maintenance10",
|
||||
{ { "VK_VERSION_1_0",
|
||||
{ {
|
||||
"VK_KHR_get_physical_device_properties2",
|
||||
} } },
|
||||
{ "VK_VERSION_1_1", { {} } } } }
|
||||
};
|
||||
auto depIt = dependencies.find( extension );
|
||||
return ( depIt != dependencies.end() ) ? depIt->second : noDependencies;
|
||||
|
|
@ -2902,6 +2985,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{ "VK_EXT_depth_clamp_zero_one", "VK_KHR_depth_clamp_zero_one" },
|
||||
{ "VK_QCOM_fragment_density_map_offset", "VK_EXT_fragment_density_map_offset" },
|
||||
{ "VK_NV_copy_memory_indirect", "VK_KHR_copy_memory_indirect" },
|
||||
{ "VK_NV_memory_decompression", "VK_EXT_memory_decompression" },
|
||||
{ "VK_EXT_pipeline_protected_access", "VK_VERSION_1_4" },
|
||||
{ "VK_KHR_maintenance5", "VK_VERSION_1_4" },
|
||||
{ "VK_KHR_vertex_attribute_divisor", "VK_VERSION_1_4" },
|
||||
|
|
@ -3406,6 +3490,10 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{
|
||||
return "VK_KHR_copy_memory_indirect";
|
||||
}
|
||||
if ( extension == "VK_NV_memory_decompression" )
|
||||
{
|
||||
return "VK_EXT_memory_decompression";
|
||||
}
|
||||
if ( extension == "VK_EXT_pipeline_protected_access" )
|
||||
{
|
||||
return "VK_VERSION_1_4";
|
||||
|
|
@ -3453,23 +3541,23 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
{
|
||||
return ( extension == "VK_EXT_debug_report" ) || ( extension == "VK_NV_glsl_shader" ) || ( extension == "VK_NV_dedicated_allocation" ) ||
|
||||
( extension == "VK_AMD_gpu_shader_half_float" ) || ( extension == "VK_IMG_format_pvrtc" ) || ( extension == "VK_NV_external_memory_capabilities" ) ||
|
||||
( extension == "VK_NV_external_memory" ) ||
|
||||
( extension == "VK_NV_external_memory" )
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
( extension == "VK_NV_external_memory_win32" ) ||
|
||||
|| ( extension == "VK_NV_external_memory_win32" )
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
( extension == "VK_EXT_validation_flags" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || ( extension == "VK_EXT_shader_subgroup_vote" ) ||
|
||||
|| ( extension == "VK_EXT_validation_flags" ) || ( extension == "VK_EXT_shader_subgroup_ballot" ) || ( extension == "VK_EXT_shader_subgroup_vote" )
|
||||
#if defined( VK_USE_PLATFORM_IOS_MVK )
|
||||
( extension == "VK_MVK_ios_surface" ) ||
|
||||
|| ( extension == "VK_MVK_ios_surface" )
|
||||
#endif /*VK_USE_PLATFORM_IOS_MVK*/
|
||||
#if defined( VK_USE_PLATFORM_MACOS_MVK )
|
||||
( extension == "VK_MVK_macos_surface" ) ||
|
||||
|| ( extension == "VK_MVK_macos_surface" )
|
||||
#endif /*VK_USE_PLATFORM_MACOS_MVK*/
|
||||
( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_EXT_buffer_device_address" ) ||
|
||||
( extension == "VK_EXT_validation_features" ) ||
|
||||
|| ( extension == "VK_AMD_gpu_shader_int16" ) || ( extension == "VK_NV_ray_tracing" ) || ( extension == "VK_EXT_buffer_device_address" ) ||
|
||||
( extension == "VK_EXT_validation_features" )
|
||||
#if defined( VK_ENABLE_BETA_EXTENSIONS )
|
||||
( extension == "VK_NV_displacement_micromap" ) ||
|
||||
|| ( extension == "VK_NV_displacement_micromap" )
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
false;
|
||||
|| false;
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isDeviceExtension( std::string const & extension )
|
||||
|
|
@ -3671,17 +3759,20 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
|| ( extension == "VK_MSFT_layered_driver" ) || ( extension == "VK_KHR_index_type_uint8" ) || ( extension == "VK_KHR_line_rasterization" ) ||
|
||||
( extension == "VK_KHR_calibrated_timestamps" ) || ( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ) ||
|
||||
( extension == "VK_NV_descriptor_pool_overallocation" ) || ( extension == "VK_QCOM_tile_memory_heap" ) ||
|
||||
( extension == "VK_KHR_copy_memory_indirect" ) || ( extension == "VK_KHR_video_encode_intra_refresh" ) ||
|
||||
( extension == "VK_KHR_video_encode_quantization_map" ) || ( extension == "VK_NV_raw_access_chains" ) ||
|
||||
( extension == "VK_NV_external_compute_queue" ) || ( extension == "VK_KHR_shader_relaxed_extended_instruction" ) ||
|
||||
( extension == "VK_NV_command_buffer_inheritance" ) || ( extension == "VK_KHR_maintenance7" ) ||
|
||||
( extension == "VK_NV_shader_atomic_float16_vector" ) || ( extension == "VK_EXT_shader_replicated_composites" ) ||
|
||||
( extension == "VK_EXT_shader_float8" ) || ( extension == "VK_NV_ray_tracing_validation" ) ||
|
||||
( extension == "VK_NV_cluster_acceleration_structure" ) || ( extension == "VK_NV_partitioned_acceleration_structure" ) ||
|
||||
( extension == "VK_EXT_device_generated_commands" ) || ( extension == "VK_KHR_maintenance8" ) ||
|
||||
( extension == "VK_MESA_image_alignment_control" ) || ( extension == "VK_KHR_shader_fma" ) || ( extension == "VK_EXT_depth_clamp_control" ) ||
|
||||
( extension == "VK_KHR_maintenance9" ) || ( extension == "VK_KHR_video_maintenance2" ) || ( extension == "VK_HUAWEI_hdr_vivid" ) ||
|
||||
( extension == "VK_NV_cooperative_matrix2" ) || ( extension == "VK_ARM_pipeline_opacity_micromap" )
|
||||
( extension == "VK_KHR_copy_memory_indirect" ) || ( extension == "VK_EXT_memory_decompression" ) ||
|
||||
( extension == "VK_KHR_video_encode_intra_refresh" ) || ( extension == "VK_KHR_video_encode_quantization_map" ) ||
|
||||
( extension == "VK_NV_raw_access_chains" ) || ( extension == "VK_NV_external_compute_queue" ) ||
|
||||
( extension == "VK_KHR_shader_relaxed_extended_instruction" ) || ( extension == "VK_NV_command_buffer_inheritance" ) ||
|
||||
( extension == "VK_KHR_maintenance7" ) || ( extension == "VK_NV_shader_atomic_float16_vector" ) ||
|
||||
( extension == "VK_EXT_shader_replicated_composites" ) || ( extension == "VK_EXT_shader_float8" ) ||
|
||||
( extension == "VK_NV_ray_tracing_validation" ) || ( extension == "VK_NV_cluster_acceleration_structure" ) ||
|
||||
( extension == "VK_NV_partitioned_acceleration_structure" ) || ( extension == "VK_EXT_device_generated_commands" ) ||
|
||||
( extension == "VK_KHR_maintenance8" ) || ( extension == "VK_MESA_image_alignment_control" ) || ( extension == "VK_KHR_shader_fma" ) ||
|
||||
( extension == "VK_EXT_depth_clamp_control" ) || ( extension == "VK_KHR_maintenance9" ) || ( extension == "VK_KHR_video_maintenance2" )
|
||||
#if defined( VK_USE_PLATFORM_OHOS )
|
||||
|| ( extension == "VK_OHOS_native_buffer" )
|
||||
#endif /*VK_USE_PLATFORM_OHOS*/
|
||||
|| ( extension == "VK_HUAWEI_hdr_vivid" ) || ( extension == "VK_NV_cooperative_matrix2" ) || ( extension == "VK_ARM_pipeline_opacity_micromap" )
|
||||
#if defined( VK_USE_PLATFORM_METAL_EXT )
|
||||
|| ( extension == "VK_EXT_external_memory_metal" )
|
||||
#endif /*VK_USE_PLATFORM_METAL_EXT*/
|
||||
|
|
@ -3691,7 +3782,9 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
|| ( extension == "VK_NV_present_metering" )
|
||||
#endif /*VK_ENABLE_BETA_EXTENSIONS*/
|
||||
|| ( extension == "VK_EXT_fragment_density_map_offset" ) || ( extension == "VK_EXT_zero_initialize_device_memory" ) ||
|
||||
( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_SEC_pipeline_cache_incremental_mode" );
|
||||
( extension == "VK_KHR_present_mode_fifo_latest_ready" ) || ( extension == "VK_EXT_shader_64bit_indexing" ) ||
|
||||
( extension == "VK_KHR_maintenance10" ) || ( extension == "VK_SEC_pipeline_cache_incremental_mode" ) ||
|
||||
( extension == "VK_EXT_shader_uniform_buffer_unsized_array" );
|
||||
}
|
||||
|
||||
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isInstanceExtension( std::string const & extension )
|
||||
|
|
@ -3767,11 +3860,11 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
VULKAN_HPP_INLINE VULKAN_HPP_CONSTEXPR_20 bool isPromotedExtension( std::string const & extension )
|
||||
{
|
||||
return ( extension == "VK_KHR_sampler_mirror_clamp_to_edge" ) || ( extension == "VK_EXT_debug_marker" ) || ( extension == "VK_AMD_draw_indirect_count" ) ||
|
||||
( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_KHR_multiview" ) ||
|
||||
( extension == "VK_KHR_dynamic_rendering" ) || ( extension == "VK_KHR_multiview" )
|
||||
#if defined( VK_USE_PLATFORM_WIN32_KHR )
|
||||
( extension == "VK_NV_win32_keyed_mutex" ) ||
|
||||
|| ( extension == "VK_NV_win32_keyed_mutex" )
|
||||
#endif /*VK_USE_PLATFORM_WIN32_KHR*/
|
||||
( extension == "VK_KHR_get_physical_device_properties2" ) || ( extension == "VK_KHR_device_group" ) ||
|
||||
|| ( extension == "VK_KHR_get_physical_device_properties2" ) || ( extension == "VK_KHR_device_group" ) ||
|
||||
( extension == "VK_KHR_shader_draw_parameters" ) || ( extension == "VK_EXT_texture_compression_astc_hdr" ) ||
|
||||
( extension == "VK_EXT_pipeline_robustness" ) || ( extension == "VK_KHR_maintenance1" ) || ( extension == "VK_KHR_device_group_creation" ) ||
|
||||
( extension == "VK_KHR_external_memory_capabilities" ) || ( extension == "VK_KHR_external_memory" ) ||
|
||||
|
|
@ -3808,7 +3901,8 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
( extension == "VK_EXT_extended_dynamic_state2" ) || ( extension == "VK_EXT_global_priority_query" ) ||
|
||||
( extension == "VK_EXT_load_store_op_none" ) || ( extension == "VK_KHR_maintenance4" ) || ( extension == "VK_KHR_shader_subgroup_rotate" ) ||
|
||||
( extension == "VK_EXT_depth_clamp_zero_one" ) || ( extension == "VK_QCOM_fragment_density_map_offset" ) ||
|
||||
( extension == "VK_NV_copy_memory_indirect" ) || ( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) ||
|
||||
( extension == "VK_NV_copy_memory_indirect" ) || ( extension == "VK_NV_memory_decompression" ) ||
|
||||
( extension == "VK_EXT_pipeline_protected_access" ) || ( extension == "VK_KHR_maintenance5" ) ||
|
||||
( extension == "VK_KHR_vertex_attribute_divisor" ) || ( extension == "VK_KHR_load_store_op_none" ) ||
|
||||
( extension == "VK_KHR_shader_float_controls2" ) || ( extension == "VK_KHR_index_type_uint8" ) || ( extension == "VK_KHR_line_rasterization" ) ||
|
||||
( extension == "VK_KHR_shader_expect_assume" ) || ( extension == "VK_KHR_maintenance6" ) || ( extension == "VK_EXT_vertex_attribute_robustness" );
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -94,15 +94,6 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::Event>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::Event const & event ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkEvent>{}( static_cast<VkEvent>( event ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::QueryPool>
|
||||
{
|
||||
|
|
@ -121,15 +112,6 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::BufferView>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::BufferView const & bufferView ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkBufferView>{}( static_cast<VkBufferView>( bufferView ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::Image>
|
||||
{
|
||||
|
|
@ -148,6 +130,42 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::CommandPool>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandPool const & commandPool ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkCommandPool>{}( static_cast<VkCommandPool>( commandPool ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::CommandBuffer>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandBuffer const & commandBuffer ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkCommandBuffer>{}( static_cast<VkCommandBuffer>( commandBuffer ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::Event>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::Event const & event ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkEvent>{}( static_cast<VkEvent>( event ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::BufferView>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::BufferView const & bufferView ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkBufferView>{}( static_cast<VkBufferView>( bufferView ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::ShaderModule>
|
||||
{
|
||||
|
|
@ -238,35 +256,8 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::CommandPool>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandPool const & commandPool ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkCommandPool>{}( static_cast<VkCommandPool>( commandPool ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::CommandBuffer>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::CommandBuffer const & commandBuffer ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkCommandBuffer>{}( static_cast<VkCommandBuffer>( commandBuffer ) );
|
||||
}
|
||||
};
|
||||
|
||||
//=== VK_VERSION_1_1 ===
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const & samplerYcbcrConversion ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkSamplerYcbcrConversion>{}( static_cast<VkSamplerYcbcrConversion>( samplerYcbcrConversion ) );
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::DescriptorUpdateTemplate>
|
||||
{
|
||||
|
|
@ -276,6 +267,15 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::SamplerYcbcrConversion const & samplerYcbcrConversion ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
return std::hash<VkSamplerYcbcrConversion>{}( static_cast<VkSamplerYcbcrConversion>( samplerYcbcrConversion ) );
|
||||
}
|
||||
};
|
||||
|
||||
//=== VK_VERSION_1_3 ===
|
||||
|
||||
template <>
|
||||
|
|
@ -3858,6 +3858,35 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::DecompressMemoryRegionEXT>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::DecompressMemoryRegionEXT const & decompressMemoryRegionEXT ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryRegionEXT.srcAddress );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryRegionEXT.dstAddress );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryRegionEXT.compressedSize );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryRegionEXT.decompressedSize );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::DecompressMemoryInfoEXT>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::DecompressMemoryInfoEXT const & decompressMemoryInfoEXT ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryInfoEXT.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryInfoEXT.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryInfoEXT.decompressionMethod );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryInfoEXT.regionCount );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, decompressMemoryInfoEXT.pRegions );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::DecompressMemoryRegionNV>
|
||||
{
|
||||
|
|
@ -8428,6 +8457,21 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
# if defined( VK_USE_PLATFORM_OHOS )
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::NativeBufferOHOS>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::NativeBufferOHOS const & nativeBufferOHOS ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, nativeBufferOHOS.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, nativeBufferOHOS.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, nativeBufferOHOS.handle );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
# endif /*VK_USE_PLATFORM_OHOS*/
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::OpaqueCaptureDescriptorDataCreateInfoEXT>
|
||||
{
|
||||
|
|
@ -11526,6 +11570,36 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10FeaturesKHR>
|
||||
{
|
||||
std::size_t
|
||||
operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10FeaturesKHR const & physicalDeviceMaintenance10FeaturesKHR ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10FeaturesKHR.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10FeaturesKHR.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10FeaturesKHR.maintenance10 );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10PropertiesKHR>
|
||||
{
|
||||
std::size_t
|
||||
operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance10PropertiesKHR const & physicalDeviceMaintenance10PropertiesKHR ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10PropertiesKHR.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10PropertiesKHR.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10PropertiesKHR.rgba4OpaqueBlackSwizzled );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10PropertiesKHR.resolveSrgbFormatAppliesTransferFunction );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMaintenance10PropertiesKHR.resolveSrgbFormatSupportsTransferFunctionControl );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMaintenance3Properties>
|
||||
{
|
||||
|
|
@ -11755,30 +11829,30 @@ namespace std
|
|||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionFeaturesNV>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionFeaturesEXT>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionFeaturesNV const & physicalDeviceMemoryDecompressionFeaturesNV ) const
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionFeaturesEXT const & physicalDeviceMemoryDecompressionFeaturesEXT ) const
|
||||
VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionFeaturesNV.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionFeaturesNV.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionFeaturesNV.memoryDecompression );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionFeaturesEXT.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionFeaturesEXT.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionFeaturesEXT.memoryDecompression );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionPropertiesNV>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionPropertiesEXT>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionPropertiesNV const & physicalDeviceMemoryDecompressionPropertiesNV ) const
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceMemoryDecompressionPropertiesEXT const & physicalDeviceMemoryDecompressionPropertiesEXT ) const
|
||||
VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesNV.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesNV.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesNV.decompressionMethods );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesNV.maxDecompressionIndirectCount );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesEXT.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesEXT.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesEXT.decompressionMethods );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceMemoryDecompressionPropertiesEXT.maxDecompressionIndirectCount );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
|
@ -12607,6 +12681,22 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
# if defined( VK_USE_PLATFORM_OHOS )
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevicePresentationPropertiesOHOS>
|
||||
{
|
||||
std::size_t
|
||||
operator()( VULKAN_HPP_NAMESPACE::PhysicalDevicePresentationPropertiesOHOS const & physicalDevicePresentationPropertiesOHOS ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDevicePresentationPropertiesOHOS.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDevicePresentationPropertiesOHOS.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDevicePresentationPropertiesOHOS.sharedImage );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
# endif /*VK_USE_PLATFORM_OHOS*/
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDevicePrimitiveTopologyListRestartFeaturesEXT>
|
||||
{
|
||||
|
|
@ -13150,6 +13240,20 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceShader64BitIndexingFeaturesEXT>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceShader64BitIndexingFeaturesEXT const & physicalDeviceShader64BitIndexingFeaturesEXT ) const
|
||||
VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceShader64BitIndexingFeaturesEXT.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceShader64BitIndexingFeaturesEXT.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceShader64BitIndexingFeaturesEXT.shader64BitIndexing );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderAtomicFloat16VectorFeaturesNV>
|
||||
{
|
||||
|
|
@ -13845,6 +13949,20 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT const &
|
||||
physicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, physicalDeviceShaderUniformBufferUnsizedArrayFeaturesEXT.shaderUniformBufferUnsizedArray );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::PhysicalDeviceShaderUntypedPointersFeaturesKHR>
|
||||
{
|
||||
|
|
@ -16882,6 +17000,19 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::RenderingAttachmentFlagsInfoKHR>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::RenderingAttachmentFlagsInfoKHR const & renderingAttachmentFlagsInfoKHR ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingAttachmentFlagsInfoKHR.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingAttachmentFlagsInfoKHR.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingAttachmentFlagsInfoKHR.flags );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::RenderingAttachmentLocationInfo>
|
||||
{
|
||||
|
|
@ -16897,13 +17028,13 @@ namespace std
|
|||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::RenderingEndInfoEXT>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::RenderingEndInfoKHR>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::RenderingEndInfoEXT const & renderingEndInfoEXT ) const VULKAN_HPP_NOEXCEPT
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::RenderingEndInfoKHR const & renderingEndInfoKHR ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingEndInfoEXT.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingEndInfoEXT.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingEndInfoKHR.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, renderingEndInfoKHR.pNext );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
|
@ -16993,6 +17124,21 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::ResolveImageModeInfoKHR>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::ResolveImageModeInfoKHR const & resolveImageModeInfoKHR ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, resolveImageModeInfoKHR.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, resolveImageModeInfoKHR.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, resolveImageModeInfoKHR.flags );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, resolveImageModeInfoKHR.resolveMode );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, resolveImageModeInfoKHR.stencilResolveMode );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::SamplerBlockMatchWindowCreateInfoQCOM>
|
||||
{
|
||||
|
|
@ -17989,6 +18135,21 @@ namespace std
|
|||
}
|
||||
};
|
||||
|
||||
# if defined( VK_USE_PLATFORM_OHOS )
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::SwapchainImageCreateInfoOHOS>
|
||||
{
|
||||
std::size_t operator()( VULKAN_HPP_NAMESPACE::SwapchainImageCreateInfoOHOS const & swapchainImageCreateInfoOHOS ) const VULKAN_HPP_NOEXCEPT
|
||||
{
|
||||
std::size_t seed = 0;
|
||||
VULKAN_HPP_HASH_COMBINE( seed, swapchainImageCreateInfoOHOS.sType );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, swapchainImageCreateInfoOHOS.pNext );
|
||||
VULKAN_HPP_HASH_COMBINE( seed, swapchainImageCreateInfoOHOS.usage );
|
||||
return seed;
|
||||
}
|
||||
};
|
||||
# endif /*VK_USE_PLATFORM_OHOS*/
|
||||
|
||||
template <>
|
||||
struct hash<VULKAN_HPP_NAMESPACE::SwapchainLatencyCreateInfoNV>
|
||||
{
|
||||
|
|
|
|||
|
|
@ -44,6 +44,68 @@ VKAPI_ATTR VkResult VKAPI_CALL vkCreateSurfaceOHOS(
|
|||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
// VK_OHOS_native_buffer is a preprocessor guard. Do not pass it to API calls.
|
||||
#define VK_OHOS_native_buffer 1
|
||||
struct OHBufferHandle;
|
||||
#define VK_OHOS_NATIVE_BUFFER_SPEC_VERSION 1
|
||||
#define VK_OHOS_NATIVE_BUFFER_EXTENSION_NAME "VK_OHOS_native_buffer"
|
||||
|
||||
typedef enum VkSwapchainImageUsageFlagBitsOHOS {
|
||||
VK_SWAPCHAIN_IMAGE_USAGE_SHARED_BIT_OHOS = 0x00000001,
|
||||
VK_SWAPCHAIN_IMAGE_USAGE_FLAG_BITS_MAX_ENUM_OHOS = 0x7FFFFFFF
|
||||
} VkSwapchainImageUsageFlagBitsOHOS;
|
||||
typedef VkFlags VkSwapchainImageUsageFlagsOHOS;
|
||||
typedef struct VkNativeBufferOHOS {
|
||||
VkStructureType sType;
|
||||
const void* pNext;
|
||||
struct OHBufferHandle* handle;
|
||||
} VkNativeBufferOHOS;
|
||||
|
||||
typedef struct VkSwapchainImageCreateInfoOHOS {
|
||||
VkStructureType sType;
|
||||
const void* pNext;
|
||||
VkSwapchainImageUsageFlagsOHOS usage;
|
||||
} VkSwapchainImageCreateInfoOHOS;
|
||||
|
||||
typedef struct VkPhysicalDevicePresentationPropertiesOHOS {
|
||||
VkStructureType sType;
|
||||
const void* pNext;
|
||||
VkBool32 sharedImage;
|
||||
} VkPhysicalDevicePresentationPropertiesOHOS;
|
||||
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkGetSwapchainGrallocUsageOHOS)(VkDevice device, VkFormat format, VkImageUsageFlags imageUsage, uint64_t* grallocUsage);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkAcquireImageOHOS)(VkDevice device, VkImage image, int32_t nativeFenceFd, VkSemaphore semaphore, VkFence fence);
|
||||
typedef VkResult (VKAPI_PTR *PFN_vkQueueSignalReleaseImageOHOS)(VkQueue queue, uint32_t waitSemaphoreCount, const VkSemaphore* pWaitSemaphores, VkImage image, int32_t* pNativeFenceFd);
|
||||
|
||||
#ifndef VK_NO_PROTOTYPES
|
||||
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkGetSwapchainGrallocUsageOHOS(
|
||||
VkDevice device,
|
||||
VkFormat format,
|
||||
VkImageUsageFlags imageUsage,
|
||||
uint64_t* grallocUsage);
|
||||
#endif
|
||||
|
||||
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkAcquireImageOHOS(
|
||||
VkDevice device,
|
||||
VkImage image,
|
||||
int32_t nativeFenceFd,
|
||||
VkSemaphore semaphore,
|
||||
VkFence fence);
|
||||
#endif
|
||||
|
||||
#ifndef VK_ONLY_EXPORTED_PROTOTYPES
|
||||
VKAPI_ATTR VkResult VKAPI_CALL vkQueueSignalReleaseImageOHOS(
|
||||
VkQueue queue,
|
||||
uint32_t waitSemaphoreCount,
|
||||
const VkSemaphore* pWaitSemaphores,
|
||||
VkImage image,
|
||||
int32_t* pNativeFenceFd);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
|
|
@ -523,16 +523,6 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
|
||||
using SharedSemaphore = SharedHandle<Semaphore>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<Event>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<Event>;
|
||||
};
|
||||
|
||||
using SharedEvent = SharedHandle<Event>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<QueryPool>
|
||||
{
|
||||
|
|
@ -553,16 +543,6 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
|
||||
using SharedBuffer = SharedHandle<Buffer>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<BufferView>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<BufferView>;
|
||||
};
|
||||
|
||||
using SharedBufferView = SharedHandle<BufferView>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<Image>
|
||||
{
|
||||
|
|
@ -583,6 +563,46 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
|
||||
using SharedImageView = SharedHandle<ImageView>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<CommandPool>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<CommandPool>;
|
||||
};
|
||||
|
||||
using SharedCommandPool = SharedHandle<CommandPool>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<CommandBuffer>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::PoolFreeShared<CommandBuffer, CommandPool>;
|
||||
};
|
||||
|
||||
using SharedCommandBuffer = SharedHandle<CommandBuffer>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<Event>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<Event>;
|
||||
};
|
||||
|
||||
using SharedEvent = SharedHandle<Event>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<BufferView>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<BufferView>;
|
||||
};
|
||||
|
||||
using SharedBufferView = SharedHandle<BufferView>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<ShaderModule>
|
||||
{
|
||||
|
|
@ -683,38 +703,7 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
|
||||
using SharedRenderPass = SharedHandle<RenderPass>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<CommandPool>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<CommandPool>;
|
||||
};
|
||||
|
||||
using SharedCommandPool = SharedHandle<CommandPool>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<CommandBuffer>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::PoolFreeShared<CommandBuffer, CommandPool>;
|
||||
};
|
||||
|
||||
using SharedCommandBuffer = SharedHandle<CommandBuffer>;
|
||||
|
||||
//=== VK_VERSION_1_1 ===
|
||||
template <>
|
||||
class SharedHandleTraits<SamplerYcbcrConversion>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<SamplerYcbcrConversion>;
|
||||
};
|
||||
|
||||
using SharedSamplerYcbcrConversion = SharedHandle<SamplerYcbcrConversion>;
|
||||
using SharedSamplerYcbcrConversionKHR = SharedHandle<SamplerYcbcrConversion>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<DescriptorUpdateTemplate>
|
||||
{
|
||||
|
|
@ -726,6 +715,17 @@ namespace VULKAN_HPP_NAMESPACE
|
|||
using SharedDescriptorUpdateTemplate = SharedHandle<DescriptorUpdateTemplate>;
|
||||
using SharedDescriptorUpdateTemplateKHR = SharedHandle<DescriptorUpdateTemplate>;
|
||||
|
||||
template <>
|
||||
class SharedHandleTraits<SamplerYcbcrConversion>
|
||||
{
|
||||
public:
|
||||
using DestructorType = Device;
|
||||
using deleter = detail::ObjectDestroyShared<SamplerYcbcrConversion>;
|
||||
};
|
||||
|
||||
using SharedSamplerYcbcrConversion = SharedHandle<SamplerYcbcrConversion>;
|
||||
using SharedSamplerYcbcrConversionKHR = SharedHandle<SamplerYcbcrConversion>;
|
||||
|
||||
//=== VK_VERSION_1_3 ===
|
||||
template <>
|
||||
class SharedHandleTraits<PrivateDataSlot>
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
|
@ -10,11 +10,6 @@
|
|||
module;
|
||||
|
||||
#include <vulkan/vulkan_hpp_macros.hpp>
|
||||
|
||||
#if defined( __cpp_lib_modules ) && !defined( VULKAN_HPP_ENABLE_STD_MODULE )
|
||||
# define VULKAN_HPP_ENABLE_STD_MODULE
|
||||
#endif
|
||||
|
||||
#include <vulkan/vulkan_video.hpp>
|
||||
|
||||
export module vulkan_video_hpp;
|
||||
|
|
|
|||
|
|
@ -17,5 +17,7 @@ VulkanAPI = os.getenv('VULKAN_API', default=defaultAPI)
|
|||
|
||||
if VulkanAPI == 'vulkansc':
|
||||
from vkconventions import VulkanSCConventions as APIConventions
|
||||
elif VulkanAPI == 'vulkanbase':
|
||||
from vkconventions import VulkanBaseConventions as APIConventions
|
||||
else:
|
||||
from vkconventions import VulkanConventions as APIConventions
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import os
|
|||
import tempfile
|
||||
import copy
|
||||
from vulkan_object import (VulkanObject,
|
||||
Extension, Version, Deprecate, Handle, Param, CommandScope, Command,
|
||||
Extension, Version, Legacy, Handle, Param, CommandScope, Command,
|
||||
EnumField, Enum, Flag, Bitmask, ExternSync, Flags, Member, Struct,
|
||||
Constant, FormatComponent, FormatPlane, Format, FeatureRequirement,
|
||||
SyncSupport, SyncEquivalent, SyncStage, SyncAccess, SyncPipelineStage, SyncPipeline,
|
||||
|
|
@ -377,12 +377,12 @@ class BaseGenerator(OutputGenerator):
|
|||
if member.type in self.structAliasMap:
|
||||
member.type = self.dealias(member.type, self.structAliasMap)
|
||||
# Replace string with Version class now we have all version created
|
||||
if command.deprecate and command.deprecate.version:
|
||||
if command.deprecate.version not in self.vk.versions:
|
||||
if command.legacy and command.legacy.version:
|
||||
if command.legacy.version not in self.vk.versions:
|
||||
# occurs if something like VK_VERSION_1_0, in which case we will always warn for deprecation
|
||||
command.deprecate.version = None
|
||||
command.legacy.version = None
|
||||
else:
|
||||
command.deprecate.version = self.vk.versions[command.deprecate.version]
|
||||
command.legacy.version = self.vk.versions[command.legacy.version]
|
||||
|
||||
# Could build up a reverse lookup map, but since these are not too large of list, just do here
|
||||
# (Need to be done after we have found all the aliases)
|
||||
|
|
@ -688,9 +688,9 @@ class BaseGenerator(OutputGenerator):
|
|||
cPrototype = decls[0]
|
||||
cFunctionPointer = decls[1]
|
||||
|
||||
deprecate = None
|
||||
legacy = None
|
||||
if cmdinfo.deprecatedlink:
|
||||
deprecate = Deprecate(cmdinfo.deprecatedlink,
|
||||
legacy = Legacy(cmdinfo.deprecatedlink,
|
||||
cmdinfo.deprecatedbyversion, # is just the string, will update to class later
|
||||
cmdinfo.deprecatedbyextensions)
|
||||
|
||||
|
|
@ -708,7 +708,7 @@ class BaseGenerator(OutputGenerator):
|
|||
returnType, params, instance, device,
|
||||
tasks, queues, allowNoQueues, successcodes, errorcodes,
|
||||
primary, secondary, renderpass, videocoding,
|
||||
implicitExternSyncParams, deprecate, cPrototype, cFunctionPointer)
|
||||
implicitExternSyncParams, legacy, cPrototype, cFunctionPointer)
|
||||
|
||||
#
|
||||
# List the enum for the commands
|
||||
|
|
@ -860,6 +860,12 @@ class BaseGenerator(OutputGenerator):
|
|||
# Handle C bit field members
|
||||
bitFieldWidth = int(cdecl.split(':')[1]) if ':' in cdecl else None
|
||||
|
||||
selector = member.get('selector') if not union else None
|
||||
selection = member.get('selection') if union else None
|
||||
selections = []
|
||||
if selection:
|
||||
selections = [s for s in selection.split(',')]
|
||||
|
||||
# if a pointer, this can be a something like:
|
||||
# optional="true,false" for ppGeometries
|
||||
# optional="false,true" for pPhysicalDeviceCount
|
||||
|
|
@ -872,7 +878,7 @@ class BaseGenerator(OutputGenerator):
|
|||
members.append(Member(name, type, fullType, noautovalidity, limittype,
|
||||
const, length, nullTerminated, pointer, fixedSizeArray,
|
||||
optional, optionalPointer,
|
||||
externSync, cdecl, bitFieldWidth))
|
||||
externSync, cdecl, bitFieldWidth, selector, selections))
|
||||
|
||||
self.vk.structs[typeName] = Struct(typeName, [], extension, self.currentVersion, protect, members,
|
||||
union, returnedOnly, sType, allowDuplicate, extends, extendedBy)
|
||||
|
|
|
|||
|
|
@ -153,6 +153,7 @@ class GeneratorOptions:
|
|||
genpath=None,
|
||||
apiname=None,
|
||||
mergeApiNames=None,
|
||||
mergeInternalApis=True,
|
||||
profile=None,
|
||||
versions='.*',
|
||||
emitversions='.*',
|
||||
|
|
@ -179,6 +180,7 @@ class GeneratorOptions:
|
|||
- apiname - string matching `<api>` 'apiname' attribute, e.g. 'gl'.
|
||||
- mergeApiNames - If not None, a comma separated list of API names
|
||||
to merge into the API specified by 'apiname'
|
||||
- mergeInternalApis - whether to merge internal APIs into public APIs
|
||||
- profile - string specifying API profile , e.g. 'core', or None.
|
||||
- versions - regex matching API versions to process interfaces for.
|
||||
Normally `'.*'` or `'[0-9][.][0-9]'` to match all defined versions.
|
||||
|
|
@ -240,6 +242,9 @@ class GeneratorOptions:
|
|||
self.mergeApiNames = mergeApiNames
|
||||
"comma separated list of API names to merge into the API specified by 'apiname'"
|
||||
|
||||
self.mergeInternalApis = mergeInternalApis
|
||||
"whether to merge internal APIs into public APIs"
|
||||
|
||||
self.profile = profile
|
||||
"string specifying API profile , e.g. 'core', or None."
|
||||
|
||||
|
|
@ -587,14 +592,14 @@ class OutputGenerator:
|
|||
name = elem.get('name')
|
||||
|
||||
if reason == 'aliased':
|
||||
return f'{padding}// {name} is a deprecated alias\n'
|
||||
return f'{padding}// {name} is a legacy alias\n'
|
||||
elif reason == 'ignored':
|
||||
return f'{padding}// {name} is deprecated and should not be used\n'
|
||||
return f'{padding}// {name} is legacy and should not be used\n'
|
||||
elif reason == 'true':
|
||||
return f'{padding}// {name} is deprecated, but no reason was given in the API XML\n'
|
||||
return f'{padding}// {name} is legacy, but no reason was given in the API XML\n'
|
||||
else:
|
||||
# This can be caught by schema validation
|
||||
self.logMsg('error', f"{name} has an unknown deprecation attribute value '{reason}'")
|
||||
self.logMsg('error', f"{name} has an unknown legacy attribute value '{reason}'")
|
||||
exit(1)
|
||||
|
||||
def buildEnumCDecl(self, expand, groupinfo, groupName):
|
||||
|
|
|
|||
111
registry/reg.py
111
registry/reg.py
|
|
@ -166,6 +166,109 @@ def mergeAPIs(tree, fromApiNames, toApiName):
|
|||
variant.set('api', toApiName)
|
||||
|
||||
|
||||
def mergeInternalFeatures(tree, apiName):
|
||||
"""Merge internal API features (apitype='internal') into their public dependents.
|
||||
|
||||
This processes the tree to find features marked with apitype='internal' and merges
|
||||
their <require>, <deprecate>, and <remove> blocks into the first public feature
|
||||
that depends on them. After merging, the internal features are removed from the tree.
|
||||
|
||||
tree - Element at the root of the hierarchy (typically <registry>)
|
||||
apiName - the API name to process (e.g., 'vulkan', 'vulkansc')
|
||||
"""
|
||||
import copy
|
||||
|
||||
# Find all features in the tree
|
||||
features = tree.findall('feature')
|
||||
|
||||
# Separate internal and public features
|
||||
internal_features = []
|
||||
public_features = []
|
||||
|
||||
for feature in features:
|
||||
api = feature.get('api', '')
|
||||
apitype = feature.get('apitype', '')
|
||||
|
||||
# Only process features matching the target API
|
||||
if apiName not in api.split(','):
|
||||
continue
|
||||
|
||||
if apitype == 'internal':
|
||||
internal_features.append(feature)
|
||||
else:
|
||||
public_features.append(feature)
|
||||
|
||||
# Build a simple dependency map from the 'depends' attributes
|
||||
def get_dependencies(feature):
|
||||
"""Extract all dependencies from a feature's depends attribute."""
|
||||
depends = feature.get('depends', '')
|
||||
if not depends:
|
||||
return set()
|
||||
# Parse the depends expression - for simplicity, extract feature names
|
||||
# Dependencies can be like "VK_VERSION_1_0" or "VK_VERSION_1_0+VK_KHR_feature"
|
||||
deps = set()
|
||||
# Split on + and , to get individual dependencies
|
||||
for dep in depends.replace('+', ',').split(','):
|
||||
dep = dep.strip()
|
||||
if dep:
|
||||
deps.add(dep)
|
||||
return deps
|
||||
|
||||
def has_dependency(feature, target_name, all_features_map, visited=None):
|
||||
"""Check if feature depends on target_name (directly or transitively)."""
|
||||
if visited is None:
|
||||
visited = set()
|
||||
|
||||
feature_name = feature.get('name')
|
||||
if feature_name in visited:
|
||||
return False
|
||||
visited.add(feature_name)
|
||||
|
||||
deps = get_dependencies(feature)
|
||||
if target_name in deps:
|
||||
return True
|
||||
|
||||
# Check transitive dependencies
|
||||
for dep_name in deps:
|
||||
if dep_name in all_features_map:
|
||||
if has_dependency(all_features_map[dep_name], target_name, all_features_map, visited):
|
||||
return True
|
||||
return False
|
||||
|
||||
# Create a map of all features for dependency lookups
|
||||
all_features_map = {f.get('name'): f for f in public_features + internal_features}
|
||||
|
||||
# For each internal feature, find its first public dependent and merge
|
||||
for internal_feature in internal_features:
|
||||
internal_name = internal_feature.get('name')
|
||||
target_feature = None
|
||||
|
||||
# Find the first public feature that depends on this internal feature
|
||||
for public_feature in public_features:
|
||||
if has_dependency(public_feature, internal_name, all_features_map):
|
||||
target_feature = public_feature
|
||||
break
|
||||
|
||||
if target_feature is not None:
|
||||
# Merge require blocks
|
||||
for require in internal_feature.findall('require'):
|
||||
require_copy = copy.deepcopy(require)
|
||||
target_feature.append(require_copy)
|
||||
|
||||
# Merge deprecate blocks
|
||||
for deprecate in internal_feature.findall('deprecate'):
|
||||
deprecate_copy = copy.deepcopy(deprecate)
|
||||
target_feature.append(deprecate_copy)
|
||||
|
||||
# Merge remove blocks
|
||||
for remove in internal_feature.findall('remove'):
|
||||
remove_copy = copy.deepcopy(remove)
|
||||
target_feature.append(remove_copy)
|
||||
|
||||
# Remove the internal feature from the tree
|
||||
tree.remove(internal_feature)
|
||||
|
||||
|
||||
def stripNonmatchingAPIs(tree, apiName, actuallyDelete = True):
|
||||
"""Remove tree Elements with 'api' attributes matching apiName.
|
||||
|
||||
|
|
@ -429,6 +532,9 @@ class Registry:
|
|||
self.gen.genOpts = self.genOpts
|
||||
self.gen.genOpts.registry = self
|
||||
|
||||
# Store mergeInternalApis in self to avoid repeated lookups
|
||||
self.mergeInternalApis = getattr(self.genOpts, 'mergeInternalApis', True)
|
||||
|
||||
self.tree = None
|
||||
"ElementTree containing the root `<registry>`"
|
||||
|
||||
|
|
@ -601,6 +707,11 @@ class Registry:
|
|||
else:
|
||||
stripNonmatchingAPIs(self.reg, self.genOpts.apiname, actuallyDelete = True)
|
||||
|
||||
# Merge internal features (apitype="internal") into their public dependents
|
||||
# This happens after API merging/stripping so we work with the correct API
|
||||
if self.mergeInternalApis:
|
||||
mergeInternalFeatures(self.reg, self.genOpts.apiname)
|
||||
|
||||
self.aliasdict = {}
|
||||
self.enumvaluedict = {}
|
||||
|
||||
|
|
|
|||
|
|
@ -37,7 +37,8 @@ EXT_NAME_DECOMPOSE_RE = re.compile(r'(?P<prefix>[A-Za-z]+)_(?P<vendor>[A-Za-z]+)
|
|||
# Match an API version name.
|
||||
# Match object includes API prefix, major, and minor version numbers.
|
||||
# This could be refined further for specific APIs.
|
||||
API_VERSION_NAME_RE = re.compile(r'(?P<apivariant>[A-Za-z]+)_VERSION_(?P<major>[0-9]+)_(?P<minor>[0-9]+)')
|
||||
# Handles both simple versions (VK_VERSION_1_0) and component-specific versions (VK_BASE_VERSION_1_0)
|
||||
API_VERSION_NAME_RE = re.compile(r'(?P<apivariant>[A-Za-z]+)(?:_(?:BASE|COMPUTE|GRAPHICS))?_VERSION_(?P<major>[0-9]+)_(?P<minor>[0-9]+)')
|
||||
|
||||
class ProseListFormats(Enum):
|
||||
"""A connective, possibly with a quantifier."""
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
1782
registry/vk.xml
1782
registry/vk.xml
File diff suppressed because it is too large
Load diff
|
|
@ -312,3 +312,19 @@ class VulkanSCConventions(VulkanConventions):
|
|||
"""Return the name used in the default API XML registry for the default API"""
|
||||
return 'vulkansc'
|
||||
|
||||
class VulkanBaseConventions(VulkanConventions):
|
||||
|
||||
def specURL(self, spectype='api'):
|
||||
"""Return public registry URL which ref pages should link to for the
|
||||
current all-extensions HTML specification, so xrefs in the
|
||||
asciidoc source that are not to ref pages can link into it
|
||||
instead. N.b. this may need to change on a per-refpage basis if
|
||||
there are multiple documents involved.
|
||||
"""
|
||||
return 'https://registry.khronos.org/vulkan/specs/latest/html/vkspec.html'
|
||||
|
||||
@property
|
||||
def xml_api_name(self):
|
||||
"""Return the name used in the default API XML registry for the default API"""
|
||||
return 'vulkanbase'
|
||||
|
||||
|
|
|
|||
|
|
@ -65,9 +65,11 @@ class Version:
|
|||
featureRequirement: list[FeatureRequirement]
|
||||
|
||||
@dataclass
|
||||
class Deprecate:
|
||||
"""<deprecate>"""
|
||||
link: (str | None) # Spec URL Anchor - ex) deprecation-dynamicrendering
|
||||
class Legacy:
|
||||
"""<deprecate>
|
||||
For historical reasons, the XML tag is "deprecate" but we decided in the WG to not use that as the public facing name
|
||||
"""
|
||||
link: (str | None) # Spec URL Anchor - ex) legacy-dynamicrendering
|
||||
version: (Version | None)
|
||||
extensions: list[str]
|
||||
|
||||
|
|
@ -181,7 +183,7 @@ class Command:
|
|||
|
||||
implicitExternSyncParams: list[str]
|
||||
|
||||
deprecate: (Deprecate | None)
|
||||
legacy: (Legacy | None)
|
||||
|
||||
# C prototype string - ex:
|
||||
# VKAPI_ATTR VkResult VKAPI_CALL vkCreateInstance(
|
||||
|
|
@ -237,6 +239,11 @@ class Member:
|
|||
|
||||
bitFieldWidth: (int | None) # bit width (only for bit field struct members)
|
||||
|
||||
# Selector for the union, this type determines the used data type in the union
|
||||
selector: (str | None)
|
||||
# Valid selections for the union member
|
||||
selection: list[str]
|
||||
|
||||
def __lt__(self, other):
|
||||
return self.name < other.name
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue