Ogre::AnimableObject Class Reference

Defines an interface to classes which have one or more AnimableValue instances to expose. More...

#include <OgreAnimable.h>

Inheritance diagram for Ogre::AnimableObject:

Inheritance graph
[legend]

List of all members.

Public Member Functions

 AnimableObject ()
virtual ~AnimableObject ()
const StringVectorgetAnimableValueNames (void) const
 Gets a list of animable value names for this object.
virtual AnimableValuePtr createAnimableValue (const String &valueName)
 Create a reference-counted AnimableValuePtr for the named value.

Protected Types

typedef std::map< String,
StringVector
AnimableDictionaryMap

Protected Member Functions

virtual const StringgetAnimableDictionaryName (void) const
 Get the name of the animable dictionary for this class.
void createAnimableDictionary (void) const
 Internal method for creating a dictionary of animable value names for the class, if it does not already exist.
StringVector_getAnimableValueNames (void)
 Get an updateable reference to animable value list.
virtual void initialiseAnimableDictionary (StringVector &) const
 Internal method for initialising dictionary; should be implemented by subclasses wanting to expose animable parameters.

Static Protected Attributes

static AnimableDictionaryMap msAnimableDictionary
 Static map of class name to list of animable value names.


Detailed Description

Defines an interface to classes which have one or more AnimableValue instances to expose.

Definition at line 231 of file OgreAnimable.h.


Member Typedef Documentation

Definition at line 234 of file OgreAnimable.h.


Constructor & Destructor Documentation

Ogre::AnimableObject::AnimableObject (  ) 

Definition at line 284 of file OgreAnimable.h.

virtual Ogre::AnimableObject::~AnimableObject (  )  [virtual]

Definition at line 285 of file OgreAnimable.h.


Member Function Documentation

virtual const String& Ogre::AnimableObject::getAnimableDictionaryName ( void   )  const [protected, virtual]

Get the name of the animable dictionary for this class.

Remarks:
Subclasses must override this if they want to support animation of their values.

Reimplemented in Ogre::Light.

Definition at line 242 of file OgreAnimable.h.

References Ogre::StringUtil::BLANK.

void Ogre::AnimableObject::createAnimableDictionary ( void   )  const [protected]

Internal method for creating a dictionary of animable value names for the class, if it does not already exist.

Definition at line 247 of file OgreAnimable.h.

StringVector& Ogre::AnimableObject::_getAnimableValueNames ( void   )  [protected]

Get an updateable reference to animable value list.

Definition at line 260 of file OgreAnimable.h.

References Ogre::Exception::ERR_ITEM_NOT_FOUND, and OGRE_EXCEPT.

virtual void Ogre::AnimableObject::initialiseAnimableDictionary ( StringVector  )  const [protected, virtual]

Internal method for initialising dictionary; should be implemented by subclasses wanting to expose animable parameters.

Reimplemented in Ogre::Light.

Definition at line 280 of file OgreAnimable.h.

const StringVector& Ogre::AnimableObject::getAnimableValueNames ( void   )  const

Gets a list of animable value names for this object.

Definition at line 288 of file OgreAnimable.h.

References Ogre::Exception::ERR_ITEM_NOT_FOUND, and OGRE_EXCEPT.

virtual AnimableValuePtr Ogre::AnimableObject::createAnimableValue ( const String valueName  )  [virtual]

Create a reference-counted AnimableValuePtr for the named value.

Remarks:
You can use the returned object to animate a value on this object, using AnimationTrack. Subclasses must override this if they wish to support animation of their values.

Reimplemented in Ogre::Light.

Definition at line 313 of file OgreAnimable.h.

References Ogre::Exception::ERR_ITEM_NOT_FOUND, and OGRE_EXCEPT.


Member Data Documentation

Static map of class name to list of animable value names.

Definition at line 236 of file OgreAnimable.h.


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

Copyright © 2008 Torus Knot Software Ltd
Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 2.5 License.
Last modified Sun Sep 27 22:02:49 2009