#include <Geo2G4AssemblyFactory.h>
Definition at line 15 of file Geo2G4AssemblyFactory.h.
◆ Geo2G4AssemblyFactory()
| Geo2G4AssemblyFactory::Geo2G4AssemblyFactory |
( |
| ) |
|
◆ Build()
Definition at line 17 of file Geo2G4AssemblyFactory.cxx.
19{
20 const GeoLogVol*
theLog = thePhys->getLogVol();
21
22
23 if(thePhys->getNChildVols() == 0)
24 throw std::runtime_error(std::string(
"In GeoModel description the assembly ") +
theLog->getName()
25 + std::string(" has no children!"));
26
28
29
32 {
33 auto pair =
m_assemblyMap.emplace(&(*thePhys), std::make_unique<Geo2G4AssemblyVolume> ());
34 return pair.first->second.get();
35 }
36 else
37 {
39 return it->second.get();
40 }
41}
void descend(TDirectory *d, int level, int maxdepth, const std::vector< std::string > &labels)
std::map< const GeoVPhysVol *, std::unique_ptr< Geo2G4AssemblyVolume >, std::less< const GeoVPhysVol * > > m_assemblyMap
◆ m_assemblyMap
| std::map<const GeoVPhysVol*, std::unique_ptr<Geo2G4AssemblyVolume>, std::less<const GeoVPhysVol*> > Geo2G4AssemblyFactory::m_assemblyMap |
|
private |
The documentation for this class was generated from the following files: