13 #define MAKE_CACHETYPE_DEF(C, T) \ 14 typedef DynaCache<C> T##Cache 17 bool _autoTouch =
false;
57 virtual void purgePages(
double removePercent = 0.80);
void resetStats()
Definition: DynaCacheImpl.h:62
long _pageReplacements
Definition: DynaCache.h:25
virtual void flushPage(T *page)
Definition: DynaCacheImpl.h:147
virtual T * getPageForRemoval(LinkedEntry< T > *entry)
Definition: DynaCacheImpl.h:181
Definition: IDynaCacheListener.h:11
bool isEmpty()
Definition: DynaCacheImpl.h:76
void touchEntry(LinkedEntry< T > *entry)
Definition: DynaCacheImpl.h:153
DynaLinkedList< T > * getPageList()
Definition: DynaCacheImpl.h:119
bool isFull()
Definition: DynaCacheImpl.h:81
Definition: DynaLinkedList.h:32
T * putPage(Index keyValue)
Definition: DynaCacheImpl.h:309
Definition: DynaCache.h:16
void setAutoTouch(bool autoTouch)
Definition: DynaCacheImpl.h:52
virtual void setListener(IDynaCacheListener< T > *listener)
Definition: DynaCacheImpl.h:133
virtual ~DynaCache()
Definition: DynaCacheImpl.h:25
long _pageAccesses
Definition: DynaCache.h:26
LinkedEntry< T > * useLastPage(Index keyValue)
Definition: DynaCacheImpl.h:188
int getPageCount()
Definition: DynaCacheImpl.h:114
Definition: DynaHashMap.h:73
DynaLinkedList< T > * _pageList
Definition: DynaCache.h:20
LinkedEntry< T > * findPageEntry(Index keyValue)
Definition: DynaCacheImpl.h:252
DynaCache()
Definition: DynaCacheImpl.h:17
T * findPage(Index keyValue)
Definition: DynaCacheImpl.h:297
Definition: IntWrapper.h:13
Definition: DynaLinkedList.h:28
DynaCache< T > * copy() override
Definition: DynaCacheImpl.h:47
int getDirtyPageCount()
Definition: DynaCacheImpl.h:97
T * getPage(Index keyValue)
Definition: DynaCacheImpl.h:303
void removeLastPage()
Definition: DynaCacheImpl.h:233
DynaHashMap< Index, LinkedEntry< T > > * _pageMap
Definition: DynaCache.h:21
void removePage(Index keyValue)
Definition: DynaCacheImpl.h:223
void clear()
Definition: DynaCacheImpl.h:69
int _maxPages
Definition: DynaCache.h:19
bool isAutoTouch()
Definition: DynaCacheImpl.h:57
LinkedEntry< T > * addNewPage(T *page)
Definition: DynaCacheImpl.h:171
bool isDirty()
Definition: DynaCacheImpl.h:86
T * getNewPage()
Definition: DynaCacheImpl.h:161
void printStatReport(String &name)
Definition: DynaCacheImpl.h:321
LinkedEntry< T > * putPageEntry(Index keyValue)
Definition: DynaCacheImpl.h:266
void setMaxPages(int maxPages)
Definition: DynaCacheImpl.h:124
long _pageFlushes
Definition: DynaCache.h:24
IDynaCacheListener< T > * _listener
Definition: DynaCache.h:22
Definition: ICopyable.h:8
int getMaxPages()
Definition: DynaCacheImpl.h:109
LinkedEntry< T > * getPageEntry(Index keyValue)
Definition: DynaCacheImpl.h:258
virtual void purgePages(double removePercent=0.80)
Definition: DynaCacheImpl.h:243
void flush()
Definition: DynaCacheImpl.h:138