Open CASCADE Technology 6.5.2
Public Types | Public Member Functions | Static Public Attributes
OpenGl_FrameBuffer Class Reference

#include <OpenGl_FrameBuffer.hxx>

Public Types

typedef GLuint * ids
typedef GLuint * ids
typedef GLuint id
typedef GLenum attachmentPoint
typedef GLenum GLenum textureTarget
typedef GLenum GLenum GLuint textureId
typedef GLenum GLenum GLuint GLint level
typedef GLuint * ids
typedef GLuint * ids
typedef GLuint id
typedef GLenum internalFormat
typedef GLenum GLsizei width
typedef GLenum GLsizei GLsizei height
typedef GLenum attachmentPoint
typedef GLenum GLenum renderbufferTarget
typedef GLenum GLenum GLuint renderbufferId

Public Member Functions

typedef void (GL_API_ENTRY *glGenFramebuffersEXT_t)(GLsizei n
typedef void (GL_API_ENTRY *glDeleteFramebuffersEXT_t)(GLsizei n
typedef void (GL_API_ENTRY *glBindFramebufferEXT_t)(GLenum target
typedef void (GL_API_ENTRY *glFramebufferTexture2DEXT_t)(GLenum target
typedef GLenum (GL_API_ENTRY *glCheckFramebufferStatusEXT_t)(GLenum target)
typedef void (GL_API_ENTRY *glGenRenderbuffersEXT_t)(GLsizei n
typedef void (GL_API_ENTRY *glDeleteRenderbuffersEXT_t)(GLsizei n
typedef void (GL_API_ENTRY *glBindRenderbufferEXT_t)(GLenum target
typedef void (GL_API_ENTRY *glRenderbufferStorageEXT_t)(GLenum target
typedef void (GL_API_ENTRY *glFramebufferRenderbufferEXT_t)(GLenum target
 OpenGl_FrameBuffer (GLint theTextureFormat=GL_RGBA8)
virtual ~OpenGl_FrameBuffer ()
GLsizei GetSizeX () const
 Texture width.
GLsizei GetSizeY () const
 Texture height.
GLsizei GetVPSizeX () const
 Viewport width.
GLsizei GetVPSizeY () const
 Viewport height.
Standard_Boolean IsValid () const
 Returns true if current object was initialized.
Standard_Boolean Init (GLsizei theViewportSizeX, GLsizei theViewportSizeY, GLboolean toForcePowerOfTwo=GL_FALSE)
 Notice! Obsolete hardware (GeForce FX etc) doesn't support rectangular textures! There are 3 possible results if you are trying to create non power-of-two FBO on these cards: 1) FBO creation will fail, current implementation will try to generate compatible FBO; 2) FBO rendering will be done in software mode (ForceWare 'hack'); 3) FBO rendering will be incorrect (some obsolete Catalyst drivers).
void Release ()
 Release GL objects.
void SetupViewport ()
 Setup viewport to render into FBO.
void ChangeViewport (const GLsizei theVPSizeX, const GLsizei theVPSizeY)
 Override viewport settings.
void BindBuffer ()
 Bind frame buffer (to render into the texture).
void UnbindBuffer ()
 Unbind frame buffer.
void BindTexture ()
 Bind the texture.
void UnbindTexture ()
 Unbind the texture.

Static Public Attributes

static const GLuint NO_TEXTURE = 0
 Helpful constants.
static const GLuint NO_FRAMEBUFFER = 0
static const GLuint NO_RENDERBUFFER = 0

Member Typedef Documentation

typedef GLenum GLsizei GLsizei OpenGl_FrameBuffer::height
typedef GLuint OpenGl_FrameBuffer::id
typedef GLuint OpenGl_FrameBuffer::id
typedef GLuint* OpenGl_FrameBuffer::ids
typedef GLuint* OpenGl_FrameBuffer::ids
typedef GLuint* OpenGl_FrameBuffer::ids
typedef GLuint* OpenGl_FrameBuffer::ids
typedef GLenum GLenum GLuint GLint OpenGl_FrameBuffer::level
typedef GLenum GLenum GLuint OpenGl_FrameBuffer::renderbufferId
typedef GLenum GLenum GLuint OpenGl_FrameBuffer::textureId
typedef GLenum GLenum OpenGl_FrameBuffer::textureTarget
typedef GLenum GLsizei OpenGl_FrameBuffer::width

Constructor & Destructor Documentation

OpenGl_FrameBuffer::OpenGl_FrameBuffer ( GLint  theTextureFormat = GL_RGBA8)
virtual OpenGl_FrameBuffer::~OpenGl_FrameBuffer ( ) [inline, virtual]

Member Function Documentation

void OpenGl_FrameBuffer::BindBuffer ( ) [inline]
void OpenGl_FrameBuffer::BindTexture ( ) [inline]
void OpenGl_FrameBuffer::ChangeViewport ( const GLsizei  theVPSizeX,
const GLsizei  theVPSizeY 
) [inline]
GLsizei OpenGl_FrameBuffer::GetSizeX ( ) const [inline]
GLsizei OpenGl_FrameBuffer::GetSizeY ( ) const [inline]
GLsizei OpenGl_FrameBuffer::GetVPSizeX ( ) const [inline]
GLsizei OpenGl_FrameBuffer::GetVPSizeY ( ) const [inline]
typedef OpenGl_FrameBuffer::GLenum ( GL_API_ENTRY *  glCheckFramebufferStatusEXT_t)
Standard_Boolean OpenGl_FrameBuffer::Init ( GLsizei  theViewportSizeX,
GLsizei  theViewportSizeY,
GLboolean  toForcePowerOfTwo = GL_FALSE 
)
Standard_Boolean OpenGl_FrameBuffer::IsValid ( ) const [inline]
void OpenGl_FrameBuffer::Release ( )
void OpenGl_FrameBuffer::SetupViewport ( ) [inline]
void OpenGl_FrameBuffer::UnbindBuffer ( ) [inline]
void OpenGl_FrameBuffer::UnbindTexture ( ) [inline]
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glDeleteFramebuffersEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glBindRenderbufferEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glFramebufferTexture2DEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glRenderbufferStorageEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glFramebufferRenderbufferEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glGenRenderbuffersEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glDeleteRenderbuffersEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glGenFramebuffersEXT_t)
typedef OpenGl_FrameBuffer::void ( GL_API_ENTRY *  glBindFramebufferEXT_t)

Field Documentation

const GLuint OpenGl_FrameBuffer::NO_FRAMEBUFFER = 0 [static]
const GLuint OpenGl_FrameBuffer::NO_RENDERBUFFER = 0 [static]
const GLuint OpenGl_FrameBuffer::NO_TEXTURE = 0 [static]

The documentation for this class was generated from the following file:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines