15#ifndef OSGPARTICLE_PROGRAM
16#define OSGPARTICLE_PROGRAM 1
41 virtual const char*
libraryName()
const {
return "osgParticle"; }
42 virtual const char*
className()
const {
return "Program"; }
51 inline void process(
double dt);
The osgParticle library is a NodeKit that extends the core scene graph to support particle effects.
Definition AccelOperator:27
Copy Op(erator) used to control whether shallow or deep copy is used during copy construction and clo...
Definition CopyOp:41
@ SHALLOW_COPY
Definition CopyOp:47
Visitor for type safe operations on osg::Nodes.
Definition NodeVisitor:82
virtual void apply(Drawable &drawable)
void pushOntoNodePath(Node *node)
Method called by osg::Node::accept() method before a call to the NodeVisitor::apply(....
Definition NodeVisitor:287
bool validNodeMask(const osg::Node &node) const
Method to called by Node and its subclass' Node::accept() method, if the result is true it is used to...
Definition NodeVisitor:221
void popFromNodePath()
Method called by osg::Node::accept() method after a call to NodeVisitor::apply(..).
Definition NodeVisitor:293
Base class/standard interface for objects which require IO support, cloning and reference counting.
Definition Object:61
Program & operator=(const Program &)
Definition Program:48
virtual const char * className() const
return the name of the node's class type.
Definition Program:42
void process(double dt)
Implementation of ParticleProcessor::process(). Do not call this method by yourself.
Definition Program:61
virtual ~Program()
Definition Program:47
virtual bool isSameKindAs(const osg::Object *obj) const
return true if this and obj are of the same kind of object.
Definition Program:43
virtual const char * libraryName() const
return the name of the node's library.
Definition Program:41
virtual void execute(double dt)=0
Execute the program on the particle system. Must be overridden in descendant classes.
Program(const Program ©, const osg::CopyOp ©op=osg::CopyOp::SHALLOW_COPY)
virtual void accept(osg::NodeVisitor &nv)
Visitor Pattern : calls the apply method of a NodeVisitor with this node's type.
Definition Program:44
#define OSGPARTICLE_EXPORT
Definition Export:40