00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef CAL_COREMESH_H
00012 #define CAL_COREMESH_H
00013
00014
00015 #include "cal3d/global.h"
00016 #include "cal3d/refcounted.h"
00017 #include "cal3d/refptr.h"
00018
00019
00020 class CalCoreSubmesh;
00021
00022
00023 class CAL3D_API CalCoreMesh : public cal3d::RefCounted
00024 {
00025 protected:
00026 ~CalCoreMesh();
00027
00028 public:
00029 CalCoreMesh();
00030
00031 int addCoreSubmesh(CalCoreSubmesh *pCoreSubmesh);
00032 CalCoreSubmesh *getCoreSubmesh(int id);
00033 int getCoreSubmeshCount();
00034 std::vector<CalCoreSubmesh *>& getVectorCoreSubmesh();
00035 int addAsMorphTarget(CalCoreMesh *pCoreMesh);
00036 void scale(float factor);
00037 void setFilename(const std::string& filename);
00038 const std::string& getFilename(void);
00039 void setName(const std::string& name);
00040 const std::string& getName(void);
00041
00042 private:
00043 std::vector<CalCoreSubmesh *> m_vectorCoreSubmesh;
00044 std::string m_name;
00045 std::string m_filename;
00046 };
00047 typedef cal3d::RefPtr<CalCoreMesh> CalCoreMeshPtr;
00048
00049 #endif