Location:
s32page.h
Link against: estor.lib
MPagePool
Supported from 5.0
Interface to a page pool, the storage abstraction used by the B-trees API.
The interface is abstract and handles pages as TAny
pointers. It is left to derived classes to implement page storage in a particular storage medium, such as memory or disk.
Defined in MPagePool
:
AcquireL()
, AllocL()
, AssignL()
, Delete()
, DeleteL()
, LockL()
, Pop()
, PushL()
, Unlock()
, UpdateL()
virtual TPageAbandonFunction AcquireL()=0;
Returns a function that abandons all locked pages for this page pool.
|
virtual TAny* AllocL()=0;
Allocates an unassigned page.
|
virtual TPageRef AssignL(const TAny* aPage,TPageReclamation aReclamation=EPageDeleteOnly)=0;
Assigns a reference to a new page and unlocks it.
|
|
void Delete(TPageRef aRef);
Deletes a page, ignoring any errors.
|
void DeleteL(TPageRef aRef);
Deletes a page, leaving if an error occurs.
|
virtual TAny* LockL(TPageRef aRef)=0;
Locks a page and returns a pointer to it.
|
|
virtual void Unlock(const TAny* aPage,TPageChange aChange=EPageNoChange)=0;
Unlocks a page.
|
virtual void UpdateL(const TAny* aPage)=0;
Updates a page.
This can be used for cached pages that may have become outdated.
|