Fennel: /home/pub/open/dev/fennel/cache/CacheAllocator.h Source File (original) (raw)

00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 00014 00015 00016 00017 00018 00019 00020 00021 00022 00023 00024 #ifndef Fennel_CacheAllocator_Included 00025 #define Fennel_CacheAllocator_Included 00026 00027 FENNEL_BEGIN_NAMESPACE 00028 00033 class FENNEL_CACHE_EXPORT CacheAllocator 00034 { 00035 public: 00036 virtual ~CacheAllocator(); 00037 00047 virtual void *allocate(int *pErrorCode = NULL) = 0; 00048 00060 virtual int deallocate(void *pMem, int *pErrorCode = NULL) = 0; 00061 00065 virtual size_t getBytesAllocated() const = 0; 00066 00083 virtual int setProtection( 00084 void *pMem, uint cb, bool readOnly, int *pErrorCode = NULL) = 0; 00085 }; 00086 00087 FENNEL_END_NAMESPACE 00088 00089 #endif 00090 00091