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

#include <clone.hpp>

Inheritance diagram for SceneUtil::CopyOp:
Collaboration diagram for SceneUtil::CopyOp:

Public Member Functions

 CopyOp ()
 
virtual
osgParticle::ParticleSystem * 
operator() (const osgParticle::ParticleSystem *partsys) const
 
virtual
osgParticle::ParticleProcessor * 
operator() (const osgParticle::ParticleProcessor *processor) const
 
virtual osg::Node * operator() (const osg::Node *node) const
 
virtual osg::Drawable * operator() (const osg::Drawable *drawable) const
 
virtual osg::StateSet * operator() (const osg::StateSet *stateset) const
 

Private Attributes

std::map
< osgParticle::ParticleProcessor
*, const
osgParticle::ParticleSystem * > 
mMap
 
std::map
< osgParticle::ParticleSystemUpdater
*, const
osgParticle::ParticleSystem * > 
mMap2
 

Detailed Description

Defines the cloning behaviour we need:
  • Assigns updated ParticleSystem pointers on cloned emitters and programs.
  • Creates deep copy of StateSets if they have a DYNAMIC data variance.
  • Deep copies RigGeometry and MorphGeometry so they can animate without affecting clones.
Warning
Do not use an object of this class for more than one copy operation.

Constructor & Destructor Documentation

SceneUtil::CopyOp::CopyOp ( )

Member Function Documentation

osgParticle::ParticleSystem * SceneUtil::CopyOp::operator() ( const osgParticle::ParticleSystem *  partsys) const
virtual

Here is the call graph for this function:

Here is the caller graph for this function:

osgParticle::ParticleProcessor * SceneUtil::CopyOp::operator() ( const osgParticle::ParticleProcessor *  processor) const
virtual

Here is the call graph for this function:

osg::Node * SceneUtil::CopyOp::operator() ( const osg::Node *  node) const
virtual

Here is the call graph for this function:

osg::Drawable * SceneUtil::CopyOp::operator() ( const osg::Drawable *  drawable) const
virtual

Here is the call graph for this function:

osg::StateSet * SceneUtil::CopyOp::operator() ( const osg::StateSet *  stateset) const
virtual

Here is the call graph for this function:

Member Data Documentation

std::map<osgParticle::ParticleProcessor*, const osgParticle::ParticleSystem*> SceneUtil::CopyOp::mMap
mutableprivate
std::map<osgParticle::ParticleSystemUpdater*, const osgParticle::ParticleSystem*> SceneUtil::CopyOp::mMap2
mutableprivate

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