20#ifndef TEXTURETHUMBNAIL_H
21#define TEXTURETHUMBNAIL_H
33#define GLOBAL_THUMBNAIL_MANAGER_FILENAME "global.th6"
41 friend ThumbnailManagerClass;
44 unsigned char* Bitmap;
47 unsigned OriginalTextureWidth;
48 unsigned OriginalTextureHeight;
49 unsigned OriginalTextureMipLevelCount;
51 unsigned long DateTime;
53 ThumbnailManagerClass* Manager;
56 ThumbnailManagerClass* manager,
58 unsigned char* bitmap,
63 unsigned original_mip_level_count,
66 unsigned long date_time);
68 ThumbnailManagerClass* manager,
88class ThumbnailManagerClass :
public DLNodeClass<ThumbnailManagerClass>
92 friend ThumbnailClass;
94 static bool CreateThumbnailIfNotFound;
95 bool PerTextureTimeStampUsed;
99 unsigned char* ThumbnailMemory;
101 unsigned long DateTime;
103 ThumbnailManagerClass(
const char* thumbnail_filename,
const char* mix_file_name);
104 ~ThumbnailManagerClass();
106 void ThumbnailManagerClass::Remove_From_Hash(ThumbnailClass* thumb);
107 void ThumbnailManagerClass::Insert_To_Hash(ThumbnailClass* thumb);
108 ThumbnailClass* ThumbnailManagerClass::Get_From_Hash(
const StringClass& name);
110 void Create_Thumbnails();
111 static void Update_Thumbnail_File(
const char* mix_file_name,
bool display_message_box);
114 void Save(
bool force=
false);
130 static void Pre_Init(
bool display_message_box);
#define W3DMPO_GLUE(ARGCLASS)
WW3DFormat Get_Original_Texture_Format() const
unsigned long Get_Date_Time() const
unsigned Get_Width() const
unsigned Get_Height() const
unsigned Get_Original_Texture_Mip_Level_Count() const
unsigned Get_Original_Texture_Height() const
unsigned char * Peek_Bitmap()
unsigned Get_Original_Texture_Width() const
const StringClass & Get_Name() const
static bool Is_Thumbnail_Created_If_Not_Found()
ThumbnailClass * Peek_Thumbnail_Instance(const StringClass &name)
bool Is_Per_Texture_Time_Stamp_Used() const
static void Create_Thumbnail_If_Not_Found(bool create)
static void Pre_Init(bool display_message_box)
static ThumbnailClass * Peek_Thumbnail_Instance_From_Any_Manager(const StringClass &name)
void Enable_Per_Texture_Time_Stamp(bool enable)
static void Add_Thumbnail_Manager(const char *thumbnail_filename, const char *mix_file_name)
static ThumbnailManagerClass * Peek_Thumbnail_Manager(const char *thumbnail_filename)
static void Remove_Thumbnail_Manager(const char *thumbnail_filename)