- Cal3D 0.11 API Reference -

coreanimation.h
1 //****************************************************************************//
2 // coreanimation.h //
3 // Copyright (C) 2001, 2002 Bruno 'Beosil' Heidelberger //
4 //****************************************************************************//
5 // This library is free software; you can redistribute it and/or modify it //
6 // under the terms of the GNU Lesser General Public License as published by //
7 // the Free Software Foundation; either version 2.1 of the License, or (at //
8 // your option) any later version. //
9 //****************************************************************************//
10 
11 #ifndef CAL_COREANIMATION_H
12 #define CAL_COREANIMATION_H
13 
14 #include "cal3d/global.h"
15 #include "cal3d/quaternion.h"
16 #include "cal3d/refcounted.h"
17 #include "cal3d/refptr.h"
18 
20 class CalCoreTrack;
21 class CalCoreSkeleton;
22 
23 class CAL3D_API CalCoreAnimation : public cal3d::RefCounted
24 {
25 protected:
27 
28 public:
30 
31  size_t size();
32  void fillInvalidTranslations( CalCoreSkeleton * skel );
33  bool addCoreTrack(CalCoreTrack *pCoreTrack);
34  CalCoreTrack *getCoreTrack(int coreBoneId);
35  CalCoreTrack * nthCoreTrack( unsigned int );
36  float getDuration() const;
37  void setDuration(float duration);
38  void scale(float factor);
39  static int getNumCoreAnimations();
40  void setFilename(const std::string& filename);
41  const std::string& getFilename(void) const;
42  void setName(const std::string& name);
43  const std::string& getName(void) const;
44 
45  void registerCallback(CalAnimationCallback *callback, float min_interval);
46  void removeCallback(CalAnimationCallback *callback);
47 
48  unsigned int getTrackCount() const;
49  std::list<CalCoreTrack *>& getListCoreTrack();
50  unsigned int getTotalNumberOfKeyframes() const;
51 
53  {
54  CalAnimationCallback *callback;
55  float min_interval;
56  };
57 
58  std::vector<CallbackRecord>& getCallbackList() { return m_listCallbacks; }
59 
60 private:
61 
62  std::vector<CallbackRecord> m_listCallbacks;
63 
64  float m_duration;
65  std::list<CalCoreTrack *> m_listCoreTrack;
66  std::string m_name;
67  std::string m_filename;
68 };
69 
71 
72 #endif
73 
74 //****************************************************************************//
Definition: coreanimation.h:23
A container-safe smart pointer used for refcounted classes.
Definition: refcounted.h:11
Definition: coreskeleton.h:24
Definition: animcallback.h:20
Definition: coreanimation.h:52
Definition: coretrack.h:26
Derive from RefCounted to make your class have reference-counted lifetime semantics.
Definition: refcounted.h:28

Generated by The Cal3D Team with Doxygen 1.8.14