|
|
|
|
Location:
S32PAGE.H
Link against: estor.lib
class TCachePagePool : public MPagePool;
Provides a page pool with cached pages.
It is an intermediary class, used in the definition of page pools that use a cache, such as RFilePagePool and RStorePagePool.
MPagePool - Interface to a page pool, the storage abstraction used by the B-trees API
TCachePagePool - Provides a page pool with cached pages
Defined in TCachePagePool:
AcquireL(), AllocL(), AssignL(), DoDeleteL(), ExtendL(), Flush(), FlushL(), LockL(), Purge(), ReadL(), Set(), TCachePagePool(), TCachePagePool(), Unlock(), UpdateL(), WriteL()
Inherited from MPagePool:
Delete(),
DeleteL(),
Pop(),
PushL()
inline void Set(CPageCache &aCache);
Sets the page cache for the pool.
|
virtual IMPORT_C TPageAbandonFunction AcquireL();
Returns a function that abandons all locked pages for this page pool.
|
virtual IMPORT_C TAny *AllocL();
Allocates an unassigned page.
|
virtual IMPORT_C TAny *LockL(TPageRef aRef);
Locks a page and returns a pointer to it.
|
|
virtual IMPORT_C TPageRef AssignL(const TAny *aPage, TPageReclamation aReclamation=EPageDeleteOnly);
Assigns a reference to a new page and unlocks it.
|
|
virtual IMPORT_C void UpdateL(const TAny *aPage);
Updates a page.
|
virtual IMPORT_C void Unlock(const TAny *aPage, TPageChange aChange=EPageNoChange);
Unlocks a page.
|
IMPORT_C TInt Flush();
Flush all pages in this pool from the cache.
It ensures that any dirty pages are written into persistent storage, but does not remove them from the cache.
|
IMPORT_C void FlushL();
Flushes all pages in this pool from the cache, leaving with a system-wide error code if an error occurs.
IMPORT_C void Purge();
Purge all pages in this pool from the cache.
This discards all pages from the cache, without saving dirty pages.
private: virtual TPageRef ExtendL(const TAny *aPage, TPageReclamation aReclamation)=0;
|
|