00001 #ifndef SHADERMANAGER_HPP
00002 #define SHADERMANAGER_HPP
00003
00004 #include "Shader.hpp"
00005
00006 #include <map>
00007 #include <string>
00008
00016 class ShaderManager {
00017 public:
00018 virtual ~ShaderManager(void);
00019
00020 static ShaderManager *getInstance(void);
00021
00022 Shader *getShader(unsigned int id);
00023 void loadShader(unsigned int id, std::string path);
00024 private:
00025 static ShaderManager *m_instance;
00026
00027 std::map<unsigned int, Shader *> m_shaders;
00028
00029 ShaderManager(void);
00030 };
00031
00032 #endif