osgUtil::Optimizer::StateVisitor Class Reference

Inheritance diagram for osgUtil::Optimizer::StateVisitor:

osgUtil::BaseOptimizerVisitor osg::NodeVisitor osg::Referenced List of all members.

Public Member Functions

 StateVisitor (Optimizer *optimizer=0)
 default to traversing all children.
virtual void reset ()
virtual void apply (osg::Node &node)
virtual void apply (osg::Geode &geode)
void optimize ()

Protected Types

typedef std::set< osg::Object * > ObjectSet
typedef std::map< osg::StateSet *,
ObjectSet
StateSetMap

Protected Member Functions

void addStateSet (osg::StateSet *stateset, osg::Object *obj)

Protected Attributes

StateSetMap _statesets

Detailed Description

Optimize State in the scene graph by removing duplicate state, replacing it with shared instances, both for StateAttributes, and whole StateSets.


Member Typedef Documentation

typedef std::set<osg::Object*> osgUtil::Optimizer::StateVisitor::ObjectSet [protected]

typedef std::map<osg::StateSet*,ObjectSet> osgUtil::Optimizer::StateVisitor::StateSetMap [protected]


Constructor & Destructor Documentation

osgUtil::Optimizer::StateVisitor::StateVisitor ( Optimizer optimizer = 0  )  [inline]

default to traversing all children.


Member Function Documentation

void osgUtil::Optimizer::StateVisitor::addStateSet ( osg::StateSet stateset,
osg::Object obj 
) [protected]

virtual void osgUtil::Optimizer::StateVisitor::apply ( osg::Geode geode  )  [virtual]

Reimplemented from osg::NodeVisitor.

virtual void osgUtil::Optimizer::StateVisitor::apply ( osg::Node node  )  [virtual]

Reimplemented from osg::NodeVisitor.

void osgUtil::Optimizer::StateVisitor::optimize (  ) 

virtual void osgUtil::Optimizer::StateVisitor::reset (  )  [virtual]

empty visitor, make it ready for next traversal.

Reimplemented from osg::NodeVisitor.


Member Data Documentation

StateSetMap osgUtil::Optimizer::StateVisitor::_statesets [protected]


The documentation for this class was generated from the following file:
Generated on Sun Oct 1 13:17:14 2006 for openscenegraph by  doxygen 1.4.7