diff --git a/DDCore/src/plugins/DetectorChecksum.cpp b/DDCore/src/plugins/DetectorChecksum.cpp index bc86efea7bb59c77a75f1674d70ef4ea8a394685..da3dd6d7191e29f6031bdcbb9c67113ccd5a3f10 100644 --- a/DDCore/src/plugins/DetectorChecksum.cpp +++ b/DDCore/src/plugins/DetectorChecksum.cpp @@ -1194,11 +1194,17 @@ void DetectorChecksum::dump_detelements() const { de.name(), e.second.hash, debug > 2 ? ("\n"+e.second.data).c_str() : ""); if ( de.path() == "/world" ) { PlacedVolume pv = de.placement(); - printout(ALWAYS, "DetectorChecksum", " Placement %-32s 0x%016lx%s", - pv.name(), e.second.hash, debug > 2 ? ("\n"+e.second.data).c_str() : ""); - Volume v = pv.volume(); + Volume v = pv.volume(); + Solid s = v.solid(); + const auto& es = handleSolid(s); + const auto& ev = handleVolume(v); + const auto& ep = handlePlacement(pv); + printout(ALWAYS, "DetectorChecksum", " Solid %-32s 0x%016lx%s", + s.name(), es.hash, debug > 2 ? ("\n"+es.data).c_str() : ""); printout(ALWAYS, "DetectorChecksum", " Volume %-32s 0x%016lx%s", - v.name(), e.second.hash, debug > 2 ? ("\n"+e.second.data).c_str() : ""); + v.name(), ev.hash, debug > 2 ? ("\n"+ev.data).c_str() : ""); + printout(ALWAYS, "DetectorChecksum", " Placement %-32s 0x%016lx%s", + pv.name(), ep.hash, debug > 2 ? ("\n"+ep.data).c_str() : ""); } } }