OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
SceneUtil::Optimizer::MergeGeometryVisitor Class Reference

#include <optimizer.hpp>

Inheritance diagram for SceneUtil::Optimizer::MergeGeometryVisitor:
Collaboration diagram for SceneUtil::Optimizer::MergeGeometryVisitor:

Public Member Functions

 MergeGeometryVisitor (Optimizer *optimizer=0)
 default to traversing all children. More...
 
void setTargetMaximumNumberOfVertices (unsigned int num)
 
unsigned int getTargetMaximumNumberOfVertices () const
 
void pushStateSet (osg::StateSet *stateSet)
 
void popStateSet ()
 
void checkAllowedToMerge ()
 
virtual void apply (osg::Group &group)
 
virtual void apply (osg::Billboard &)
 
bool mergeGroup (osg::Group &group)
 
- Public Member Functions inherited from SceneUtil::BaseOptimizerVisitor
 BaseOptimizerVisitor (Optimizer *optimizer, unsigned int operation)
 
bool isOperationPermissibleForObject (const osg::StateSet *object) const
 
bool isOperationPermissibleForObject (const osg::StateAttribute *object) const
 
bool isOperationPermissibleForObject (const osg::Drawable *object) const
 
bool isOperationPermissibleForObject (const osg::Node *object) const
 

Static Public Member Functions

static bool geometryContainsSharedArrays (osg::Geometry &geom)
 
static bool mergeGeometry (osg::Geometry &lhs, osg::Geometry &rhs)
 
static bool mergePrimitive (osg::DrawArrays &lhs, osg::DrawArrays &rhs)
 
static bool mergePrimitive (osg::DrawArrayLengths &lhs, osg::DrawArrayLengths &rhs)
 
static bool mergePrimitive (osg::DrawElementsUByte &lhs, osg::DrawElementsUByte &rhs)
 
static bool mergePrimitive (osg::DrawElementsUShort &lhs, osg::DrawElementsUShort &rhs)
 
static bool mergePrimitive (osg::DrawElementsUInt &lhs, osg::DrawElementsUInt &rhs)
 

Protected Attributes

unsigned int _targetMaximumNumberOfVertices
 
std::vector< osg::StateSet * > _stateSetStack
 
bool _allowedToMerge
 
- Protected Attributes inherited from SceneUtil::BaseOptimizerVisitor
Optimizer_optimizer
 
unsigned int _operationType
 

Constructor & Destructor Documentation

SceneUtil::Optimizer::MergeGeometryVisitor::MergeGeometryVisitor ( Optimizer optimizer = 0)
inline

default to traversing all children.

Member Function Documentation

void SceneUtil::Optimizer::MergeGeometryVisitor::apply ( osg::Group &  group)
virtual

Here is the call graph for this function:

virtual void SceneUtil::Optimizer::MergeGeometryVisitor::apply ( osg::Billboard &  )
inlinevirtual
void SceneUtil::Optimizer::MergeGeometryVisitor::checkAllowedToMerge ( )
bool SceneUtil::Optimizer::MergeGeometryVisitor::geometryContainsSharedArrays ( osg::Geometry &  geom)
static
unsigned int SceneUtil::Optimizer::MergeGeometryVisitor::getTargetMaximumNumberOfVertices ( ) const
inline
bool SceneUtil::Optimizer::MergeGeometryVisitor::mergeGeometry ( osg::Geometry &  lhs,
osg::Geometry &  rhs 
)
static

Here is the call graph for this function:

bool SceneUtil::Optimizer::MergeGeometryVisitor::mergeGroup ( osg::Group &  group)

Here is the call graph for this function:

bool SceneUtil::Optimizer::MergeGeometryVisitor::mergePrimitive ( osg::DrawArrays &  lhs,
osg::DrawArrays &  rhs 
)
static
bool SceneUtil::Optimizer::MergeGeometryVisitor::mergePrimitive ( osg::DrawArrayLengths &  lhs,
osg::DrawArrayLengths &  rhs 
)
static
bool SceneUtil::Optimizer::MergeGeometryVisitor::mergePrimitive ( osg::DrawElementsUByte &  lhs,
osg::DrawElementsUByte &  rhs 
)
static
bool SceneUtil::Optimizer::MergeGeometryVisitor::mergePrimitive ( osg::DrawElementsUShort &  lhs,
osg::DrawElementsUShort &  rhs 
)
static
bool SceneUtil::Optimizer::MergeGeometryVisitor::mergePrimitive ( osg::DrawElementsUInt &  lhs,
osg::DrawElementsUInt &  rhs 
)
static
void SceneUtil::Optimizer::MergeGeometryVisitor::popStateSet ( )
void SceneUtil::Optimizer::MergeGeometryVisitor::pushStateSet ( osg::StateSet *  stateSet)
void SceneUtil::Optimizer::MergeGeometryVisitor::setTargetMaximumNumberOfVertices ( unsigned int  num)
inline

Here is the call graph for this function:

Here is the caller graph for this function:

Member Data Documentation

bool SceneUtil::Optimizer::MergeGeometryVisitor::_allowedToMerge
protected
std::vector<osg::StateSet*> SceneUtil::Optimizer::MergeGeometryVisitor::_stateSetStack
protected
unsigned int SceneUtil::Optimizer::MergeGeometryVisitor::_targetMaximumNumberOfVertices
protected

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