#include <AutoParticleSystemUpdater.h>
Public Member Functions | |
AutoParticleSystemUpdater () | |
AutoParticleSystemUpdater (const AutoParticleSystemUpdater ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY) | |
META_Node (osgParticle, AutoParticleSystemUpdater) | |
virtual bool | addParticleSystem (ParticleSystem *ps) |
Add a particle system to the list. | |
virtual bool | removeParticleSystem (unsigned int i, unsigned int numParticleSystemsToRemove=1) |
Remove a particle system(s) from the list (by index). | |
virtual bool | setParticleSystem (unsigned int i, ParticleSystem *ps) |
set a particle system by index. | |
virtual void | traverse (osg::NodeVisitor &nv) |
Protected Member Functions | |
virtual | ~AutoParticleSystemUpdater () |
AutoParticleSystemUpdater & | operator= (const AutoParticleSystemUpdater &) |
Protected Attributes | |
osg::ref_ptr< osg::Geode > | pGeode |
Private Types | |
typedef std::vector< bool > | ParticleSystemData_Vector |
Private Attributes | |
ParticleSystemData_Vector | _psdata |
For example, destroyed units that are smoking/in fire should use this. AutoParticleSystemUpdater is almost like the osgParticle::ParticleSystemUpdater; it only adds auto-deletion. You should place this updater AFTER other nodes like emitters and programs.
Definition at line 45 of file AutoParticleSystemUpdater.h.
typedef std::vector<bool> osgParticle::AutoParticleSystemUpdater::ParticleSystemData_Vector [private] |
Definition at line 69 of file AutoParticleSystemUpdater.h.
osgParticle::AutoParticleSystemUpdater::AutoParticleSystemUpdater | ( | ) |
osgParticle::AutoParticleSystemUpdater::AutoParticleSystemUpdater | ( | const AutoParticleSystemUpdater & | copy, | |
const osg::CopyOp & | copyop = osg::CopyOp::SHALLOW_COPY | |||
) |
virtual osgParticle::AutoParticleSystemUpdater::~AutoParticleSystemUpdater | ( | ) | [inline, protected, virtual] |
Definition at line 64 of file AutoParticleSystemUpdater.h.
bool osgParticle::AutoParticleSystemUpdater::addParticleSystem | ( | ParticleSystem * | ps | ) | [virtual] |
osgParticle::AutoParticleSystemUpdater::META_Node | ( | osgParticle | , | |
AutoParticleSystemUpdater | ||||
) |
AutoParticleSystemUpdater& osgParticle::AutoParticleSystemUpdater::operator= | ( | const AutoParticleSystemUpdater & | ) | [inline, protected] |
Definition at line 65 of file AutoParticleSystemUpdater.h.
bool osgParticle::AutoParticleSystemUpdater::removeParticleSystem | ( | unsigned int | i, | |
unsigned int | numParticleSystemsToRemove = 1 | |||
) | [virtual] |
Remove a particle system(s) from the list (by index).
Definition at line 66 of file AutoParticleSystemUpdater.cpp.
References _psdata, and ASSERT.
Referenced by traverse().
bool osgParticle::AutoParticleSystemUpdater::setParticleSystem | ( | unsigned int | i, | |
ParticleSystem * | ps | |||
) | [virtual] |
void osgParticle::AutoParticleSystemUpdater::traverse | ( | osg::NodeVisitor & | nv | ) | [virtual] |
Definition at line 86 of file AutoParticleSystemUpdater.cpp.
References _psdata, ASSERT, pGeode, and removeParticleSystem().
Definition at line 71 of file AutoParticleSystemUpdater.h.
Referenced by addParticleSystem(), AutoParticleSystemUpdater(), removeParticleSystem(), setParticleSystem(), and traverse().
osg::ref_ptr<osg::Geode> osgParticle::AutoParticleSystemUpdater::pGeode [protected] |
Definition at line 66 of file AutoParticleSystemUpdater.h.
Referenced by addParticleSystem(), AutoParticleSystemUpdater(), and traverse().