00001
00002
00003
00004
00005
00006
00007
00008 #ifndef TEXTUREMANAGER_H_
00009 #define TEXTUREMANAGER_H_
00010
00011 #include "TextureDefinitions.h"
00012 #include "../Common/BMPFile.h"
00013 #include "GL/gl.h"
00014 #include <vector>
00015
00016
00017 class TextureManager
00018 {
00019 public:
00020 typedef enum {
00021 NoFilter = 0,
00022 Bilinear = 1,
00023 Trilinear = 2
00024
00025 } TexFilterType;
00026 static TextureManager *getInstance()
00027 {
00028 if (instance == NULL)
00029 {
00030 instance = new TextureManager ();
00031 }
00032 return instance;
00033 }
00034
00035
00036
00037 private:
00038 GLuint *texture;
00039
00040 static TextureManager *instance;
00041 TextureManager(){};
00042 TextureManager(const TextureManager&);
00043 std::vector<BMPFile*> BMPTextures;
00044 TexFilterType filterType;
00045 public:
00046 void loadTextures();
00047 GLuint giveMeTexture(int textureName);
00048
00049
00050 };
00051
00052 #endif