11 #include <Geant4/G4Box.hh>
12 #include <Geant4/G4GeometryManager.hh>
13 #include <Geant4/G4LogicalVolume.hh>
14 #include <Geant4/G4LogicalVolumeStore.hh>
15 #include <Geant4/G4Material.hh>
16 #include <Geant4/G4PVPlacement.hh>
17 #include <Geant4/G4PhysicalVolumeStore.hh>
18 #include <Geant4/G4Region.hh>
19 #include <Geant4/G4RegionStore.hh>
20 #include <Geant4/G4String.hh>
21 #include <Geant4/G4SolidStore.hh>
22 #include <Geant4/G4SystemOfUnits.hh>
23 #include <Geant4/G4ThreeVector.hh>
24 #include <Geant4/G4Tubs.hh>
25 #include <Geant4/G4VSolid.hh>
27 #include <boost/foreach.hpp>
42 , WorldSizeX(1000 *
cm)
43 , WorldSizeY(1000 *
cm)
44 , WorldSizeZ(1000 *
cm)
45 , worldshape(
"G4TUBS")
46 , worldmaterial(
"G4_AIR")
63 if (
m_Verbosity > 0) std::cout <<
"PHG4PhenixDetector::Construct." << std::endl;
65 G4GeometryManager::GetInstance()->OpenGeometry();
66 G4PhysicalVolumeStore::GetInstance()->Clean();
67 G4LogicalVolumeStore::GetInstance()->Clean();
68 G4SolidStore::GetInstance()->Clean();
69 if (
m_Verbosity > 0) std::cout <<
"PHG4PhenixDetector::Construct - cleaning done." << std::endl;
72 G4VSolid *solidWorld =
nullptr;
83 cout <<
"Unknown world shape " <<
worldshape << endl;
84 cout <<
"implemented are G4BOX, G4Tubs" << endl;
92 G4Region *defaultRegion = (*(G4RegionStore::GetInstance()))[0];
95 defaultRegion->SetUserInformation(info);
98 std::cout <<
"PHG4PhenixDetector::Construct " << solidWorld->GetEntityType() <<
" world "
99 <<
"material " <<
logicWorld->GetMaterial()->GetName() <<
" done." << std::endl;
111 if (
m_Verbosity > 0) std::cout <<
"PHG4PhenixDetector::Construct - done." << std::endl;
123 if (
m_Verbosity > 0) std::cout <<
"PHG4PhenixDetector::PostConstruction - done." << std::endl;