EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <fun4all_coresoftware/blob/master/simulation/g4simulation/g4mvtx/PHG4MvtxDetector.h>
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().
|
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().
|
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.
|
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().
|
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().
|
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().
|
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().
|
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().
|
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().
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().
|
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().
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().
|
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().
|
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().
|
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().
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().
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().
|
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().
|
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().
|
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().
|
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().