openscenegraph
Classes | Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
osgShadow::ShadowTechnique Class Reference
Inheritance diagram for osgShadow::ShadowTechnique:
osg::Object osg::Referenced osgShadow::ParallelSplitShadowMap osgShadow::ShadowMap osgShadow::ShadowTexture osgShadow::ShadowVolume osgShadow::ViewDependentShadowTechnique osgShadow::SoftShadowMap osgShadow::DebugShadowMap osgShadow::StandardShadowMap osgShadow::MinimalShadowMap osgShadow::MinimalCullBoundsShadowMap osgShadow::MinimalDrawBoundsShadowMap osgShadow::ProjectionShadowMap< MinimalShadowMap, LightSpacePerspectiveShadowMapAlgorithm > osgShadow::ProjectionShadowMap< MinimalCullBoundsShadowMap, LightSpacePerspectiveShadowMapAlgorithm > osgShadow::ProjectionShadowMap< MinimalDrawBoundsShadowMap, LightSpacePerspectiveShadowMapAlgorithm > osgShadow::LightSpacePerspectiveShadowMapVB osgShadow::LightSpacePerspectiveShadowMapCB osgShadow::LightSpacePerspectiveShadowMapDB

Classes

class  CameraCullCallback

Public Member Functions

 ShadowTechnique ()
 ShadowTechnique (const ShadowTechnique &es, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 META_Object (osgShadow, ShadowTechnique)
ShadowedScenegetShadowedScene ()
virtual void init ()
virtual void update (osg::NodeVisitor &nv)
virtual void cull (osgUtil::CullVisitor &cv)
virtual void cleanSceneGraph ()
virtual void traverse (osg::NodeVisitor &nv)
virtual void dirty ()
- Public Member Functions inherited from osg::Object
 Object ()
 Object (bool threadSafeRefUnref)
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual ObjectcloneType () const =0
virtual Objectclone (const CopyOp &) const =0
virtual bool isSameKindAs (const Object *) const
virtual const char * libraryName () const =0
virtual const char * className () const =0
virtual void setThreadSafeRefUnref (bool threadSafe)
virtual void setName (const std::string &name)
void setName (const char *name)
const std::string & getName () const
void setDataVariance (DataVariance dv)
DataVariance getDataVariance () const
virtual void computeDataVariance ()
void setUserDataContainer (osg::UserDataContainer *udc)
osg::UserDataContainergetUserDataContainer ()
const osg::UserDataContainergetUserDataContainer () const
osg::UserDataContainergetOrCreateUserDataContainer ()
virtual void setUserData (Referenced *obj)
virtual ReferencedgetUserData ()
virtual const ReferencedgetUserData () const
template<typename T >
bool getUserValue (const std::string &name, T &value) const
template<typename T >
void setUserValue (const std::string &name, const T &value)
virtual void resizeGLObjectBuffers (unsigned int)
virtual void releaseGLObjects (osg::State *=0) const
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const

Protected Member Functions

osg::Vec3 computeOrthogonalVector (const osg::Vec3 &direction) const
virtual ~ShadowTechnique ()
- Protected Member Functions inherited from osg::Object
virtual ~Object ()
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const

Protected Attributes

ShadowedScene_shadowedScene
bool _dirty
- Protected Attributes inherited from osg::Object
std::string _name
DataVariance _dataVariance
osg::UserDataContainer_userDataContainer
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
OpenThreads::Atomic _refCount

Friends

class ShadowedScene

Additional Inherited Members

- Public Types inherited from osg::Object
enum  DataVariance { DYNAMIC, STATIC, UNSPECIFIED }
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
static bool getThreadSafeReferenceCounting ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()

Detailed Description

ShadowedScene provides a mechanism for decorating a scene that the needs to have shadows cast upon it.

Constructor & Destructor Documentation

osgShadow::ShadowTechnique::ShadowTechnique ( )
osgShadow::ShadowTechnique::ShadowTechnique ( const ShadowTechnique es,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY 
)
virtual osgShadow::ShadowTechnique::~ShadowTechnique ( )
protectedvirtual

Member Function Documentation

virtual void osgShadow::ShadowTechnique::cleanSceneGraph ( )
virtual

Clean scene graph from any shadow technique specific nodes, state and drawables.

Reimplemented in osgShadow::ViewDependentShadowTechnique, osgShadow::ShadowMap, osgShadow::ParallelSplitShadowMap, osgShadow::ShadowVolume, and osgShadow::ShadowTexture.

osg::Vec3 osgShadow::ShadowTechnique::computeOrthogonalVector ( const osg::Vec3 direction) const
protected
virtual void osgShadow::ShadowTechnique::cull ( osgUtil::CullVisitor cv)
virtual
virtual void osgShadow::ShadowTechnique::dirty ( )
inlinevirtual

Dirty so that cached data structures are updated.

Reimplemented in osgShadow::ViewDependentShadowTechnique.

ShadowedScene* osgShadow::ShadowTechnique::getShadowedScene ( )
inline
virtual void osgShadow::ShadowTechnique::init ( )
virtual
osgShadow::ShadowTechnique::META_Object ( osgShadow  ,
ShadowTechnique   
)
virtual void osgShadow::ShadowTechnique::traverse ( osg::NodeVisitor nv)
virtual
virtual void osgShadow::ShadowTechnique::update ( osg::NodeVisitor nv)
virtual

run the update traversal of the ShadowedScene and update any local cached data structures.

Reimplemented in osgShadow::ViewDependentShadowTechnique, osgShadow::ShadowMap, osgShadow::ParallelSplitShadowMap, osgShadow::ShadowVolume, and osgShadow::ShadowTexture.

Friends And Related Function Documentation

friend class ShadowedScene
friend

Member Data Documentation

bool osgShadow::ShadowTechnique::_dirty
protected
ShadowedScene* osgShadow::ShadowTechnique::_shadowedScene
protected

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