Main Page   Class Hierarchy   Compound List   File List   Compound Members  

SkeletalAnimation.h

00001 #ifndef SKELETALANIMATION_H_EJR421
00002 #define SKELETALANIMATION_H_EJR421
00003 
00004 #include "global.h"
00005 #include "Keyframes.h"
00006 class BoneInterpolator;
00007 class Bone;
00008 
00015 class SkeletalAnimation {
00016 public:
00030     SkeletalAnimation( const AKeysList& keys, const BoneNameSet& boneSet,
00031                        Bone& rootBone, float startTime, float endTime,
00032                        const std::string& animName);
00033 
00037     ~SkeletalAnimation();
00038     
00042     float getLength() const;
00043 
00047     const std::string& getName() const;
00048 
00061     void animate( float t );
00062     
00063 private:
00067     void cleanUp();
00068 
00069     SkeletalAnimation();
00070     SkeletalAnimation( const SkeletalAnimation& o );
00071     SkeletalAnimation& operator = ( const SkeletalAnimation& rhs );
00072     
00073     std::string name;
00074     float length;
00075 
00076     typedef std::vector<BoneInterpolator*> BIList;
00077     typedef BIList::iterator BIListIter;
00078     typedef BIList::const_iterator BIListCIter;
00079 
00080     BIList bis;
00081 };
00082 
00083 #endif
00084 

Generated on Wed May 14 01:38:07 2003 for CG Skeletal Animation Project by doxygen1.2.18