|
Dynalib Utils
|
#include <DynaCache.h>


Public Member Functions | |
| DynaCache () | |
| virtual | ~DynaCache () |
| DynaCache (const DynaCache< T > &other) | |
| DynaCache< T > * | copy () override |
| void | setAutoTouch (bool autoTouch) |
| bool | isAutoTouch () |
| void | resetStats () |
| void | clear () |
| bool | isEmpty () |
| bool | isFull () |
| bool | isDirty () |
| int | getMaxPages () |
| int | getPageCount () |
| int | getDirtyPageCount () |
| DynaLinkedList< T > * | getPageList () |
| void | setMaxPages (int maxPages) |
| virtual void | setListener (IDynaCacheListener< T > *listener) |
| void | flush () |
| virtual void | flushPage (T *page) |
| void | touchEntry (LinkedEntry< T > *entry) |
| T * | getNewPage () |
| LinkedEntry< T > * | addNewPage (T *page) |
| virtual T * | getPageForRemoval (LinkedEntry< T > *entry) |
| LinkedEntry< T > * | useLastPage (Index keyValue) |
| LinkedEntry< T > * | useLastPage (T *newPage) |
| void | removePage (Index keyValue) |
| void | removeLastPage () |
| virtual void | purgePages (double removePercent=0.80) |
| LinkedEntry< T > * | findPageEntry (Index keyValue) |
| LinkedEntry< T > * | getPageEntry (Index keyValue) |
| LinkedEntry< T > * | putPageEntry (Index keyValue) |
| LinkedEntry< T > * | putPageEntry (T *page) |
| T * | findPage (Index keyValue) |
| T * | getPage (Index keyValue) |
| T * | putPage (Index keyValue) |
| T * | putPage (T *page) |
| void | printStatReport (String &name) |
Public Member Functions inherited from ICopyable< DynaCache< T > > | |
| ICopyable ()=default | |
| virtual | ~ICopyable ()=default |
Protected Attributes | |
| int | _maxPages = 0 |
| DynaLinkedList< T > * | _pageList = nullptr |
| DynaHashMap< Index, LinkedEntry< T > > * | _pageMap = nullptr |
| IDynaCacheListener< T > * | _listener = nullptr |
| long | _pageFlushes = 0 |
| long | _pageReplacements = 0 |
| long | _pageAccesses = 0 |
| LinkedEntry< T > * DynaCache< T >::addNewPage | ( | T * | page | ) |
| void DynaCache< T >::clear | ( | ) |
Implements ICopyable< DynaCache< T > >.
| LinkedEntry< T > * DynaCache< T >::findPageEntry | ( | Index | keyValue | ) |
| void DynaCache< T >::flush | ( | ) |
|
virtual |
Reimplemented in DynaBufferCache< T >.
| int DynaCache< T >::getDirtyPageCount | ( | ) |
| int DynaCache< T >::getMaxPages | ( | ) |
| T * DynaCache< T >::getNewPage | ( | ) |
| int DynaCache< T >::getPageCount | ( | ) |
| LinkedEntry< T > * DynaCache< T >::getPageEntry | ( | Index | keyValue | ) |
|
virtual |
Reimplemented in DynaBufferCache< T >.
| DynaLinkedList< T > * DynaCache< T >::getPageList | ( | ) |
| bool DynaCache< T >::isAutoTouch | ( | ) |
| bool DynaCache< T >::isDirty | ( | ) |
| bool DynaCache< T >::isEmpty | ( | ) |
| bool DynaCache< T >::isFull | ( | ) |
|
virtual |
| T * DynaCache< T >::putPage | ( | T * | page | ) |
| LinkedEntry< T > * DynaCache< T >::putPageEntry | ( | Index | keyValue | ) |
| LinkedEntry< T > * DynaCache< T >::putPageEntry | ( | T * | page | ) |
| void DynaCache< T >::removeLastPage | ( | ) |
| void DynaCache< T >::resetStats | ( | ) |
| void DynaCache< T >::setAutoTouch | ( | bool | autoTouch | ) |
|
virtual |
Reimplemented in DynaBufferCache< T >.
| void DynaCache< T >::setMaxPages | ( | int | maxPages | ) |
| void DynaCache< T >::touchEntry | ( | LinkedEntry< T > * | entry | ) |
| LinkedEntry< T > * DynaCache< T >::useLastPage | ( | Index | keyValue | ) |
This method reuses the "page" object inside the list Entry, so we don't delete it
| LinkedEntry< T > * DynaCache< T >::useLastPage | ( | T * | newPage | ) |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
1.8.13