00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef __CS_IUTIL_CACHE_H__
00020 #define __CS_IUTIL_CACHE_H__
00021
00022 #include "csutil/scf.h"
00023
00028 struct iDataBuffer;
00029
00030 SCF_VERSION (iCacheManager, 0, 0, 1);
00031
00053 struct iCacheManager : public iBase
00054 {
00059 virtual void SetCurrentType (const char* type) = 0;
00060
00064 virtual const char* GetCurrentType () const = 0;
00065
00070 virtual void SetCurrentScope (const char* scope) = 0;
00071
00075 virtual const char* GetCurrentScope () const = 0;
00076
00080 virtual bool CacheData (void* data, uint32 size,
00081 const char* type, const char* scope, uint32 id) = 0;
00082
00089 virtual csPtr<iDataBuffer> ReadCache (
00090 const char* type, const char* scope, uint32 id) = 0;
00091
00104 virtual bool ClearCache (const char* type = NULL, const char* scope = NULL,
00105 const uint32* id = NULL) = 0;
00106 };
00107
00108 #endif // __CS_IUTIL_CACHE_H__
00109