class SG_EXPORT osg::Stencil

Encapsulate OpenGL glStencilFunc/Op/Mask functions

Inheritance:


Public Methods

[more] Stencil()
[more] Stencil(const Stencil& stencil, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
Copy constructor using CopyOp to manage deep vs shallow copy
[more] META_StateAttribute(osg, Stencil, STENCIL)
[more]virtual int compare(const StateAttribute& sa) const
return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs
[more]virtual void getAssociatedModes(std::vector<GLMode>& modes) const
[more]inline void setFunction(const Function func, int ref, uint mask)
[more]inline const Function getFunction() const
[more]inline int getFunctionRef() const
[more]inline const uint getFunctionMask() const
[more]inline void setOperation(const Operation sfail, const Operation zfail, const Operation zpass)
set the operations to apply when the various stencil and depth tests fail or pass.
[more]inline const Operation getStencilFailOperation() const
get the operation when the stencil test fails
[more]inline const Operation getStencilPassAndDepthFailOperation() const
get the operation when the stencil test passes but the depth test fails
[more]inline const Operation getStencilPassAndDepthPassOperation() const
get the operation when both the stencil test and the depth test pass
[more]inline void setWriteMask(uint mask)
[more]inline const uint getWriteMask() const
[more]virtual void apply(State& state) const

Public Members

[more]enum Function
[more]enum Operation

Protected Fields

[more]Function _func
[more]int _funcRef
[more]uint _funcMask
[more]Operation _sfail
[more]Operation _zfail
[more]Operation _zpass
[more]uint _writeMask

Protected Methods

[more]virtual ~Stencil()


Inherited from StateAttribute:

Public Methods

ovirtual Object* cloneType() const
ovirtual Object* clone(const CopyOp&) const
ovirtual bool isSameKindAs(const Object* obj) const
ovirtual const char* libraryName() const
ovirtual const char* className() const
ovirtual Type getType() const
ovirtual bool isTextureAttribute() const
obool operator < (const StateAttribute& rhs) const
obool operator == (const StateAttribute& rhs) const
obool operator != (const StateAttribute& rhs) const
ovirtual void compile(State&) const

Public Members

otypedef GLenum GLMode
otypedef unsigned int GLModeValue
otypedef unsigned int OverrideValue
oenum Values
otypedef unsigned int Type
oenum Types


Inherited from Object:

Public Methods

oinline void setDataVariance(const DataVariance dv)
oinline const DataVariance getDataVariance() const
oinline void setUserData(Referenced* obj)
oinline Referenced* getUserData()
oinline const Referenced* getUserData() const

Public Members

oenum DataVariance

Protected Fields

oDataVariance _dataVariance
oref_ptr<Referenced> _userData


Inherited from Referenced:

Public Methods

oinline Referenced& operator = (Referenced&)
oinline void ref() const
oinline void unref() const
oinline void unref_nodelete() const
oinline int referenceCount() const
oinline static int createdCount()
oinline static int deletedCount()

Protected Fields

omutable int _refCount
ostatic int _createdCount
ostatic int _deletedCount


Documentation

Encapsulate OpenGL glStencilFunc/Op/Mask functions
o Stencil()

o Stencil(const Stencil& stencil, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
Copy constructor using CopyOp to manage deep vs shallow copy

o META_StateAttribute(osg, Stencil, STENCIL)

ovirtual int compare(const StateAttribute& sa) const
return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs

ovirtual void getAssociatedModes(std::vector<GLMode>& modes) const

oenum Function

o NEVER

o LESS

o EQUAL

o LEQUAL

o GREATER

o NOTEQUAL

o GEQUAL

o ALWAYS

oinline void setFunction(const Function func, int ref, uint mask)

oinline const Function getFunction() const

oinline int getFunctionRef() const

oinline const uint getFunctionMask() const

oenum Operation

o KEEP

o ZERO

o REPLACE

o INCR

o DECR

o INVERT

oinline void setOperation(const Operation sfail, const Operation zfail, const Operation zpass)
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(,,).

oinline const Operation getStencilFailOperation() const
get the operation when the stencil test fails

oinline const Operation getStencilPassAndDepthFailOperation() const
get the operation when the stencil test passes but the depth test fails

oinline const Operation getStencilPassAndDepthPassOperation() const
get the operation when both the stencil test and the depth test pass

oinline void setWriteMask(uint mask)

oinline const uint getWriteMask() const

ovirtual void apply(State& state) const

ovirtual ~Stencil()

oFunction _func

oint _funcRef

ouint _funcMask

oOperation _sfail

oOperation _zfail

oOperation _zpass

ouint _writeMask


This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java



This page was generated with the help of DOC++.