Trait luminance::backend::buffer::Buffer[][src]

pub unsafe trait Buffer<T> where
    T: Copy
{ type BufferRepr; unsafe fn new_buffer(
        &mut self,
        len: usize
    ) -> Result<Self::BufferRepr, BufferError>
    where
        T: Default
;
unsafe fn len(buffer: &Self::BufferRepr) -> usize;
unsafe fn from_vec(
        &mut self,
        vec: Vec<T>
    ) -> Result<Self::BufferRepr, BufferError>;
unsafe fn repeat(
        &mut self,
        len: usize,
        value: T
    ) -> Result<Self::BufferRepr, BufferError>;
unsafe fn at(buffer: &Self::BufferRepr, i: usize) -> Option<T>;
unsafe fn whole(buffer: &Self::BufferRepr) -> Vec<T>;
unsafe fn set(
        buffer: &mut Self::BufferRepr,
        i: usize,
        x: T
    ) -> Result<(), BufferError>;
unsafe fn write_whole(
        buffer: &mut Self::BufferRepr,
        values: &[T]
    ) -> Result<(), BufferError>;
unsafe fn clear(
        buffer: &mut Self::BufferRepr,
        x: T
    ) -> Result<(), BufferError>; }

Associated Types

The inner representation of the buffer for this backend.

Required methods

Create a new buffer with a given number of uninitialized elements.

Implementors