73 auto volmap = store->
GetMap();
74 auto pos = volmap.find(logVolName);
75 if(pos != volmap.cend())
77 if ((pos->second.size()>1) && !multi)
79 G4String eM =
"More than one logical volumes of name <";
81 eM +=
"> are found and thus the sensitive detector <";
83 eM +=
"> cannot be uniquely assigned.";
84 G4Exception(
"G4VUserParallelWorld::SetSensitiveDetector()",
88 for (std::size_t i = 0; i < pos->second.size(); ++i)
95 G4String eM2 =
"No logical volume of name <";
97 eM2 +=
"> is found. The specified sensitive detector <";
99 eM2 +=
"> couldn't be assigned to any volume.";
100 G4Exception(
"G4VUserParallelWorld::SetSensitiveDetector()",
void G4Exception(const char *originOfException, const char *exceptionCode, G4ExceptionSeverity severity, const char *description)
const std::map< G4String, std::vector< G4LogicalVolume * > > & GetMap() const
static G4LogicalVolumeStore * GetInstance()
void SetSensitiveDetector(G4VSensitiveDetector *pSDetector)
static G4SDManager * GetSDMpointer()
void AddNewDetector(G4VSensitiveDetector *aSD)
G4VPhysicalVolume * GetParallelWorld(const G4String &worldName)
static G4TransportationManager * GetTransportationManager()
void SetName(const G4String &pName)
G4VPhysicalVolume * GetWorld()
void SetSensitiveDetector(const G4String &logVolName, G4VSensitiveDetector *aSD, G4bool multi=false)
G4VUserParallelWorld(const G4String &worldName)
virtual void ConstructSD()
virtual ~G4VUserParallelWorld()