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

osgUtil::Optimizer Class Reference

List of all members.

Public Types

typedef std::map< const osg::Object *,
unsigned int > 
PermissibleOptimizationsMap
enum  OptimizationOptions {
  FLATTEN_STATIC_TRANSFORMS = 0x001, REMOVE_REDUNDANT_NODES = 0x002, COMBINE_ADJACENT_LODS = 0x004, SHARE_DUPLICATE_STATE = 0x008,
  MERGE_GEOMETRY = 0x010, CHECK_GEOMETRY = 0x020, SPATIALIZE_GROUPS = 0x040, COPY_SHARED_NODES = 0x080,
  TRISTRIP_GEOMETRY = 0x100, TESSELATE_GEOMETRY = 0x200, OPTIMIZE_TEXTURE_SETTINGS = 0x400, DEFAULT_OPTIMIZATIONS,
  ALL_OPTIMIZATIONS
}

Public Member Functions

 Optimizer ()
virtual ~Optimizer ()
void reset ()
void optimize (osg::Node *node)
virtual void optimize (osg::Node *node, unsigned int options)
void setPermissibleOptimizationsForObject (const osg::Object *object, unsigned int options)
unsigned int getPermissibleOptimizationsForObject (const osg::Object *object) const
bool isOperationPermissibleForObject (const osg::Object *object, unsigned int option) const
PermissibleOptimizationsMapgetPermissibleOptionsMap ()
const PermissibleOptimizationsMapgetPermissibleOptionsMap () const

Protected Attributes

PermissibleOptimizationsMap _permissibleOptimizationsMap

Classes

class  CheckGeometryVisitor
class  CombineLODsVisitor
class  CombineStaticTransformsVisitor
class  CopySharedSubgraphsVisitor
class  FlattenStaticTransformsVisitor
class  MergeGeometryVisitor
class  RemoveEmptyNodesVisitor
class  RemoveRedundantNodesVisitor
class  SpatializeGroupsVisitor
class  StateVisitor
class  TesselateVisitor
class  TextureVisitor

Detailed Description

Traverses scene graph to improve efficiency. See OptimizationOptions. For example of usage see examples/osgimpostor or osgviewer.


Member Typedef Documentation

typedef std::map<const osg::Object*,unsigned int> osgUtil::Optimizer::PermissibleOptimizationsMap
 


Member Enumeration Documentation

enum osgUtil::Optimizer::OptimizationOptions
 

Enumeration values:
FLATTEN_STATIC_TRANSFORMS 
REMOVE_REDUNDANT_NODES 
COMBINE_ADJACENT_LODS 
SHARE_DUPLICATE_STATE 
MERGE_GEOMETRY 
CHECK_GEOMETRY 
SPATIALIZE_GROUPS 
COPY_SHARED_NODES 
TRISTRIP_GEOMETRY 
TESSELATE_GEOMETRY 
OPTIMIZE_TEXTURE_SETTINGS 
DEFAULT_OPTIMIZATIONS 
ALL_OPTIMIZATIONS 


Constructor & Destructor Documentation

osgUtil::Optimizer::Optimizer  )  [inline]
 

virtual osgUtil::Optimizer::~Optimizer  )  [inline, virtual]
 


Member Function Documentation

unsigned int osgUtil::Optimizer::getPermissibleOptimizationsForObject const osg::Object object  )  const [inline]
 

const PermissibleOptimizationsMap& osgUtil::Optimizer::getPermissibleOptionsMap  )  const [inline]
 

PermissibleOptimizationsMap& osgUtil::Optimizer::getPermissibleOptionsMap  )  [inline]
 

bool osgUtil::Optimizer::isOperationPermissibleForObject const osg::Object object,
unsigned int  option
const [inline]
 

virtual void osgUtil::Optimizer::optimize osg::Node node,
unsigned int  options
[virtual]
 

Traverse the node and its subgraph with a series of optimization visitors, specified by the OptimizationOptions.

void osgUtil::Optimizer::optimize osg::Node node  ) 
 

Traverse the node and its subgraph with a series of optimization visitors, specified by the OptimizationOptions.

void osgUtil::Optimizer::reset  ) 
 

Reset internal data to initial state - the getPermissibleOptionsMap is cleared.

void osgUtil::Optimizer::setPermissibleOptimizationsForObject const osg::Object object,
unsigned int  options
[inline]
 


Member Data Documentation

PermissibleOptimizationsMap osgUtil::Optimizer::_permissibleOptimizationsMap [protected]
 


The documentation for this class was generated from the following file:
Generated on Fri May 13 15:15:53 2005 for openscenegraph by  doxygen 1.4.2