|
|
|
class RFilePagePool : public TCachePagePool;
Uses a file directly to implement the page pool interface MPagePool.
The pages are written sequentially through the file. You should call RFilePagePool::Close() to release the file resource after CreateL(), OpenL(), ReplaceL() or RFilePagePool::Temp(RFs &,const TDesC &,TFileName &,TUint).
A file page pool uses a cache to store pages in-memory and to cache frequently accessed pages. You should provide a cache
object (CPageCache) to the pool for this purpose.
MPagePool -
Interface to a page pool, the storage abstraction used by the B-trees API.
TCachePagePool -
Provides a page pool with cached pages.
RFilePagePool -
Uses a file directly to implement the page pool interface MPagePool.
Defined in RFilePagePool:
Attach(RFile &)Sets an existing file to be used for the page pool.Close()Flushes cached pages to the file, and closes the file. Create(RFs &,const TDesC &,TUint)Creates a new file for the page pool.Detach()Ends the use of the file for the page pool, but does not close the file. ExtendL(const TAny *,TPageReclamation)File()constFlush()Flushes the page cache and the file.FlushL()Flushes the page cache and the file, leaving with a system-wide error code if an...Open(RFs &,const TDesC &,TUint)Opens a file to use for the page pool.RFilePagePool()Default constructor. RFilePagePool(CPageCache &)Constructor with a page cache for the pool.ReadL(TPageRef,TAny *)Release()Closes the file without flushing the cache. Replace(RFs &,const TDesC &,TUint)Creates or opens a file for the page pool.Temp(RFs &,const TDesC &,TFileName &,TUint)Creates and opens a file for the page pool with a unique name.WriteL(TPageRef,const TAny *,TPageChange)Inherited from MPagePool:
Delete(TPageRef)Deletes a page, ignoring any errors.DeleteL(TPageRef)Deletes a page, leaving if an error occurs.Pop()Do a pop from the cleanup stack. PushL()Pushes this object onto the cleanup stack. Inherited from TCachePagePool:
AcquireL()Returns a function that abandons all locked pages for this page pool.AllocL()Allocates an unassigned page.AssignL(const TAny *,TPageReclamation)Assigns a reference to a new page and unlocks it.DoDeleteL(TPageRef)LockL(TPageRef)Locks a page and returns a pointer to it.Purge()Purge all pages in this pool from the cache.Set(CPageCache &)Sets the page cache for the pool.TCachePagePool(CPageCache &)Unlock(const TAny *,TPageChange)Unlocks a page.UpdateL(const TAny *)Updates a page.IMPORT_C RFilePagePool(CPageCache &aCache);
Constructor with a page cache for the pool.
|
inline TInt Open(RFs &aFs, const TDesC &aName, TUint aFileMode);
Opens a file to use for the page pool.
|
|
inline TInt Create(RFs &aFs, const TDesC &aName, TUint aFileMode);
Creates a new file for the page pool.
|
|
inline TInt Replace(RFs &aFs, const TDesC &aName, TUint aFileMode);
Creates or opens a file for the page pool.
If there is an existing file with the same name, this function overwrites it. If the file does not already exist, it is created.
|
|
inline TInt Temp(RFs &aFs, const TDesC &aPath, TFileName &aName, TUint aFileMode);
Creates and opens a file for the page pool with a unique name.
|
|
inline void Attach(RFile &aFile);
Sets an existing file to be used for the page pool.
|
IMPORT_C TInt Flush();
Flushes the page cache and the file.
|
IMPORT_C void FlushL();
Flushes the page cache and the file, leaving with a system-wide error code if an error occurs.
inline void Detach();
Ends the use of the file for the page pool, but does not close the file.
protected: IMPORT_C virtual TPageRef ExtendL(const TAny *aPage, TPageReclamation aReclamation);
|
|