![]()  | 
  
    OpenCV
    3.4.5
    
   Open Source Computer Vision 
   | 
 
Smart pointer for OpenGL 2D texture memory with reference counting. More...
#include "opengl.hpp"
Public Types | |
| enum | Format {  NONE = 0, DEPTH_COMPONENT = 0x1902, RGB = 0x1907, RGBA = 0x1908 }  | 
| An Image Format describes the way that the images in Textures store their data.  More... | |
Public Member Functions | |
| Texture2D () | |
| The constructors.  More... | |
| Texture2D (int arows, int acols, Format aformat, unsigned int atexId, bool autoRelease=false) | |
| Texture2D (Size asize, Format aformat, unsigned int atexId, bool autoRelease=false) | |
| Texture2D (int arows, int acols, Format aformat, bool autoRelease=false) | |
| Texture2D (Size asize, Format aformat, bool autoRelease=false) | |
| Texture2D (InputArray arr, bool autoRelease=false) | |
| void | bind () const | 
| Binds texture to current active texture unit for GL_TEXTURE_2D target.  More... | |
| int | cols () const | 
| void | copyFrom (InputArray arr, bool autoRelease=false) | 
| Copies from host/device memory to OpenGL texture.  More... | |
| void | copyTo (OutputArray arr, int ddepth=CV_32F, bool autoRelease=false) const | 
| Copies from OpenGL texture to host/device memory or another OpenGL texture object.  More... | |
| void | create (int arows, int acols, Format aformat, bool autoRelease=false) | 
| Allocates memory for ogl::Texture2D object.  More... | |
| void | create (Size asize, Format aformat, bool autoRelease=false) | 
| bool | empty () const | 
| Format | format () const | 
| void | release () | 
| Decrements the reference counter and destroys the texture object if needed.  More... | |
| int | rows () const | 
| void | setAutoRelease (bool flag) | 
| Sets auto release mode.  More... | |
| Size | size () const | 
| unsigned int | texId () const | 
| get OpenGL opject id  More... | |
Smart pointer for OpenGL 2D texture memory with reference counting.
| cv::ogl::Texture2D::Texture2D | ( | ) | 
The constructors.
Creates empty ogl::Texture2D object, allocates memory for ogl::Texture2D object or copies from host/device memory.
| cv::ogl::Texture2D::Texture2D | ( | int | arows, | 
| int | acols, | ||
| Format | aformat, | ||
| unsigned int | atexId, | ||
| bool | autoRelease = false  | 
        ||
| ) | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| cv::ogl::Texture2D::Texture2D | ( | Size | asize, | 
| Format | aformat, | ||
| unsigned int | atexId, | ||
| bool | autoRelease = false  | 
        ||
| ) | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| cv::ogl::Texture2D::Texture2D | ( | int | arows, | 
| int | acols, | ||
| Format | aformat, | ||
| bool | autoRelease = false  | 
        ||
| ) | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| arows | Number of rows. | 
| acols | Number of columns. | 
| aformat | Image format. See cv::ogl::Texture2D::Format . | 
| autoRelease | Auto release mode (if true, release will be called in object's destructor). | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| asize | 2D array size. | 
| aformat | Image format. See cv::ogl::Texture2D::Format . | 
| autoRelease | Auto release mode (if true, release will be called in object's destructor). | 
      
  | 
  explicit | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| arr | Input array (host or device memory, it can be Mat , cuda::GpuMat or ogl::Buffer ). | 
| autoRelease | Auto release mode (if true, release will be called in object's destructor). | 
| void cv::ogl::Texture2D::bind | ( | ) | const | 
Binds texture to current active texture unit for GL_TEXTURE_2D target.
| int cv::ogl::Texture2D::cols | ( | ) | const | 
| void cv::ogl::Texture2D::copyFrom | ( | InputArray | arr, | 
| bool | autoRelease = false  | 
        ||
| ) | 
Copies from host/device memory to OpenGL texture.
| arr | Input array (host or device memory, it can be Mat , cuda::GpuMat or ogl::Buffer ). | 
| autoRelease | Auto release mode (if true, release will be called in object's destructor). | 
| void cv::ogl::Texture2D::copyTo | ( | OutputArray | arr, | 
| int | ddepth = CV_32F,  | 
        ||
| bool | autoRelease = false  | 
        ||
| ) | const | 
Copies from OpenGL texture to host/device memory or another OpenGL texture object.
| arr | Destination array (host or device memory, can be Mat , cuda::GpuMat , ogl::Buffer or ogl::Texture2D ). | 
| ddepth | Destination depth. | 
| autoRelease | Auto release mode for destination buffer (if arr is OpenGL buffer or texture). | 
| void cv::ogl::Texture2D::create | ( | int | arows, | 
| int | acols, | ||
| Format | aformat, | ||
| bool | autoRelease = false  | 
        ||
| ) | 
Allocates memory for ogl::Texture2D object.
| arows | Number of rows. | 
| acols | Number of columns. | 
| aformat | Image format. See cv::ogl::Texture2D::Format . | 
| autoRelease | Auto release mode (if true, release will be called in object's destructor). | 
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
| asize | 2D array size. | 
| aformat | Image format. See cv::ogl::Texture2D::Format . | 
| autoRelease | Auto release mode (if true, release will be called in object's destructor). | 
| bool cv::ogl::Texture2D::empty | ( | ) | const | 
| Format cv::ogl::Texture2D::format | ( | ) | const | 
| void cv::ogl::Texture2D::release | ( | ) | 
Decrements the reference counter and destroys the texture object if needed.
The function will call setAutoRelease(true) .
| int cv::ogl::Texture2D::rows | ( | ) | const | 
| void cv::ogl::Texture2D::setAutoRelease | ( | bool | flag | ) | 
Sets auto release mode.
| flag | Auto release mode (if true, release will be called in object's destructor). | 
The lifetime of the OpenGL object is tied to the lifetime of the context. If OpenGL context was bound to a window it could be released at any time (user can close a window). If object's destructor is called after destruction of the context it will cause an error. Thus ogl::Texture2D doesn't destroy OpenGL object in destructor by default (all OpenGL resources will be released with OpenGL context). This function can force ogl::Texture2D destructor to destroy OpenGL object.
| Size cv::ogl::Texture2D::size | ( | ) | const | 
| unsigned int cv::ogl::Texture2D::texId | ( | ) | const | 
get OpenGL opject id
 1.8.12