[−][src]Struct opencv::core::Buffer
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]
pub fn as_raw_Buffer(&self) -> *const c_void
[src]
pub fn as_raw_mut_Buffer(&mut self) -> *mut c_void
[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]
arows: i32,
acols: i32,
atype: i32,
abuf_id: u32,
auto_release: bool
) -> Result<Buffer>
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]
asize: Size,
atype: i32,
abuf_id: u32,
auto_release: bool
) -> Result<Buffer>
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]
arows: i32,
acols: i32,
atype: i32,
target: Buffer_Target,
auto_release: bool
) -> Result<Buffer>
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]
asize: Size,
atype: i32,
target: Buffer_Target,
auto_release: bool
) -> Result<Buffer>
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]
arr: &dyn ToInputArray,
target: Buffer_Target,
auto_release: bool
) -> Result<Buffer>
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]
pub unsafe fn from_raw(ptr: *mut c_void) -> Self
[src]
pub fn into_raw(self) -> *mut c_void
[src]
pub fn as_raw(&self) -> *const c_void
[src]
pub fn as_raw_mut(&mut self) -> *mut c_void
[src]
impl BufferTrait for Buffer
[src]
pub fn as_raw_Buffer(&self) -> *const c_void
[src]
pub fn as_raw_mut_Buffer(&mut self) -> *mut c_void
[src]
pub fn create(
&mut self,
arows: i32,
acols: i32,
atype: i32,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
[src]
&mut self,
arows: i32,
acols: i32,
atype: i32,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
pub fn create_1(
&mut self,
asize: Size,
atype: i32,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
[src]
&mut self,
asize: Size,
atype: i32,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
pub fn release(&mut self) -> Result<()>
[src]
pub fn set_auto_release(&mut self, flag: bool) -> Result<()>
[src]
pub fn copy_from(
&mut self,
arr: &dyn ToInputArray,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
[src]
&mut self,
arr: &dyn ToInputArray,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
pub fn copy_from_1(
&mut self,
arr: &dyn ToInputArray,
stream: &mut Stream,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
[src]
&mut self,
arr: &dyn ToInputArray,
stream: &mut Stream,
target: Buffer_Target,
auto_release: bool
) -> Result<()>
pub fn copy_to(&self, arr: &mut dyn ToOutputArray) -> Result<()>
[src]
pub fn copy_to_1(
&self,
arr: &mut dyn ToOutputArray,
stream: &mut Stream
) -> Result<()>
[src]
&self,
arr: &mut dyn ToOutputArray,
stream: &mut Stream
) -> Result<()>
pub fn clone(&self, target: Buffer_Target, auto_release: bool) -> Result<Buffer>
[src]
pub fn bind(&self, target: Buffer_Target) -> Result<()>
[src]
pub fn map_host(&mut self, access: Buffer_Access) -> Result<Mat>
[src]
pub fn unmap_host(&mut self) -> Result<()>
[src]
pub fn map_device(&mut self) -> Result<GpuMat>
[src]
pub fn unmap_device(&mut self) -> Result<()>
[src]
pub fn map_device_1(&mut self, stream: &mut Stream) -> Result<GpuMat>
[src]
pub fn unmap_device_1(&mut self, stream: &mut Stream) -> Result<()>
[src]
pub fn rows(&self) -> Result<i32>
[src]
pub fn cols(&self) -> Result<i32>
[src]
pub fn size(&self) -> Result<Size>
[src]
pub fn empty(&self) -> Result<bool>
[src]
pub fn typ(&self) -> Result<i32>
[src]
pub fn depth(&self) -> Result<i32>
[src]
pub fn channels(&self) -> Result<i32>
[src]
pub fn elem_size(&self) -> Result<i32>
[src]
pub fn elem_size1(&self) -> Result<i32>
[src]
pub fn buf_id(&self) -> Result<u32>
[src]
impl Drop for Buffer
[src]
impl Send for Buffer
[src]
Auto Trait Implementations
impl RefUnwindSafe for Buffer
[src]
impl !Sync for Buffer
[src]
impl Unpin for Buffer
[src]
impl UnwindSafe for Buffer
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,