Orxonox  0.0.5 Codename: Arcturus
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
orxonox::ParticleInterface Class Reference

#include </home/jenkins/workspace/orxonox_doxygen_trunk/src/libraries/tools/ParticleInterface.h>

Inheritance diagram for orxonox::ParticleInterface:
orxonox::TimeFactorListener orxonox::Listable orxonox::Identifiable

Public Member Functions

 ParticleInterface (Ogre::SceneManager *scenemanager, const std::string &templateName, LODParticle::Value detaillevel)
 
virtual ~ParticleInterface ()
 
Ogre::ParticleAffector * addAffector (const std::string &name)
 
Ogre::ParticleEmitter * createNewEmitter ()
 
Ogre::ParticleAffector * getAffector (unsigned int affectorNr)
 
Ogre::ParticleEmitter * getEmitter (unsigned int emitterNr) const
 
bool getKeepParticlesInLocalSpace () const
 
unsigned int getNumAffectors () const
 
unsigned int getNumEmitters () const
 
Ogre::ParticleSystem * getParticleSystem ()
 
float getSpeedFactor () const
 
bool isEnabled () const
 
bool isVisible () const
 
void removeAffector (unsigned int affectorNr)
 
void removeAllAffectors ()
 
void removeAllEmitters ()
 
void removeEmitter (unsigned int emitterNr)
 
void setConfigValues ()
 
void setDetailLevel (unsigned int level)
 
void setDimensions (float scale)
 
void setEnabled (bool enable)
 
void setKeepParticlesInLocalSpace (bool keep)
 
void setSpeedFactor (float factor)
 
void setVisible (bool visible)
 
- Public Member Functions inherited from orxonox::TimeFactorListener
 TimeFactorListener ()
 
virtual ~TimeFactorListener ()=default
 
- Public Member Functions inherited from orxonox::Listable
 Listable ()
 Constructor: Allocates space in the element list. More...
 
 Listable (Context *context)
 Constructor: Allocates space in the element list and assigns the context. More...
 
virtual ~Listable ()
 Destructor: Removes the object from the object-lists. More...
 
ContextgetContext () const
 
void setContext (Context *context)
 Changes the context. More...
 
void unregisterObject ()
 Removes this object from the object-lists. More...
 
- Public Member Functions inherited from orxonox::Identifiable
 Identifiable ()
 Constructor: Sets the default values. More...
 
virtual ~Identifiable ()
 
ORX_FORCEINLINE voidgetDerivedPointer (unsigned int classID)
 Returns a valid pointer of any derived type that is registered in the class hierarchy. More...
 
template<class T >
ORX_FORCEINLINE T * getDerivedPointer (unsigned int classID)
 Version of getDerivedPointer with template. More...
 
template<class T >
ORX_FORCEINLINE const T * getDerivedPointer (unsigned int classID) const
 Const version of getDerivedPointer with template. More...
 
IdentifiergetIdentifier () const
 Returns the Identifier of the object. More...
 
bool isA (const Identifier *identifier)
 Returns true if the object's class is of the given type or a derivative. More...
 
template<class B >
bool isA (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is of the given type or a derivative. More...
 
bool isA (const Identifiable *object)
 Returns true if the object's class is of the given type or a derivative. More...
 
bool isChildOf (const Identifier *identifier)
 Returns true if the object's class is a child of the given type. More...
 
template<class B >
bool isChildOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a child of the given type. More...
 
bool isChildOf (const Identifiable *object)
 Returns true if the object's class is a child of the given type. More...
 
bool isDirectChildOf (const Identifier *identifier)
 Returns true if the object's class is a direct child of the given type. More...
 
template<class B >
bool isDirectChildOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isDirectChildOf (const Identifiable *object)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isDirectParentOf (const Identifier *identifier)
 Returns true if the object's class is a direct parent of the given type. More...
 
template<class B >
bool isDirectParentOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a direct parent of the given type. More...
 
bool isDirectParentOf (const Identifiable *object)
 Returns true if the object's class is a direct child of the given type. More...
 
bool isExactlyA (const Identifier *identifier)
 Returns true if the object's class is exactly of the given type. More...
 
template<class B >
bool isExactlyA (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is exactly of the given type. More...
 
bool isExactlyA (const Identifiable *object)
 Returns true if the object's class is exactly of the given type. More...
 
bool isParentOf (const Identifier *identifier)
 Returns true if the object's class is a parent of the given type. More...
 
template<class B >
bool isParentOf (const SubclassIdentifier< B > *identifier)
 Returns true if the object's class is a parent of the given type. More...
 
bool isParentOf (const Identifiable *object)
 Returns true if the object's class is a parent of the given type. More...
 

Protected Member Functions

virtual void changedTimeFactor (float factor_new, float factor_old) override
 

Private Member Functions

void detailLevelChanged ()
 
void updateVisibility ()
 

Private Attributes

bool bAllowedByLOD_
 
bool bEnabled_
 
bool bVisible_
 
unsigned int detaillevel_
 Detail level of this particle effect (0: off, 1: low, 2: normal, 3: high) More...
 
unsigned int globalDetailLevel_
 Global maximum detail level of particle effects (0: off, 1: low, 2: normal, 3: high) More...
 
Ogre::ParticleSystem * particleSystem_
 
Ogre::SceneManager * scenemanager_
 
float speedFactor_
 

Static Private Attributes

static unsigned int counter_s = 0
 

Additional Inherited Members

- Static Public Member Functions inherited from orxonox::TimeFactorListener
static float getTimeFactor ()
 
static void setTimeFactor (float factor)
 

Constructor & Destructor Documentation

orxonox::ParticleInterface::ParticleInterface ( Ogre::SceneManager *  scenemanager,
const std::string &  templateName,
LODParticle::Value  detaillevel 
)
orxonox::ParticleInterface::~ParticleInterface ( )
virtual

Member Function Documentation

Ogre::ParticleAffector * orxonox::ParticleInterface::addAffector ( const std::string &  name)
void orxonox::ParticleInterface::changedTimeFactor ( float  factor_new,
float  factor_old 
)
overrideprotectedvirtual

Reimplemented from orxonox::TimeFactorListener.

Ogre::ParticleEmitter * orxonox::ParticleInterface::createNewEmitter ( )
void orxonox::ParticleInterface::detailLevelChanged ( )
private
Ogre::ParticleAffector * orxonox::ParticleInterface::getAffector ( unsigned int  affectorNr)
Ogre::ParticleEmitter * orxonox::ParticleInterface::getEmitter ( unsigned int  emitterNr) const
bool orxonox::ParticleInterface::getKeepParticlesInLocalSpace ( ) const
unsigned int orxonox::ParticleInterface::getNumAffectors ( ) const
unsigned int orxonox::ParticleInterface::getNumEmitters ( ) const
Ogre::ParticleSystem* orxonox::ParticleInterface::getParticleSystem ( )
inline
float orxonox::ParticleInterface::getSpeedFactor ( ) const
inline
bool orxonox::ParticleInterface::isEnabled ( ) const
inline
bool orxonox::ParticleInterface::isVisible ( ) const
inline
void orxonox::ParticleInterface::removeAffector ( unsigned int  affectorNr)
void orxonox::ParticleInterface::removeAllAffectors ( )
void orxonox::ParticleInterface::removeAllEmitters ( )
void orxonox::ParticleInterface::removeEmitter ( unsigned int  emitterNr)
void orxonox::ParticleInterface::setConfigValues ( void  )
void orxonox::ParticleInterface::setDetailLevel ( unsigned int  level)
void orxonox::ParticleInterface::setDimensions ( float  scale)
void orxonox::ParticleInterface::setEnabled ( bool  enable)
void orxonox::ParticleInterface::setKeepParticlesInLocalSpace ( bool  keep)
void orxonox::ParticleInterface::setSpeedFactor ( float  factor)
void orxonox::ParticleInterface::setVisible ( bool  visible)
void orxonox::ParticleInterface::updateVisibility ( )
private

Member Data Documentation

bool orxonox::ParticleInterface::bAllowedByLOD_
private
bool orxonox::ParticleInterface::bEnabled_
private
bool orxonox::ParticleInterface::bVisible_
private
unsigned int orxonox::ParticleInterface::counter_s = 0
staticprivate
unsigned int orxonox::ParticleInterface::detaillevel_
private

Detail level of this particle effect (0: off, 1: low, 2: normal, 3: high)

unsigned int orxonox::ParticleInterface::globalDetailLevel_
private

Global maximum detail level of particle effects (0: off, 1: low, 2: normal, 3: high)

Ogre::ParticleSystem* orxonox::ParticleInterface::particleSystem_
private
Ogre::SceneManager* orxonox::ParticleInterface::scenemanager_
private
float orxonox::ParticleInterface::speedFactor_
private

The documentation for this class was generated from the following files: