12#ifndef TT_INCLUDE__VISTABLEMGRCLASS_H
13#define TT_INCLUDE__VISTABLEMGRCLASS_H
15#include "engine_common.h"
16#include "engine_vector.h"
17class CompressedVisTableClass;
19class VisDecompressionCacheClass
22 SimpleVecClass<VisTableClass *> Cache;
23 MultiListClass<VisTableClass> tablelist;
25 VisDecompressionCacheClass()
28 ~VisDecompressionCacheClass()
32 VisTableClass *Get_Table(
int id);
33 void Add_Table(VisTableClass *table);
34 void Release_Old_Tables();
41 SimpleDynVecClass<CompressedVisTableClass *> tables;
42 VisDecompressionCacheClass *cache;
44 VisTableMgrClass() : count(0), size(0), frames(0)
46 cache =
new VisDecompressionCacheClass();
60 Delete_All_Vis_Tables();
67 void Delete_All_Vis_Tables();
68 unsigned int Get_Vis_Table_Size()
72 VisTableClass *Get_Vis_Table(
int id,
bool b);
73 void Save(ChunkSaveClass &csave);
74 void Load(ChunkLoadClass &cload);
75 int Allocate_Vis_Object_ID(
int count);
76 int Allocate_Vis_Sector_ID(
int count);
77 int Get_Vis_Table_Count()
81 bool Has_Vis_Table(
int table)
83 return tables[table] != 0;
85 void Notify_Frame_Ended();
86 void Set_Optimized_Vis_Object_Count(
int count)
90 void Update_Vis_Table(
int, VisTableClass *);