CrystalSpace

Public API Reference

csVfsCacheManager Class Reference

This is a general cache that can cache data on VFS. More...

#include <csutil/vfscache.h>

Inheritance diagram for csVfsCacheManager:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual bool CacheData (const void *data, size_t size, const char *type, const char *scope, uint32 id)
 Cache some data.
virtual bool ClearCache (const char *type=0, const char *scope=0, const uint32 *id=0)
 Clear items from the cache.
 csVfsCacheManager (iObjectRegistry *object_reg, const char *vfsdir)
 Construct the cache manager with the given directory.
virtual void Flush ()
 Flush VFS.
virtual const char * GetCurrentScope () const
 Get current scope or 0 if none set.
virtual const char * GetCurrentType () const
 Get current type or 0 if none set.
virtual bool IsReadOnly () const
 Is the cache manager read-only?
virtual csPtr< iDataBufferReadCache (const char *type, const char *scope, uint32 id)
 Retrieve some data from the cache.
virtual void SetCurrentScope (const char *scope)
 Set current scope.
virtual void SetCurrentType (const char *type)
 Set current type.
virtual void SetReadOnly (bool ro)
 Force the cache manager to be read-only.

Detailed Description

This is a general cache that can cache data on VFS.

Definition at line 36 of file vfscache.h.


Constructor & Destructor Documentation

csVfsCacheManager::csVfsCacheManager ( iObjectRegistry object_reg,
const char *  vfsdir 
)

Construct the cache manager with the given directory.

All cached data will be put somewhere in that directory.


Member Function Documentation

virtual bool csVfsCacheManager::CacheData ( const void *  data,
size_t  size,
const char *  type,
const char *  scope,
uint32  id 
) [virtual]

Cache some data.

Returns true if this succeeded.

Implements iCacheManager.

virtual bool csVfsCacheManager::ClearCache ( const char *  type = 0,
const char *  scope = 0,
const uint32 id = 0 
) [virtual]

Clear items from the cache.

Implements iCacheManager.

virtual void csVfsCacheManager::Flush (  )  [virtual]

Flush VFS.

Implements iCacheManager.

virtual const char* csVfsCacheManager::GetCurrentScope (  )  const [inline, virtual]

Get current scope or 0 if none set.

Implements iCacheManager.

Definition at line 80 of file vfscache.h.

virtual const char* csVfsCacheManager::GetCurrentType (  )  const [inline, virtual]

Get current type or 0 if none set.

Implements iCacheManager.

Definition at line 72 of file vfscache.h.

virtual bool csVfsCacheManager::IsReadOnly (  )  const [inline, virtual]

Is the cache manager read-only?

Implements iCacheManager.

Definition at line 63 of file vfscache.h.

virtual csPtr<iDataBuffer> csVfsCacheManager::ReadCache ( const char *  type,
const char *  scope,
uint32  id 
) [virtual]

Retrieve some data from the cache.

Returns 0 if the data could not be found in the cache.

Implements iCacheManager.

virtual void csVfsCacheManager::SetCurrentScope ( const char *  scope  )  [virtual]

Set current scope.

Implements iCacheManager.

virtual void csVfsCacheManager::SetCurrentType ( const char *  type  )  [virtual]

Set current type.

Implements iCacheManager.

virtual void csVfsCacheManager::SetReadOnly ( bool  ro  )  [inline, virtual]

Force the cache manager to be read-only.

This will prevent updates of the cache but CacheData() will still return true to indicate success.

Implements iCacheManager.

Definition at line 62 of file vfscache.h.


The documentation for this class was generated from the following file:
Generated for Crystal Space 1.0.2 by doxygen 1.4.7