[][src]Struct wgpu::BufferSlice

pub struct BufferSlice<'a> { /* fields omitted */ }

Slice into a [Buffer].

Created by calling [Buffer::slice]. To use the whole buffer, call with unbounded slice:

buffer.slice(..)

Methods

impl<'_> BufferSlice<'_>[src]

pub fn slice<S: RangeBounds<BufferAddress>>(&self, bounds: S) -> Self[src]

Use only a portion of this BufferSlice for a given operation. Choosing a range with no end will use the rest of the buffer. Using a totally unbounded range will use the entire BufferSlice.

pub fn map_async(
    &self,
    mode: MapMode
) -> impl Future<Output = Result<(), BufferAsyncError>> + Send
[src]

Map the buffer. Buffer is ready to map once the future is resolved.

For the future to complete, device.poll(...) must be called elsewhere in the runtime, possibly integrated into an event loop, run on a separate thread, or continually polled in the same task runtime that this future will be run on.

It's expected that wgpu will eventually supply its own event loop infrastructure that will be easy to integrate into other event loops, like winit's.

pub fn get_mapped_range(&self) -> BufferView[src]

Synchronously and immediately map a buffer for reading. If the buffer is not immediately mappable through [BufferDescriptor::mapped_at_creation] or [BufferSlice::map_async], will panic.

pub fn get_mapped_range_mut(&self) -> BufferViewMut[src]

Synchronously and immediately map a buffer for writing. If the buffer is not immediately mappable through [BufferDescriptor::mapped_at_creation] or [BufferSlice::map_async], will panic.

Trait Implementations

impl<'a> Clone for BufferSlice<'a>[src]

impl<'a> Copy for BufferSlice<'a>[src]

Auto Trait Implementations

impl<'a> !RefUnwindSafe for BufferSlice<'a>

impl<'a> Send for BufferSlice<'a>

impl<'a> Sync for BufferSlice<'a>

impl<'a> Unpin for BufferSlice<'a>

impl<'a> !UnwindSafe for BufferSlice<'a>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.