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

OOF_BrushesDict Class Reference
[MS Windows SpecificOOFILE Implementation Classes]

Inheritance diagram for OOF_BrushesDict:

Inheritance graph
[legend]
Collaboration diagram for OOF_BrushesDict:

Collaboration graph
[legend]
List of all members.

Detailed Description

Singleton cache of Windows Brush resources allocated.

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


Public Member Functions

 OOF_BrushesDict ()
virtual ~OOF_BrushesDict ()
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 findOrCreateBrush (const oofColor &matchingColor, HBRUSH &returnBrush)
 static factory method.

unsigned short findOrCreateBrush (oofPattern::ePattern, HBRUSH &returnBrush)

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_BrushesDict::OOF_BrushesDict  ) 
 

OOF_BrushesDict::~OOF_BrushesDict  )  [virtual]
 


Member Function Documentation

void * OOF_BrushesDict::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_BrushesDict::dec unsigned  short  )  [static]
 

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

Implements oofArray.

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

unsigned short OOF_BrushesDict::findOrCreateBrush oofPattern::ePattern  ,
HBRUSH &  returnBrush
[static]
 

unsigned short OOF_BrushesDict::findOrCreateBrush const oofColor matchingColor,
HBRUSH &  returnBrush
[static]
 

static factory method.

void OOF_BrushesDict::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:30:29 2004 for OOFILE by doxygen 1.3.5