#include <OgreHapticsForceEffectManager.h>
Public Types | |
typedef ConstMapIterator < ForceEffectMap > | ForceEffectIterator |
typedef ConstMapIterator < ForceEffectAlgorithmFactoryMap > | ForceEffectAlgorithmFactoryIterator |
Public Member Functions | |
ForceEffectManager () | |
Standard constructor. | |
virtual | ~ForceEffectManager () |
Virtual destructor. | |
const StringVector & | getScriptPatterns (void) const |
Implements Ogre::ScriptLoader::getScriptPatterns. | |
void | parseScript (DataStreamPtr &stream, const String &groupName) |
Implements Ogre::ScriptLoader::parseScript. | |
Real | getLoadingOrder (void) const |
Implements Ogre::ScriptLoader::getLoadingOrder. | |
ForceEffect * | createTemplate (const String &name) |
Creates a new force effect template. | |
void | addTemplate (const String &name, ForceEffect *effect) |
Adds a new force effect template to the list of available templates. | |
ForceEffect * | getTemplate (const String &name) |
Retrieves a force effect template for possible modification. | |
ForceEffectIterator | getTemplateIterator (void) |
Returns an specialised Ogre::ConstMapIterator over the list of force effect templates. | |
void | removeTemplate (const String &name, bool deleteTemplate=true) |
Removes a specified template from the ForceEffectManager. | |
void | removeAllTemplates (bool deleteTemplates=true) |
Removes all templates from the ForceEffectManager. | |
ForceEffect * | createEffect (const String &name, const String &templateName) |
Creates a force effect based on a template. | |
ForceEffect * | createEffect (const String &name) |
Creates a blank force effect. | |
ForceEffect * | getEffect (const String &name) const |
Returns a pointer to the named ForceEffect. | |
bool | hasEffect (const String &name) const |
Returns whether a force effect with the given name exists. | |
void | destroyEffect (const String &name) |
Removes and destroys the named ForceEffect. | |
void | destroyEffect (ForceEffect *effect) |
Removes and destroys the given ForceEffect. | |
void | destroyAllEffects (void) |
Removes and destroys all ForceEffects from the manager. | |
void | addAlgorithmFactory (ForceEffectAlgorithmFactory *factory) |
Adds a new factory object for algorithms to the list of available algorithm types. | |
ForceEffectAlgorithmFactoryIterator | getAlgorithmFactoryIterator (void) |
Returns a specialised Ogre::ConstMapIterator over the registered ForceAlgorithmFactory instances. | |
ForceEffectAlgorithm * | _createAlgorithm (const String &algorithmType) |
Internal method for creating an algorithm from a factory. | |
void | _destroyAlgorithm (ForceEffectAlgorithm *algorithm) |
Internal method for destroying an algorithm. | |
Static Public Member Functions | |
static ForceEffectManager & | getSingleton (void) |
Override standard Ogre::Singleton retrieval. | |
static ForceEffectManager * | getSingletonPtr (void) |
Override standard Ogre::Singleton retrieval. | |
Protected Types | |
typedef std::map< String, ForceEffect * > | ForceEffectMap |
typedef std::map< String, ForceEffectAlgorithmFactory * > | ForceEffectAlgorithmFactoryMap |
Protected Member Functions | |
void | parseNewAlgorithm (const String &type, DataStreamPtr &stream, ForceEffect *effect) |
Internal script parsing method. | |
void | parseAttrib (const String &line, ForceEffect *effect) |
Internal script parsing method. | |
void | parseAlgorithmAttrib (const String &line, ForceEffectAlgorithm *algorithm) |
Internal script parsing method. | |
void | skipToNextCloseBrace (DataStreamPtr &stream) |
Internal script parsing method. | |
void | skipToNextOpenBrace (DataStreamPtr &stream) |
Internal script parsing method. | |
Protected Attributes | |
OGREHAPTICS_AUTO_MUTEX ForceEffectMap | mEffectTemplates |
Templates based on scripts. | |
ForceEffectMap | mEffects |
List of managed effects. | |
ForceEffectAlgorithmFactoryMap | mAlgorithmFactories |
Factories for named algorithm types (can be extended using plugins). | |
StringVector | mScriptPatterns |
List of patterns. |
Definition at line 79 of file OgreHapticsForceEffectManager.h.
typedef std::map<String, ForceEffect*> OgreHaptics::ForceEffectManager::ForceEffectMap [protected] |
Definition at line 83 of file OgreHapticsForceEffectManager.h.
typedef std::map<String, ForceEffectAlgorithmFactory*> OgreHaptics::ForceEffectManager::ForceEffectAlgorithmFactoryMap [protected] |
Definition at line 84 of file OgreHapticsForceEffectManager.h.
typedef ConstMapIterator<ForceEffectMap> OgreHaptics::ForceEffectManager::ForceEffectIterator |
Definition at line 173 of file OgreHapticsForceEffectManager.h.
typedef ConstMapIterator<ForceEffectAlgorithmFactoryMap> OgreHaptics::ForceEffectManager::ForceEffectAlgorithmFactoryIterator |
Definition at line 285 of file OgreHapticsForceEffectManager.h.
OgreHaptics::ForceEffectManager::ForceEffectManager | ( | ) |
Standard constructor.
virtual OgreHaptics::ForceEffectManager::~ForceEffectManager | ( | ) | [virtual] |
Virtual destructor.
static ForceEffectManager& OgreHaptics::ForceEffectManager::getSingleton | ( | void | ) | [static] |
Override standard Ogre::Singleton retrieval.
static ForceEffectManager* OgreHaptics::ForceEffectManager::getSingletonPtr | ( | void | ) | [static] |
Override standard Ogre::Singleton retrieval.
const StringVector& OgreHaptics::ForceEffectManager::getScriptPatterns | ( | void | ) | const |
Implements Ogre::ScriptLoader::getScriptPatterns.
void OgreHaptics::ForceEffectManager::parseScript | ( | DataStreamPtr & | stream, | |
const String & | groupName | |||
) |
Implements Ogre::ScriptLoader::parseScript.
Real OgreHaptics::ForceEffectManager::getLoadingOrder | ( | void | ) | const |
Implements Ogre::ScriptLoader::getLoadingOrder.
ForceEffect* OgreHaptics::ForceEffectManager::createTemplate | ( | const String & | name | ) |
Creates a new force effect template.
name | The name of the template. Must be unique across all templates. |
void OgreHaptics::ForceEffectManager::addTemplate | ( | const String & | name, | |
ForceEffect * | effect | |||
) |
Adds a new force effect template to the list of available templates.
name | The name of the template. Must be unique across all templates. | |
effect | A pointer to a force effect to be used as a template. The manager will take over ownership of this pointer. |
ForceEffect* OgreHaptics::ForceEffectManager::getTemplate | ( | const String & | name | ) |
Retrieves a force effect template for possible modification.
An | ItemNotFoundException if the template could not be found. |
ForceEffectIterator OgreHaptics::ForceEffectManager::getTemplateIterator | ( | void | ) |
Returns an specialised Ogre::ConstMapIterator over the list of force effect templates.
void OgreHaptics::ForceEffectManager::removeTemplate | ( | const String & | name, | |
bool | deleteTemplate = true | |||
) |
Removes a specified template from the ForceEffectManager.
name | The name of the template to remove. | |
deleteTemplate | Whether or not to delete the template before removing it. |
An | ItemNotFoundException if the template could not be found. |
void OgreHaptics::ForceEffectManager::removeAllTemplates | ( | bool | deleteTemplates = true |
) |
Removes all templates from the ForceEffectManager.
deleteTemplates | Whether or not to delete the templates before removing it. |
ForceEffect* OgreHaptics::ForceEffectManager::createEffect | ( | const String & | name, | |
const String & | templateName | |||
) |
Creates a force effect based on a template.
name | The name to give the new force effect instance, must be unique. | |
templateName | The name of the template to base the new instance on. |
An | DuplicateItemException if an effect with the given name already exists. | |
An | ItemNotFoundException if the template could not be found. |
ForceEffect* OgreHaptics::ForceEffectManager::createEffect | ( | const String & | name | ) |
Creates a blank force effect.
name | The name to give the new force effect instance, must be unique. |
An | DuplicateItemException if an effect with the given name already exists. |
ForceEffect* OgreHaptics::ForceEffectManager::getEffect | ( | const String & | name | ) | const |
Returns a pointer to the named ForceEffect.
An | ItemNotFoundException if the named force effect does not exist. |
bool OgreHaptics::ForceEffectManager::hasEffect | ( | const String & | name | ) | const |
Returns whether a force effect with the given name exists.
void OgreHaptics::ForceEffectManager::destroyEffect | ( | const String & | name | ) |
Removes and destroys the named ForceEffect.
name | The name of the force effect to be destroyed. |
void OgreHaptics::ForceEffectManager::destroyEffect | ( | ForceEffect * | effect | ) |
Removes and destroys the given ForceEffect.
effect | Pointer to the force effect to be destroyed. |
void OgreHaptics::ForceEffectManager::destroyAllEffects | ( | void | ) |
Removes and destroys all ForceEffects from the manager.
void OgreHaptics::ForceEffectManager::addAlgorithmFactory | ( | ForceEffectAlgorithmFactory * | factory | ) |
Adds a new factory object for algorithms to the list of available algorithm types.
factory | Pointer to a ForceAlgorithmFactory subclass created by the plugin or application code. |
ForceEffectAlgorithmFactoryIterator OgreHaptics::ForceEffectManager::getAlgorithmFactoryIterator | ( | void | ) |
Returns a specialised Ogre::ConstMapIterator over the registered ForceAlgorithmFactory instances.
ForceEffectAlgorithm* OgreHaptics::ForceEffectManager::_createAlgorithm | ( | const String & | algorithmType | ) |
Internal method for creating an algorithm from a factory.
algorithmType | String name of the algorithm type to be created. A factory of this type must have been registered. |
An | InvalidArgumentsException if no factory for the given type could be found. |
void OgreHaptics::ForceEffectManager::_destroyAlgorithm | ( | ForceEffectAlgorithm * | algorithm | ) |
Internal method for destroying an algorithm.
algorithm | Pointer to algorithm to be destroyed. On return this pointer will point to invalid (freed) memory. |
void OgreHaptics::ForceEffectManager::parseNewAlgorithm | ( | const String & | type, | |
DataStreamPtr & | stream, | |||
ForceEffect * | effect | |||
) | [protected] |
Internal script parsing method.
void OgreHaptics::ForceEffectManager::parseAttrib | ( | const String & | line, | |
ForceEffect * | effect | |||
) | [protected] |
Internal script parsing method.
void OgreHaptics::ForceEffectManager::parseAlgorithmAttrib | ( | const String & | line, | |
ForceEffectAlgorithm * | algorithm | |||
) | [protected] |
Internal script parsing method.
void OgreHaptics::ForceEffectManager::skipToNextCloseBrace | ( | DataStreamPtr & | stream | ) | [protected] |
Internal script parsing method.
void OgreHaptics::ForceEffectManager::skipToNextOpenBrace | ( | DataStreamPtr & | stream | ) | [protected] |
Internal script parsing method.
OGREHAPTICS_AUTO_MUTEX ForceEffectMap OgreHaptics::ForceEffectManager::mEffectTemplates [protected] |
Factories for named algorithm types (can be extended using plugins).
Definition at line 324 of file OgreHapticsForceEffectManager.h.
StringVector OgreHaptics::ForceEffectManager::mScriptPatterns [protected] |
Last modified Tue Jan 6 22:31:27 2009