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

osgParticle::Placer Class Reference

An abstract base class for implementing particle placers. More...

Inheritance diagram for osgParticle::Placer:

Inheritance graph
[legend]
List of all members.

Public Member Functions

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

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

virtual bool isSameKindAs (const osg::Object *obj) const
virtual void place (Particle *P) const=0
 Place a particle. Must be implemented in descendant classes.

virtual osg::Vec3 getControlPosition () const=0
 Return the control position of particles that placer will generate. Must be implemented in descendant classes.


Protected Member Functions

 ~Placer ()
Placeroperator= (const Placer &)

Detailed Description

An abstract base class for implementing particle placers.

A placer is an object which take a particle as input, and places it somewhere by setting its position vector. Placer objects are used by the ModularEmitter class as part of the particle emission process.


Constructor & Destructor Documentation

osgParticle::Placer::Placer  )  [inline]
 

osgParticle::Placer::Placer const Placer copy,
const osg::CopyOp copyop = osg::CopyOp::SHALLOW_COPY
[inline]
 

osgParticle::Placer::~Placer  )  [inline, protected]
 


Member Function Documentation

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

return the name of the object's class type.

Must be defined by derived classes.

Implements osg::Object.

Reimplemented in osgParticle::CenteredPlacer.

virtual osg::Vec3 osgParticle::Placer::getControlPosition  )  const [pure virtual]
 

Return the control position of particles that placer will generate. Must be implemented in descendant classes.

Implemented in osgParticle::MultiSegmentPlacer, osgParticle::PointPlacer, osgParticle::SectorPlacer, and osgParticle::SegmentPlacer.

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

Reimplemented in osgParticle::CenteredPlacer.

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

return the name of the object's library.

Must be defined by derived classes. The OpenSceneGraph convention is that the namespace of a library is the same as the library name.

Implements osg::Object.

Reimplemented in osgParticle::CenteredPlacer.

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

virtual void osgParticle::Placer::place Particle P  )  const [pure virtual]
 

Place a particle. Must be implemented in descendant classes.

Implemented in osgParticle::MultiSegmentPlacer, osgParticle::PointPlacer, osgParticle::SectorPlacer, and osgParticle::SegmentPlacer.


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