62 {
63 G4int nofEvents = run->GetNumberOfEvent();
64 if (nofEvents == 0) {
65 return;
66 }
67 const Run *scavengerRun = dynamic_cast<const Run *>(run);
68 G4double sumDose = scavengerRun->GetSumDose();
69 if (IsMaster()) {
70 G4cout
71 << G4endl
72 << "--------------------End of Global Run-----------------------"
73 << G4endl
74 << " The run has " << nofEvents << " events "
75 << G4endl;
76 auto masterScorer = dynamic_cast<ScoreSpecies *>(scavengerRun->GetPrimitiveScorer());
77 G4cout << "Number of events recorded by the species scorer = "
78 << masterScorer->GetNumberOfRecordedEvents()
79 << G4endl;
80 masterScorer->OutputAndClear();
81 } else {
82 G4cout
83 << G4endl
84 << "--------------------End of Local Run------------------------"
85 << G4endl
86 << " The run has " << nofEvents << " events"
87 << G4endl;
88 }
89 G4cout
90 << " Total energy deposited in the world volume : " << sumDose / eV << " eV"
91 << G4endl
92 << " ------------------------------------------------------------"
93 << G4endl
94 << G4endl;
95}