void JMMHashTable::PrintAllocated ( const JBoolean printInternal // = kJFalse ) const { cout << "\nAllocated block statistics:" << endl; cout << "\nAllocated user memory:" << endl; JConstHashCursor<JMMRecord> cursor(itsAllocatedTable); JSize totalSize = 0; while ( cursor.NextFull() ) { const JMMRecord thisRecord = cursor.GetValue(); if ( !thisRecord.IsManagerMemory() ) { PrintAllocatedRecord(thisRecord); totalSize += thisRecord.GetSize(); } } cout << "\nTotal allocated memory: " << totalSize << " bytes" << endl; if (printInternal) { cout << "\nThe following blocks are probably owned by the memory manager" << "\nand *should* still be allocated--please report all cases of user" << "\nallocated memory showing up on this list!" << endl; cursor.Reset(); while ( cursor.NextFull() ) { const JMMRecord thisRecord = cursor.GetValue(); if ( thisRecord.IsManagerMemory() ) { PrintAllocatedRecord(thisRecord); } } } }
void JMMArrayTable::PrintAllocated ( const JBoolean printInternal // = kJFalse ) const { cout << "\nAllocated block statistics:" << endl; cout << "\nAllocated user memory:" << endl; const JSize count = itsAllocatedTable->GetElementCount(); for (JIndex i=1;i<=count;i++) { const JMMRecord thisRecord = itsAllocatedTable->GetElement(i); if ( !thisRecord.IsManagerMemory() ) { PrintAllocatedRecord(thisRecord); } } if (printInternal) { cout << "\nThe following blocks are probably owned by the memory manager" << "\nand *should* still be allocated--please report all cases of user" << "\nallocated memory showing up on this list!" << endl; for (JIndex i=1;i<=count;i++) { const JMMRecord thisRecord = itsAllocatedTable->GetElement(i); if ( thisRecord.IsManagerMemory() ) { PrintAllocatedRecord(thisRecord); } } } }