![]() |
EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4lumi/EICG4LumiDetector.h>
Inheritance diagram for EICG4LumiDetector:
Collaboration diagram for EICG4LumiDetector:Public Member Functions | |
| EICG4LumiDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, PHParameters *parameters, const std::string &dnam, const int layer=0) | |
| constructor | |
| virtual | ~EICG4LumiDetector () override |
| destructor | |
| void | ConstructMe (G4LogicalVolume *world) override |
| construct | |
| void | Print (const std::string &what="ALL") const override |
| int | GetDetId (G4VPhysicalVolume *) const |
| void | SuperDetector (const std::string &name) |
| const std::string | SuperDetector () const |
| int | get_Layer () const |
| void | AddLumiWindow (G4ThreeVector size, G4ThreeVector pos, double angle, std::string material, G4LogicalVolume *logicWorld) |
| G4ThreeVector | AddLumiExitWindow (G4ThreeVector size, G4ThreeVector pos, double factor, double angle, std::string material, G4LogicalVolume *logicWorld) |
| void | AddLumiMag_OuterVessel (G4ThreeVector size, G4ThreeVector pos, std::string material, G4LogicalVolume *logicWorld) |
| void | AddLumiMag_MagCore (G4ThreeVector size, G4ThreeVector pos, double Bx, std::string material, G4LogicalVolume *logicWorld) |
| void | AddTriangularTrapezoid (G4ThreeVector size, G4ThreeVector pos, double angle, std::string material, G4LogicalVolume *logicWorld) |
| void | AddCuboid (G4ThreeVector Wsize, G4ThreeVector Wpos, G4ThreeVector Msize, G4ThreeVector Mpos, double angle, std::string material, G4LogicalVolume *logicWorld) |
| G4LogicalVolume * | AddRecCone (G4ThreeVector Wsize, G4ThreeVector Wpos, G4ThreeVector Msize, G4ThreeVector Mpos, G4ThreeVector Tr2size, G4ThreeVector Tr2pos, double angle, std::string material, G4LogicalVolume *logicWorld) |
| void | AddExitWindowForV2 (G4ThreeVector size, G4ThreeVector pos_daug, double angle, std::string material, G4LogicalVolume *logicRecCone) |
| void | AddLumiTracker (std::string name, int copyNum, G4ThreeVector size, G4ThreeVector pos, G4LogicalVolume *logicRecCone) |
| void | AddCAL (std::string name, G4ThreeVector size, G4ThreeVector pos, int total_tower, G4LogicalVolume *logicWorld) |
| G4LogicalVolume * | MakeTower (G4double calorSizeXY, G4double calorEMZ) |
| void | AddExitWindowForV3 (G4ThreeVector Wsize, G4ThreeVector Wpos, G4ThreeVector Tr2size, G4ThreeVector Tr2pos, std::string material, G4LogicalVolume *logicWorld) |
| PHParameters * | getParams () |
volume accessors | |
| int | IsInDetector (G4VPhysicalVolume *) const |
| int | IsInVirtualDetector (G4VPhysicalVolume *) const |
Public Member Functions inherited from PHG4Detector | |
| PHG4Detector ()=delete | |
| constructor | |
| PHG4Detector (PHG4Subsystem *subsys, PHCompositeNode *Node, const std::string &nam) | |
| virtual | ~PHG4Detector (void) |
| destructor | |
| virtual void | Construct (G4LogicalVolume *world) final |
| construct method | |
| virtual void | PostConstruction () |
| Optional PostConstruction call after all geometry is constructed. | |
| virtual void | Verbosity (const int v) |
| virtual int | Verbosity () const |
| virtual G4UserSteppingAction * | GetSteppingAction () |
| virtual std::string | GetName () const |
| virtual void | OverlapCheck (const bool chk) |
| virtual bool | OverlapCheck () const |
| virtual int | DisplayVolume (G4VSolid *volume, G4LogicalVolume *logvol, G4RotationMatrix *rotm=nullptr) |
| virtual int | DisplayVolume (G4LogicalVolume *checksolid, G4LogicalVolume *logvol, G4RotationMatrix *rotm=nullptr) |
| virtual PHCompositeNode * | topNode () |
| virtual PHG4Subsystem * | GetMySubsystem () |
Private Attributes | |
| PHParameters * | m_Params |
| std::set< G4VPhysicalVolume * > | m_ActivePhysicalVolumesSet |
| std::map< G4VPhysicalVolume *, int > | m_VirtualPhysicalVolumesMap |
| std::set< G4VPhysicalVolume * > | m_PassivePhysicalVolumesSet |
| int | m_Layer |
| std::string | m_SuperDetector |
| std::string | m_Name |
Additional Inherited Members | |
Static Public Member Functions inherited from PHG4Detector | |
| static G4Material * | GetDetectorMaterial (const std::string &name, const bool quit=true) |
| static G4Element * | GetDetectorElement (const std::string &name, const bool quit=true) |
Definition at line 55 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 55 of file EICG4LumiDetector.h
| EICG4LumiDetector::EICG4LumiDetector | ( | PHG4Subsystem * | subsys, |
| PHCompositeNode * | Node, | ||
| PHParameters * | parameters, | ||
| const std::string & | dnam, | ||
| const int | layer = 0 |
||
| ) |
constructor
Definition at line 65 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 65 of file EICG4LumiDetector.cc
|
inlineoverridevirtual |
destructor
Definition at line 62 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 62 of file EICG4LumiDetector.h
| void EICG4LumiDetector::AddCAL | ( | std::string | name, |
| G4ThreeVector | size, | ||
| G4ThreeVector | pos, | ||
| int | total_tower, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 530 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 530 of file EICG4LumiDetector.cc
References MakeTower(), and PHG4Detector::OverlapCheck().
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddCuboid | ( | G4ThreeVector | Wsize, |
| G4ThreeVector | Wpos, | ||
| G4ThreeVector | Msize, | ||
| G4ThreeVector | Mpos, | ||
| double | angle, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 437 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 437 of file EICG4LumiDetector.cc
References PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddExitWindowForV2 | ( | G4ThreeVector | size, |
| G4ThreeVector | pos_daug, | ||
| double | angle, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicRecCone | ||
| ) |
Definition at line 478 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 478 of file EICG4LumiDetector.cc
References PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddExitWindowForV3 | ( | G4ThreeVector | Wsize, |
| G4ThreeVector | Wpos, | ||
| G4ThreeVector | Tr2size, | ||
| G4ThreeVector | Tr2pos, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 511 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 511 of file EICG4LumiDetector.cc
References Acts::UnitConstants::cm, PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), pos(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| G4ThreeVector EICG4LumiDetector::AddLumiExitWindow | ( | G4ThreeVector | size, |
| G4ThreeVector | pos, | ||
| double | factor, | ||
| double | angle, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 325 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 325 of file EICG4LumiDetector.cc
References PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), and etm::solid.
Here is the call graph for this function:| void EICG4LumiDetector::AddLumiMag_MagCore | ( | G4ThreeVector | size, |
| G4ThreeVector | pos, | ||
| double | Bx, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 367 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 367 of file EICG4LumiDetector.cc
References Acts::UnitConstants::cm, PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddLumiMag_OuterVessel | ( | G4ThreeVector | size, |
| G4ThreeVector | pos, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 349 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 349 of file EICG4LumiDetector.cc
References PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddLumiTracker | ( | std::string | name, |
| int | copyNum, | ||
| G4ThreeVector | size, | ||
| G4ThreeVector | pos, | ||
| G4LogicalVolume * | logicRecCone | ||
| ) |
Definition at line 493 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 493 of file EICG4LumiDetector.cc
References m_ActivePhysicalVolumesSet, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddLumiWindow | ( | G4ThreeVector | size, |
| G4ThreeVector | pos, | ||
| double | angle, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 302 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 302 of file EICG4LumiDetector.cc
References Acts::UnitConstants::cm, PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| G4LogicalVolume * EICG4LumiDetector::AddRecCone | ( | G4ThreeVector | Wsize, |
| G4ThreeVector | Wpos, | ||
| G4ThreeVector | Msize, | ||
| G4ThreeVector | Mpos, | ||
| G4ThreeVector | Tr2size, | ||
| G4ThreeVector | Tr2pos, | ||
| double | angle, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 459 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 459 of file EICG4LumiDetector.cc
References Acts::UnitConstants::cm, PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, PHG4Detector::OverlapCheck(), and etm::solid.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:| void EICG4LumiDetector::AddTriangularTrapezoid | ( | G4ThreeVector | size, |
| G4ThreeVector | pos, | ||
| double | angle, | ||
| std::string | material, | ||
| G4LogicalVolume * | logicWorld | ||
| ) |
Definition at line 390 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 390 of file EICG4LumiDetector.cc
References PHG4Detector::GetDetectorMaterial(), m_PassivePhysicalVolumesSet, name, PHG4Detector::OverlapCheck(), etm::solid, x2, x3, and y3.
Referenced by ConstructMe().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
construct
Implements PHG4Detector.
Definition at line 113 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 113 of file EICG4LumiDetector.cc
References AddCAL(), AddCuboid(), AddExitWindowForV2(), AddExitWindowForV3(), AddLumiMag_MagCore(), AddLumiMag_OuterVessel(), AddLumiTracker(), AddLumiWindow(), AddRecCone(), AddTriangularTrapezoid(), Acts::UnitConstants::cm, PHParameters::get_double_param(), PHParameters::get_int_param(), PHParameters::get_string_param(), m_Params, Acts::UnitConstants::rad, and PHG4Detector::Verbosity().
Here is the call graph for this function:
|
inline |
Definition at line 80 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 80 of file EICG4LumiDetector.h
References m_Layer.
| int EICG4LumiDetector::GetDetId | ( | G4VPhysicalVolume * | volume | ) | const |
Definition at line 101 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 101 of file EICG4LumiDetector.cc
References IsInDetector().
Here is the call graph for this function:| PHParameters * EICG4LumiDetector::getParams | ( | ) |
Definition at line 296 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 296 of file EICG4LumiDetector.cc
References m_Params.
| int EICG4LumiDetector::IsInDetector | ( | G4VPhysicalVolume * | volume | ) | const |
Definition at line 76 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 76 of file EICG4LumiDetector.cc
References m_ActivePhysicalVolumesSet.
Referenced by GetDetId(), and EICG4LumiSteppingAction::UserSteppingAction().
Here is the caller graph for this function:| int EICG4LumiDetector::IsInVirtualDetector | ( | G4VPhysicalVolume * | volume | ) | const |
Definition at line 89 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 89 of file EICG4LumiDetector.cc
References m_VirtualPhysicalVolumesMap.
Referenced by EICG4LumiSteppingAction::UserSteppingAction().
Here is the caller graph for this function:| G4LogicalVolume * EICG4LumiDetector::MakeTower | ( | G4double | calorSizeXY, |
| G4double | calorEMZ | ||
| ) |
Definition at line 575 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 575 of file EICG4LumiDetector.cc
References Acts::UnitConstants::cm3, g(), PHG4Detector::GetDetectorMaterial(), Acts::UnitConstants::h, m_ActivePhysicalVolumesSet, m_Name, m_PassivePhysicalVolumesSet, Acts::UnitConstants::mm, offset, and PHG4Detector::OverlapCheck().
Referenced by AddCAL().
Here is the call graph for this function:
Here is the caller graph for this function:
|
overridevirtual |
Reimplemented from PHG4Detector.
Definition at line 282 of file EICG4LumiDetector.cc.
View newest version in sPHENIX GitHub at line 282 of file EICG4LumiDetector.cc
References m_Params, and PHParameters::Print().
Referenced by EICG4LumiSubsystem::Print().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 78 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 78 of file EICG4LumiDetector.h
References m_SuperDetector, and name.
Referenced by EICG4LumiSubsystem::InitRunSubsystem(), and EICG4LumiSteppingAction::UserSteppingAction().
Here is the caller graph for this function:
|
inline |
Definition at line 79 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 79 of file EICG4LumiDetector.h
References m_SuperDetector.
|
private |
Definition at line 113 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 113 of file EICG4LumiDetector.h
Referenced by AddLumiTracker(), IsInDetector(), and MakeTower().
|
private |
Definition at line 119 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 119 of file EICG4LumiDetector.h
Referenced by get_Layer().
|
private |
Definition at line 122 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 122 of file EICG4LumiDetector.h
Referenced by MakeTower().
|
private |
Definition at line 110 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 110 of file EICG4LumiDetector.h
Referenced by ConstructMe(), getParams(), and Print().
|
private |
Definition at line 117 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 117 of file EICG4LumiDetector.h
Referenced by AddCuboid(), AddExitWindowForV2(), AddExitWindowForV3(), AddLumiExitWindow(), AddLumiMag_MagCore(), AddLumiMag_OuterVessel(), AddLumiWindow(), AddRecCone(), AddTriangularTrapezoid(), and MakeTower().
|
private |
Definition at line 120 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 120 of file EICG4LumiDetector.h
Referenced by SuperDetector().
|
private |
Definition at line 115 of file EICG4LumiDetector.h.
View newest version in sPHENIX GitHub at line 115 of file EICG4LumiDetector.h
Referenced by IsInVirtualDetector().