Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_UTIL_NULCACHE_H__
00020 #define __CS_UTIL_NULCACHE_H__
00021
00025 #include "csextern.h"
00026 #include "csutil/scf_implementation.h"
00027 #include "iutil/cache.h"
00028
00032 class CS_CRYSTALSPACE_EXPORT csNullCacheManager :
00033 public scfImplementation1<csNullCacheManager, iCacheManager>
00034 {
00035 public:
00039 csNullCacheManager ();
00040
00041 virtual ~csNullCacheManager ();
00042
00043
00044 virtual void SetReadOnly (bool) { }
00045 virtual bool IsReadOnly () const { return true; }
00046
00050 virtual void SetCurrentType (const char* type);
00054 virtual const char* GetCurrentType () const { return 0; }
00058 virtual void SetCurrentScope (const char* scope);
00062 virtual const char* GetCurrentScope () const { return 0; }
00066 virtual bool CacheData (const void* data, size_t size,
00067 const char* type, const char* scope, uint32 id);
00071 virtual csPtr<iDataBuffer> ReadCache (const char* type, const char* scope,
00072 uint32 id);
00076 virtual bool ClearCache (const char* type = 0, const char* scope = 0,
00077 const uint32* id = 0);
00081 virtual void Flush () { }
00082 };
00083
00084 #endif // __CS_UTIL_NULCACHE_H__
00085