Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
Manager_Texture.h
Go to the documentation of this file.
1 // Manager_Texture.h
3 // Texture Manager of GL textures
4 //
6 
7 #ifndef _MANAGER_TEXTURE
8 #define _MANAGER_TEXTURE
9 
10 #include "framework\Frm_Manager.h"
11 #include "ToolBox\IOTexture_BMP.h"
12 #include "ToolBox\TBox_Textures.h"
13 
14 #define TXTMGR_NOTEXTURE 65535
15 
16 typedef struct {
17  std::string Name;
19  GLuint ID;
20 } Texture;
21 
22 class Manager_Texture: public Frm::Manager<Texture*> {
23  public:
25  ~Manager_Texture(void);
26  void SetTargetType(uchar &pTargetType){_TargetType = pTargetType;};
27  void SetTranspColor(uchar pr, uchar pg, uchar pb){_Convert.SetTranspColor(pr, pg, pb);};
28  bool Load(std::string &pFileName);
29  bool Unload(uint16 pIndex);
30  void Reset(void);
31  uint16 SetTexture(std::string &pFileName);
32  const GLuint GetID(uint16 pIndex){return _Ts[pIndex]->ID;};
33 
34  protected:
35  Frm::IO<TEXTURE>* IOStrategy;// load/save methods
36  TEXTURE _Texture; //buffer used to load/save or transform textures
37  Texture* _TextStruct; //structure holding the name, target type and GL ID
39 
41 
42  bool check(std::string &pFileName);
43  bool Create(void);
44 };
45 
46 
47 #endif
Definition: Frm_Manager.h:15
Manager(void)
Definition: Frm_Manager.h:17
std::vector< Texture * > _Ts
Definition: Frm_Manager.h:25
Definition: Manager_Texture.h:22
bool Unload(uint16 pIndex)
Definition: Manager_Texture.cpp:54
~Manager_Texture(void)
Definition: Manager_Texture.cpp:9
Texture * _TextStruct
Definition: Manager_Texture.h:37
void Reset(void)
Definition: Manager_Texture.cpp:72
bool Load(std::string &pFileName)
Definition: Manager_Texture.cpp:24
const GLuint GetID(uint16 pIndex)
Definition: Manager_Texture.h:32
bool check(std::string &pFileName)
Definition: Manager_Texture.cpp:111
bool Create(void)
Definition: Manager_Texture.cpp:134
void SetTranspColor(uchar pr, uchar pg, uchar pb)
Definition: Manager_Texture.h:27
Frm::IO< TEXTURE > * IOStrategy
Definition: Manager_Texture.h:32
void SetTargetType(uchar &pTargetType)
Definition: Manager_Texture.h:26
uchar _TargetType
Definition: Manager_Texture.h:38
uint16 SetTexture(std::string &pFileName)
Definition: Manager_Texture.cpp:94
Manager_Texture(void)
Definition: Manager_Texture.h:24
ToolBox::ConvText _Convert
Definition: Manager_Texture.h:40
TEXTURE _Texture
Definition: Manager_Texture.h:36
Definition: TBox_Textures.h:19
void SetTranspColor(uchar pr, uchar pg, uchar pb)
Definition: TBox_Textures.h:22
Definition: Frm.h:12
#define TXT_RGB
Definition: Frm_types.h:36
unsigned short int uint16
Definition: Frm_types.h:14
unsigned char uchar
Definition: Frm_types.h:16
Definition: Frm_types.h:39
Definition: Manager_Texture.h:16
uchar TargetType
Definition: Manager_Texture.h:18
GLuint ID
Definition: Manager_Texture.h:19
std::string Name
Definition: Manager_Texture.h:17