pub enum BufferError {
Show 17 variants
VulkanError(VulkanError),
AllocError(AllocationCreationError),
RequirementNotMet {
required_for: &'static str,
requires_one_of: RequiresOneOf,
},
DedicatedAllocationMismatch,
DedicatedAllocationRequired,
InUseByHost,
InUseByDevice,
MaxBufferSizeExceeded {
size: DeviceSize,
max: DeviceSize,
},
MemoryAllocationNotAligned {
allocation_offset: DeviceSize,
required_alignment: DeviceSize,
},
MemoryAllocationTooSmall {
allocation_size: DeviceSize,
required_size: DeviceSize,
},
MemoryBufferDeviceAddressNotSupported,
MemoryExternalHandleTypesDisjoint {
buffer_handle_types: ExternalMemoryHandleTypes,
memory_export_handle_types: ExternalMemoryHandleTypes,
},
MemoryImportedHandleTypeNotEnabled {
buffer_handle_types: ExternalMemoryHandleTypes,
memory_imported_handle_type: ExternalMemoryHandleType,
},
MemoryNotHostVisible,
MemoryProtectedMismatch {
buffer_protected: bool,
memory_protected: bool,
},
MemoryTypeNotAllowed {
provided_memory_type_index: u32,
allowed_memory_type_bits: u32,
},
SharingQueueFamilyIndexOutOfRange {
queue_family_index: u32,
queue_family_count: u32,
},
}
Expand description
Error that can happen in buffer functions.
Variants
VulkanError(VulkanError)
AllocError(AllocationCreationError)
Allocating memory failed.
RequirementNotMet
DedicatedAllocationMismatch
The memory was created dedicated to a resource, but not to this buffer.
DedicatedAllocationRequired
A dedicated allocation is required for this buffer, but one was not provided.
InUseByHost
The host is already using this buffer in a way that is incompatible with the requested access.
InUseByDevice
The device is already using this buffer in a way that is incompatible with the requested access.
MaxBufferSizeExceeded
The specified size exceeded the value of the max_buffer_size
limit.
MemoryAllocationNotAligned
The offset of the allocation does not have the required alignment.
MemoryAllocationTooSmall
The size of the allocation is smaller than what is required.
MemoryBufferDeviceAddressNotSupported
The buffer was created with the shader_device_address
usage, but the memory does not
support this usage.
MemoryExternalHandleTypesDisjoint
Fields
buffer_handle_types: ExternalMemoryHandleTypes
memory_export_handle_types: ExternalMemoryHandleTypes
The memory was created with export handle types, but none of these handle types were enabled on the buffer.
MemoryImportedHandleTypeNotEnabled
Fields
buffer_handle_types: ExternalMemoryHandleTypes
memory_imported_handle_type: ExternalMemoryHandleType
The memory was created with an import, but the import’s handle type was not enabled on the buffer.
MemoryNotHostVisible
The memory backing this buffer is not visible to the host.
MemoryProtectedMismatch
The protection of buffer and memory are not equal.
MemoryTypeNotAllowed
The provided memory type is not one of the allowed memory types that can be bound to this buffer.
SharingQueueFamilyIndexOutOfRange
The sharing mode was set to Concurrent
, but one of the specified queue family indices was
out of range.
Trait Implementations
sourceimpl Clone for BufferError
impl Clone for BufferError
sourcefn clone(&self) -> BufferError
fn clone(&self) -> BufferError
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more