Basic Image AlgorithmS Library
2.8.0
|
Interface for render targets. More...
#include <OpenGLFramework/Base/glfRenderTarget.hh>
Public Types | |
enum | BufferType { BUFFER_COLOR, BUFFER_DEPTH, BUFFER_STENCIL } |
Public Member Functions | |
virtual void | Bind () const =0 |
Makes this render target the currently used render target. More... | |
void | ClearAccumBuffer (float red=0.0f, float green=0.0f, float blue=0.0f, float alpha=0.0f) |
Clears the accumulation buffer of the render target with the given color. More... | |
void | ClearColorBuffer (float red=0.0f, float green=0.0f, float blue=0.0f, float alpha=0.0f) |
Clears the color buffer of the render target with the given color. More... | |
void | ClearDepthBuffer (float depth=1.0f) |
Clears the depth buffer of the render target with the given value. More... | |
void | ClearStencilBuffer (int s=0) |
Clears the stencil buffer of the render target with the given value. More... | |
void | ReadBuffer (BIAS::ImageBase &image, BufferType bufferType, int x, int y, int width, int height) |
Copies the contents of a buffer to an image. More... | |
virtual | ~glfRenderTarget () |
Interface for render targets.
Definition at line 38 of file glfRenderTarget.hh.
Enumerator | |
---|---|
BUFFER_COLOR | |
BUFFER_DEPTH | |
BUFFER_STENCIL |
Definition at line 66 of file glfRenderTarget.hh.
|
inlinevirtual |
Definition at line 40 of file glfRenderTarget.hh.
|
pure virtual |
Makes this render target the currently used render target.
This must call glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, ?)
.
Implemented in BIAS::glfFramebufferObject, BIAS::glfPassiveRenderTarget, and BIAS::glfScreen.
Referenced by BIAS::GLProjectionParametersBase::BeginDraw_(), BIAS::OutputLensDistortion::Draw_(), BIAS::GLProjectionParametersBase::EndDraw_(), BIAS::DistortionRendering::EndRendering(), BIAS::GLProjectionParametersBase::GetDepth(), BIAS::GLProjectionParametersBase::GetGreyImage(), BIAS::GLProjectionParametersBase::GetImage(), BIAS::GLProjectionParametersBase::GetZBuffer(), and BIAS::TriangleMeshSplatRendering::Splat().
void glfRenderTarget::ClearAccumBuffer | ( | float | red = 0.0f , |
float | green = 0.0f , |
||
float | blue = 0.0f , |
||
float | alpha = 0.0f |
||
) |
Clears the accumulation buffer of the render target with the given color.
The color (0,0,0,0) is the default clear color in OpenGL.
Definition at line 50 of file glfRenderTarget.cpp.
void glfRenderTarget::ClearColorBuffer | ( | float | red = 0.0f , |
float | green = 0.0f , |
||
float | blue = 0.0f , |
||
float | alpha = 0.0f |
||
) |
Clears the color buffer of the render target with the given color.
The color (0,0,0,0) is the default clear color in OpenGL.
Definition at line 31 of file glfRenderTarget.cpp.
Referenced by BIAS::GLProjectionParametersBase::BeginDraw_(), BIAS::DistortionRendering::BeginRendering(), BIAS::OutputLensDistortion::Draw_(), BIAS::FramebufferSetup::Execute(), BIAS::DistortionRendering::Init(), and BIAS::TriangleMeshSplatRendering::Splat().
void glfRenderTarget::ClearDepthBuffer | ( | float | depth = 1.0f | ) |
Clears the depth buffer of the render target with the given value.
The value 1 is the default clear value for depth buffers in OpenGL.
Definition at line 41 of file glfRenderTarget.cpp.
Referenced by BIAS::GLProjectionParametersBase::BeginDraw_(), BIAS::DistortionRendering::BeginRendering(), BIAS::OutputLensDistortion::Draw_(), BIAS::FramebufferSetup::Execute(), BIAS::DistortionRendering::Init(), and BIAS::TriangleMeshSplatRendering::Splat().
void glfRenderTarget::ClearStencilBuffer | ( | int | s = 0 | ) |
Clears the stencil buffer of the render target with the given value.
The value 0 is the default clear value for stencil buffers in OpenGL.
Definition at line 59 of file glfRenderTarget.cpp.
Referenced by BIAS::GLProjectionParametersBase::BeginDraw_(), and BIAS::DistortionRendering::BeginRendering().
void glfRenderTarget::ReadBuffer | ( | BIAS::ImageBase & | image, |
BufferType | bufferType, | ||
int | x, | ||
int | y, | ||
int | width, | ||
int | height | ||
) |
Copies the contents of a buffer to an image.
Definition at line 68 of file glfRenderTarget.cpp.
References BIAS::ImageBase::GetImageData(), BIAS::ImageBase::GetStorageType(), BIAS::ImageBase::Init(), BIAS::ImageBase::IsEmpty(), BIAS::ImageBase::Release(), BIAS::ImageBase::ST_char, BIAS::ImageBase::ST_float, BIAS::ImageBase::ST_int, BIAS::ImageBase::ST_shortint, BIAS::ImageBase::ST_unsignedchar, BIAS::ImageBase::ST_unsignedint, and BIAS::ImageBase::ST_unsignedshortint.