29 #ifndef _CEGUIAnimationManager_h_
30 #define _CEGUIAnimationManager_h_
32 #include "CEGUI/Singleton.h"
33 #include "CEGUI/String.h"
38 # pragma warning(push)
39 # pragma warning(disable : 4251)
235 const String& resourceGroup =
"");
285 s_defaultResourceGroup = resourceGroup;
299 return s_defaultResourceGroup;
303 typedef std::map<String, Interpolator*, std::less<String>
305 String generateUniqueAnimationName();
308 InterpolatorMap d_interpolators;
310 CEGUI_VECTOR_ALLOC(
Interpolator*)> BasicInterpolatorList;
312 BasicInterpolatorList d_basicInterpolators;
314 typedef std::map<String, Animation*> AnimationMap;
316 AnimationMap d_animations;
318 typedef std::multimap<Animation*, AnimationInstance*, std::less<Animation*>
321 AnimationInstanceMap d_animationInstances;
323 static String s_defaultResourceGroup;
325 static const String GeneratedAnimationNameBase;
327 unsigned long d_uid_counter;
332 #if defined(_MSC_VER)
333 # pragma warning(pop)
Definition: MemoryAllocatedObject.h:110
Defines an 'animation instance' class.
Definition: AnimationInstance.h:75
Definition: AnimationManager.h:49
AnimationInstance * getAnimationInstanceAtIdx(size_t index) const
Retrieves animation instance at given index.
~AnimationManager(void)
Destructor for AnimationManager objects.
String getAnimationDefinitionAsString(const Animation &animation) const
Writes given animation definition and returns the result as String.
bool isAnimationPresent(const String &name) const
Examines the list of Animations to see if one exists with the given name.
void destroyAnimation(const String &name)
Destroys given animation definition by name.
void addInterpolator(Interpolator *interpolator)
Adds interpolator to be available for Affectors.
void destroyAllAnimationInstances()
Destroys all instances of all animations.
Animation * getAnimationAtIdx(size_t index) const
Retrieves animation by index.
void destroyAnimationInstance(AnimationInstance *instance)
Destroys given animation instance.
Interpolator * getInterpolator(const String &type) const
Retrieves interpolator by type.
void destroyAnimation(Animation *animation)
Destroys given animation definition.
void loadAnimationsFromString(const String &source)
Parses XML source containing animation specifications to create and initialise Animation objects.
void removeInterpolator(Interpolator *interpolator)
Removes interpolator.
void autoStepInstances(float delta)
Internal method, gets called by CEGUI::System automatically.
size_t getNumAnimations() const
Retrieves number of defined animations.
static const String XMLSchemaName
Name of the schema used for loading animation xml files.
Definition: AnimationManager.h:52
static const String & getDefaultResourceGroup()
Returns the default resource group currently set for loading animation xml data.
Definition: AnimationManager.h:297
void writeAnimationDefinitionToStream(const Animation &animation, OutStream &out_stream) const
Writes given animation definition to the given OutStream.
AnimationInstance * instantiateAnimation(const String &name)
Instantiates given animation by name.
static void setDefaultResourceGroup(const String &resourceGroup)
Sets the default resource group to be used when loading animation xml data.
Definition: AnimationManager.h:283
AnimationInstance * instantiateAnimation(Animation *animation)
Instantiates given animation.
void destroyAllInstancesOfAnimation(Animation *animation)
Destroys all instances of given animation.
Animation * createAnimation(const String &name="")
Creates a new Animation definition.
Animation * getAnimation(const String &name) const
Retrieves animation by name.
AnimationManager(void)
Constructs a new AnimationManager object.
void loadAnimationsFromXML(const String &filename, const String &resourceGroup="")
Parses an XML file containing animation specifications to create and initialise Animation objects.
void destroyAllAnimations()
Destroys all animations in existence!
size_t getNumAnimationInstances() const
Retrieves number of animation instances, number of times any animation was instantiated.
Defines an 'animation' class.
Definition: Animation.h:65
Defines a 'interpolator' class.
Definition: Interpolator.h:55
Definition: Singleton.h:56
String class used within the GUI system.
Definition: String.h:64
Main namespace for Crazy Eddie's GUI Library.
Definition: arch_overview.dox:1
std::ostream OutStream
Output stream class.
Definition: Base.h:185