00001
00015 #ifndef TEXMGR_H
00016 #define TEXMGR_H
00017
00018 #include "IS3DCommon.H"
00019
00020 namespace IS3D {
00021
00045 class TexMgr
00046 {
00047 public:
00048
00051 static Array<std::string> loadFromConfig(const std::string &configName);
00052
00053 static TextureRef get(const std::string &keyName);
00054 static Array<TextureRef> get(const Array<std::string> &keyNames);
00055 static Array<TextureRef> getAll();
00056 static Array<std::string> getAllKeys();
00057 static void set(const std::string &keyName, TextureRef tex);
00058 static void remove(const std::string &keyName);
00059 static std::string lookupKeyName(TextureRef tex);
00060
00061 protected:
00062
00063 static Table<std::string, TextureRef> _texMap;
00064
00065
00066 static void initErrorTexture();
00067 static TextureRef _errorTexture;
00068 };
00069
00070 }
00071
00072 #endif