use crate::macros::vulkan_bitflags;
vulkan_bitflags! {
#[non_exhaustive]
BufferUsage = BufferUsageFlags(u32);
TRANSFER_SRC = TRANSFER_SRC,
TRANSFER_DST = TRANSFER_DST,
UNIFORM_TEXEL_BUFFER = UNIFORM_TEXEL_BUFFER,
STORAGE_TEXEL_BUFFER = STORAGE_TEXEL_BUFFER,
UNIFORM_BUFFER = UNIFORM_BUFFER,
STORAGE_BUFFER = STORAGE_BUFFER,
INDEX_BUFFER = INDEX_BUFFER,
VERTEX_BUFFER = VERTEX_BUFFER,
INDIRECT_BUFFER = INDIRECT_BUFFER,
SHADER_DEVICE_ADDRESS = SHADER_DEVICE_ADDRESS
RequiresOneOf([
RequiresAllOf([APIVersion(V1_2)]),
RequiresAllOf([DeviceExtension(khr_buffer_device_address)]),
RequiresAllOf([DeviceExtension(ext_buffer_device_address)]),
]),
ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY = ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR
RequiresOneOf([
RequiresAllOf([DeviceExtension(khr_acceleration_structure)]),
]),
ACCELERATION_STRUCTURE_STORAGE = ACCELERATION_STRUCTURE_STORAGE_KHR
RequiresOneOf([
RequiresAllOf([DeviceExtension(khr_acceleration_structure)]),
]),
}