Public Member Functions |
| Operator () |
| Operator (const Operator ©, const osg::CopyOp ©op=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 |
bool | isEnabled () const |
| Get whether this operator is enabled.
|
void | setEnabled (bool v) |
| Enable or disable this operator.
|
virtual void | operateParticles (ParticleSystem *ps, double dt) |
| Do something on all emitted particles.
|
virtual void | operate (Particle *P, double dt)=0 |
| Do something on a particle.
|
virtual void | beginOperate (Program *) |
| Do something before processing particles via the operate() method.
|
virtual void | endOperate () |
| Do something after all particles have been processed.
|
| Object () |
| Construct an object.
|
| Object (bool threadSafeRefUnref) |
| Object (const Object &, const CopyOp ©op=CopyOp::SHALLOW_COPY) |
| Copy constructor, optional CopyOp object can be used to control shallow vs deep copying of dynamic data.
|
virtual Object * | cloneType () const =0 |
| Clone the type of an object, with Object* return type.
|
virtual Object * | clone (const CopyOp &) const =0 |
| Clone an object, with Object* return type.
|
virtual void | setThreadSafeRefUnref (bool threadSafe) |
| Set whether to use a mutex to ensure ref() and unref() are thread safe.
|
virtual void | setName (const std::string &name) |
| Set the name of object using C++ style string.
|
void | setName (const char *name) |
| Set the name of object using a C style string.
|
const std::string & | getName () const |
| Get the name of object.
|
void | setDataVariance (DataVariance dv) |
| Set the data variance of this object.
|
DataVariance | getDataVariance () const |
| Get the data variance of this object.
|
virtual void | computeDataVariance () |
| Compute the DataVariance based on an assessment of callback etc.
|
void | setUserDataContainer (osg::UserDataContainer *udc) |
| set the UserDataContainer object.
|
osg::UserDataContainer * | getUserDataContainer () |
| get the UserDataContainer attached to this object.
|
const osg::UserDataContainer * | getUserDataContainer () const |
| get the const UserDataContainer attached to this object.
|
osg::UserDataContainer * | getOrCreateUserDataContainer () |
| Convinience method that returns the UserDataContainer, and if one doesn't already exist creates and assigns a DefaultUserDataContainer to the Object and then return this new UserDataContainer.
|
virtual void | setUserData (Referenced *obj) |
| Set user data, data must be subclassed from Referenced to allow automatic memory handling.
|
virtual Referenced * | getUserData () |
| Get user data.
|
virtual const Referenced * | getUserData () const |
| Get const user data.
|
template<typename T > |
bool | getUserValue (const std::string &name, T &value) const |
| Convinience method that casts the named UserObject to osg::TemplateValueObject<T> and gets the value.
|
template<typename T > |
void | setUserValue (const std::string &name, const T &value) |
| Convinience method that creates the osg::TemplateValueObject<T> to store the specified value and adds it as a named UserObject.
|
virtual void | resizeGLObjectBuffers (unsigned int) |
| Resize any per context GLObject buffers to specified size.
|
virtual void | releaseGLObjects (osg::State *=0) const |
| If State is non-zero, this function releases any associated OpenGL objects for the specified graphics context.
|
| Referenced () |
| Referenced (bool threadSafeRefUnref) |
| Referenced (const Referenced &) |
Referenced & | operator= (const Referenced &) |
bool | getThreadSafeRefUnref () const |
| Get whether a mutex is used to ensure ref() and unref() are thread safe.
|
OpenThreads::Mutex * | getRefMutex () const |
| Get the mutex used to ensure thread safety of ref()/unref().
|
int | ref () const |
| Increment the reference count by one, indicating that this object has another pointer which is referencing it.
|
int | unref () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it.
|
int | unref_nodelete () const |
| Decrement the reference count by one, indicating that a pointer to this object is referencing it.
|
int | referenceCount () const |
| Return the number of pointers currently referencing this object.
|
ObserverSet * | getObserverSet () const |
| Get the ObserverSet if one is attached, otherwise return NULL.
|
ObserverSet * | getOrCreateObserverSet () const |
| Get the ObserverSet if one is attached, otherwise create an ObserverSet, attach it, then return this newly created ObserverSet.
|
void | addObserver (Observer *observer) const |
| Add a Observer that is observing this object, notify the Observer when this object gets deleted.
|
void | removeObserver (Observer *observer) const |
| Remove Observer that is observing this object.
|
An abstract base class used by ModularProgram
to perform operations on particles before they are updated.
To implement a new operator, derive from this class and override the operate()
method. You should also override the beginOperate()
method to query the calling program for the reference frame used, and initialize the right transformations if needed.