00001 #ifndef TEXTUREMANAGER_H 00002 #define TEXTUREMANAGER_H 00003 00004 #pragma once 00005 #include "ResourceManager.h" 00006 #include "OpenGLTexture.h" 00007 00009 00014 class CTextureManager : public CResourceManager, public CSingleton<CTextureManager> 00015 { 00016 public: 00017 CTextureManager(); 00018 virtual ~CTextureManager(); 00027 virtual CTexture *LoadResource(TiXmlNode *pDataNode, CString strFilename, UINT uiID = 0, CString strName = ""); 00036 virtual CTexture *GetResource(int uiIndex, int uiID = -1, CString strName = "", CString strFilename = ""); 00044 virtual CTexture *AddResource(CString strName, UINT uiID = 0, eEntityType ResourceType = Entity_Default); 00050 int RemoveResource(CTexture *pTexture); 00051 00057 virtual int LoadXML(TiXmlNode *pDataNode, CString strFilename); 00063 virtual int SaveXML(TiXmlNode *pDataNode, CString strFilename); 00068 virtual void Destroy(); 00073 virtual bool IsOfType(eEntityType eType); 00074 }; 00075 00076 #endif