MeVisLabToolboxReference
SoFramebufferSampler Class Reference

Abstract Open Inventor base class for sampler nodes based on a framebuffer object. More...

#include <SoFramebufferSampler.h>

Inheritance diagram for SoFramebufferSampler:
SoSampler SoUniformShaderParameter SoShaderParameter SoFramebufferSampler2D SoFramebufferSampler3D SoMultiPassFramebufferSampler

List of all members.

Public Types

enum  ColorBufferFormat {
  RGB = GL_RGB, RGB8 = GL_RGB8, RGB16 = GL_RGB16, RGB16F = GL_RGB16F_ARB,
  RGB32F = GL_RGB32F_ARB, RGBA = GL_RGBA, RGBA8 = GL_RGBA8, RGBA16 = GL_RGBA16,
  RGBA16F = GL_RGBA16F_ARB, RGBA32F = GL_RGBA32F_ARB
}
 Internal texture format for color buffer. More...
enum  DepthBufferTarget { NONE = 0, RENDERBUFFER = 1, TEXTURE = 2 }
 Depth buffer mode. More...

Public Member Functions

 SoFramebufferSampler ()
 Constructor.
virtual void GLRender (SoGLRenderAction *action)
 Add node to parameter list element, and call 'updatePreparation'.
virtual void getBoundingBox (SoGetBoundingBoxAction *action)
 Compute bounding-box of subgraph.

Static Public Member Functions

static void initClass ()
 Initialize class with runtime type system.

Public Attributes

SoSFEnum colorBufferFormat
 Internal format of color buffer. Default is RGBA.
SoSFEnum depthBufferTarget
 Enable/Disable depth buffer. Default is TRUE.
SoSFBool stencilBuffer
 Enable/Disable stencil buffer. Default is FALSE.
SoSFColor clearColor
 Color used to clear the color buffer.
SoSFFloat clearAlpha
 Alpha value used to clear the color buffer.
SoSFEnum wrapT
 Wrapping mode.
SoSFBool useSizeStateHints
 Read state for size hints.
SoSFBool useFormatStateHints
 Read state for format hints.
SoSFTrigger takeSnapshot
 Take a snapshot of the scene.

Protected Member Functions

 ~SoFramebufferSampler ()
 Destructor.
virtual void applyRenderAction (SoState *)
 Function applies render action to children.
virtual void nameChanged (SoSensor *sensor)
 Called when sampler name has changed.

Protected Attributes

SbBool _fldValUseSizeHints
SbBool _fldValUseFormatHints
ColorBufferFormat _fldValColorBufferFormat
DepthBufferTarget _fldValDepthBufferTarget
SbBool _fldValStencilBuffer
SbBool _rebuild
SbBool _takeSnapshot
int32_t _dataFormat
SbString _depthTextureName
 name of the uniform ?_depth parameter
SoGLFramebufferObject * _framebufferObject
SoGLTexture * _colorBuffer
SoGLRenderbuffer * _depthBufferRBU
SoGLTexture * _depthBufferTEX
SoGLRenderbuffer * _stencilBuffer

Detailed Description

Abstract Open Inventor base class for sampler nodes based on a framebuffer object.

Definition at line 27 of file SoFramebufferSampler.h.


Member Enumeration Documentation

Internal texture format for color buffer.

Enumerator:
RGB 
RGB8 
RGB16 
RGB16F 
RGB32F 
RGBA 
RGBA8 
RGBA16 
RGBA16F 
RGBA32F 

Definition at line 36 of file SoFramebufferSampler.h.

Depth buffer mode.

Enumerator:
NONE 
RENDERBUFFER 
TEXTURE 

Definition at line 50 of file SoFramebufferSampler.h.


Constructor & Destructor Documentation

SoFramebufferSampler::SoFramebufferSampler ( )

Constructor.

SoFramebufferSampler::~SoFramebufferSampler ( ) [protected]

Destructor.


Member Function Documentation

virtual void SoFramebufferSampler::applyRenderAction ( SoState *  ) [protected, virtual]

Function applies render action to children.

Reimplemented in SoMultiPassFramebufferSampler.

virtual void SoFramebufferSampler::getBoundingBox ( SoGetBoundingBoxAction *  action) [virtual]

Compute bounding-box of subgraph.

Reimplemented from SoShaderParameter.

virtual void SoFramebufferSampler::GLRender ( SoGLRenderAction *  action) [virtual]

Add node to parameter list element, and call 'updatePreparation'.

Reimplemented from SoUniformShaderParameter.

static void SoFramebufferSampler::initClass ( ) [static]

Initialize class with runtime type system.

Reimplemented from SoSampler.

Reimplemented in SoFramebufferSampler2D, SoFramebufferSampler3D, and SoMultiPassFramebufferSampler.

virtual void SoFramebufferSampler::nameChanged ( SoSensor *  sensor) [protected, virtual]

Called when sampler name has changed.

Reimplemented from SoSampler.


Member Data Documentation

SoGLTexture* SoFramebufferSampler::_colorBuffer [protected]

Definition at line 102 of file SoFramebufferSampler.h.

int32_t SoFramebufferSampler::_dataFormat [protected]

Definition at line 96 of file SoFramebufferSampler.h.

SoGLRenderbuffer* SoFramebufferSampler::_depthBufferRBU [protected]

Definition at line 103 of file SoFramebufferSampler.h.

SoGLTexture* SoFramebufferSampler::_depthBufferTEX [protected]

Definition at line 104 of file SoFramebufferSampler.h.

name of the uniform ?_depth parameter

Definition at line 99 of file SoFramebufferSampler.h.

Definition at line 92 of file SoFramebufferSampler.h.

Definition at line 89 of file SoFramebufferSampler.h.

Definition at line 88 of file SoFramebufferSampler.h.

SoGLFramebufferObject* SoFramebufferSampler::_framebufferObject [protected]

Definition at line 101 of file SoFramebufferSampler.h.

SbBool SoFramebufferSampler::_rebuild [protected]

Definition at line 94 of file SoFramebufferSampler.h.

SoGLRenderbuffer* SoFramebufferSampler::_stencilBuffer [protected]

Definition at line 105 of file SoFramebufferSampler.h.

Definition at line 95 of file SoFramebufferSampler.h.

Alpha value used to clear the color buffer.

Definition at line 69 of file SoFramebufferSampler.h.

Color used to clear the color buffer.

Definition at line 66 of file SoFramebufferSampler.h.

Internal format of color buffer. Default is RGBA.

Definition at line 57 of file SoFramebufferSampler.h.

Enable/Disable depth buffer. Default is TRUE.

Definition at line 60 of file SoFramebufferSampler.h.

Enable/Disable stencil buffer. Default is FALSE.

Definition at line 63 of file SoFramebufferSampler.h.

Take a snapshot of the scene.

Definition at line 81 of file SoFramebufferSampler.h.

Read state for format hints.

Definition at line 78 of file SoFramebufferSampler.h.

Read state for size hints.

Definition at line 75 of file SoFramebufferSampler.h.

Wrapping mode.

Definition at line 72 of file SoFramebufferSampler.h.


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