925 const TMemSpyHeapMetaDataRHeap& metaData = rHeap.MetaData(); |
925 const TMemSpyHeapMetaDataRHeap& metaData = rHeap.MetaData(); |
926 const TMemSpyHeapStatisticsRHeap& statistics = rHeap.Statistics(); |
926 const TMemSpyHeapStatisticsRHeap& statistics = rHeap.Statistics(); |
927 |
927 |
928 _LIT( KItem0_Type_RHeap, "RHeap" ); |
928 _LIT( KItem0_Type_RHeap, "RHeap" ); |
929 _LIT( KItem0_Type_RHybridHeap, "RHybridHeap" ); |
929 _LIT( KItem0_Type_RHybridHeap, "RHybridHeap" ); |
|
930 _LIT( KItem0_Type_RHybridHeapRefactored, "RHybridHeap (Refactored)" ); |
930 if (aInfo.Type() == TMemSpyHeapInfo::ETypeRHeap) |
931 if (aInfo.Type() == TMemSpyHeapInfo::ETypeRHeap) |
931 { |
932 { |
932 list->AddItemL( KItem0, KItem0_Type_RHeap ); |
933 list->AddItemL( KItem0, KItem0_Type_RHeap ); |
933 } |
934 } |
934 else |
935 else if (aInfo.Type() == TMemSpyHeapInfo::ETypeRHybridHeap) |
935 { |
936 { |
936 list->AddItemL( KItem0, KItem0_Type_RHybridHeap ); |
937 list->AddItemL( KItem0, KItem0_Type_RHybridHeap ); |
937 } |
938 } |
938 |
939 else if (aInfo.Type() == TMemSpyHeapInfo::ETypeRHeap) |
|
940 { |
|
941 list->AddItemL( KItem0, KItem0_Type_RHybridHeapRefactored ); |
|
942 } |
|
943 else |
|
944 { |
|
945 MemSpyEngineUtils::Panic( EMemSpyEnginePanicUnsupportedHeapType ); |
|
946 } |
|
947 |
939 // Heap size is the size of the heap minus the size of the embedded (in-place) RHeap. |
948 // Heap size is the size of the heap minus the size of the embedded (in-place) RHeap. |
940 _LIT( KItem1, "Heap size" ); |
949 _LIT( KItem1, "Heap size" ); |
941 list->AddItemL(KItem1, metaData.iHeapSize); |
950 list->AddItemL(KItem1, metaData.iHeapSize); |
942 |
951 |
943 _LIT( KItem8b, "Allocator address" ); |
952 _LIT( KItem8b, "Allocator address" ); |
1031 const TMemSpyHeapMetaDataRHeap& metaData = rHeap.MetaData(); |
1040 const TMemSpyHeapMetaDataRHeap& metaData = rHeap.MetaData(); |
1032 const TMemSpyHeapStatisticsRHeap& statistics = rHeap.Statistics(); |
1041 const TMemSpyHeapStatisticsRHeap& statistics = rHeap.Statistics(); |
1033 |
1042 |
1034 _LIT(KRHeap, "RHeap"); |
1043 _LIT(KRHeap, "RHeap"); |
1035 _LIT(KRHybridHeap, "RHybridHeap"); |
1044 _LIT(KRHybridHeap, "RHybridHeap"); |
|
1045 _LIT(KRHybridHeapV2, "RHybridHeap v2"); |
1036 switch (aInfo.Type()) |
1046 switch (aInfo.Type()) |
1037 { |
1047 { |
1038 case TMemSpyHeapInfo::ETypeRHeap: |
1048 case TMemSpyHeapInfo::ETypeRHeap: |
1039 list.iType.Copy(KRHeap); |
1049 list.iType.Copy(KRHeap); |
1040 break; |
1050 break; |
1041 case TMemSpyHeapInfo::ETypeRHybridHeap: |
1051 case TMemSpyHeapInfo::ETypeRHybridHeap: |
1042 list.iType.Copy(KRHybridHeap); |
1052 list.iType.Copy(KRHybridHeap); |
1043 break; |
1053 break; |
|
1054 case TMemSpyHeapInfo::ETypeRHybridHeapV2: |
|
1055 list.iType.Copy(KRHybridHeapV2); |
|
1056 break; |
1044 default: |
1057 default: |
|
1058 MemSpyEngineUtils::Panic( EMemSpyEnginePanicUnsupportedHeapType ); |
1045 break; |
1059 break; |
1046 } |
1060 } |
1047 |
1061 |
1048 // Heap size is the total amount of memory committed to the heap, which includes the size of the embedded (in-place) RHeap/RHybridHeap. |
1062 // Heap size is the total amount of memory committed to the heap, which includes the size of the embedded (in-place) RHeap/RHybridHeap. |
1049 list.iSize = metaData.iHeapSize; |
1063 list.iSize = metaData.iHeapSize; |
1136 const TMemSpyHeapMetaDataRHeap& metaData = rHeap.MetaData(); |
1150 const TMemSpyHeapMetaDataRHeap& metaData = rHeap.MetaData(); |
1137 |
1151 |
1138 // Type |
1152 // Type |
1139 _LIT( KMetaData_Type_RHeap, "Symbian OS RHeap" ); |
1153 _LIT( KMetaData_Type_RHeap, "Symbian OS RHeap" ); |
1140 _LIT( KMetaData_Type_RHybridHeap, "Symbian OS RHybridHeap" ); |
1154 _LIT( KMetaData_Type_RHybridHeap, "Symbian OS RHybridHeap" ); |
|
1155 _LIT( KMetaData_Type_RHybridHeapV2, "Symbian OS RHybridHeap v2" ); |
1141 if (aInfo.Type() == TMemSpyHeapInfo::ETypeRHeap) |
1156 if (aInfo.Type() == TMemSpyHeapInfo::ETypeRHeap) |
1142 { |
1157 { |
1143 aList.AddItemL( KMetaData_Type, KMetaData_Type_RHeap ); |
1158 aList.AddItemL( KMetaData_Type, KMetaData_Type_RHeap ); |
1144 } |
1159 } |
1145 else |
1160 else if(aInfo.Type() == TMemSpyHeapInfo::ETypeRHybridHeap) |
1146 { |
1161 { |
1147 aList.AddItemL( KMetaData_Type, KMetaData_Type_RHybridHeap ); |
1162 aList.AddItemL( KMetaData_Type, KMetaData_Type_RHybridHeap ); |
1148 } |
1163 } |
1149 |
1164 else if(aInfo.Type() == TMemSpyHeapInfo::ETypeRHybridHeapV2) |
|
1165 { |
|
1166 aList.AddItemL( KMetaData_Type, KMetaData_Type_RHybridHeapV2 ); |
|
1167 } |
|
1168 else |
|
1169 { |
|
1170 MemSpyEngineUtils::Panic( EMemSpyEnginePanicUnsupportedHeapType ); |
|
1171 } |
|
1172 |
1150 // VTable |
1173 // VTable |
1151 //_LIT( KMetaData_VTable, "VTable:" ); |
1174 //_LIT( KMetaData_VTable, "VTable:" ); |
1152 //aList.AddItemHexL( KMetaData_VTable, metaData.VTable() ); |
1175 //aList.AddItemHexL( KMetaData_VTable, metaData.VTable() ); |
1153 |
1176 |
1154 // Object size |
1177 // Object size |