1
0
forked from 0ad/0ad
0ad/source/graphics/SkeletonAnimManager.h
janwas b755ddefda remove all author/modified by tags.
make include guards consistent.

This was SVN commit r5040.
2007-05-07 16:33:24 +00:00

43 lines
1.2 KiB
C++

/**
* =========================================================================
* File : SkeletonAnimManager.h
* Project : 0 A.D.
* Description : Owner of all skeleton animations
* =========================================================================
*/
#ifndef INCLUDED_SKELETONANIMMANAGER
#define INCLUDED_SKELETONANIMMANAGER
#include <map>
#include <set>
class CColladaManager;
class CSkeletonAnimDef;
class CStr8;
///////////////////////////////////////////////////////////////////////////////
// CSkeletonAnimManager : owner class of all skeleton anims - manages creation,
// loading and destruction of animation data
class CSkeletonAnimManager : boost::noncopyable
{
public:
// constructor, destructor
CSkeletonAnimManager(CColladaManager& colladaManager);
~CSkeletonAnimManager();
// return a given animation by filename; return null if filename doesn't
// refer to valid animation file
CSkeletonAnimDef* GetAnimation(const CStr8& filename);
private:
CSkeletonAnimDef* LoadAnimation(const char* filename);
// map of all known animations. Value is NULL if it failed to load.
std::map<CStr8, CSkeletonAnimDef*> m_Animations;
CColladaManager& m_ColladaManager;
};
#endif