|  | OGRE
    1.11.6
    Object-Oriented Graphics Rendering Engine | 
Manages particle systems, particle system scripts (templates) and the available emitter & affector factories. More...
#include <OgreParticleSystemManager.h>
 Inheritance diagram for Ogre::ParticleSystemManager:
 Inheritance diagram for Ogre::ParticleSystemManager:| Public Types | |
| typedef MapIterator< ParticleAffectorFactoryMap > | ParticleAffectorFactoryIterator | 
| typedef std::map< String, ParticleAffectorFactory * > | ParticleAffectorFactoryMap | 
| typedef MapIterator< ParticleEmitterFactoryMap > | ParticleEmitterFactoryIterator | 
| typedef std::map< String, ParticleEmitterFactory * > | ParticleEmitterFactoryMap | 
| typedef MapIterator< ParticleSystemRendererFactoryMap > | ParticleRendererFactoryIterator | 
| typedef std::map< String, ParticleSystemRendererFactory * > | ParticleSystemRendererFactoryMap | 
| typedef MapIterator< ParticleTemplateMap > | ParticleSystemTemplateIterator | 
| typedef std::map< String, ParticleSystem * > | ParticleTemplateMap | 
| Public Member Functions | |
| ParticleSystemManager () | |
| virtual | ~ParticleSystemManager () | 
| ParticleAffector * | _createAffector (const String &affectorType, ParticleSystem *psys) | 
| Internal method for creating a new affector from a factory.  More... | |
| ParticleEmitter * | _createEmitter (const String &emitterType, ParticleSystem *psys) | 
| Internal method for creating a new emitter from a factory.  More... | |
| ParticleSystemRenderer * | _createRenderer (const String &rendererType) | 
| Internal method for creating a new renderer from a factory.  More... | |
| void | _destroyAffector (ParticleAffector *affector) | 
| Internal method for destroying an affector.  More... | |
| void | _destroyEmitter (ParticleEmitter *emitter) | 
| Internal method for destroying an emitter.  More... | |
| void | _destroyRenderer (ParticleSystemRenderer *renderer) | 
| Internal method for destroying a renderer.  More... | |
| ParticleSystemFactory * | _getFactory (void) | 
| Get an instance of ParticleSystemFactory (internal use).  More... | |
| void | _initialise (void) | 
| Init method to be called by OGRE system.  More... | |
| void | addAffectorFactory (ParticleAffectorFactory *factory) | 
| Adds a new 'factory' object for affectors to the list of available affector types.  More... | |
| void | addEmitterFactory (ParticleEmitterFactory *factory) | 
| Adds a new 'factory' object for emitters to the list of available emitter types.  More... | |
| void | addRendererFactory (ParticleSystemRendererFactory *factory) | 
| Registers a factory class for creating ParticleSystemRenderer instances.  More... | |
| void | addTemplate (const String &name, ParticleSystem *sysTemplate) | 
| Adds a new particle system template to the list of available templates.  More... | |
| ParticleSystem * | createTemplate (const String &name, const String &resourceGroup) | 
| Create a new particle system template.  More... | |
| ParticleAffectorFactoryIterator | getAffectorFactoryIterator (void) | 
| Return an iterator over the affector factories currently registered.  More... | |
| ParticleEmitterFactoryIterator | getEmitterFactoryIterator (void) | 
| Return an iterator over the emitter factories currently registered.  More... | |
| Real | getLoadingOrder (void) const | 
| Gets the relative loading order of scripts of this type.  More... | |
| ParticleRendererFactoryIterator | getRendererFactoryIterator (void) | 
| Return an iterator over the renderer factories currently registered.  More... | |
| const StringVector & | getScriptPatterns (void) const | 
| Gets the file patterns which should be used to find scripts for this class.  More... | |
| ParticleSystem * | getTemplate (const String &name) | 
| Retrieves a particle system template for possible modification.  More... | |
| ParticleSystemTemplateIterator | getTemplateIterator (void) | 
| Gets an iterator over the list of particle system templates.  More... | |
| void | parseScript (DataStreamPtr &stream, const String &groupName) | 
| Parse a script file.  More... | |
| void | removeAllTemplates (bool deleteTemplate=true) | 
| Removes a specified template from the ParticleSystemManager.  More... | |
| void | removeTemplate (const String &name, bool deleteTemplate=true) | 
| Removes a specified template from the ParticleSystemManager.  More... | |
| void | removeTemplatesByResourceGroup (const String &resourceGroup) | 
| Removes all templates that belong to a secific Resource Group from the ParticleSystemManager.  More... | |
| Static Public Member Functions | |
| static ParticleSystemManager & | getSingleton (void) | 
| Get the singleton instance.  More... | |
| static ParticleSystemManager * | getSingletonPtr (void) | 
| Get the singleton instance.  More... | |
| Friends | |
| class | ParticleSystemFactory | 
Manages particle systems, particle system scripts (templates) and the available emitter & affector factories.
| typedef std::map<String, ParticleSystem*> Ogre::ParticleSystemManager::ParticleTemplateMap | 
| typedef std::map<String, ParticleAffectorFactory*> Ogre::ParticleSystemManager::ParticleAffectorFactoryMap | 
| typedef std::map<String, ParticleEmitterFactory*> Ogre::ParticleSystemManager::ParticleEmitterFactoryMap | 
| typedef std::map<String, ParticleSystemRendererFactory*> Ogre::ParticleSystemManager::ParticleSystemRendererFactoryMap | 
| typedef MapIterator<ParticleAffectorFactoryMap> Ogre::ParticleSystemManager::ParticleAffectorFactoryIterator | 
| typedef MapIterator<ParticleEmitterFactoryMap> Ogre::ParticleSystemManager::ParticleEmitterFactoryIterator | 
| typedef MapIterator<ParticleSystemRendererFactoryMap> Ogre::ParticleSystemManager::ParticleRendererFactoryIterator | 
| typedef MapIterator<ParticleTemplateMap> Ogre::ParticleSystemManager::ParticleSystemTemplateIterator | 
| Ogre::ParticleSystemManager::ParticleSystemManager | ( | ) | 
| 
 | virtual | 
| void Ogre::ParticleSystemManager::addEmitterFactory | ( | ParticleEmitterFactory * | factory | ) | 
Adds a new 'factory' object for emitters to the list of available emitter types.
| factory | Pointer to a ParticleEmitterFactory subclass created by the plugin or application code. | 
| void Ogre::ParticleSystemManager::addAffectorFactory | ( | ParticleAffectorFactory * | factory | ) | 
Adds a new 'factory' object for affectors to the list of available affector types.
| factory | Pointer to a ParticleAffectorFactory subclass created by the plugin or application code. | 
| void Ogre::ParticleSystemManager::addRendererFactory | ( | ParticleSystemRendererFactory * | factory | ) | 
Registers a factory class for creating ParticleSystemRenderer instances.
| factory | Pointer to a ParticleSystemRendererFactory subclass created by the plugin or application code. | 
| void Ogre::ParticleSystemManager::addTemplate | ( | const String & | name, | 
| ParticleSystem * | sysTemplate | ||
| ) | 
Adds a new particle system template to the list of available templates.
| name | The name of the template. Must be unique across all templates. | 
| sysTemplate | A pointer to a particle system to be used as a template. The manager will take over ownership of this pointer. | 
| void Ogre::ParticleSystemManager::removeTemplate | ( | const String & | name, | 
| bool | deleteTemplate = true | ||
| ) | 
Removes a specified template from the ParticleSystemManager.
| name | The name of the template to remove. | 
| deleteTemplate | Whether or not to delete the template before removing it. | 
| void Ogre::ParticleSystemManager::removeAllTemplates | ( | bool | deleteTemplate = true | ) | 
Removes a specified template from the ParticleSystemManager.
| deleteTemplate | Whether or not to delete the templates before removing them. | 
| void Ogre::ParticleSystemManager::removeTemplatesByResourceGroup | ( | const String & | resourceGroup | ) | 
Removes all templates that belong to a secific Resource Group from the ParticleSystemManager.
| resourceGroup | Resource group to delete templates for | 
| ParticleSystem* Ogre::ParticleSystemManager::createTemplate | ( | const String & | name, | 
| const String & | resourceGroup | ||
| ) | 
Create a new particle system template.
| name | The name of the template. Must be unique across all templates. | 
| resourceGroup | The name of the resource group which will be used to load any dependent resources. | 
| ParticleSystem* Ogre::ParticleSystemManager::getTemplate | ( | const String & | name | ) | 
Retrieves a particle system template for possible modification.
| ParticleEmitter* Ogre::ParticleSystemManager::_createEmitter | ( | const String & | emitterType, | 
| ParticleSystem * | psys | ||
| ) | 
Internal method for creating a new emitter from a factory.
| emitterType | String name of the emitter type to be created. A factory of this type must have been registered. | 
| psys | The particle system this is being created for | 
| void Ogre::ParticleSystemManager::_destroyEmitter | ( | ParticleEmitter * | emitter | ) | 
Internal method for destroying an emitter.
| emitter | Pointer to emitter to be destroyed. On return this pointer will point to invalid (freed) memory. | 
| ParticleAffector* Ogre::ParticleSystemManager::_createAffector | ( | const String & | affectorType, | 
| ParticleSystem * | psys | ||
| ) | 
Internal method for creating a new affector from a factory.
| affectorType | String name of the affector type to be created. A factory of this type must have been registered. | 
| psys | The particle system it is being created for | 
| void Ogre::ParticleSystemManager::_destroyAffector | ( | ParticleAffector * | affector | ) | 
Internal method for destroying an affector.
| affector | Pointer to affector to be destroyed. On return this pointer will point to invalid (freed) memory. | 
| ParticleSystemRenderer* Ogre::ParticleSystemManager::_createRenderer | ( | const String & | rendererType | ) | 
Internal method for creating a new renderer from a factory.
| rendererType | String name of the renderer type to be created. A factory of this type must have been registered. | 
| void Ogre::ParticleSystemManager::_destroyRenderer | ( | ParticleSystemRenderer * | renderer | ) | 
Internal method for destroying a renderer.
| renderer | Pointer to renderer to be destroyed. On return this pointer will point to invalid (freed) memory. | 
| void Ogre::ParticleSystemManager::_initialise | ( | void | ) | 
Init method to be called by OGRE system.
| 
 | virtual | 
Gets the file patterns which should be used to find scripts for this class.
Implements Ogre::ScriptLoader.
| 
 | virtual | 
Parse a script file.
| stream | Weak reference to a data stream which is the source of the script | 
| groupName | The name of a resource group which should be used if any resources are created during the parse of this script. | 
Implements Ogre::ScriptLoader.
| 
 | virtual | 
Gets the relative loading order of scripts of this type.
Implements Ogre::ScriptLoader.
| ParticleAffectorFactoryIterator Ogre::ParticleSystemManager::getAffectorFactoryIterator | ( | void | ) | 
Return an iterator over the affector factories currently registered.
| ParticleEmitterFactoryIterator Ogre::ParticleSystemManager::getEmitterFactoryIterator | ( | void | ) | 
Return an iterator over the emitter factories currently registered.
| ParticleRendererFactoryIterator Ogre::ParticleSystemManager::getRendererFactoryIterator | ( | void | ) | 
Return an iterator over the renderer factories currently registered.
| 
 | inline | 
Gets an iterator over the list of particle system templates.
| 
 | inline | 
Get an instance of ParticleSystemFactory (internal use).
| 
 | static | 
Get the singleton instance.
| 
 | static | 
Get the singleton instance.
| 
 | friend |