Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

osg::Stencil Class Reference

Inheritance diagram for osg::Stencil:

osg::StateAttribute osg::Object osg::Referenced List of all members.

Public Types

enum  Function {
  NEVER = GL_NEVER, LESS = GL_LESS, EQUAL = GL_EQUAL, LEQUAL = GL_LEQUAL,
  GREATER = GL_GREATER, NOTEQUAL = GL_NOTEQUAL, GEQUAL = GL_GEQUAL, ALWAYS = GL_ALWAYS
}
enum  Operation {
  KEEP = GL_KEEP, ZERO = GL_ZERO, REPLACE = GL_REPLACE, INCR = GL_INCR,
  DECR = GL_DECR, INVERT = GL_INVERT
}

Public Member Functions

 Stencil ()
 Stencil (const Stencil &stencil, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_StateAttribute (osg, Stencil, STENCIL)
virtual int compare (const StateAttribute &sa) const
virtual bool getModeUsage (ModeUsage &usage) const
void setFunction (Function func, int ref, unsigned int mask)
Function getFunction () const
int getFunctionRef () const
unsigned int getFunctionMask () const
void setOperation (Operation sfail, Operation zfail, Operation zpass)
Operation getStencilFailOperation () const
Operation getStencilPassAndDepthFailOperation () const
Operation getStencilPassAndDepthPassOperation () const
void setWriteMask (unsigned int mask)
unsigned int getWriteMask () const
virtual void apply (State &state) const

Protected Member Functions

virtual ~Stencil ()

Protected Attributes

Function _func
int _funcRef
unsigned int _funcMask
Operation _sfail
Operation _zfail
Operation _zpass
unsigned int _writeMask

Detailed Description

Encapsulate OpenGL glStencilFunc/Op/Mask functions.


Member Enumeration Documentation

enum osg::Stencil::Function
 

Enumerator:
NEVER 
LESS 
EQUAL 
LEQUAL 
GREATER 
NOTEQUAL 
GEQUAL 
ALWAYS 

enum osg::Stencil::Operation
 

Enumerator:
KEEP 
ZERO 
REPLACE 
INCR 
DECR 
INVERT 


Constructor & Destructor Documentation

osg::Stencil::Stencil  ) 
 

osg::Stencil::Stencil const Stencil stencil,
const CopyOp copyop = CopyOp::SHALLOW_COPY
[inline]
 

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::Stencil::~Stencil  )  [protected, virtual]
 


Member Function Documentation

virtual void osg::Stencil::apply State state  )  const [virtual]
 

apply the OpenGL state attributes. The global state for the current OpenGL context is passed in to allow the StateAttribute to obtain details on the the current context and state.

Implements osg::StateAttribute.

virtual int osg::Stencil::compare const StateAttribute sa  )  const [inline, virtual]
 

return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.

Implements osg::StateAttribute.

Function osg::Stencil::getFunction  )  const [inline]
 

unsigned int osg::Stencil::getFunctionMask  )  const [inline]
 

int osg::Stencil::getFunctionRef  )  const [inline]
 

virtual bool osg::Stencil::getModeUsage ModeUsage &  usage  )  const [inline, virtual]
 

Operation osg::Stencil::getStencilFailOperation  )  const [inline]
 

get the operation when the stencil test fails.

Operation osg::Stencil::getStencilPassAndDepthFailOperation  )  const [inline]
 

get the operation when the stencil test passes but the depth test fails.

Operation osg::Stencil::getStencilPassAndDepthPassOperation  )  const [inline]
 

get the operation when both the stencil test and the depth test pass.

unsigned int osg::Stencil::getWriteMask  )  const [inline]
 

osg::Stencil::META_StateAttribute osg  ,
Stencil  ,
STENCIL 
 

void osg::Stencil::setFunction Function  func,
int  ref,
unsigned int  mask
[inline]
 

void osg::Stencil::setOperation Operation  sfail,
Operation  zfail,
Operation  zpass
[inline]
 

set the operations to apply when the various stencil and depth tests fail or pass. First parameter is to control the operation when the stencil test fails. The second parameter is to control the operation when the stencil test passes, but depth test fails. The third parameter controls the operation when both the stencil test and depth pass. Ordering of parameter is the same as if using glStencilOp(,,).

void osg::Stencil::setWriteMask unsigned int  mask  )  [inline]
 


Member Data Documentation

Function osg::Stencil::_func [protected]
 

unsigned int osg::Stencil::_funcMask [protected]
 

int osg::Stencil::_funcRef [protected]
 

Operation osg::Stencil::_sfail [protected]
 

unsigned int osg::Stencil::_writeMask [protected]
 

Operation osg::Stencil::_zfail [protected]
 

Operation osg::Stencil::_zpass [protected]
 


The documentation for this class was generated from the following file:
Generated on Wed Sep 7 11:10:03 2005 for openscenegraph by  doxygen 1.4.4