Rogue Wave banner
Previous fileTop of DocumentContentsIndex pageNext file
Essential Tools Module Reference Guide


Module:  Essential Tools Module   Group:  File System


Local Index



#include <rw/bufpage.h>
(Abstract base class )


This is an abstract base class that represents an abstract page heap buffered through a set of memory buffers. It inherits from the abstract base class RWVirtualPageHeap, which represents an abstract page heap.

NOTE -- RWBufferedPageHeap is deprecated.

RWBufferedPageHeap will supply and maintain a set of memory buffers. Specializing classes should supply the actual physical mechanism to swap pages in and out of these buffers by supplying definitions for the pure virtual functions swapIn(RWHandle, void*) and swapOut(RWHandle, void*).

The specializing class should also supply appropriate definitions for the public functions allocate() and deallocate(RWHandle).

For a sample implementation of a specializing class, see class RWDiskPageHeap.



Public Constructor

RWBufferedPageHeap(unsigned pgsize, unsigned nbufs=10);

Public Destructor


Protected Member Functions

virtual RWBoolean
swapIn(RWHandle h, void* buf)  = 0;
virtual RWBoolean
swapOut(RWHandle, h void* buf) = 0;

Public Member Functions

virtual RWHandle
allocate() = 0;
virtual void
deallocate(RWHandle h);
virtual void
dirty(RWHandle h);
virtual void*
lock(RWHandle h);
virtual void
unlock(RWHandle h);

Previous fileTop of DocumentContentsIndex pageNext file

©2004 Copyright Quovadx, Inc. All Rights Reserved.
Rogue Wave and SourcePro are registered trademarks of Quovadx, Inc. in the United States and other countries. All other trademarks are the property of their respective owners.
Contact Rogue Wave about documentation or support issues.