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

osgParticle::Emitter Class Reference

An abstract base class for particle emitters. More...

Inheritance diagram for osgParticle::Emitter:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 Emitter ()
 Emitter (const Emitter &copy, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual const char * libraryName () const
 return the name of the node's library.

virtual const char * className () const
 return the name of the node's class type.

virtual bool isSameKindAs (const osg::Object *obj) const
virtual void accept (osg::NodeVisitor &nv)
 Visitor Pattern : calls the apply method of a NodeVisitor with this node's type.

const ParticlegetParticleTemplate () const
 Get the particle template.

void setParticleTemplate (const Particle &p)
 Set the particle template (particle is copied).

bool getUseDefaultTemplate () const
 Return whether the particle system's default template should be used.

void setUseDefaultTemplate (bool v)
 Set whether the default particle template should be used.


Protected Member Functions

virtual ~Emitter ()
Emitteroperator= (const Emitter &)
void process (double dt)
virtual void emit (double dt)=0

Protected Attributes

bool _usedeftemp
Particle _ptemp

Detailed Description

An abstract base class for particle emitters.

Descendant classes must override the emit() method to generate new particles by calling the ParticleSystem::createParticle() method on the particle system associated to the emitter.


Constructor & Destructor Documentation

osgParticle::Emitter::Emitter  ) 
 

osgParticle::Emitter::Emitter const Emitter copy,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY
 

virtual osgParticle::Emitter::~Emitter  )  [inline, protected, virtual]
 


Member Function Documentation

virtual void osgParticle::Emitter::accept osg::NodeVisitor nv  )  [inline, virtual]
 

Visitor Pattern : calls the apply method of a NodeVisitor with this node's type.

Reimplemented from osgParticle::ParticleProcessor.

virtual const char* osgParticle::Emitter::className  )  const [inline, virtual]
 

return the name of the node's class type.

Reimplemented from osgParticle::ParticleProcessor.

virtual void osgParticle::Emitter::emit double  dt  )  [protected, pure virtual]
 

Implemented in osgParticle::ModularEmitter.

const Particle & osgParticle::Emitter::getParticleTemplate  )  const [inline]
 

Get the particle template.

bool osgParticle::Emitter::getUseDefaultTemplate  )  const [inline]
 

Return whether the particle system's default template should be used.

virtual bool osgParticle::Emitter::isSameKindAs const osg::Object obj  )  const [inline, virtual]
 

Reimplemented from osgParticle::ParticleProcessor.

virtual const char* osgParticle::Emitter::libraryName  )  const [inline, virtual]
 

return the name of the node's library.

Reimplemented from osgParticle::ParticleProcessor.

Emitter& osgParticle::Emitter::operator= const Emitter  )  [inline, protected]
 

void osgParticle::Emitter::process double  dt  )  [inline, protected, virtual]
 

Implements osgParticle::ParticleProcessor.

void osgParticle::Emitter::setParticleTemplate const Particle p  )  [inline]
 

Set the particle template (particle is copied).

void osgParticle::Emitter::setUseDefaultTemplate bool  v  )  [inline]
 

Set whether the default particle template should be used.

When this flag is true, the particle template is ignored, and the particle system's default template is used instead.


Member Data Documentation

Particle osgParticle::Emitter::_ptemp [protected]
 

bool osgParticle::Emitter::_usedeftemp [protected]
 


The documentation for this class was generated from the following file:
Generated at Thu Nov 24 16:25:10 2005 for the OpenSceneGraph by doxygen 1.3.6.