2004-11-08 23:02:01 +01:00
|
|
|
#ifndef __H_MESHMANAGER_H__
|
|
|
|
#define __H_MESHMANAGER_H__
|
|
|
|
|
2004-11-24 00:56:10 +01:00
|
|
|
#include "Singleton.h"
|
2004-12-12 20:43:55 +01:00
|
|
|
#include "CStr.h"
|
2004-11-08 23:02:01 +01:00
|
|
|
|
2004-12-12 19:40:00 +01:00
|
|
|
#include "boost/shared_ptr.hpp"
|
|
|
|
#include "boost/weak_ptr.hpp"
|
2004-12-16 13:01:47 +01:00
|
|
|
|
2004-11-08 23:02:01 +01:00
|
|
|
#define g_MeshManager CMeshManager::GetSingleton()
|
|
|
|
|
2004-12-12 20:43:55 +01:00
|
|
|
class CModelDef;
|
2004-12-12 19:40:00 +01:00
|
|
|
typedef boost::shared_ptr<CModelDef> CModelDefPtr;
|
2004-12-12 20:43:55 +01:00
|
|
|
typedef STL_HASH_MAP<CStr, boost::weak_ptr<CModelDef>, CStr_hash_compare> mesh_map;
|
2004-11-08 23:02:01 +01:00
|
|
|
|
|
|
|
class CMeshManager : public Singleton<CMeshManager>
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
CMeshManager();
|
|
|
|
~CMeshManager();
|
|
|
|
|
2004-12-12 19:40:00 +01:00
|
|
|
CModelDefPtr GetMesh(const char *filename);
|
2004-11-08 23:02:01 +01:00
|
|
|
private:
|
|
|
|
mesh_map m_MeshMap;
|
|
|
|
};
|
|
|
|
|
2004-11-24 00:56:10 +01:00
|
|
|
#endif
|