Trait DescriptorPoolMut

Source
pub trait DescriptorPoolMut:
    DescriptorPool
    + VkHandleMut
    + DeviceChildHandle {
    // Provided methods
    unsafe fn alloc_raw(
        &mut self,
        info: &VkDescriptorSetAllocateInfo,
        objects: &mut [VkDescriptorSet],
    ) -> Result<()> { ... }
    fn alloc(
        &mut self,
        layouts: &[VkHandleRef<'_, VkDescriptorSetLayout>],
    ) -> Result<Vec<DescriptorSet>> { ... }
    fn alloc_array<const N: usize>(
        &mut self,
        layouts: &[VkHandleRef<'_, VkDescriptorSetLayout>; N],
    ) -> Result<[DescriptorSet; N]> { ... }
    unsafe fn reset(&mut self, flags: VkDescriptorPoolResetFlags) -> Result<()> { ... }
    unsafe fn free(&mut self, sets: &[DescriptorSet]) -> Result<()> { ... }
}

Provided Methods§

Source

unsafe fn alloc_raw( &mut self, info: &VkDescriptorSetAllocateInfo, objects: &mut [VkDescriptorSet], ) -> Result<()>

Allocate one or more descriptor sets

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
  • VK_ERROR_FRAGMENTED_POOL
§Safety

no guarantees will be provided (simply calls under api)

Source

fn alloc( &mut self, layouts: &[VkHandleRef<'_, VkDescriptorSetLayout>], ) -> Result<Vec<DescriptorSet>>

Allocate one or more descriptor sets

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
  • VK_ERROR_FRAGMENTED_POOL
Source

fn alloc_array<const N: usize>( &mut self, layouts: &[VkHandleRef<'_, VkDescriptorSetLayout>; N], ) -> Result<[DescriptorSet; N]>

Allocate one or more descriptor sets

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
  • VK_ERROR_FRAGMENTED_POOL
Source

unsafe fn reset(&mut self, flags: VkDescriptorPoolResetFlags) -> Result<()>

Resets a descriptor pool object

§Safety

Application must not use descriptor sets after this call

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
Source

unsafe fn free(&mut self, sets: &[DescriptorSet]) -> Result<()>

Free one or more descriptor sets

§Safety

Host access to each member of pDescriptorSets must be externally synchronized

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<'s, T> DescriptorPoolMut for &'s mut T

Source§

impl<T> DescriptorPoolMut for Box<T>

Source§

impl<T> DescriptorPoolMut for RefMut<'_, T>

Source§

impl<T> DescriptorPoolMut for ManuallyDrop<T>

Source§

impl<T> DescriptorPoolMut for MutexGuard<'_, T>

Source§

impl<T> DescriptorPoolMut for RwLockWriteGuard<'_, T>

Source§

impl<T> DescriptorPoolMut for MappedMutexGuard<'_, T>

Source§

impl<T> DescriptorPoolMut for MutexGuard<'_, T>

Source§

impl<T> DescriptorPoolMut for MappedRwLockWriteGuard<'_, T>

Source§

impl<T> DescriptorPoolMut for RwLockWriteGuard<'_, T>

Implementors§