Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4IHCalSteppingAction Class Reference

#include <coresoftware/blob/master/simulation/g4simulation/g4ihcal/PHG4IHCalSteppingAction.h>

+ Inheritance diagram for PHG4IHCalSteppingAction:
+ Collaboration diagram for PHG4IHCalSteppingAction:

Public Member Functions

 PHG4IHCalSteppingAction (PHG4IHCalDetector *, const PHParameters *parameters)
 constructor
 
 ~PHG4IHCalSteppingAction () override
 destructor
 
bool UserSteppingAction (const G4Step *, bool) override
 stepping action
 
int InitWithNode (PHCompositeNode *topNode) override
 
void SetInterfacePointers (PHCompositeNode *) override
 reimplemented from base class
 
void SetHitNodeName (const std::string &type, const std::string &name) override
 Set the G4HIT node names from Subsystem rather than constructing your own.
 
void CreateNodeTree (PHCompositeNode *topNode)
 
- 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

PHG4IHCalDetectorm_Detector = nullptr
 pointer to the detector
 
TH2 * m_MapCorrHist = nullptr
 efficiency maps from Mephi
 
PHG4HitContainerm_HitContainer = nullptr
 pointer to hit container
 
PHG4HitContainerm_AbsorberHitContainer = nullptr
 
PHG4Hitm_Hit = nullptr
 
const PHParametersm_Params = nullptr
 
PHG4HitContainerm_SaveHitContainer = nullptr
 
PHG4Showerm_SaveShower = nullptr
 
G4VPhysicalVolumem_SaveVolPre = nullptr
 
G4VPhysicalVolumem_SaveVolPost = nullptr
 
int m_SaveTrackId = -1
 
int m_SavePreStepStatus = -1
 
int m_SavePostStepStatus = -1
 
int m_IsActive = 0
 
int m_IsBlackHole = 0
 
int m_LightScintModelFlag = 0
 
bool m_doG4Hit = true
 
double m_tmin = -20.
 
double m_tmax = 60.
 
double m_dt = 100.
 
std::string m_AbsorberNodeName
 
std::string m_HitNodeName
 
TowerInfoContainerm_CaloInfoContainer = nullptr
 

Detailed Description

Definition at line 21 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 21 of file PHG4IHCalSteppingAction.h

Constructor & Destructor Documentation

PHG4IHCalSteppingAction::PHG4IHCalSteppingAction ( PHG4IHCalDetector detector,
const PHParameters parameters 
)

constructor

Definition at line 63 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 63 of file PHG4IHCalSteppingAction.cc

References Acts::UnitConstants::cm, PHParameters::get_double_param(), m_Params, and PHG4SteppingAction::SetLightCorrection().

+ Here is the call graph for this function:

PHG4IHCalSteppingAction::~PHG4IHCalSteppingAction ( )
override

destructor

Definition at line 81 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 81 of file PHG4IHCalSteppingAction.cc

References m_Hit, and m_MapCorrHist.

Member Function Documentation

void PHG4IHCalSteppingAction::CreateNodeTree ( PHCompositeNode topNode)

Definition at line 577 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 577 of file PHG4IHCalSteppingAction.cc

References PHCompositeNode::addNode(), PHNodeIterator::findFirst(), m_CaloInfoContainer, m_Detector, PHCompositeNode::PHCompositeNode(), and PHG4IHCalDetector::SuperDetector().

Referenced by InitWithNode().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHG4IHCalSteppingAction::InitWithNode ( PHCompositeNode topNode)
overridevirtual

Reimplemented from PHG4SteppingAction.

Definition at line 93 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 93 of file PHG4IHCalSteppingAction.cc

References Fun4AllReturnCodes::ABORTRUN, CreateNodeTree(), Acts::UnitConstants::e, Acts::Concepts::exists, file, PHParameters::get_string_param(), m_doG4Hit, m_LightScintModelFlag, m_MapCorrHist, m_Params, PHWHERE, PHCompositeNode::print(), and PHG4SteppingAction::Verbosity().

+ Here is the call graph for this function:

bool PHG4IHCalSteppingAction::NoHitSteppingAction ( const G4Step *  aStep)
private

Definition at line 137 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 137 of file PHG4IHCalSteppingAction.cc

References Acts::UnitConstants::cm, TowerInfoDefs::encode_hcal(), TowerInfo::get_energy(), TowerInfoContainer::get_tower_at_key(), PHG4IHCalDetector::GetLayerTowerId(), PHG4SteppingAction::GetLightCorrection(), PHG4SteppingAction::GetVisibleEnergyDeposition(), Acts::UnitConstants::GeV, PHG4IHCalDetector::IsInIHCal(), m_CaloInfoContainer, m_Detector, m_dt, m_IsActive, m_LightScintModelFlag, m_MapCorrHist, m_tmax, merge_hashes::p, and TowerInfo::set_energy().

Referenced by UserSteppingAction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4IHCalSteppingAction::SetHitNodeName ( const std::string &  ,
const std::string &   
)
overridevirtual

Set the G4HIT node names from Subsystem rather than constructing your own.

Reimplemented from PHG4SteppingAction.

Definition at line 560 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 560 of file PHG4IHCalSteppingAction.cc

References m_AbsorberNodeName, m_HitNodeName, and perf_headwind::name.

void PHG4IHCalSteppingAction::SetInterfacePointers ( PHCompositeNode topNode)
overridevirtual

reimplemented from base class

Reimplemented from PHG4SteppingAction.

Definition at line 541 of file PHG4IHCalSteppingAction.cc.

View newest version in sPHENIX GitHub at line 541 of file PHG4IHCalSteppingAction.cc

References m_AbsorberHitContainer, m_AbsorberNodeName, m_HitContainer, m_HitNodeName, and PHG4SteppingAction::Verbosity().

+ Here is the call graph for this function:

bool PHG4IHCalSteppingAction::UserSteppingAction ( const G4Step *  aStep,
bool   
)
overridevirtual

Member Data Documentation

PHG4HitContainer* PHG4IHCalSteppingAction::m_AbsorberHitContainer = nullptr
private

Definition at line 52 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 52 of file PHG4IHCalSteppingAction.h

Referenced by SetInterfacePointers(), and UserSteppingAction().

std::string PHG4IHCalSteppingAction::m_AbsorberNodeName
private

Definition at line 73 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 73 of file PHG4IHCalSteppingAction.h

Referenced by SetHitNodeName(), and SetInterfacePointers().

TowerInfoContainer* PHG4IHCalSteppingAction::m_CaloInfoContainer = nullptr
private

Definition at line 76 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 76 of file PHG4IHCalSteppingAction.h

Referenced by CreateNodeTree(), and NoHitSteppingAction().

PHG4IHCalDetector* PHG4IHCalSteppingAction::m_Detector = nullptr
private

pointer to the detector

Definition at line 45 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 45 of file PHG4IHCalSteppingAction.h

Referenced by CreateNodeTree(), NoHitSteppingAction(), and UserSteppingAction().

bool PHG4IHCalSteppingAction::m_doG4Hit = true
private

Definition at line 68 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 68 of file PHG4IHCalSteppingAction.h

Referenced by InitWithNode(), and UserSteppingAction().

double PHG4IHCalSteppingAction::m_dt = 100.
private

Definition at line 71 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 71 of file PHG4IHCalSteppingAction.h

Referenced by NoHitSteppingAction().

PHG4Hit* PHG4IHCalSteppingAction::m_Hit = nullptr
private

Definition at line 53 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 53 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction(), and ~PHG4IHCalSteppingAction().

PHG4HitContainer* PHG4IHCalSteppingAction::m_HitContainer = nullptr
private

pointer to hit container

Definition at line 51 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 51 of file PHG4IHCalSteppingAction.h

Referenced by SetInterfacePointers(), and UserSteppingAction().

std::string PHG4IHCalSteppingAction::m_HitNodeName
private

Definition at line 74 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 74 of file PHG4IHCalSteppingAction.h

Referenced by SetHitNodeName(), and SetInterfacePointers().

int PHG4IHCalSteppingAction::m_IsActive = 0
private

Definition at line 65 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 65 of file PHG4IHCalSteppingAction.h

Referenced by NoHitSteppingAction(), and UserSteppingAction().

int PHG4IHCalSteppingAction::m_IsBlackHole = 0
private

Definition at line 66 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 66 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

int PHG4IHCalSteppingAction::m_LightScintModelFlag = 0
private

Definition at line 67 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 67 of file PHG4IHCalSteppingAction.h

Referenced by InitWithNode(), NoHitSteppingAction(), and UserSteppingAction().

TH2* PHG4IHCalSteppingAction::m_MapCorrHist = nullptr
private

efficiency maps from Mephi

Definition at line 48 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 48 of file PHG4IHCalSteppingAction.h

Referenced by InitWithNode(), NoHitSteppingAction(), UserSteppingAction(), and ~PHG4IHCalSteppingAction().

const PHParameters* PHG4IHCalSteppingAction::m_Params = nullptr
private

Definition at line 54 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 54 of file PHG4IHCalSteppingAction.h

Referenced by InitWithNode(), and PHG4IHCalSteppingAction().

PHG4HitContainer* PHG4IHCalSteppingAction::m_SaveHitContainer = nullptr
private

Definition at line 55 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 55 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

int PHG4IHCalSteppingAction::m_SavePostStepStatus = -1
private

Definition at line 61 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 61 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

int PHG4IHCalSteppingAction::m_SavePreStepStatus = -1
private

Definition at line 60 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 60 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

PHG4Shower* PHG4IHCalSteppingAction::m_SaveShower = nullptr
private

Definition at line 56 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 56 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

int PHG4IHCalSteppingAction::m_SaveTrackId = -1
private

Definition at line 59 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 59 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

G4VPhysicalVolume* PHG4IHCalSteppingAction::m_SaveVolPost = nullptr
private

Definition at line 58 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 58 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

G4VPhysicalVolume* PHG4IHCalSteppingAction::m_SaveVolPre = nullptr
private

Definition at line 57 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 57 of file PHG4IHCalSteppingAction.h

Referenced by UserSteppingAction().

double PHG4IHCalSteppingAction::m_tmax = 60.
private

Definition at line 70 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 70 of file PHG4IHCalSteppingAction.h

Referenced by NoHitSteppingAction().

double PHG4IHCalSteppingAction::m_tmin = -20.
private

Definition at line 69 of file PHG4IHCalSteppingAction.h.

View newest version in sPHENIX GitHub at line 69 of file PHG4IHCalSteppingAction.h


The documentation for this class was generated from the following files: