00001
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #ifndef NL_SHAPE_BANK_USER_H
00027 #define NL_SHAPE_BANK_USER_H
00028
00029 #include "nel/misc/types_nl.h"
00030 #include "nel/3d/u_shape_bank.h"
00031 #include "3d/shape_bank.h"
00032
00033 #define NL3D_MEM_SHAPE_BANK NL_ALLOC_CONTEXT( 3dShpBk )
00034
00035 namespace NL3D
00036 {
00037
00045 class CShapeBankUser : public UShapeBank
00046 {
00047 public:
00048 virtual ~CShapeBankUser()
00049 {
00050 NL3D_MEM_SHAPE_BANK
00051 }
00052
00053 virtual void addShapeCache(const std::string &shapeCacheName);
00054 virtual void removeShapeCache(const std::string &shapeCacheName);
00055 virtual void reset();
00056 virtual void setShapeCacheSize(const std::string &shapeCacheName, sint32 maxSize);
00057 virtual void linkShapeToShapeCache(const std::string &shapeName, const std::string &shapeCacheName);
00058 virtual void preLoadShapesFromDirectory(const std::string &shapeCacheName,
00059 const std::string &path, const std::string &wildCard, bool recurs);
00060 virtual void preLoadShapesFromBNP(const std::string &shapeCacheName,
00061 const std::string &bnpName, const std::string &wildCard);
00062
00063
00064 CShapeBank _ShapeBank;
00065 };
00066
00067
00068 }
00069
00070
00071 #endif // NL_SHAPE_BANK_USER_H
00072
00073