Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

OOF_recordSelRecsRep Class Reference
[OOFILE Implementation Classes]

#include <oofrecs.h>

Inheritance diagram for OOF_recordSelRecsRep:

Inheritance graph
[legend]
Collaboration diagram for OOF_recordSelRecsRep:

Collaboration graph
[legend]
List of all members.

Detailed Description

Lowest level in 3-layer abstraction of selection.

Contains actual list of records as an array. Used by OOF_recordSelectionRep


Public Member Functions

void describe (std::ostream &) const
void append (unsigned long)
void deleteItem (unsigned long index)
void deleteFirstMatching (unsigned long value)
void deleteAllMatching (unsigned long value)
void deleteAllCells (bool alwaysDeleteStorage=false)
 Effectively delete cells by resetting mNextFreeEntry cursor.

bool contains (unsigned long value) const
bool find (unsigned long value, unsigned long &foundAt) const
unsigned long & operator[] (unsigned long index)
unsigned long value (unsigned long index) const
unsigned long & item (unsigned long index)
void start ()
bool more () const
void next ()
unsigned long count () const
unsigned long index () const
unsigned long countOccurrences (unsigned long) const
unsigned long & operator() ()
void incRefs ()
void decRefs ()

Protected Member Functions

bool Invariant () const
 Guarantee members managing storage are consistent.

void ExpandToInclude (unsigned long indexToCover)
void DeleteBits ()
void CopyBits (const OOF_ExpandableLongArray &rhs)

Protected Attributes

unsigned long * mBits
unsigned long mDefaultValue
unsigned long mNextFreeEntry
unsigned long mNumSlots
unsigned long mInternalIter
unsigned int mExpansionChunk
unsigned int mReferences

Friends

class OOF_recordSelectionRep


Member Function Documentation

void OOF_ExpandableLongArray::append unsigned  long  )  [inherited]
 

bool OOF_ExpandableLongArray::contains unsigned long  value  )  const [inherited]
 

void OOF_ExpandableLongArray::CopyBits const OOF_ExpandableLongArray rhs  )  [protected, inherited]
 

unsigned long OOF_ExpandableLongArray::count  )  const [inline, inherited]
 

unsigned long OOF_ExpandableLongArray::countOccurrences unsigned  long  )  const [inherited]
 

void OOF_mixRefCount::decRefs  )  [inherited]
 

void OOF_ExpandableLongArray::deleteAllCells bool  alwaysDeleteStorage = false  )  [inherited]
 

Effectively delete cells by resetting mNextFreeEntry cursor.

Parameters:
alwaysDeleteStorage means unconditionally cleanup storage so can force total cleanup.
Todo:
delete mBits if past threshold

void OOF_ExpandableLongArray::deleteAllMatching unsigned long  value  )  [inherited]
 

void OOF_ExpandableLongArray::DeleteBits  )  [protected, inherited]
 

void OOF_ExpandableLongArray::deleteFirstMatching unsigned long  value  )  [inherited]
 

void OOF_ExpandableLongArray::deleteItem unsigned long  index  )  [inherited]
 

void OOF_ExpandableLongArray::describe std::ostream &   )  const [inherited]
 

void OOF_ExpandableLongArray::ExpandToInclude unsigned long  indexToCover  )  [protected, inherited]
 

Todo:
platform-specific optimal copy for expansion

bool OOF_ExpandableLongArray::find unsigned long  value,
unsigned long &  foundAt
const [inherited]
 

void OOF_mixRefCount::incRefs  )  [inline, inherited]
 

unsigned long OOF_ExpandableLongArray::index  )  const [inline, inherited]
 

bool OOF_ExpandableLongArray::Invariant  )  const [inline, protected, inherited]
 

Guarantee members managing storage are consistent.

Note: we assume a user may cause mInternalIter to go out of bounds.

unsigned long & OOF_ExpandableLongArray::item unsigned long  index  )  [inline, inherited]
 

bool OOF_ExpandableLongArray::more  )  const [inline, inherited]
 

void OOF_ExpandableLongArray::next  )  [inline, inherited]
 

unsigned long & OOF_ExpandableLongArray::operator()  )  [inline, inherited]
 

unsigned long & OOF_ExpandableLongArray::operator[] unsigned long  index  )  [inherited]
 

void OOF_ExpandableLongArray::start  )  [inline, inherited]
 

unsigned long OOF_ExpandableLongArray::value unsigned long  index  )  const [inherited]
 


Friends And Related Function Documentation

friend class OOF_recordSelectionRep [friend]
 


Member Data Documentation

unsigned long* OOF_ExpandableLongArray::mBits [protected, inherited]
 

unsigned long OOF_ExpandableLongArray::mDefaultValue [protected, inherited]
 

unsigned int OOF_ExpandableLongArray::mExpansionChunk [protected, inherited]
 

unsigned long OOF_ExpandableLongArray::mInternalIter [protected, inherited]
 

unsigned long OOF_ExpandableLongArray::mNextFreeEntry [protected, inherited]
 

unsigned long OOF_ExpandableLongArray::mNumSlots [protected, inherited]
 

unsigned int OOF_mixRefCount::mReferences [protected, inherited]
 


The documentation for this class was generated from the following files:
Generated on Thu Jan 1 21:45:18 2004 for OOFILE by doxygen 1.3.5