29#include <tqvaluelist.h> 
   30#include "tdelibs_export.h" 
   32class TDEZoneAllocatorPrivate;
 
   65    void* allocate(
size_t _size);
 
   87    void deallocate(
void *ptr);
 
  109    void free_since(
void *ptr);
 
  116    void addBlock(MemBlock *b);
 
  117    void delBlock(MemBlock *b);
 
  118    void insertHash(MemBlock *b);
 
  137    TDEZoneAllocatorPrivate *d;
 
Memory allocator for large groups of small objects.
 
unsigned int log2
base-2 log of the block size.
 
MemList ** hashList
Collection of lists of blocks, for lookups.
 
unsigned long blockSize
Store block size from constructor.
 
unsigned int num_blocks
Count total number of allocated blocks.
 
unsigned long blockOffset
Store offset into current block; size-offset is free.
 
MemBlock * currentBlock
One block is 'current' to satisfy requests.
 
bool hashDirty
Flag the hashes as in need of reorganization.
 
unsigned int hashSize
Count of hashes.
 
TQValueList< MemBlock * > MemList
A list of chunks.