Analysis Software
Documentation for sPHENIX simulation software
|
#include <coresoftware/blob/master/simulation/g4simulation/g4ohcal/PHG4OHCalDetector.h>
Public Member Functions | |
PHG4OHCalDetector (PHG4Subsystem *subsys, PHCompositeNode *Node, PHParameters *params, const std::string &dnam) | |
constructor | |
~PHG4OHCalDetector () override | |
destructor | |
void | ConstructMe (G4LogicalVolume *world) override |
construct | |
void | Print (const std::string &what="ALL") const override |
void | SuperDetector (const std::string &name) |
const std::string | SuperDetector () const |
int | get_Layer () const |
int | ConsistencyCheck () const |
std::tuple< int, int, int > | GetRowColumnId (G4VPhysicalVolume *volume) const |
volume accessors | |
int | IsInOHCal (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 Member Functions | |
void | AddGeometryNode () |
int | ConstructOHCal (G4LogicalVolume *hcalenvelope) |
int | map_towerid (const int tower_id) |
int | map_layerid (const unsigned int isector, const int layer_id) |
std::tuple< int, int, int > | ExtractLayerTowerId (const unsigned int isector, G4VPhysicalVolume *volume) |
Private Attributes | |
PHG4OHCalDisplayAction * | m_DisplayAction = nullptr |
PHG4OHCalFieldSetup * | m_FieldSetup = nullptr |
PHParameters * | m_Params = nullptr |
G4AssemblyVolume * | m_ScintiMotherAssembly = nullptr |
G4AssemblyVolume * | m_ChimScintiMotherAssembly = nullptr |
double | m_InnerRadius = NAN |
double | m_OuterRadius = NAN |
double | m_SizeZ = NAN |
double | m_VolumeEnvelope = NAN |
double | m_VolumeSteel = 0 |
double | m_VolumeScintillator = 0 |
int | m_NumScintiPlates = -9999 |
int | m_ActiveFlag = 0 |
int | m_AbsorberActiveFlag = 0 |
int | m_Layer = 0 |
std::string | m_SuperDetector |
std::set< G4LogicalVolume * > | m_SteelAbsorberLogVolSet |
std::set< G4LogicalVolume * > | m_ScintiTileLogVolSet |
std::map< G4VPhysicalVolume *, std::tuple< int, int, int > > | m_ScintiTilePhysVolMap |
PHG4GDMLConfig * | gdml_config = nullptr |
registry for volumes that should not be exported | |
std::string | m_GDMPath |
RawTowerGeomContainer * | m_RawTowerGeom = nullptr |
std::string | m_TowerGeomNodeName |
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 25 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 25 of file PHG4OHCalDetector.h
PHG4OHCalDetector::PHG4OHCalDetector | ( | PHG4Subsystem * | subsys, |
PHCompositeNode * | Node, | ||
PHParameters * | params, | ||
const std::string & | dnam | ||
) |
constructor
Definition at line 71 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 71 of file PHG4OHCalDetector.cc
References assert, Acts::UnitConstants::cm, gdml_config, PHParameters::get_double_param(), PHFieldConfig::get_field_config(), PHParameters::get_string_param(), PHFieldUtility::GetDSTConfigNodeName(), PHG4GDMLUtility::GetOrMakeConfigNode(), PHFieldConfig::kFieldUniform, m_FieldSetup, m_InnerRadius, m_OuterRadius, m_Params, and m_SizeZ.
|
override |
destructor
Definition at line 98 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 98 of file PHG4OHCalDetector.cc
References m_ChimScintiMotherAssembly, m_FieldSetup, and m_ScintiMotherAssembly.
|
private |
Definition at line 498 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 498 of file PHG4OHCalDetector.cc
References RawTowerGeomContainer::add_tower_geometry(), PHCompositeNode::addNode(), RawTowerDefs::convert_name_to_caloid(), Acts::UnitConstants::e, RawTowerDefs::encode_towerid(), PHNodeIterator::findFirst(), RawTowerGeom::get_center_x(), PHParameters::get_double_param(), RawTowerGeomContainer::get_etabins(), RawTowerGeomContainer::get_etacenter(), PHParameters::get_int_param(), RawTowerGeomContainer::get_phibins(), RawTowerGeomContainer::get_phicenter(), PHG4Utils::get_theta(), RawTowerGeomContainer::get_tower_geometry(), i, RawTowerGeomContainer::identify(), PHG4HcalDefs::innerrad, m_Params, m_RawTowerGeom, m_SuperDetector, m_TowerGeomNodeName, PHG4HcalDefs::n_towers, PHG4HcalDefs::outerrad, PHCompositeNode::PHCompositeNode(), G4HCALIN::phistart, PHWHERE, RawTowerGeomContainer::set_etabins(), RawTowerGeomContainer::set_etabounds(), RawTowerGeomContainer::set_phibins(), RawTowerGeomContainer::set_phibounds(), RawTowerGeomContainer::set_radius(), RawTowerGeomContainer::set_thickness(), tg, thickness, PHG4Detector::topNode(), PHG4Detector::Verbosity(), ambiguity_solver_full_chain::x, y, and physmon_track_finding_ttbar::z.
Referenced by ConstructMe().
int PHG4OHCalDetector::ConsistencyCheck | ( | ) | const |
|
overridevirtual |
construct
Implements PHG4Detector.
Definition at line 126 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 126 of file PHG4OHCalDetector.cc
References AddGeometryNode(), assert, Acts::UnitConstants::cm, ConstructOHCal(), deg, PHG4GDMLConfig::exclude_logical_vol(), PHG4GDMLConfig::exclude_physical_vol(), gdml_config, PHParameters::get_double_param(), PHParameters::get_int_param(), PHFlag::get_StringFlag(), PHG4Detector::GetDetectorMaterial(), PHG4Detector::GetMySubsystem(), i, recoConsts::instance(), m_DisplayAction, m_InnerRadius, m_OuterRadius, m_Params, m_SizeZ, m_VolumeEnvelope, PHG4Detector::OverlapCheck(), PHG4Subsystem::SetLogicalVolume(), and PHG4OHCalDisplayAction::SetMyTopVolume().
|
private |
Definition at line 169 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 169 of file PHG4OHCalDetector.cc
References PHG4OHCalDisplayAction::AddChimSteelVolume(), PHG4OHCalDisplayAction::AddScintiVolume(), PHG4OHCalDisplayAction::AddSteelVolume(), ExtractLayerTowerId(), PHG4OHCalFieldSetup::get_Field_Manager_Iron(), PHParameters::get_int_param(), j, m_ChimScintiMotherAssembly, m_DisplayAction, m_FieldSetup, m_GDMPath, m_Params, m_ScintiMotherAssembly, m_ScintiTileLogVolSet, m_ScintiTilePhysVolMap, m_SteelAbsorberLogVolSet, m_VolumeScintillator, m_VolumeSteel, PHG4Detector::OverlapCheck(), and summary::reader.
Referenced by ConstructMe().
|
private |
Definition at line 292 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 292 of file PHG4OHCalDetector.cc
References m_NumScintiPlates, std::tr1::make_tuple(), map_layerid(), map_towerid(), and PHWHERE.
Referenced by ConstructOHCal().
|
inline |
Definition at line 46 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 46 of file PHG4OHCalDetector.h
References m_Layer.
std::tuple< int, int, int > PHG4OHCalDetector::GetRowColumnId | ( | G4VPhysicalVolume * | volume | ) | const |
Definition at line 277 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 277 of file PHG4OHCalDetector.cc
References it, and m_ScintiTilePhysVolMap.
Referenced by PHG4OHCalSteppingAction::NoHitSteppingAction(), and PHG4OHCalSteppingAction::UserSteppingAction().
int PHG4OHCalDetector::IsInOHCal | ( | G4VPhysicalVolume * | volume | ) | const |
Definition at line 107 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 107 of file PHG4OHCalDetector.cc
References m_AbsorberActiveFlag, m_ActiveFlag, m_ScintiTileLogVolSet, and m_SteelAbsorberLogVolSet.
Referenced by PHG4OHCalSteppingAction::NoHitSteppingAction(), and PHG4OHCalSteppingAction::UserSteppingAction().
|
private |
Definition at line 462 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 462 of file PHG4OHCalDetector.cc
Referenced by ExtractLayerTowerId().
|
private |
Definition at line 341 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 341 of file PHG4OHCalDetector.cc
Referenced by ExtractLayerTowerId().
|
overridevirtual |
Reimplemented from PHG4Detector.
Definition at line 262 of file PHG4OHCalDetector.cc.
View newest version in sPHENIX GitHub at line 262 of file PHG4OHCalDetector.cc
References Acts::UnitConstants::cm, m_GDMPath, m_VolumeEnvelope, m_VolumeScintillator, and m_VolumeSteel.
Referenced by PHG4OHCalSubsystem::Print().
|
inline |
Definition at line 44 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 44 of file PHG4OHCalDetector.h
References m_SuperDetector, and perf_headwind::name.
Referenced by PHG4OHCalSteppingAction::CreateNodeTree(), and PHG4OHCalSubsystem::InitRunSubsystem().
|
inline |
Definition at line 45 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 45 of file PHG4OHCalDetector.h
References m_SuperDetector.
|
private |
registry for volumes that should not be exported
Definition at line 80 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 80 of file PHG4OHCalDetector.h
Referenced by ConstructMe(), and PHG4OHCalDetector().
|
private |
Definition at line 71 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 71 of file PHG4OHCalDetector.h
Referenced by IsInOHCal().
|
private |
Definition at line 70 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 70 of file PHG4OHCalDetector.h
Referenced by IsInOHCal().
|
private |
Definition at line 60 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 60 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and ~PHG4OHCalDetector().
|
private |
Definition at line 56 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 56 of file PHG4OHCalDetector.h
Referenced by ConstructMe(), and ConstructOHCal().
|
private |
Definition at line 57 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 57 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), PHG4OHCalDetector(), and ~PHG4OHCalDetector().
|
private |
Definition at line 82 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 82 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and Print().
|
private |
Definition at line 61 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 61 of file PHG4OHCalDetector.h
Referenced by ConstructMe(), and PHG4OHCalDetector().
|
private |
Definition at line 73 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 73 of file PHG4OHCalDetector.h
Referenced by get_Layer().
|
private |
Definition at line 68 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 68 of file PHG4OHCalDetector.h
Referenced by ExtractLayerTowerId().
|
private |
Definition at line 62 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 62 of file PHG4OHCalDetector.h
Referenced by ConstructMe(), and PHG4OHCalDetector().
|
private |
Definition at line 58 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 58 of file PHG4OHCalDetector.h
Referenced by AddGeometryNode(), ConstructMe(), ConstructOHCal(), and PHG4OHCalDetector().
|
private |
Definition at line 83 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 83 of file PHG4OHCalDetector.h
Referenced by AddGeometryNode().
|
private |
Definition at line 59 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 59 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and ~PHG4OHCalDetector().
|
private |
Definition at line 76 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 76 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and IsInOHCal().
|
private |
Definition at line 77 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 77 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and GetRowColumnId().
|
private |
Definition at line 63 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 63 of file PHG4OHCalDetector.h
Referenced by ConstructMe(), and PHG4OHCalDetector().
|
private |
Definition at line 75 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 75 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and IsInOHCal().
|
private |
Definition at line 74 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 74 of file PHG4OHCalDetector.h
Referenced by AddGeometryNode(), and SuperDetector().
|
private |
Definition at line 84 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 84 of file PHG4OHCalDetector.h
Referenced by AddGeometryNode().
|
private |
Definition at line 64 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 64 of file PHG4OHCalDetector.h
Referenced by ConstructMe(), and Print().
|
private |
Definition at line 66 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 66 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and Print().
|
private |
Definition at line 65 of file PHG4OHCalDetector.h.
View newest version in sPHENIX GitHub at line 65 of file PHG4OHCalDetector.h
Referenced by ConstructOHCal(), and Print().