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

OOF_PensDict Class Reference
[MS Windows SpecificOOFILE Implementation Classes]

Inheritance diagram for OOF_PensDict:

Inheritance graph
[legend]
Collaboration diagram for OOF_PensDict:

Collaboration graph
[legend]
List of all members.

Detailed Description

Singleton cache of Windows Pen resources allocated.

Dictionary provides reuse of pens that can be selected into different graphics contexts.


Public Member Functions

 OOF_PensDict ()
virtual ~OOF_PensDict ()
void start ()
bool more () const
void next ()
unsigned long count () const

Static Public Member Functions

void inc (unsigned short)
void dec (unsigned short)
unsigned short findOrCreatePen (const oofColor &matchingColor, HPEN &returnPen)
 static factory method.


Protected Member Functions

virtual void * AllocBits (unsigned long) const
virtual void DeleteBits (bool becauseExpanding)
bool Invariant () const
 Guarantee members managing storage are consistent.

unsigned long AllocSlot ()
void ExpandToInclude (unsigned long indexToCover)
virtual void * CloneBits () const

Protected Attributes

void ** mUserStorage
void * mBits
unsigned long mNextFreeEntry
unsigned long mNumSlots
unsigned long mInternalIter
unsigned long mSlotSize
unsigned int mExpansionChunk


Constructor & Destructor Documentation

OOF_PensDict::OOF_PensDict  ) 
 

OOF_PensDict::~OOF_PensDict  )  [virtual]
 


Member Function Documentation

void * OOF_PensDict::AllocBits unsigned  long  )  const [protected, virtual]
 

Implements oofArray.

unsigned long oofArray::AllocSlot  )  [protected, inherited]
 

void * oofArray::CloneBits  )  const [protected, virtual, inherited]
 

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

void OOF_PensDict::dec unsigned  short  )  [static]
 

void OOF_PensDict::DeleteBits bool  becauseExpanding  )  [protected, virtual]
 

Implements oofArray.

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

unsigned short OOF_PensDict::findOrCreatePen const oofColor matchingColor,
HPEN &  returnPen
[static]
 

static factory method.

void OOF_PensDict::inc unsigned  short  )  [inline, static]
 

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

Guarantee members managing storage are consistent.

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

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

void oofArray::next  )  [inline, inherited]
 

void oofArray::start  )  [inline, inherited]
 


Member Data Documentation

void* oofArray::mBits [protected, inherited]
 

unsigned int oofArray::mExpansionChunk [protected, inherited]
 

unsigned long oofArray::mInternalIter [protected, inherited]
 

unsigned long oofArray::mNextFreeEntry [protected, inherited]
 

unsigned long oofArray::mNumSlots [protected, inherited]
 

unsigned long oofArray::mSlotSize [protected, inherited]
 

void** oofArray::mUserStorage [protected, inherited]
 


The documentation for this class was generated from the following file:
Generated on Thu Jan 1 21:42:23 2004 for OOFILE by doxygen 1.3.5