Analysis Software
Documentation for sPHENIX simulation software
|
#include <coresoftware/blob/master/simulation/g4simulation/g4detectors/PHG4SpacalSteppingAction.h>
Public Member Functions | |
PHG4SpacalSteppingAction (PHG4SpacalDetector *, const PHParameters *parameters) | |
ctor | |
~PHG4SpacalSteppingAction () override | |
dtor | |
bool | UserSteppingAction (const G4Step *, bool) override |
stepping action | |
int | InitWithNode (PHCompositeNode *topNode) override |
void | SetInterfacePointers (PHCompositeNode *) override |
reimplemented from base class | |
double | get_zmin () const |
double | get_zmax () const |
void | SetHitNodeName (const std::string &type, const std::string &name) override |
Set the G4HIT node names from Subsystem rather than constructing your own. | |
int | SetUpGeomNode (PHCompositeNode *topNode) |
LightCollectionModel & | get_light_collection_model () |
Public Member Functions inherited from PHG4SteppingAction | |
PHG4SteppingAction (const std::string &name, const int i=0) | |
virtual | ~PHG4SteppingAction () |
virtual void | Verbosity (const int i) |
virtual int | Verbosity () const |
virtual int | Init () |
virtual double | GetScintLightYield (const G4Step *step) |
get scintillation photon count. It require a custom set SCINTILLATIONYIELD property to work | |
virtual double | GetVisibleEnergyDeposition (const G4Step *step) |
get amount of energy that can make scintillation light, in Unit of GeV. | |
virtual void | StoreLocalCoordinate (PHG4Hit *hit, const G4Step *step, const bool do_prepoint, const bool do_postpoint) |
Extract local coordinate of the hit and save to PHG4Hit. | |
virtual void | Print (const std::string &) const |
std::string | GetName () const |
void | SetName (const std::string &name) |
virtual void | SetLightCorrection (const double inner_radius, const double inner_corr, const double outer_radius, const double outer_corr) |
virtual double | GetLightCorrection (const double r) const |
virtual double | GetLightCorrection (const double xpos, const double ypos) const |
virtual bool | ValidCorrection () const |
Private Member Functions | |
bool | NoHitSteppingAction (const G4Step *aStep) |
Private Attributes | |
PHG4SpacalDetector * | m_Detector = nullptr |
pointer to the detector | |
PHG4HitContainer * | m_HitContainer = nullptr |
pointer to hit container | |
PHG4HitContainer * | m_AbsorberHitContainer = nullptr |
PHG4Hit * | m_Hit = nullptr |
PHG4HitContainer * | m_CurrentHitContainer = nullptr |
PHG4Shower * | m_CurrentShower = nullptr |
const PHParameters * | m_Params = nullptr |
int | m_SaveTrackid = -1 |
int | m_SavePostStepStatus = -1 |
bool | m_doG4Hit = true |
bool | m_geomsetup = false |
double | m_tmin = -20. |
double | m_tmax = 60. |
double | m_dt = 100. |
std::string | m_AbsorberNodeName |
std::string | m_HitNodeName |
std::string | detector |
std::string | geonodename |
std::string | seggeonodename |
TowerInfoContainer * | m_CaloInfoContainer = nullptr |
PHG4CylinderCellGeomContainer * | _seggeo = nullptr |
PHG4CylinderGeomContainer * | _layergeo = nullptr |
PHG4CylinderCellGeom_Spacalv1 * | _geo = nullptr |
const PHG4CylinderGeom_Spacalv3 * | _layergeom = nullptr |
LightCollectionModel | light_collection_model |
Definition at line 32 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 32 of file PHG4SpacalSteppingAction.h
|
explicit |
ctor
Definition at line 74 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 74 of file PHG4SpacalSteppingAction.cc
|
override |
dtor
Definition at line 85 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 85 of file PHG4SpacalSteppingAction.cc
References m_Hit.
|
inline |
Definition at line 57 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 57 of file PHG4SpacalSteppingAction.h
References light_collection_model.
Referenced by PHG4SpacalSubsystem::InitRunSubsystem().
double PHG4SpacalSteppingAction::get_zmax | ( | ) | const |
Definition at line 629 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 629 of file PHG4SpacalSteppingAction.cc
References PHG4SpacalDetector::get_geom(), PHG4CylinderGeomv1::get_zmax(), and m_Detector.
Referenced by UserSteppingAction().
double PHG4SpacalSteppingAction::get_zmin | ( | ) | const |
Definition at line 616 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 616 of file PHG4SpacalSteppingAction.cc
References PHG4SpacalDetector::get_geom(), PHG4CylinderGeomv1::get_zmin(), and m_Detector.
Referenced by UserSteppingAction().
|
overridevirtual |
Reimplemented from PHG4SteppingAction.
Definition at line 94 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 94 of file PHG4SpacalSteppingAction.cc
References PHCompositeNode::addNode(), detector, PHNodeIterator::findFirst(), m_CaloInfoContainer, m_Detector, m_doG4Hit, PHCompositeNode::PHCompositeNode(), PHWHERE, and PHG4SpacalDetector::SuperDetector().
Referenced by PHG4SpacalSubsystem::InitRunSubsystem().
|
private |
Definition at line 161 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 161 of file PHG4SpacalSteppingAction.cc
References _geo, _layergeom, assert, Acts::UnitConstants::e, TowerInfoDefs::encode_emcal(), KF_timing::etabin, PHG4SpacalDetector::FIBER_CORE, PHG4CylinderGeom_Spacalv3::scint_id_coder::fiber_ID, PHG4CylinderGeom_Spacalv1::get_config(), TowerInfo::get_energy(), PHG4CylinderCellGeom_Spacalv1::get_etabin_block(), LightCollectionModel::get_fiber_transmission(), PHG4SpacalDetector::get_geom(), LightCollectionModel::get_light_guide_efficiency(), PHG4CylinderGeom_Spacalv3::get_n_subtower_eta(), PHG4CylinderGeom_Spacalv3::get_n_subtower_phi(), PHG4CylinderGeom_Spacalv3::get_sector_tower_map(), TowerInfoContainer::get_tower_at_key(), PHG4CylinderGeom_Spacalv3::get_tower_z_phi_ID(), PHG4SteppingAction::GetVisibleEnergyDeposition(), PHG4CylinderCellGeom_Spacalv1::identify(), PHG4CylinderGeom_Spacalv3::scint_id_coder::identify(), PHG4SpacalDetector::INACTIVE, PHG4SpacalDetector::IsInCylinderActive(), PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper_SameLengthFiberPerTower, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper_Tilted, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper_Tilted_SameLengthFiberPerTower, light_collection_model, m_CaloInfoContainer, m_Detector, m_dt, m_tmax, merge_hashes::p, PHG4CylinderGeom_Spacalv3::scint_id_coder::scint_ID, PHG4CylinderGeom_Spacalv3::scint_id_coder::sector_ID, TowerInfo::set_energy(), PHG4CylinderGeom_Spacalv3::scint_id_coder::tower_ID, LightCollectionModel::use_fiber_model(), ambiguity_solver_full_chain::x, y, and physmon_track_finding_ttbar::z.
Referenced by UserSteppingAction().
|
overridevirtual |
Set the G4HIT node names from Subsystem rather than constructing your own.
Reimplemented from PHG4SteppingAction.
Definition at line 641 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 641 of file PHG4SpacalSteppingAction.cc
References m_AbsorberNodeName, m_HitNodeName, and perf_headwind::name.
Referenced by PHG4SpacalSubsystem::InitRunSubsystem().
|
overridevirtual |
reimplemented from base class
Reimplemented from PHG4SteppingAction.
Definition at line 590 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 590 of file PHG4SpacalSteppingAction.cc
References m_AbsorberHitContainer, m_AbsorberNodeName, m_doG4Hit, m_geomsetup, m_HitContainer, m_HitNodeName, SetUpGeomNode(), and PHG4SteppingAction::Verbosity().
Referenced by PHG4SpacalSubsystem::process_event().
int PHG4SpacalSteppingAction::SetUpGeomNode | ( | PHCompositeNode * | topNode | ) |
Definition at line 123 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 123 of file PHG4SpacalSteppingAction.cc
References _geo, _layergeo, _layergeom, _seggeo, assert, detector, geonodename, PHG4CylinderCellGeomContainer::GetFirstLayerCellGeom(), PHG4CylinderGeomContainer::GetFirstLayerGeom(), m_Detector, m_doG4Hit, m_geomsetup, seggeonodename, and PHG4SpacalDetector::SuperDetector().
Referenced by SetInterfacePointers().
|
overridevirtual |
stepping action
Implements PHG4SteppingAction.
Definition at line 304 of file PHG4SpacalSteppingAction.cc.
View newest version in sPHENIX GitHub at line 304 of file PHG4SpacalSteppingAction.cc
References PHG4SpacalDetector::ABSORBER, PHG4Shower::add_g4hit_id(), PHG4HitContainer::AddHit(), Acts::UnitConstants::cm, PHG4SpacalDetector::FIBER_CLADING, PHG4SpacalDetector::FIBER_CORE, PHG4CylinderGeom_Spacalv1::get_config(), PHG4Hit::get_edep(), PHG4Hit::get_eion(), PHG4SpacalDetector::get_geom(), PHG4Hit::get_hit_id(), PHG4SpacalDetector::get_Layer(), PHG4Hit::get_light_yield(), PHG4Hit::get_x(), PHG4Hit::get_z(), get_zmax(), get_zmin(), PHG4HitContainer::GetID(), PHG4SteppingAction::GetName(), PHG4Detector::GetName(), PHG4SteppingAction::GetVisibleEnergyDeposition(), Acts::UnitConstants::GeV, PHG4Hit::identify(), PHG4SpacalDetector::INACTIVE, PHG4SpacalDetector::IsInCylinderActive(), PHG4CylinderGeom_Spacalv3::scint_id_coder::kfiber_bit, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper_SameLengthFiberPerTower, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper_Tilted, PHG4CylinderGeom_Spacalv1::kFullProjective_2DTaper_Tilted_SameLengthFiberPerTower, m_AbsorberHitContainer, m_CurrentHitContainer, m_CurrentShower, m_Detector, m_doG4Hit, m_Hit, m_HitContainer, m_SavePostStepStatus, m_SaveTrackid, NoHitSteppingAction(), merge_hashes::p, PHG4Hit::Reset(), PHG4CylinderGeom_Spacalv3::scint_id_coder::scint_ID, PHG4Hit::set_edep(), PHG4Hit::set_eion(), PHG4Hit::set_layer(), PHG4Hit::set_light_yield(), PHG4Hit::set_scint_id(), PHG4Hit::set_shower_id(), PHG4Hit::set_t(), PHG4Hit::set_trkid(), PHG4Hit::set_x(), PHG4Hit::set_y(), PHG4Hit::set_z(), PHG4SteppingAction::StoreLocalCoordinate(), PHG4SpacalDetector::SUPPORT, and PHG4SteppingAction::Verbosity().
|
private |
Definition at line 91 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 91 of file PHG4SpacalSteppingAction.h
Referenced by NoHitSteppingAction(), and SetUpGeomNode().
|
private |
Definition at line 89 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 89 of file PHG4SpacalSteppingAction.h
Referenced by SetUpGeomNode().
|
private |
Definition at line 93 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 93 of file PHG4SpacalSteppingAction.h
Referenced by NoHitSteppingAction(), and SetUpGeomNode().
|
private |
Definition at line 87 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 87 of file PHG4SpacalSteppingAction.h
Referenced by SetUpGeomNode().
|
private |
Definition at line 81 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 81 of file PHG4SpacalSteppingAction.h
Referenced by InitWithNode(), and SetUpGeomNode().
|
private |
Definition at line 82 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 82 of file PHG4SpacalSteppingAction.h
Referenced by SetUpGeomNode().
|
private |
Definition at line 95 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 95 of file PHG4SpacalSteppingAction.h
Referenced by get_light_collection_model(), and NoHitSteppingAction().
|
private |
Definition at line 66 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 66 of file PHG4SpacalSteppingAction.h
Referenced by SetInterfacePointers(), and UserSteppingAction().
|
private |
Definition at line 79 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 79 of file PHG4SpacalSteppingAction.h
Referenced by SetHitNodeName(), and SetInterfacePointers().
|
private |
Definition at line 85 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 85 of file PHG4SpacalSteppingAction.h
Referenced by InitWithNode(), and NoHitSteppingAction().
|
private |
Definition at line 68 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 68 of file PHG4SpacalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 69 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 69 of file PHG4SpacalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
pointer to the detector
Definition at line 62 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 62 of file PHG4SpacalSteppingAction.h
Referenced by get_zmax(), get_zmin(), InitWithNode(), NoHitSteppingAction(), SetUpGeomNode(), and UserSteppingAction().
|
private |
Definition at line 73 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 73 of file PHG4SpacalSteppingAction.h
Referenced by InitWithNode(), SetInterfacePointers(), SetUpGeomNode(), and UserSteppingAction().
|
private |
Definition at line 77 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 77 of file PHG4SpacalSteppingAction.h
Referenced by NoHitSteppingAction().
|
private |
Definition at line 74 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 74 of file PHG4SpacalSteppingAction.h
Referenced by SetInterfacePointers(), and SetUpGeomNode().
|
private |
Definition at line 67 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 67 of file PHG4SpacalSteppingAction.h
Referenced by UserSteppingAction(), and ~PHG4SpacalSteppingAction().
|
private |
pointer to hit container
Definition at line 65 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 65 of file PHG4SpacalSteppingAction.h
Referenced by SetInterfacePointers(), and UserSteppingAction().
|
private |
Definition at line 80 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 80 of file PHG4SpacalSteppingAction.h
Referenced by SetHitNodeName(), and SetInterfacePointers().
|
private |
Definition at line 70 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 70 of file PHG4SpacalSteppingAction.h
|
private |
Definition at line 72 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 72 of file PHG4SpacalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 71 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 71 of file PHG4SpacalSteppingAction.h
Referenced by UserSteppingAction().
|
private |
Definition at line 76 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 76 of file PHG4SpacalSteppingAction.h
Referenced by NoHitSteppingAction().
|
private |
Definition at line 75 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 75 of file PHG4SpacalSteppingAction.h
|
private |
Definition at line 83 of file PHG4SpacalSteppingAction.h.
View newest version in sPHENIX GitHub at line 83 of file PHG4SpacalSteppingAction.h
Referenced by SetUpGeomNode().