00001
#ifndef MATERIALMANAGER_H
00002
#define MATERIALMANAGER_H
00003
00004
#pragma once
00005
#include "ResourceManager.h"
00006
#include "OpenGLMaterial.h"
00007
00009
00014 class CMaterialManager :
public CResourceManager,
public CSingleton<CMaterialManager>
00015 {
00016
00017
public:
00018
CMaterialManager();
00019
virtual ~
CMaterialManager();
00020
00029
virtual CMaterial *
LoadResource(
TiXmlNode *pDataNode, CString strFilename, UINT uiID = 0, CString strName =
"");
00038
virtual CMaterial *
GetResource(
int uiIndex,
int uiID = -1, CString strName =
"", CString strFilename =
"");
00046
virtual CMaterial *
AddResource(CString strName, UINT uiID = 0, eEntityType ResourceType = Entity_Default);
00052
int RemoveResource(
CMaterial *pMaterial);
00053
00059
virtual int LoadXML(
TiXmlNode *pDataNode, CString strFilename);
00065
virtual int SaveXML(
TiXmlNode *pDataNode, CString strFilename);
00070
virtual void Destroy();
00075
virtual bool IsOfType(eEntityType eType);
00076 };
00077
00078
#endif