Hoard::EmptyClass< SuperblockType_, EmptinessClasses > Class Template Reference

#include <emptyclass.h>

List of all members.

Classes

class  MyChecker
 Precondition and postcondition checking. More...

Public Types

typedef SuperblockType_ SuperblockType

Public Member Functions

 EmptyClass (void)
void dumpStats (void)
SuperblockTypegetEmpty (void)
SuperblockTypeget (void)
void put (SuperblockType *s)
INLINE MALLOC_FUNCTION void * malloc (size_t sz)
INLINE void free (void *ptr)

Static Public Member Functions

static INLINE SuperblockTypegetSuperblock (void *ptr)
 Find the superblock (by bit-masking) that holds a given pointer.

Private Types

enum  { SuperblockSize = sizeof(SuperblockType_) }

Private Member Functions

void transfer (SuperblockType *s, int oldCl, int newCl)
void sanityCheckPre (void)
void sanityCheck (void)

Static Private Member Functions

static INLINE int getFullness (SuperblockType *s)

Private Attributes

Array< EmptinessClasses+2,
SuperblockType * > 
_available
 The bins of superblocks, by emptiness class.

Friends

class MyChecker

template<class SuperblockType_, int EmptinessClasses>
class Hoard::EmptyClass< SuperblockType_, EmptinessClasses >


Member Typedef Documentation

template<class SuperblockType_ , int EmptinessClasses>
typedef SuperblockType_ Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::SuperblockType

Member Enumeration Documentation

template<class SuperblockType_ , int EmptinessClasses>
anonymous enum [private]
Enumerator:
SuperblockSize 

Constructor & Destructor Documentation

template<class SuperblockType_ , int EmptinessClasses>
Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::EmptyClass ( void   )  [inline]

Member Function Documentation

template<class SuperblockType_ , int EmptinessClasses>
void Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::dumpStats ( void   )  [inline]
template<class SuperblockType_ , int EmptinessClasses>
INLINE void Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::free ( void *  ptr  )  [inline]
template<class SuperblockType_ , int EmptinessClasses>
SuperblockType* Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::get ( void   )  [inline]
template<class SuperblockType_ , int EmptinessClasses>
SuperblockType* Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::getEmpty ( void   )  [inline]
template<class SuperblockType_ , int EmptinessClasses>
static INLINE int Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::getFullness ( SuperblockType s  )  [inline, static, private]
template<class SuperblockType_ , int EmptinessClasses>
static INLINE SuperblockType* Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::getSuperblock ( void *  ptr  )  [inline, static]

Find the superblock (by bit-masking) that holds a given pointer.

template<class SuperblockType_ , int EmptinessClasses>
INLINE MALLOC_FUNCTION void* Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::malloc ( size_t  sz  )  [inline]
template<class SuperblockType_ , int EmptinessClasses>
void Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::put ( SuperblockType s  )  [inline]
template<class SuperblockType_ , int EmptinessClasses>
void Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::sanityCheck ( void   )  [inline, private]
template<class SuperblockType_ , int EmptinessClasses>
void Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::sanityCheckPre ( void   )  [inline, private]
template<class SuperblockType_ , int EmptinessClasses>
void Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::transfer ( SuperblockType s,
int  oldCl,
int  newCl 
) [inline, private]

Friends And Related Function Documentation

template<class SuperblockType_ , int EmptinessClasses>
friend class MyChecker [friend]

Member Data Documentation

template<class SuperblockType_ , int EmptinessClasses>
Array<EmptinessClasses + 2, SuperblockType *> Hoard::EmptyClass< SuperblockType_, EmptinessClasses >::_available [private]

The bins of superblocks, by emptiness class.

Note:
index 0 = completely empty, EmptinessClasses + 1 = full

The documentation for this class was generated from the following file:
Generated on Tue Aug 2 11:51:31 2011 for Galois by  doxygen 1.6.3