|
Public Types |
typedef core_vector< core_tracemem > | TraceMemContainerType |
typedef core_vector< core_tracemem * > | TraceMemPtrContainerType |
typedef core_vector< MergedTrace > | MergedTraces |
Public Member Functions |
| core_memtrace (bool memLeakOnly=true) |
| ~core_memtrace () |
void | onAlloc (void *ptr, size_t size, int btOffset, AllocatedType type) |
void | onFree (void *ptr, int btOffset) |
void | flushFreed () |
void | reportUnfreed (int reportFlags=MTRFUnfreed) |
| combination of enum ReportFlags
|
void | report (core_tracemem &tm) |
void | reportPointer (void *ptr, bool firstOnly=true, bool recursive=true) |
int | getAllocatedCount (bool recursive=false) |
Static Public Member Functions |
void * | OnAlloc (void *ptr, size_t size, int btOffset, AllocatedType type) |
void * | OnFree (void *ptr, int btOffset) |
Public Attributes |
TraceMemContainerType | _traces |
core_mutex | _mutex |
core_memtrace * | previousMemTrace |
bool | _removeOnFree |
Static Public Attributes |
core_memtrace * | activeMemTrace |
Protected Member Functions |
void | _getElements (TraceMemPtrContainerType &collected, int flags) |
void | _reportUnfreed (TraceMemPtrContainerType &collected, int reportFlags) |
void | _eliminateSameBt (TraceMemPtrContainerType &collected, MergedTraces &merged) |
bool | _checkSameBt (core_tracemem &tm, MergedTraces &merged) |
void | _filterRoot (TraceMemPtrContainerType &collected, int reportFlags) |
void | _reportMerged (MergedTraces &merged, int reportFlags) |