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
 return true if this and obj are of the same kind of object.
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 const char* osgParticle::Emitter::libraryName (  )  const [inline, virtual]

return the name of the node's library.

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 bool osgParticle::Emitter::isSameKindAs ( const osg::Object obj  )  const [inline, virtual]

return true if this and obj are of the same kind of object.

Reimplemented from osgParticle::ParticleProcessor.

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.

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

Get the particle template.

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

Set the particle template (particle is copied).

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

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

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.

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

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

Implements osgParticle::ParticleProcessor.

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

Implemented in osgParticle::ModularEmitter.


Member Data Documentation

bool osgParticle::Emitter::_usedeftemp [protected]

Particle osgParticle::Emitter::_ptemp [protected]


The documentation for this class was generated from the following file:
Generated at Sun Oct 14 02:12:42 2007 for the OpenSceneGraph by doxygen 1.5.3.