Struct vulkano::buffer::cpu_pool::CpuBufferPoolSubbuffer
[−]
[src]
pub struct CpuBufferPoolSubbuffer<T, A> where
A: MemoryPool, { /* fields omitted */ }
A subbuffer allocated from a CpuBufferPool
.
When this object is destroyed, the subbuffer is automatically reclaimed by the pool.
Trait Implementations
impl<T, A> Clone for CpuBufferPoolSubbuffer<T, A> where
A: MemoryPool,
[src]
A: MemoryPool,
fn clone(&self) -> CpuBufferPoolSubbuffer<T, A>
[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
Performs copy-assignment from source
. Read more
impl<T, A> BufferAccess for CpuBufferPoolSubbuffer<T, A> where
A: MemoryPool,
[src]
A: MemoryPool,
fn inner(&self) -> BufferInner
[src]
Returns the inner information about this buffer.
fn size(&self) -> usize
[src]
Returns the size of the buffer in bytes.
fn conflicts_buffer(&self, other: &BufferAccess) -> bool
[src]
Returns true if an access to self
potentially overlaps the same memory as an access to other
. Read more
fn conflicts_image(&self, other: &ImageAccess) -> bool
[src]
Returns true if an access to self
potentially overlaps the same memory as an access to other
. Read more
fn conflict_key(&self) -> u64
[src]
Returns a key that uniquely identifies the buffer. Two buffers or images that potentially overlap in memory must return the same key. Read more
fn try_gpu_lock(&self, e: bool, q: &Queue) -> Result<(), AccessError>
[src]
Locks the resource for usage on the GPU. Returns an error if the lock can't be acquired. Read more
unsafe fn increase_gpu_lock(&self)
[src]
Locks the resource for usage on the GPU. Supposes that the resource is already locked, and simply increases the lock by one. Read more
unsafe fn unlock(&self)
[src]
Unlocks the resource previously acquired with try_gpu_lock
or increase_gpu_lock
. Read more
fn len(&self) -> usize where
Self: TypedBufferAccess,
Self::Content: Content,
[src]
Self: TypedBufferAccess,
Self::Content: Content,
Returns the length of the buffer in number of elements. Read more
fn as_buffer_slice(&self) -> BufferSlice<Self::Content, &Self> where
Self: Sized + TypedBufferAccess,
[src]
Self: Sized + TypedBufferAccess,
Builds a BufferSlice
object holding the buffer by reference.
fn slice<T>(&self, range: Range<usize>) -> Option<BufferSlice<[T], &Self>> where
Self: Sized + TypedBufferAccess<Content = [T]>,
[src]
Self: Sized + TypedBufferAccess<Content = [T]>,
Builds a BufferSlice
object holding part of the buffer by reference. Read more
fn into_buffer_slice(self) -> BufferSlice<Self::Content, Self> where
Self: Sized + TypedBufferAccess,
[src]
Self: Sized + TypedBufferAccess,
Builds a BufferSlice
object holding the buffer by value.
fn index<T>(&self, index: usize) -> Option<BufferSlice<[T], &Self>> where
Self: Sized + TypedBufferAccess<Content = [T]>,
[src]
Self: Sized + TypedBufferAccess<Content = [T]>,
Builds a BufferSlice
object holding part of the buffer by reference. Read more
impl<T, A> TypedBufferAccess for CpuBufferPoolSubbuffer<T, A> where
A: MemoryPool,
[src]
A: MemoryPool,
type Content = T
The type of the content.
impl<T, A> DeviceOwned for CpuBufferPoolSubbuffer<T, A> where
A: MemoryPool,
[src]
A: MemoryPool,
Auto Trait Implementations
impl<T, A> Send for CpuBufferPoolSubbuffer<T, A> where
T: Send,
<A as MemoryPool>::Alloc: Send + Sync,
T: Send,
<A as MemoryPool>::Alloc: Send + Sync,
impl<T, A> Sync for CpuBufferPoolSubbuffer<T, A> where
T: Sync,
<A as MemoryPool>::Alloc: Send + Sync,
T: Sync,
<A as MemoryPool>::Alloc: Send + Sync,