#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct surface;
impl surface {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_surface");
}
impl_ext! { surface }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct swapchain;
impl swapchain {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_swapchain");
}
impl_ext! { swapchain }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct display;
impl display {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_display");
}
impl_ext! { display }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct display_swapchain;
impl display_swapchain {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_display_swapchain");
}
impl_ext! { display_swapchain }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct xlib_surface;
impl xlib_surface {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_xlib_surface");
}
impl_ext! { xlib_surface }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct xcb_surface;
impl xcb_surface {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_xcb_surface");
}
impl_ext! { xcb_surface }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct wayland_surface;
impl wayland_surface {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_wayland_surface");
}
impl_ext! { wayland_surface }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct android_surface;
impl android_surface {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_android_surface");
}
impl_ext! { android_surface }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct win32_surface;
impl win32_surface {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_win32_surface");
}
impl_ext! { win32_surface }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct sampler_mirror_clamp_to_edge;
impl sampler_mirror_clamp_to_edge {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_sampler_mirror_clamp_to_edge");
}
impl_ext! { sampler_mirror_clamp_to_edge }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_queue;
impl video_queue {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_queue");
}
impl_ext! { video_queue }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_decode_queue;
impl video_decode_queue {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_decode_queue");
}
impl_ext! { video_decode_queue }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_encode_h264;
impl video_encode_h264 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_encode_h264");
}
impl_ext! { video_encode_h264 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_encode_h265;
impl video_encode_h265 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_encode_h265");
}
impl_ext! { video_encode_h265 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_decode_h264;
impl video_decode_h264 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_decode_h264");
}
impl_ext! { video_decode_h264 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct dynamic_rendering;
impl dynamic_rendering {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_dynamic_rendering");
}
impl_ext! { dynamic_rendering }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct multiview;
impl multiview {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_multiview");
}
impl_ext! { multiview }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct get_physical_device_properties2;
impl get_physical_device_properties2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_get_physical_device_properties2");
}
impl_ext! { get_physical_device_properties2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct device_group;
impl device_group {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_device_group");
}
impl_ext! { device_group }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_draw_parameters;
impl shader_draw_parameters {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_draw_parameters");
}
impl_ext! { shader_draw_parameters }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance1;
impl maintenance1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance1");
}
impl_ext! { maintenance1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct device_group_creation;
impl device_group_creation {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_device_group_creation");
}
impl_ext! { device_group_creation }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_memory_capabilities;
impl external_memory_capabilities {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_memory_capabilities");
}
impl_ext! { external_memory_capabilities }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_memory;
impl external_memory {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_memory");
}
impl_ext! { external_memory }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_memory_win32;
impl external_memory_win32 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_memory_win32");
}
impl_ext! { external_memory_win32 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_memory_fd;
impl external_memory_fd {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_memory_fd");
}
impl_ext! { external_memory_fd }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct win32_keyed_mutex;
impl win32_keyed_mutex {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_win32_keyed_mutex");
}
impl_ext! { win32_keyed_mutex }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_semaphore_capabilities;
impl external_semaphore_capabilities {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_semaphore_capabilities");
}
impl_ext! { external_semaphore_capabilities }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_semaphore;
impl external_semaphore {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_semaphore");
}
impl_ext! { external_semaphore }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_semaphore_win32;
impl external_semaphore_win32 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_semaphore_win32");
}
impl_ext! { external_semaphore_win32 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_semaphore_fd;
impl external_semaphore_fd {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_semaphore_fd");
}
impl_ext! { external_semaphore_fd }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct push_descriptor;
impl push_descriptor {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_push_descriptor");
}
impl_ext! { push_descriptor }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_float16_int8;
impl shader_float16_int8 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_float16_int8");
}
impl_ext! { shader_float16_int8 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct _16bit_storage;
impl _16bit_storage {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_16bit_storage");
}
impl_ext! { _16bit_storage }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct incremental_present;
impl incremental_present {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_incremental_present");
}
impl_ext! { incremental_present }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct descriptor_update_template;
impl descriptor_update_template {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_descriptor_update_template");
}
impl_ext! { descriptor_update_template }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct imageless_framebuffer;
impl imageless_framebuffer {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_imageless_framebuffer");
}
impl_ext! { imageless_framebuffer }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct create_renderpass2;
impl create_renderpass2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_create_renderpass2");
}
impl_ext! { create_renderpass2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shared_presentable_image;
impl shared_presentable_image {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shared_presentable_image");
}
impl_ext! { shared_presentable_image }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_fence_capabilities;
impl external_fence_capabilities {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_fence_capabilities");
}
impl_ext! { external_fence_capabilities }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_fence;
impl external_fence {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_fence");
}
impl_ext! { external_fence }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_fence_win32;
impl external_fence_win32 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_fence_win32");
}
impl_ext! { external_fence_win32 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct external_fence_fd;
impl external_fence_fd {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_external_fence_fd");
}
impl_ext! { external_fence_fd }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct performance_query;
impl performance_query {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_performance_query");
}
impl_ext! { performance_query }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance2;
impl maintenance2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance2");
}
impl_ext! { maintenance2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct get_surface_capabilities2;
impl get_surface_capabilities2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_get_surface_capabilities2");
}
impl_ext! { get_surface_capabilities2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct variable_pointers;
impl variable_pointers {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_variable_pointers");
}
impl_ext! { variable_pointers }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct get_display_properties2;
impl get_display_properties2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_get_display_properties2");
}
impl_ext! { get_display_properties2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct dedicated_allocation;
impl dedicated_allocation {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_dedicated_allocation");
}
impl_ext! { dedicated_allocation }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct storage_buffer_storage_class;
impl storage_buffer_storage_class {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_storage_buffer_storage_class");
}
impl_ext! { storage_buffer_storage_class }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_bfloat16;
impl shader_bfloat16 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_bfloat16");
}
impl_ext! { shader_bfloat16 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct relaxed_block_layout;
impl relaxed_block_layout {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_relaxed_block_layout");
}
impl_ext! { relaxed_block_layout }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct get_memory_requirements2;
impl get_memory_requirements2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_get_memory_requirements2");
}
impl_ext! { get_memory_requirements2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct image_format_list;
impl image_format_list {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_image_format_list");
}
impl_ext! { image_format_list }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct acceleration_structure;
impl acceleration_structure {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_acceleration_structure");
}
impl_ext! { acceleration_structure }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct sampler_ycbcr_conversion;
impl sampler_ycbcr_conversion {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_sampler_ycbcr_conversion");
}
impl_ext! { sampler_ycbcr_conversion }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct bind_memory2;
impl bind_memory2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_bind_memory2");
}
impl_ext! { bind_memory2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct portability_subset;
impl portability_subset {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_portability_subset");
}
impl_ext! { portability_subset }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance3;
impl maintenance3 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance3");
}
impl_ext! { maintenance3 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct draw_indirect_count;
impl draw_indirect_count {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_draw_indirect_count");
}
impl_ext! { draw_indirect_count }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_subgroup_extended_types;
impl shader_subgroup_extended_types {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_subgroup_extended_types");
}
impl_ext! { shader_subgroup_extended_types }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct _8bit_storage;
impl _8bit_storage {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_8bit_storage");
}
impl_ext! { _8bit_storage }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_atomic_int64;
impl shader_atomic_int64 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_atomic_int64");
}
impl_ext! { shader_atomic_int64 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_clock;
impl shader_clock {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_clock");
}
impl_ext! { shader_clock }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_decode_h265;
impl video_decode_h265 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_decode_h265");
}
impl_ext! { video_decode_h265 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct global_priority;
impl global_priority {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_global_priority");
}
impl_ext! { global_priority }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct driver_properties;
impl driver_properties {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_driver_properties");
}
impl_ext! { driver_properties }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_float_controls;
impl shader_float_controls {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_float_controls");
}
impl_ext! { shader_float_controls }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct depth_stencil_resolve;
impl depth_stencil_resolve {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_depth_stencil_resolve");
}
impl_ext! { depth_stencil_resolve }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct swapchain_mutable_format;
impl swapchain_mutable_format {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_swapchain_mutable_format");
}
impl_ext! { swapchain_mutable_format }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct timeline_semaphore;
impl timeline_semaphore {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_timeline_semaphore");
}
impl_ext! { timeline_semaphore }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct vulkan_memory_model;
impl vulkan_memory_model {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_vulkan_memory_model");
}
impl_ext! { vulkan_memory_model }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_terminate_invocation;
impl shader_terminate_invocation {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_terminate_invocation");
}
impl_ext! { shader_terminate_invocation }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct fragment_shading_rate;
impl fragment_shading_rate {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_fragment_shading_rate");
}
impl_ext! { fragment_shading_rate }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct dynamic_rendering_local_read;
impl dynamic_rendering_local_read {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_dynamic_rendering_local_read");
}
impl_ext! { dynamic_rendering_local_read }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_quad_control;
impl shader_quad_control {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_quad_control");
}
impl_ext! { shader_quad_control }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct spirv_1_4;
impl spirv_1_4 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_spirv_1_4");
}
impl_ext! { spirv_1_4 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct surface_protected_capabilities;
impl surface_protected_capabilities {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_surface_protected_capabilities");
}
impl_ext! { surface_protected_capabilities }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct separate_depth_stencil_layouts;
impl separate_depth_stencil_layouts {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_separate_depth_stencil_layouts");
}
impl_ext! { separate_depth_stencil_layouts }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct present_wait;
impl present_wait {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_present_wait");
}
impl_ext! { present_wait }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct uniform_buffer_standard_layout;
impl uniform_buffer_standard_layout {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_uniform_buffer_standard_layout");
}
impl_ext! { uniform_buffer_standard_layout }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct buffer_device_address;
impl buffer_device_address {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_buffer_device_address");
}
impl_ext! { buffer_device_address }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct deferred_host_operations;
impl deferred_host_operations {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_deferred_host_operations");
}
impl_ext! { deferred_host_operations }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct pipeline_executable_properties;
impl pipeline_executable_properties {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_pipeline_executable_properties");
}
impl_ext! { pipeline_executable_properties }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct map_memory2;
impl map_memory2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_map_memory2");
}
impl_ext! { map_memory2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_integer_dot_product;
impl shader_integer_dot_product {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_integer_dot_product");
}
impl_ext! { shader_integer_dot_product }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct pipeline_library;
impl pipeline_library {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_pipeline_library");
}
impl_ext! { pipeline_library }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_non_semantic_info;
impl shader_non_semantic_info {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_non_semantic_info");
}
impl_ext! { shader_non_semantic_info }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct present_id;
impl present_id {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_present_id");
}
impl_ext! { present_id }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_encode_queue;
impl video_encode_queue {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_encode_queue");
}
impl_ext! { video_encode_queue }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct object_refresh;
impl object_refresh {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_object_refresh");
}
impl_ext! { object_refresh }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct synchronization2;
impl synchronization2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_synchronization2");
}
impl_ext! { synchronization2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct device_address_commands;
impl device_address_commands {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_device_address_commands");
}
impl_ext! { device_address_commands }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct fragment_shader_barycentric;
impl fragment_shader_barycentric {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_fragment_shader_barycentric");
}
impl_ext! { fragment_shader_barycentric }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_subgroup_uniform_control_flow;
impl shader_subgroup_uniform_control_flow {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_subgroup_uniform_control_flow");
}
impl_ext! { shader_subgroup_uniform_control_flow }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct zero_initialize_workgroup_memory;
impl zero_initialize_workgroup_memory {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_zero_initialize_workgroup_memory");
}
impl_ext! { zero_initialize_workgroup_memory }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct workgroup_memory_explicit_layout;
impl workgroup_memory_explicit_layout {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_workgroup_memory_explicit_layout");
}
impl_ext! { workgroup_memory_explicit_layout }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct copy_commands2;
impl copy_commands2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_copy_commands2");
}
impl_ext! { copy_commands2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct ray_tracing_pipeline;
impl ray_tracing_pipeline {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_ray_tracing_pipeline");
}
impl_ext! { ray_tracing_pipeline }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct ray_query;
impl ray_query {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_ray_query");
}
impl_ext! { ray_query }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct format_feature_flags2;
impl format_feature_flags2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_format_feature_flags2");
}
impl_ext! { format_feature_flags2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct ray_tracing_maintenance1;
impl ray_tracing_maintenance1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_ray_tracing_maintenance1");
}
impl_ext! { ray_tracing_maintenance1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_untyped_pointers;
impl shader_untyped_pointers {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_untyped_pointers");
}
impl_ext! { shader_untyped_pointers }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct portability_enumeration;
impl portability_enumeration {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_portability_enumeration");
}
impl_ext! { portability_enumeration }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance4;
impl maintenance4 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance4");
}
impl_ext! { maintenance4 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_subgroup_rotate;
impl shader_subgroup_rotate {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_subgroup_rotate");
}
impl_ext! { shader_subgroup_rotate }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_maximal_reconvergence;
impl shader_maximal_reconvergence {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_maximal_reconvergence");
}
impl_ext! { shader_maximal_reconvergence }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance5;
impl maintenance5 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance5");
}
impl_ext! { maintenance5 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct present_id2;
impl present_id2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_present_id2");
}
impl_ext! { present_id2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct present_wait2;
impl present_wait2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_present_wait2");
}
impl_ext! { present_wait2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct ray_tracing_position_fetch;
impl ray_tracing_position_fetch {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_ray_tracing_position_fetch");
}
impl_ext! { ray_tracing_position_fetch }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct pipeline_binary;
impl pipeline_binary {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_pipeline_binary");
}
impl_ext! { pipeline_binary }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct surface_maintenance1;
impl surface_maintenance1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_surface_maintenance1");
}
impl_ext! { surface_maintenance1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct swapchain_maintenance1;
impl swapchain_maintenance1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_swapchain_maintenance1");
}
impl_ext! { swapchain_maintenance1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct internally_synchronized_queues;
impl internally_synchronized_queues {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_internally_synchronized_queues");
}
impl_ext! { internally_synchronized_queues }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct cooperative_matrix;
impl cooperative_matrix {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_cooperative_matrix");
}
impl_ext! { cooperative_matrix }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct compute_shader_derivatives;
impl compute_shader_derivatives {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_compute_shader_derivatives");
}
impl_ext! { compute_shader_derivatives }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_decode_av1;
impl video_decode_av1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_decode_av1");
}
impl_ext! { video_decode_av1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_encode_av1;
impl video_encode_av1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_encode_av1");
}
impl_ext! { video_encode_av1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_decode_vp9;
impl video_decode_vp9 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_decode_vp9");
}
impl_ext! { video_decode_vp9 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_maintenance1;
impl video_maintenance1 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_maintenance1");
}
impl_ext! { video_maintenance1 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct vertex_attribute_divisor;
impl vertex_attribute_divisor {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_vertex_attribute_divisor");
}
impl_ext! { vertex_attribute_divisor }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct load_store_op_none;
impl load_store_op_none {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_load_store_op_none");
}
impl_ext! { load_store_op_none }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct unified_image_layouts;
impl unified_image_layouts {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_unified_image_layouts");
}
impl_ext! { unified_image_layouts }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_float_controls2;
impl shader_float_controls2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_float_controls2");
}
impl_ext! { shader_float_controls2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct index_type_uint8;
impl index_type_uint8 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_index_type_uint8");
}
impl_ext! { index_type_uint8 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct line_rasterization;
impl line_rasterization {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_line_rasterization");
}
impl_ext! { line_rasterization }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct calibrated_timestamps;
impl calibrated_timestamps {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_calibrated_timestamps");
}
impl_ext! { calibrated_timestamps }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_expect_assume;
impl shader_expect_assume {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_expect_assume");
}
impl_ext! { shader_expect_assume }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance6;
impl maintenance6 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance6");
}
impl_ext! { maintenance6 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct copy_memory_indirect;
impl copy_memory_indirect {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_copy_memory_indirect");
}
impl_ext! { copy_memory_indirect }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_encode_intra_refresh;
impl video_encode_intra_refresh {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_encode_intra_refresh");
}
impl_ext! { video_encode_intra_refresh }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_encode_quantization_map;
impl video_encode_quantization_map {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_encode_quantization_map");
}
impl_ext! { video_encode_quantization_map }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_relaxed_extended_instruction;
impl shader_relaxed_extended_instruction {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_relaxed_extended_instruction");
}
impl_ext! { shader_relaxed_extended_instruction }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance7;
impl maintenance7 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance7");
}
impl_ext! { maintenance7 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance8;
impl maintenance8 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance8");
}
impl_ext! { maintenance8 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct shader_fma;
impl shader_fma {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_shader_fma");
}
impl_ext! { shader_fma }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance9;
impl maintenance9 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance9");
}
impl_ext! { maintenance9 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct video_maintenance2;
impl video_maintenance2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_video_maintenance2");
}
impl_ext! { video_maintenance2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct depth_clamp_zero_one;
impl depth_clamp_zero_one {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_depth_clamp_zero_one");
}
impl_ext! { depth_clamp_zero_one }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct robustness2;
impl robustness2 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_robustness2");
}
impl_ext! { robustness2 }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct present_mode_fifo_latest_ready;
impl present_mode_fifo_latest_ready {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_present_mode_fifo_latest_ready");
}
impl_ext! { present_mode_fifo_latest_ready }
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
pub struct maintenance10;
impl maintenance10 {
pub const NAME: crate::ExtName<'static> = crate::e!("VK_KHR_maintenance10");
}
impl_ext! { maintenance10 }