|  | OGRE 2.1
    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 Member Functions | |
| ParticleSystemManager () | |
| virtual | ~ParticleSystemManager () | 
| ParticleAffector * | _createAffector (const String &affectorType, ParticleSystem *psys) | 
| Internal method for creating a new affector from a factory. | |
| ParticleEmitter * | _createEmitter (const String &emitterType, ParticleSystem *psys) | 
| Internal method for creating a new emitter from a factory. | |
| ParticleSystemRenderer * | _createRenderer (const String &rendererType, SceneManager *sceneManager) | 
| Internal method for creating a new renderer from a factory. | |
| void | _destroyAffector (ParticleAffector *affector) | 
| Internal method for destroying an affector. | |
| void | _destroyEmitter (ParticleEmitter *emitter) | 
| Internal method for destroying an emitter. | |
| void | _destroyRenderer (ParticleSystemRenderer *renderer) | 
| Internal method for destroying a renderer. | |
| ParticleSystemFactory * | _getFactory (void) | 
| Get an instance of ParticleSystemFactory (internal use). | |
| void | _initialise (void) | 
| Init method to be called by OGRE system. | |
| void | addAffectorFactory (ParticleAffectorFactory *factory) | 
| Adds a new 'factory' object for affectors to the list of available affector types. | |
| void | addEmitterFactory (ParticleEmitterFactory *factory) | 
| Adds a new 'factory' object for emitters to the list of available emitter types. | |
| void | addRendererFactory (ParticleSystemRendererFactory *factory) | 
| Registers a factory class for creating ParticleSystemRenderer instances. | |
| void | addTemplate (const String &name, ParticleSystem *sysTemplate) | 
| Adds a new particle system template to the list of available templates. | |
| ParticleSystem * | createTemplate (const String &name, const String &resourceGroup) | 
| Create a new particle system template. | |
| ParticleAffectorFactoryIterator | getAffectorFactoryIterator (void) | 
| Return an iterator over the affector factories currently registered. | |
| ParticleEmitterFactoryIterator | getEmitterFactoryIterator (void) | 
| Return an iterator over the emitter factories currently registered. | |
| Real | getLoadingOrder (void) const | 
| Gets the relative loading order of scripts of this type. | |
| ParticleRendererFactoryIterator | getRendererFactoryIterator (void) | 
| Return an iterator over the renderer factories currently registered. | |
| const StringVector & | getScriptPatterns (void) const | 
| Gets the file patterns which should be used to find scripts for this class. | |
| ParticleSystem * | getTemplate (const String &name) | 
| Retrieves a particle system template for possible modification. | |
| ParticleSystemTemplateIterator | getTemplateIterator (void) | 
| Gets an iterator over the list of particle system templates. | |
| void | operator delete (void *ptr) | 
| void | operator delete (void *ptr, const char *, int, const char *) | 
| void | operator delete (void *ptr, void *) | 
| void | operator delete[] (void *ptr) | 
| void | operator delete[] (void *ptr, const char *, int, const char *) | 
| void * | operator new (size_t sz) | 
| void * | operator new (size_t sz, const char *file, int line, const char *func) | 
| operator new, with debug line info | |
| void * | operator new (size_t sz, void *ptr) | 
| placement operator new | |
| void * | operator new[] (size_t sz) | 
| void * | operator new[] (size_t sz, const char *file, int line, const char *func) | 
| array operator new, with debug line info | |
| void | parseScript (DataStreamPtr &stream, const String &groupName) | 
| Parse a script file. | |
| void | removeAllTemplates (bool deleteTemplate=true) | 
| Removes a specified template from the ParticleSystemManager. | |
| void | removeTemplate (const String &name, bool deleteTemplate=true) | 
| Removes a specified template from the ParticleSystemManager. | |
| void | removeTemplatesByResourceGroup (const String &resourceGroup) | 
| Removes all templates that belong to a secific Resource Group from the ParticleSystemManager. | |
| Static Public Member Functions | |
| static ParticleSystemManager & | getSingleton (void) | 
| Override standard Singleton retrieval. | |
| static ParticleSystemManager * | getSingletonPtr (void) | 
| Override standard Singleton retrieval. | |
| Friends | |
| class | ParticleSystemFactory | 
Manages particle systems, particle system scripts (templates) and the available emitter & affector factories.
| typedef MapIterator<ParticleAffectorFactoryMap> Ogre::ParticleSystemManager::ParticleAffectorFactoryIterator | 
| typedef map<String,ParticleAffectorFactory*>::type Ogre::ParticleSystemManager::ParticleAffectorFactoryMap | 
| typedef MapIterator<ParticleEmitterFactoryMap> Ogre::ParticleSystemManager::ParticleEmitterFactoryIterator | 
| typedef map<String,ParticleEmitterFactory*>::type Ogre::ParticleSystemManager::ParticleEmitterFactoryMap | 
| typedef MapIterator<ParticleSystemRendererFactoryMap> Ogre::ParticleSystemManager::ParticleRendererFactoryIterator | 
| typedef map<String,ParticleSystemRendererFactory*>::type Ogre::ParticleSystemManager::ParticleSystemRendererFactoryMap | 
| typedef MapIterator<ParticleTemplateMap> Ogre::ParticleSystemManager::ParticleSystemTemplateIterator | 
| Ogre::ParticleSystemManager::ParticleSystemManager | ( | ) | 
| 
 | virtual | 
| 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 | 
| 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 | 
| ParticleSystemRenderer * Ogre::ParticleSystemManager::_createRenderer | ( | const String & | rendererType, | 
| SceneManager * | sceneManager | ||
| ) | 
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::_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. | 
| 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. | 
| 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. | 
| 
 | inline | 
Get an instance of ParticleSystemFactory (internal use).
Init method to be called by OGRE system.
| 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::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::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. | 
| 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. | 
| 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.
Gets the relative loading order of scripts of this type.
Implements Ogre::ScriptLoader.
| ParticleRendererFactoryIterator Ogre::ParticleSystemManager::getRendererFactoryIterator | ( | void | ) | 
Return an iterator over the renderer factories currently registered.
| 
 | virtual | 
Gets the file patterns which should be used to find scripts for this class.
Implements Ogre::ScriptLoader.
| 
 | static | 
Override standard Singleton retrieval.
| 
 | static | 
Override standard Singleton retrieval.
| ParticleSystem * Ogre::ParticleSystemManager::getTemplate | ( | const String & | name | ) | 
Retrieves a particle system template for possible modification.
| 
 | inline | 
Gets an iterator over the list of particle system templates.
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
| 
 | inlineinherited | 
operator new, with debug line info
placement operator new
| 
 | inlineinherited | 
| 
 | inlineinherited | 
array operator new, with debug line info
| 
 | 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.
Removes a specified template from the ParticleSystemManager.
| deleteTemplate | Whether or not to delete the templates before removing them. | 
| 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. | 
Removes all templates that belong to a secific Resource Group from the ParticleSystemManager.
| resourceGroup | Resource group to delete templates for | 
| 
 | friend |