Skip to main content

PipelineCache

Trait PipelineCache 

Source
pub trait PipelineCache: VkHandle<Handle = VkPipelineCache> + DeviceChildHandle {
    // Provided methods
    fn data_len(&self) -> Result<usize> { ... }
    fn data_into(
        &self,
        store: &mut [MaybeUninit<u8>],
    ) -> Result<ArrayQueryResult<usize>> { ... }
}

Provided Methods§

Source

fn data_len(&self) -> Result<usize>

Available on crate feature Implements only.

Get the size of the data store from a pipeline cache

§Failures

On failure, this command returns

  • [brvk::VK_ERROR_OUT_OF_HOST_MEMORY]
  • [brvk::VK_ERROR_OUT_OF_DEVICE_MEMORY]
Source

fn data_into( &self, store: &mut [MaybeUninit<u8>], ) -> Result<ArrayQueryResult<usize>>

Available on crate feature Implements only.

Get the content of the data store from a pipeline cache

§Failures

On failure, this command returns

  • [brvk::VK_ERROR_OUT_OF_HOST_MEMORY]
  • [brvk::VK_ERROR_OUT_OF_DEVICE_MEMORY]

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<'s, T> PipelineCache for &'s T
where T: PipelineCache + ?Sized,

Source§

impl<'s, T> PipelineCache for &'s mut T
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for Arc<T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for Box<T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for ManuallyDrop<T>
where T: PipelineCache,

Source§

impl<T> PipelineCache for MappedMutexGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for MappedRwLockReadGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for MappedRwLockWriteGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for MutexGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for MutexGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for Rc<T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for Ref<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for RefMut<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for RwLockReadGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for RwLockReadGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for RwLockWriteGuard<'_, T>
where T: PipelineCache + ?Sized,

Source§

impl<T> PipelineCache for RwLockWriteGuard<'_, T>
where T: PipelineCache + ?Sized,

Implementors§

Source§

impl<Device: VkHandle<Handle = VkDevice>> PipelineCache for PipelineCacheObject<Device>