internal virtual void Finalise(HeapCellArrayBase aArray) { // Some operations cannot run until after the relationship inspector has finished it's task. foreach (HeapCell cell in aArray) { int newCellCountReferencedBy = cell.RelationshipManager.ReferencedBy.Count; if (iCellNumberOfReferencesGreatest == null || newCellCountReferencedBy > iCellNumberOfReferencesGreatest.RelationshipManager.ReferencedBy.Count) { iCellNumberOfReferencesGreatest = cell; } if (iCellNumberOfReferencesLowest == null || newCellCountReferencedBy < iCellNumberOfReferencesLowest.RelationshipManager.ReferencedBy.Count) { iCellNumberOfReferencesLowest = cell; } int newCellCountEmbeddedReferences = cell.RelationshipManager.EmbeddedReferencesTo.Count; if (iCellNumberOfEmbeddedReferencesMost == null || newCellCountEmbeddedReferences > iCellNumberOfEmbeddedReferencesMost.RelationshipManager.EmbeddedReferencesTo.Count) { iCellNumberOfEmbeddedReferencesMost = cell; } if (iCellNumberOfEmbeddedReferencesLeast == null || newCellCountEmbeddedReferences < iCellNumberOfEmbeddedReferencesLeast.RelationshipManager.EmbeddedReferencesTo.Count) { iCellNumberOfEmbeddedReferencesLeast = cell; } } }
internal void Finalise(HeapCellArrayBase aArray) { iStatsAllocated.Finalise(aArray); iStatsAllocated.Finalise(aArray); }