[][src]Struct opencv::core::Buffer

pub struct Buffer { /* fields omitted */ }

Smart pointer for OpenGL buffer object with reference counting.

Buffer Objects are OpenGL objects that store an array of unformatted memory allocated by the OpenGL context. These can be used to store vertex data, pixel data retrieved from images or the framebuffer, and a variety of other things.

ogl::Buffer has interface similar with Mat interface and represents 2D array memory.

ogl::Buffer supports memory transfers between host and device and also can be mapped to CUDA memory.

Implementations

impl Buffer[src]

impl Buffer[src]

pub fn default() -> Result<Buffer>[src]

The constructors.

Creates empty ogl::Buffer object, creates ogl::Buffer object from existed buffer ( abufId parameter), allocates memory for ogl::Buffer object or copies from host/device memory.

pub fn new(
    arows: i32,
    acols: i32,
    atype: i32,
    abuf_id: u32,
    auto_release: bool
) -> Result<Buffer>
[src]

The constructors.

Creates empty ogl::Buffer object, creates ogl::Buffer object from existed buffer ( abufId parameter), allocates memory for ogl::Buffer object or copies from host/device memory.

Overloaded parameters

Parameters

  • arows: Number of rows in a 2D array.
  • acols: Number of columns in a 2D array.
  • atype: Array type ( CV_8UC1, ..., CV_64FC4 ). See Mat for details.
  • abufId: Buffer object name.
  • autoRelease: Auto release mode (if true, release will be called in object's destructor).

C++ default parameters

  • auto_release: false

pub fn new_1(
    asize: Size,
    atype: i32,
    abuf_id: u32,
    auto_release: bool
) -> Result<Buffer>
[src]

The constructors.

Creates empty ogl::Buffer object, creates ogl::Buffer object from existed buffer ( abufId parameter), allocates memory for ogl::Buffer object or copies from host/device memory.

Overloaded parameters

Parameters

  • asize: 2D array size.
  • atype: Array type ( CV_8UC1, ..., CV_64FC4 ). See Mat for details.
  • abufId: Buffer object name.
  • autoRelease: Auto release mode (if true, release will be called in object's destructor).

C++ default parameters

  • auto_release: false

pub fn new_2(
    arows: i32,
    acols: i32,
    atype: i32,
    target: Buffer_Target,
    auto_release: bool
) -> Result<Buffer>
[src]

The constructors.

Creates empty ogl::Buffer object, creates ogl::Buffer object from existed buffer ( abufId parameter), allocates memory for ogl::Buffer object or copies from host/device memory.

Overloaded parameters

Parameters

  • arows: Number of rows in a 2D array.
  • acols: Number of columns in a 2D array.
  • atype: Array type ( CV_8UC1, ..., CV_64FC4 ). See Mat for details.
  • target: Buffer usage. See cv::ogl::Buffer::Target .
  • autoRelease: Auto release mode (if true, release will be called in object's destructor).

C++ default parameters

  • target: ARRAY_BUFFER
  • auto_release: false

pub fn new_3(
    asize: Size,
    atype: i32,
    target: Buffer_Target,
    auto_release: bool
) -> Result<Buffer>
[src]

The constructors.

Creates empty ogl::Buffer object, creates ogl::Buffer object from existed buffer ( abufId parameter), allocates memory for ogl::Buffer object or copies from host/device memory.

Overloaded parameters

Parameters

  • asize: 2D array size.
  • atype: Array type ( CV_8UC1, ..., CV_64FC4 ). See Mat for details.
  • target: Buffer usage. See cv::ogl::Buffer::Target .
  • autoRelease: Auto release mode (if true, release will be called in object's destructor).

C++ default parameters

  • target: ARRAY_BUFFER
  • auto_release: false

pub fn new_4(
    arr: &dyn ToInputArray,
    target: Buffer_Target,
    auto_release: bool
) -> Result<Buffer>
[src]

The constructors.

Creates empty ogl::Buffer object, creates ogl::Buffer object from existed buffer ( abufId parameter), allocates memory for ogl::Buffer object or copies from host/device memory.

Overloaded parameters

Parameters

  • arr: Input array (host or device memory, it can be Mat , cuda::GpuMat or std::vector ).
  • target: Buffer usage. See cv::ogl::Buffer::Target .
  • autoRelease: Auto release mode (if true, release will be called in object's destructor).

C++ default parameters

  • target: ARRAY_BUFFER
  • auto_release: false

pub fn unbind(target: Buffer_Target) -> Result<()>[src]

Unbind any buffers from the specified binding point.

Parameters

  • target: Binding point. See cv::ogl::Buffer::Target .

Trait Implementations

impl Boxed for Buffer[src]

impl BufferTrait for Buffer[src]

impl Drop for Buffer[src]

impl Send for Buffer[src]

Auto Trait Implementations

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, 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.