#pragma once

#include <GL/glew.h>
#include <map>
#include <string>

///////////////////////////////////////////////////////////////
//リソースマネージャ
//一度読み込んだ画像を保持しておいて，再度読み込んだ際にそれを返すようなクラス
///////////////////////////////////////////////////////////////
class ResourceManager {
public:
	
	struct TEXTURE {
		GLuint ID;
		int Width, Height;
	};
	
public:
	
	ResourceManager();
	virtual ~ResourceManager();
	
	const TEXTURE &GetTexture(const std::string &filename);
	void RemoveTexture(const std::string &filename);
	
protected:
	
	TEXTURE LoadImage(const std::string &filename);
	
protected:
	std::map<std::string, TEXTURE> mapTextures;
};


