|  | 
								EIC Software
							 
								Reference for 
								EIC 
								simulation and reconstruction software on GitHub
							 | 
#include <fun4all_coresoftware/blob/master/simulation/g4simulation/g4mvtx/PHG4MvtxDetector.h>
 Inheritance diagram for PHG4MvtxDetector:
 Inheritance diagram for PHG4MvtxDetector: Collaboration diagram for PHG4MvtxDetector:
 Collaboration diagram for PHG4MvtxDetector:| Public Member Functions | |
| PHG4MvtxDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, const PHParametersContainer *_paramsContainer, const std::string &dnam) | |
| constructor | |
| ~PHG4MvtxDetector () override | |
| destructor | |
| void | ConstructMe (G4LogicalVolume *world) override | 
| construct | |
| int | IsActive (int lyr) const | 
| int | IsAbsorberActive (int lyr) const | 
| int | IsBlackHole (int lyr) const | 
| void | SuperDetector (const std::string &name) | 
| const std::string | SuperDetector () const | 
| void | Detector (const std::string &name) | 
| const std::string | Detector () const | 
| int | get_layer (int stv_index) const | 
| int | get_stave (int stv_index) const | 
| volume accessors | |
| int | IsInMvtx (G4VPhysicalVolume *, int &layer, int &stave) const | 
| int | IsSensor (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 void | Print (const std::string &="ALL") 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 Member Functions | |
| void | AddGeometryNode () | 
| int | ConstructMvtx (G4LogicalVolume *sandwich) | 
| int | ConstructMvtx_Layer (int layer, G4AssemblyVolume *stave, G4LogicalVolume *&trackerenvelope) | 
| int | ConstructMvtxPassiveVol (G4LogicalVolume *&lv) | 
| G4LogicalVolume * | GetMvtxOuterShell (G4LogicalVolume *&trackerenvelope) | 
| void | SetDisplayProperty (G4AssemblyVolume *av) | 
| void | SetDisplayProperty (G4LogicalVolume *lv) | 
| void | FillPVArray (G4AssemblyVolume *av) | 
| void | FindSensor (G4LogicalVolume *lv) | 
| double | get_phistep (int lay) const | 
| Private Attributes | |
| PHG4MvtxDisplayAction * | m_DisplayAction | 
| const PHParametersContainer * | m_ParamsContainer | 
| std::set< G4VPhysicalVolume * > | m_SensorPV | 
| std::map< G4VPhysicalVolume *, std::tuple< int, int > > | m_StavePV | 
| std::array< int, n_Layers > | m_IsLayerActive | 
| std::array< int, n_Layers > | m_IsLayerAbsorberActive | 
| std::array< int, n_Layers > | m_IsBlackHole | 
| std::array< int, n_Layers > | m_N_staves | 
| std::array< double, n_Layers > | m_nominal_radius | 
| std::array< double, n_Layers > | m_nominal_phitilt | 
| std::array< double, n_Layers > | m_nominal_phi0 | 
| std::string | m_Detector | 
| std::string | m_SuperDetector | 
| std::string | m_StaveGeometryFile | 
| std::string | m_EndWheelsSideS | 
| std::string | m_EndWheelsSideN | 
| Static Private Attributes | |
| static constexpr int | n_Layers = 3 | 
| 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 23 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 23 of file PHG4MvtxDetector.h
| PHG4MvtxDetector::PHG4MvtxDetector | ( | PHG4Subsystem * | subsys, | 
| PHCompositeNode * | Node, | ||
| const PHParametersContainer * | _paramsContainer, | ||
| const std::string & | dnam | ||
| ) | 
constructor
Definition at line 62 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 62 of file PHG4MvtxDetector.cc
References Acts::UnitConstants::cm, PHParameters::get_double_param(), PHParameters::get_int_param(), PHParametersContainer::GetParameters(), m_IsBlackHole, m_IsLayerAbsorberActive, m_IsLayerActive, m_N_staves, m_nominal_phi0, m_nominal_phitilt, m_nominal_radius, m_ParamsContainer, Acts::UnitConstants::mm, n_Layers, and PHG4Detector::Verbosity().
 Here is the call graph for this function:
 Here is the call graph for this function:| 
 | inlineoverride | 
destructor
Definition at line 30 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 30 of file PHG4MvtxDetector.h
| 
 | private | 
Definition at line 500 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 500 of file PHG4MvtxDetector.cc
References Acts::active, PHG4CylinderGeomContainer::AddLayerGeom(), PHCompositeNode::addNode(), Acts::UnitConstants::cm, PHNodeIterator::findFirst(), get_phistep(), PHG4CylinderGeomContainer::identify(), m_Detector, m_IsLayerActive, m_N_staves, m_nominal_phi0, m_nominal_phitilt, m_nominal_radius, m_SuperDetector, n_Layers, Acts::UnitConstants::rad, PHG4Detector::topNode(), and PHG4Detector::Verbosity().
Referenced by ConstructMe().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | overridevirtual | 
construct
Implements PHG4Detector.
Definition at line 169 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 169 of file PHG4MvtxDetector.cc
References AddGeometryNode(), ConstructMvtx(), ConstructMvtxPassiveVol(), M_PI, PHG4Detector::Verbosity(), mvtxGeomDef::wrap_rmax, mvtxGeomDef::wrap_rmin, and mvtxGeomDef::wrap_zlen.
 Here is the call graph for this function:
 Here is the call graph for this function:| 
 | private | 
Definition at line 195 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 195 of file PHG4MvtxDetector.cc
References ConstructMvtx_Layer(), FillPVArray(), G4GDMLReadStructure::GetAssembly(), m_IsLayerActive, m_StaveGeometryFile, n_Layers, G4GDMLParser::Read(), reader(), SetDisplayProperty(), and PHG4Detector::Verbosity().
Referenced by ConstructMe().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Definition at line 239 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 239 of file PHG4MvtxDetector.cc
References cos(), get_phistep(), G4TTL::layer, m_N_staves, m_nominal_phi0, m_nominal_phitilt, m_nominal_radius, M_PI, G4MVTX::N_staves, PHG4Detector::OverlapCheck(), and PHG4Detector::Verbosity().
Referenced by ConstructMvtx().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Definition at line 336 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 336 of file PHG4MvtxDetector.cc
References G4GDMLReadStructure::GetAssembly(), GetMvtxOuterShell(), m_EndWheelsSideN, m_EndWheelsSideS, M_PI, PHG4Detector::OverlapCheck(), reader(), and PHG4Detector::Verbosity().
Referenced by ConstructMe().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Definition at line 46 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 46 of file PHG4MvtxDetector.h
References m_Detector, and name.
Referenced by PHG4MvtxSubsystem::InitRunSubsystem().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Definition at line 47 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 47 of file PHG4MvtxDetector.h
References m_Detector.
| 
 | private | 
Definition at line 540 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 540 of file PHG4MvtxDetector.cc
References FindSensor(), get_layer(), get_stave(), it, G4TTL::layer, m_StavePV, and PHG4Detector::Verbosity().
Referenced by ConstructMvtx().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Definition at line 584 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 584 of file PHG4MvtxDetector.cc
References m_SensorPV, and PHG4Detector::Verbosity().
Referenced by FillPVArray().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| int PHG4MvtxDetector::get_layer | ( | int | stv_index | ) | const | 
Definition at line 144 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 144 of file PHG4MvtxDetector.cc
References m_N_staves.
Referenced by FillPVArray().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inlineprivate | 
Definition at line 65 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 65 of file PHG4MvtxDetector.h
References m_N_staves, and M_PI.
Referenced by AddGeometryNode(), and ConstructMvtx_Layer().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| int PHG4MvtxDetector::get_stave | ( | int | stv_index | ) | const | 
Definition at line 157 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 157 of file PHG4MvtxDetector.cc
References m_N_staves.
Referenced by FillPVArray().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Definition at line 381 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 381 of file PHG4MvtxDetector.cc
References mvtxGeomDef::foam_core_thickness, PHG4Detector::GetDetectorMaterial(), M_PI, mvtxGeomDef::mvtx_shell_inner_radius, mvtxGeomDef::mvtx_shell_length, mvtxGeomDef::mvtx_shell_thickness, PHG4Detector::OverlapCheck(), and mvtxGeomDef::skin_thickness.
Referenced by ConstructMvtxPassiveVol().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Definition at line 42 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 42 of file PHG4MvtxDetector.h
References m_IsLayerAbsorberActive.
| 
 | inline | 
Definition at line 41 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 41 of file PHG4MvtxDetector.h
References m_IsLayerActive.
Referenced by PHG4MvtxSteppingAction::UserSteppingAction().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Definition at line 43 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 43 of file PHG4MvtxDetector.h
References m_IsBlackHole.
Referenced by PHG4MvtxSteppingAction::UserSteppingAction().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| int PHG4MvtxDetector::IsInMvtx | ( | G4VPhysicalVolume * | volume, | 
| int & | layer, | ||
| int & | stave | ||
| ) | const | 
Definition at line 120 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 120 of file PHG4MvtxDetector.cc
References m_StavePV, and PHG4Detector::Verbosity().
Referenced by PHG4MvtxSteppingAction::UserSteppingAction().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| int PHG4MvtxDetector::IsSensor | ( | G4VPhysicalVolume * | volume | ) | const | 
Definition at line 102 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 102 of file PHG4MvtxDetector.cc
References m_SensorPV, and PHG4Detector::Verbosity().
Referenced by PHG4MvtxSteppingAction::UserSteppingAction().
 Here is the call graph for this function:
 Here is the call graph for this function: Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Definition at line 442 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 442 of file PHG4MvtxDetector.cc
References it.
Referenced by ConstructMvtx(), and SetDisplayProperty().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | private | 
Definition at line 460 of file PHG4MvtxDetector.cc.
View newest version in sPHENIX GitHub at line 460 of file PHG4MvtxDetector.cc
References PHG4MvtxDisplayAction::AddVolume(), m_DisplayAction, SetDisplayProperty(), and PHG4Detector::Verbosity().
 Here is the call graph for this function:
 Here is the call graph for this function:| 
 | inline | 
Definition at line 44 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 44 of file PHG4MvtxDetector.h
References m_SuperDetector, and name.
Referenced by PHG4MvtxSubsystem::InitRunSubsystem(), and PHG4MvtxSteppingAction::SetInterfacePointers().
 Here is the caller graph for this function:
 Here is the caller graph for this function:| 
 | inline | 
Definition at line 45 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 45 of file PHG4MvtxDetector.h
References m_SuperDetector.
| 
 | private | 
Definition at line 84 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 84 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), and Detector().
| 
 | private | 
Definition at line 68 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 68 of file PHG4MvtxDetector.h
Referenced by SetDisplayProperty().
| 
 | private | 
Definition at line 88 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 88 of file PHG4MvtxDetector.h
Referenced by ConstructMvtxPassiveVol().
| 
 | private | 
Definition at line 87 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 87 of file PHG4MvtxDetector.h
Referenced by ConstructMvtxPassiveVol().
| 
 | private | 
Definition at line 78 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 78 of file PHG4MvtxDetector.h
Referenced by IsBlackHole(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 77 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 77 of file PHG4MvtxDetector.h
Referenced by IsAbsorberActive(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 76 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 76 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), ConstructMvtx(), IsActive(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 79 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 79 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), ConstructMvtx_Layer(), get_layer(), get_phistep(), get_stave(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 82 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 82 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), ConstructMvtx_Layer(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 81 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 81 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), ConstructMvtx_Layer(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 80 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 80 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), ConstructMvtx_Layer(), and PHG4MvtxDetector().
| 
 | private | 
Definition at line 69 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 69 of file PHG4MvtxDetector.h
Referenced by PHG4MvtxDetector().
| 
 | private | 
Definition at line 72 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 72 of file PHG4MvtxDetector.h
Referenced by FindSensor(), and IsSensor().
| 
 | private | 
Definition at line 86 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 86 of file PHG4MvtxDetector.h
Referenced by ConstructMvtx().
| 
 | private | 
Definition at line 73 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 73 of file PHG4MvtxDetector.h
Referenced by FillPVArray(), and IsInMvtx().
| 
 | private | 
Definition at line 85 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 85 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), and SuperDetector().
| 
 | staticprivate | 
Definition at line 67 of file PHG4MvtxDetector.h.
View newest version in sPHENIX GitHub at line 67 of file PHG4MvtxDetector.h
Referenced by AddGeometryNode(), ConstructMvtx(), and PHG4MvtxDetector().