00001 00009 #ifndef TEXDB_H 00010 #define TEXDB_H 00011 00012 #include "MiscUtils.H" 00013 00014 // Gluebase includes 00015 #define OUTSIDE_GLUE_CORE 00016 #include <std/strings.H> 00017 00018 class Texture; 00019 00020 class TEXDB 00021 { 00022 public: 00023 00024 static Texture* get(str_ptr name); 00025 00026 static int num(); 00027 static str_ptr getName(int n); 00028 00029 static void loadTextures(char *filelist); 00030 // called automatically from Texture::new() 00031 static void add(Texture *tex) { _textures += tex; } 00032 static void remove(Texture *tex) { _textures -= tex; } 00033 00034 static void contextInit(); 00035 00036 protected: 00037 00038 static ARRAY<Texture*> _textures; 00039 00040 }; 00041 00042 #endif