|
Public Methods |
OSCL_IMPORT_REF | OsclMemPoolResizableAllocator (uint32 aMemPoolBufferSize, uint32 aMemPoolBufferNumLimit=0, uint32 aExpectedNumBlocksPerBuffer=0, Oscl_DefAlloc *gen_alloc=NULL) |
virtual OSCL_IMPORT_REF void | enablenullpointerreturn () |
virtual OSCL_IMPORT_REF OsclAny * | allocate (const uint32 aNumBytes) |
virtual OSCL_IMPORT_REF void | deallocate (OsclAny *aPtr) |
virtual OSCL_IMPORT_REF bool | trim (OsclAny *aPtr, uint32 aBytesToFree) |
OSCL_IMPORT_REF uint32 | getBufferSize () const |
virtual OSCL_IMPORT_REF uint32 | getAllocatedSize () const |
virtual OSCL_IMPORT_REF uint32 | getAvailableSize () const |
virtual OSCL_IMPORT_REF uint32 | getLargestContiguousFreeBlockSize () const |
virtual OSCL_IMPORT_REF bool | setMaxSzForNewMemPoolBuffer (uint32 aMaxNewMemPoolBufferSz) |
virtual OSCL_IMPORT_REF void | notifyfreeblockavailable (OsclMemPoolResizableAllocatorObserver &aObserver, uint32 aRequestedSize=0, OsclAny *aContextData=NULL) |
virtual OSCL_IMPORT_REF void | CancelFreeChunkAvailableCallback () |
virtual OSCL_IMPORT_REF void | notifyfreememoryavailable (OsclMemPoolResizableAllocatorMemoryObserver &aObserver, uint32 aRequestedSize=0, OsclAny *aContextData=NULL) |
OSCL_IMPORT_REF void | CancelFreeMemoryAvailableCallback () |
OSCL_IMPORT_REF void | addRef () |
OSCL_IMPORT_REF void | removeRef () |
Protected Methods |
virtual OSCL_IMPORT_REF | ~OsclMemPoolResizableAllocator () |
MemPoolBufferInfo * | addnewmempoolbuffer (uint32 aBufferSize) |
void | destroyallmempoolbuffers () |
MemPoolBlockInfo * | findfreeblock (uint32 aBlockSize) |
OsclAny * | allocateblock (MemPoolBlockInfo &aBlockPtr, uint32 aNumBytes) |
void | deallocateblock (MemPoolBlockInfo &aBlockPtr) |
bool | validateblock (OsclAny *aBlockBufPtr) |
uint32 | getMemPoolBufferSize (MemPoolBufferInfo *aBufferInfo) const |
uint32 | getMemPoolBufferAllocatedSize (MemPoolBufferInfo *aBufferInfo) const |
uint32 | memoryPoolBufferMgmtOverhead () const |
Protected Attributes |
uint32 | iMemPoolBufferSize |
uint32 | iMemPoolBufferNumLimit |
uint32 | iExpectedNumBlocksPerBuffer |
uint32 | iMaxNewMemPoolBufferSz |
Oscl_DefAlloc * | iMemPoolBufferAllocator |
Oscl_Vector< MemPoolBufferInfo *,
OsclMemAllocator > | iMemPoolBufferList |
uint32 | iBufferInfoAlignedSize |
uint32 | iBlockInfoAlignedSize |
bool | iCheckNextAvailable |
uint32 | iRequestedNextAvailableSize |
OsclAny * | iNextAvailableContextData |
OsclMemPoolResizableAllocatorObserver * | iObserver |
bool | iCheckFreeMemoryAvailable |
uint32 | iRequestedAvailableFreeMemSize |
OsclAny * | iFreeMemContextData |
OsclMemPoolResizableAllocatorMemoryObserver * | iFreeMemPoolObserver |
int32 | iRefCount |
bool | iEnableNullPtrReturn |