[][src]Struct mallumo_gls::buffer::MutableBuffer

pub struct MutableBuffer { /* fields omitted */ }

Methods

impl MutableBuffer[src]

pub fn new<T>(data: &[T]) -> Result<MutableBuffer, Error>[src]

Creates new buffer and copies data to its memory on GPU

Errors

  • GL_OUT_OF_MEMORY - if the buffer cannot be created

pub fn new_empty(size: usize) -> Result<MutableBuffer, Error>[src]

Creates new empty buffer

Errors

  • BufferCreationError(GL_OUT_OF_MEMORY) - if the buffer cannot be created

pub fn new_zeroed(size: usize) -> Result<MutableBuffer, Error>[src]

pub fn set_data<T>(&mut self, data: &[T]) -> Result<(), Error>[src]

pub fn set_sub_data<T>(
    &mut self,
    data: &[T],
    offset: usize
) -> Result<(), Error>
[src]

Replaces part of memory with data

Errors

  • BufferSetSubDataError(GL_INVALID_VALUE) - if size of data + offset > buffer size

pub fn clear_data(&mut self) -> Result<(), Error>[src]

pub fn copy_to(
    &mut self,
    other: &mut MutableBuffer,
    read_offset: usize,
    write_offset: usize,
    size: usize
) -> Result<(), Error>
[src]

pub fn get<T>(&self, size: usize, offset: usize) -> Result<Vec<T>, Error>[src]

pub fn resize(&mut self, size: usize) -> Result<(), Error>[src]

Trait Implementations

impl Buffer for MutableBuffer[src]

fn bind_base(&self, target: BufferBaseTarget, index: usize) -> Result<(), Error>[src]

fn bind_range(
    &self,
    target: BufferBaseTarget,
    index: usize,
    offset: usize,
    size: usize
) -> Result<(), Error>
[src]

fn bind_as_indirect(&self) -> Result<(), Error>[src]

impl Drop for MutableBuffer[src]

impl Debug for MutableBuffer[src]

Auto Trait Implementations

Blanket Implementations

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

impl<T> From for T[src]

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

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

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

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

The type returned in the event of a conversion error.