# Visualization Library

A lightweight C++ OpenGL middleware for 2D/3D graphics

[Home] [Tutorials] [All Classes] [Grouped Classes]

Public Member Functions | Protected Attributes

# vl::BlitFramebuffer Class Reference

A RenderEventCallback that can be used to copy pixels from a framebuffer to another as described in GL_EXT_framebuffer_blit. More...

`#include <BlitFramebuffer.hpp>`

Inheritance diagram for vl::BlitFramebuffer:

List of all members.

## Public Member Functions

| BlitFramebuffer ()
virtual const char * | className ()
| Returns the name of the class.
void | copyPixels ()
| Performs the actual pixel copy from the read framebuffer to the draw framebuffer.
virtual bool | onRenderingStarted (const RenderingAbstract *)
| Reimplement to react to this event.
virtual bool | onRenderingFinished (const RenderingAbstract *)
| Reimplement to react to this event.
virtual bool | onRendererStarted (const RendererAbstract *)
| Reimplement to react to this event.
virtual bool | onRendererFinished (const RendererAbstract *)
| Reimplement to react to this event.
void | setReadRenderTarget (RenderTarget *fbo)
| The render-target used as source during blitting.
RenderTarget * | readRenderTarget () const
| The render-target used as source during blitting.
void | setReadBuffer (EReadDrawBuffer read_buffer)
| The read-buffer of the read-render-target used as pixel source during blitting.
EReadDrawBuffer | readBuffer () const
| The read-buffer of the read-render-target used as pixel source during blitting.
void | setDrawRenderTarget (RenderTarget *fbo)
| The render-target used as destination during blitting.
RenderTarget * | drawRenderTarget () const
| The render-target used as destination during blitting.
void | setSrcRect (int x0, int y0, int x1, int y1)
void | setDstRect (int x0, int y0, int x1, int y1)
const int * | srcRect () const
const int * | dstRect () const
void | setBufferMask (int buffer_mask)
| takes a bitmask combination of EBufferBits
int | bufferMask () const
void | setLinearFilteringEnabled (bool enable_linear_filtering)
bool | linearFilteringEnabled () const

## Protected Attributes

ref< RenderTarget > | mReadRenderTarget
ref< RenderTarget > | mDrawRenderTarget
int | mSrcRect [4]
int | mDstRect [4]
int | mBufferMask
EReadDrawBuffer | mReadBuffer
bool | mLinearFilteringEnabled

## Detailed Description

A RenderEventCallback that can be used to copy pixels from a framebuffer to another as described in GL_EXT_framebuffer_blit.

Definition at line 44 of file BlitFramebuffer.hpp.

## Constructor & Destructor Documentation

vl::BlitFramebuffer::BlitFramebuffer | ( | ) | `[inline]`

Definition at line 47 of file BlitFramebuffer.hpp.

References mBufferMask, mLinearFilteringEnabled, mReadBuffer, vl::RDB_COLOR_ATTACHMENT0, setDstRect(), setSrcRect(), and VL_DEBUG_SET_OBJECT_NAME.

## Member Function Documentation

virtual const char* vl::BlitFramebuffer::className | ( | ) | `[inline, virtual]`

Returns the name of the class.

Reimplemented from vl::RenderEventCallback.

Definition at line 56 of file BlitFramebuffer.hpp.

void vl::BlitFramebuffer::copyPixels | ( | ) | `[inline]`

Performs the actual pixel copy from the read framebuffer to the draw framebuffer.

Definition at line 59 of file BlitFramebuffer.hpp.

References vl::RenderTarget::activate(), drawRenderTarget(), vl::FBB_DRAW_FRAMEBUFFER, vl::FBB_READ_FRAMEBUFFER, mBufferMask, mDstRect, mLinearFilteringEnabled, mReadBuffer, mSrcRect, readRenderTarget(), VL_CHECK_OGL, vl::VL_glBindFramebuffer(), and vl::VL_glBlitFramebuffer().

Referenced by onRendererFinished(), onRendererStarted(), onRenderingFinished(), and onRenderingStarted().

virtual bool vl::BlitFramebuffer::onRenderingStarted | ( | const RenderingAbstract * | ) | `[inline, virtual]`

Reimplement to react to this event.

Returns:
  `true` if the callback reacted to the given event.

Implements vl::RenderEventCallback.

Definition at line 98 of file BlitFramebuffer.hpp.

References copyPixels().

virtual bool vl::BlitFramebuffer::onRenderingFinished | ( | const RenderingAbstract * | ) | `[inline, virtual]`

Reimplement to react to this event.

Returns:
  `true` if the callback reacted to the given event.

Implements vl::RenderEventCallback.

Definition at line 104 of file BlitFramebuffer.hpp.

References copyPixels().

virtual bool vl::BlitFramebuffer::onRendererStarted | ( | const RendererAbstract * | ) | `[inline, virtual]`

Reimplement to react to this event.

Returns:
  `true` if the callback reacted to the given event.

Implements vl::RenderEventCallback.

Definition at line 110 of file BlitFramebuffer.hpp.

References copyPixels().

virtual bool vl::BlitFramebuffer::onRendererFinished | ( | const RendererAbstract * | ) | `[inline, virtual]`

Reimplement to react to this event.

Returns:
  `true` if the callback reacted to the given event.

Implements vl::RenderEventCallback.

Definition at line 116 of file BlitFramebuffer.hpp.

References copyPixels().

void vl::BlitFramebuffer::setReadRenderTarget | ( | RenderTarget * | fbo ) | `[inline]`

The render-target used as source during blitting.

Definition at line 123 of file BlitFramebuffer.hpp.

References mReadRenderTarget.

RenderTarget* vl::BlitFramebuffer::readRenderTarget | ( | ) | const`[inline]`

The render-target used as source during blitting.

Definition at line 126 of file BlitFramebuffer.hpp.

References vl::ref< T >::get(), and mReadRenderTarget.

Referenced by copyPixels().

void vl::BlitFramebuffer::setReadBuffer | ( | EReadDrawBuffer | read_buffer ) | `[inline]`

The read-buffer of the read-render-target used as pixel source during blitting.

Definition at line 129 of file BlitFramebuffer.hpp.

References mReadBuffer.

EReadDrawBuffer vl::BlitFramebuffer::readBuffer | ( | ) | const`[inline]`

The read-buffer of the read-render-target used as pixel source during blitting.

Definition at line 132 of file BlitFramebuffer.hpp.

References mReadBuffer.

void vl::BlitFramebuffer::setDrawRenderTarget | ( | RenderTarget * | fbo ) | `[inline]`

The render-target used as destination during blitting.

Definition at line 135 of file BlitFramebuffer.hpp.

References mDrawRenderTarget.

RenderTarget* vl::BlitFramebuffer::drawRenderTarget | ( | ) | const`[inline]`

The render-target used as destination during blitting.

Definition at line 138 of file BlitFramebuffer.hpp.

References vl::ref< T >::get(), and mDrawRenderTarget.

Referenced by copyPixels().

void vl::BlitFramebuffer::setSrcRect | ( | int | x0,
|  | int | y0,
|  | int | x1,
|  | int | y1
| ) |  | `[inline]`

Definition at line 140 of file BlitFramebuffer.hpp.

References mSrcRect.

Referenced by BlitFramebuffer().

void vl::BlitFramebuffer::setDstRect | ( | int | x0,
|  | int | y0,
|  | int | x1,
|  | int | y1
| ) |  | `[inline]`

Definition at line 148 of file BlitFramebuffer.hpp.

References mDstRect.

Referenced by BlitFramebuffer().

const int* vl::BlitFramebuffer::srcRect | ( | ) | const`[inline]`

Definition at line 156 of file BlitFramebuffer.hpp.

References mSrcRect.

const int* vl::BlitFramebuffer::dstRect | ( | ) | const`[inline]`

Definition at line 157 of file BlitFramebuffer.hpp.

References mDstRect.

void vl::BlitFramebuffer::setBufferMask | ( | int | buffer_mask ) | `[inline]`

takes a bitmask combination of EBufferBits

Definition at line 160 of file BlitFramebuffer.hpp.

References mBufferMask.

int vl::BlitFramebuffer::bufferMask | ( | ) | const`[inline]`

Definition at line 161 of file BlitFramebuffer.hpp.

References mBufferMask.

void vl::BlitFramebuffer::setLinearFilteringEnabled | ( | bool | enable_linear_filtering ) | `[inline]`

Definition at line 163 of file BlitFramebuffer.hpp.

References mLinearFilteringEnabled.

bool vl::BlitFramebuffer::linearFilteringEnabled | ( | ) | const`[inline]`

Definition at line 164 of file BlitFramebuffer.hpp.

References mLinearFilteringEnabled.

## Member Data Documentation

ref<RenderTarget> vl::BlitFramebuffer::mReadRenderTarget`[protected]`

Definition at line 167 of file BlitFramebuffer.hpp.

Referenced by readRenderTarget(), and setReadRenderTarget().

ref<RenderTarget> vl::BlitFramebuffer::mDrawRenderTarget`[protected]`

Definition at line 168 of file BlitFramebuffer.hpp.

Referenced by drawRenderTarget(), and setDrawRenderTarget().

int vl::BlitFramebuffer::mSrcRect[4]`[protected]`

Definition at line 169 of file BlitFramebuffer.hpp.

Referenced by copyPixels(), setSrcRect(), and srcRect().

int vl::BlitFramebuffer::mDstRect[4]`[protected]`

Definition at line 170 of file BlitFramebuffer.hpp.

Referenced by copyPixels(), dstRect(), and setDstRect().

int vl::BlitFramebuffer::mBufferMask`[protected]`

Definition at line 171 of file BlitFramebuffer.hpp.

Referenced by BlitFramebuffer(), bufferMask(), copyPixels(), and setBufferMask().

EReadDrawBuffer vl::BlitFramebuffer::mReadBuffer`[protected]`

Definition at line 172 of file BlitFramebuffer.hpp.

Referenced by BlitFramebuffer(), copyPixels(), readBuffer(), and setReadBuffer().

bool vl::BlitFramebuffer::mLinearFilteringEnabled`[protected]`

Definition at line 173 of file BlitFramebuffer.hpp.

Referenced by BlitFramebuffer(), copyPixels(), linearFilteringEnabled(), and setLinearFilteringEnabled().

The documentation for this class was generated from the following file:

- D:/VL/BuildSystem/VL_DISTRO/Visualization_Library_SDK/src/vlGraphics/BlitFramebuffer.hpp

Visualization Library v2011.05.1142 Reference Documentation
Copyright 2005-2011 Michele Bosi. All rights reserved.
Updated on Thu May 26 2011 22:51:37.
Permission is granted to use this page to write and publish articles regarding Visualization Library.