7 #include "DD4hep/Filter.h"
8 #include "G4VPhysicalVolume.hh"
9 #include "G4VTouchable.hh"
17 : offMap_(offMap), dd4hep_(
dd4hep) {
35 std::cout <<
"MuonGeometryNumbering finds unusual start value for copy numbers:" <<
theStartCopyNo << std::endl;
49 const G4VTouchable* touch = aStep->GetPreStepPoint()->GetTouchable();
51 for (
int ii = 0;
ii < touch->GetHistoryDepth();
ii++) {
52 G4VPhysicalVolume* vol = touch->GetVolume(
ii);
53 int copyno = vol->GetCopyNo();
56 std::string namx = static_cast<std::string>(dd4hep::dd::noNamespace(vol->GetName()));
57 std::size_t
last = namx.rfind(
'_');
61 extra = (itr->second).first + (itr->second).
second;
69 edm::LogVerbatim(
"MuonSim") <<
"MuonG4Numbering: " << vol->GetName() <<
" " << copyno <<
" Split "