ECCE @ EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
EICG4BwdSteppingAction Class Reference

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4bwd/EICG4BwdSteppingAction.h>

+ Inheritance diagram for EICG4BwdSteppingAction:
+ Collaboration diagram for EICG4BwdSteppingAction:

Public Member Functions

 EICG4BwdSteppingAction (EICG4BwdSubsystem *subsys, EICG4BwdDetector *detector, const PHParameters *parameters)
 constructor
 
virtual ~EICG4BwdSteppingAction () override
 destructor
 
virtual bool UserSteppingAction (const G4Step *, bool) override
 stepping action
 
virtual void SetInterfacePointers (PHCompositeNode *) override
 reimplemented from base class
 
virtual void SaveLightYield (const int i=1)
 
virtual bool hasMotherSubsystem () const
 
virtual void SaveAllHits (bool i=true)
 
virtual void HitNodeName (const std::string &name)
 
- 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
 
virtual void SetHitNodeName (const std::string &, const std::string &)
 Set the G4HIT node names from Subsystem rather than constructing your own.
 

Private Member Functions

int FindTowerIndexFromPosition (G4StepPoint *prePoint, int &j, int &k)
 

Private Attributes

EICG4BwdSubsystemm_Subsystem
 pointer to the detector
 
EICG4BwdDetectorm_Detector
 
const PHParametersm_Params
 
PHG4HitContainerm_HitContainer =nullptr
 pointer to hit container
 
PHG4Hitm_Hit
 
PHG4Showerm_SaveShower
 
G4VPhysicalVolumem_SaveVolPre
 
G4VPhysicalVolumem_SaveVolPost
 
bool m_SaveAllHitsFlag = false
 
int m_SaveLightYieldFlag
 
int m_SaveTrackId
 
int m_SavePreStepStatus
 
int m_SavePostStepStatus
 
int m_ActiveFlag = 0
 
int m_BlackHoleFlag = 0
 
int m_UseG4StepsFlag
 
double m_Zmin
 
double m_Zmax
 
double m_Tmin
 
double m_Tmax
 
double m_EdepSum
 
double m_EabsSum
 
double m_EionSum
 
std::string m_HitNodeName
 

Detailed Description

Definition at line 23 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 23 of file EICG4BwdSteppingAction.h

Constructor & Destructor Documentation

EICG4BwdSteppingAction::EICG4BwdSteppingAction ( EICG4BwdSubsystem subsys,
EICG4BwdDetector detector,
const PHParameters parameters 
)

constructor

Definition at line 66 of file EICG4BwdSteppingAction.cc.

View newest version in sPHENIX GitHub at line 66 of file EICG4BwdSteppingAction.cc

References cm, e6, m_Zmax, and m_Zmin.

EICG4BwdSteppingAction::~EICG4BwdSteppingAction ( )
overridevirtual

destructor

Definition at line 97 of file EICG4BwdSteppingAction.cc.

View newest version in sPHENIX GitHub at line 97 of file EICG4BwdSteppingAction.cc

References m_Hit.

Member Function Documentation

int EICG4BwdSteppingAction::FindTowerIndexFromPosition ( G4StepPoint prePoint,
int j,
int k 
)
private

Definition at line 415 of file EICG4BwdSteppingAction.cc.

View newest version in sPHENIX GitHub at line 415 of file EICG4BwdSteppingAction.cc

References cm, PHParameters::get_double_param(), G4StepPoint::GetPosition(), int(), m_Params, width, CLHEP::Hep3Vector::x(), and CLHEP::Hep3Vector::y().

Referenced by UserSteppingAction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool EICG4BwdSteppingAction::hasMotherSubsystem ( ) const
virtual

Definition at line 442 of file EICG4BwdSteppingAction.cc.

View newest version in sPHENIX GitHub at line 442 of file EICG4BwdSteppingAction.cc

References PHG4Subsystem::GetMotherSubsystem(), and m_Subsystem.

Referenced by UserSteppingAction().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

virtual void EICG4BwdSteppingAction::HitNodeName ( const std::string &  name)
inlinevirtual

Definition at line 44 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 44 of file EICG4BwdSteppingAction.h

References m_HitNodeName.

virtual void EICG4BwdSteppingAction::SaveAllHits ( bool  i = true)
inlinevirtual

Definition at line 42 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 42 of file EICG4BwdSteppingAction.h

References m_SaveAllHitsFlag.

virtual void EICG4BwdSteppingAction::SaveLightYield ( const int  i = 1)
inlinevirtual

Definition at line 38 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 38 of file EICG4BwdSteppingAction.h

References m_SaveLightYieldFlag.

void EICG4BwdSteppingAction::SetInterfacePointers ( PHCompositeNode topNode)
overridevirtual

reimplemented from base class

Reimplemented from PHG4SteppingAction.

Definition at line 432 of file EICG4BwdSteppingAction.cc.

View newest version in sPHENIX GitHub at line 432 of file EICG4BwdSteppingAction.cc

References m_HitContainer, and m_HitNodeName.

bool EICG4BwdSteppingAction::UserSteppingAction ( const G4Step aStep,
bool  was_used 
)
overridevirtual

stepping action

m_EdepSum += edep; if (whichactive > 0) { m_EionSum += eion; }

Implements PHG4SteppingAction.

Definition at line 108 of file EICG4BwdSteppingAction.cc.

View newest version in sPHENIX GitHub at line 108 of file EICG4BwdSteppingAction.cc

References PHG4Shower::add_g4hit_id(), PHG4HitContainer::AddHit(), cm, edep, fAtRestDoItProc, fGeomBoundary, FindTowerIndexFromPosition(), fPostStepDoItProc, fStopAndKill, fUndefined, fWorldBoundary, PHG4Hit::get_edep(), PHG4Hit::get_eion(), PHG4Hit::get_hit_id(), EICG4BwdDetector::get_Layer(), PHG4Hit::get_light_yield(), PHG4Hit::get_x(), PHG4Hit::get_z(), G4StepPoint::GetGlobalTime(), G4Track::GetGlobalTime(), PHG4HitContainer::GetID(), G4Track::GetKineticEnergy(), G4StepPoint::GetMomentum(), PHG4SteppingAction::GetName(), G4VPhysicalVolume::GetName(), G4Step::GetNonIonizingEnergyDeposit(), G4Track::GetParticleDefinition(), G4ParticleDefinition::GetParticleName(), G4ParticleDefinition::GetPDGEncoding(), G4StepPoint::GetPosition(), G4Step::GetPostStepPoint(), G4Step::GetPreStepPoint(), PHG4StepStatusDecode::GetStepStatus(), G4StepPoint::GetStepStatus(), G4Step::GetTotalEnergyDeposit(), G4StepPoint::GetTouchableHandle(), G4Step::GetTrack(), G4Track::GetTrackID(), G4Track::GetTrackStatus(), G4Track::GetUserInformation(), PHG4SteppingAction::GetVisibleEnergyDeposition(), G4VTouchable::GetVolume(), GeV, hasMotherSubsystem(), isfinite, EICG4BwdDetector::IsInDetector(), m_ActiveFlag, m_BlackHoleFlag, m_Detector, m_EabsSum, m_EdepSum, m_Hit, m_HitContainer, m_SaveAllHitsFlag, m_SaveLightYieldFlag, m_SavePostStepStatus, m_SavePreStepStatus, m_SaveShower, m_SaveTrackId, m_SaveVolPost, m_SaveVolPre, m_Tmax, m_Tmin, m_UseG4StepsFlag, m_Zmax, m_Zmin, nanosecond, G4InuclParticleNames::pp, PHG4Hit::Reset(), PHG4Hit::set_edep(), PHG4Hit::set_eion(), PHG4Hit::set_hit_type(), PHG4Hit::set_index_j(), PHG4Hit::set_index_k(), PHG4Hit::set_layer(), PHG4Hit::set_light_yield(), PHG4Hit::set_px(), PHG4Hit::set_py(), PHG4Hit::set_pz(), PHG4Hit::set_shower_id(), PHG4Hit::set_t(), PHG4Hit::set_trkid(), PHG4Hit::set_x(), PHG4Hit::set_y(), PHG4Hit::set_z(), G4Track::SetTrackStatus(), EICG4BwdDetector::SuperDetector(), Acts::Test::volume, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

Member Data Documentation

int EICG4BwdSteppingAction::m_ActiveFlag = 0
private

Definition at line 66 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4BwdSteppingAction::m_BlackHoleFlag = 0
private

Definition at line 67 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4BwdDetector* EICG4BwdSteppingAction::m_Detector
private

Definition at line 51 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4BwdSteppingAction::m_EabsSum
private

Definition at line 74 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4BwdSteppingAction::m_EdepSum
private

Definition at line 73 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4BwdSteppingAction::m_EionSum
private

Definition at line 75 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 75 of file EICG4BwdSteppingAction.h

PHG4Hit* EICG4BwdSteppingAction::m_Hit
private

Definition at line 56 of file EICG4BwdSteppingAction.h.

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

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

PHG4HitContainer* EICG4BwdSteppingAction::m_HitContainer =nullptr
private

pointer to hit container

Definition at line 55 of file EICG4BwdSteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

std::string EICG4BwdSteppingAction::m_HitNodeName
private

Definition at line 76 of file EICG4BwdSteppingAction.h.

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

Referenced by HitNodeName(), and SetInterfacePointers().

const PHParameters* EICG4BwdSteppingAction::m_Params
private

Definition at line 53 of file EICG4BwdSteppingAction.h.

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

Referenced by FindTowerIndexFromPosition().

bool EICG4BwdSteppingAction::m_SaveAllHitsFlag = false
private

Definition at line 61 of file EICG4BwdSteppingAction.h.

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

Referenced by SaveAllHits(), and UserSteppingAction().

int EICG4BwdSteppingAction::m_SaveLightYieldFlag
private

Definition at line 62 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 62 of file EICG4BwdSteppingAction.h

Referenced by SaveLightYield(), and UserSteppingAction().

int EICG4BwdSteppingAction::m_SavePostStepStatus
private

Definition at line 65 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4BwdSteppingAction::m_SavePreStepStatus
private

Definition at line 64 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 64 of file EICG4BwdSteppingAction.h

Referenced by UserSteppingAction().

PHG4Shower* EICG4BwdSteppingAction::m_SaveShower
private

Definition at line 57 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4BwdSteppingAction::m_SaveTrackId
private

Definition at line 63 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 63 of file EICG4BwdSteppingAction.h

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4BwdSteppingAction::m_SaveVolPost
private

Definition at line 59 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4BwdSteppingAction::m_SaveVolPre
private

Definition at line 58 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4BwdSubsystem* EICG4BwdSteppingAction::m_Subsystem
private

pointer to the detector

Definition at line 50 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 50 of file EICG4BwdSteppingAction.h

Referenced by hasMotherSubsystem().

double EICG4BwdSteppingAction::m_Tmax
private

Definition at line 72 of file EICG4BwdSteppingAction.h.

View newest version in sPHENIX GitHub at line 72 of file EICG4BwdSteppingAction.h

Referenced by UserSteppingAction().

double EICG4BwdSteppingAction::m_Tmin
private

Definition at line 71 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4BwdSteppingAction::m_UseG4StepsFlag
private

Definition at line 68 of file EICG4BwdSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4BwdSteppingAction::m_Zmax
private

Definition at line 70 of file EICG4BwdSteppingAction.h.

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

Referenced by EICG4BwdSteppingAction(), and UserSteppingAction().

double EICG4BwdSteppingAction::m_Zmin
private

Definition at line 69 of file EICG4BwdSteppingAction.h.

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

Referenced by EICG4BwdSteppingAction(), and UserSteppingAction().


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