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

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4rp/EICG4RPSteppingAction.h>

+ Inheritance diagram for EICG4RPSteppingAction:
+ Collaboration diagram for EICG4RPSteppingAction:

Public Member Functions

 EICG4RPSteppingAction (EICG4RPSubsystem *subsys, EICG4RPDetector *detector, const PHParameters *parameters)
 constructor
 
virtual ~EICG4RPSteppingAction () 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)
 
virtual void HitNodeNameVirt (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 Attributes

EICG4RPSubsystemm_Subsystem
 pointer to the detector
 
EICG4RPDetectorm_Detector
 
const PHParametersm_Params
 
PHG4HitContainerm_HitContainer
 pointer to hit container
 
PHG4HitContainerm_HitContainerVirt
 
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
 
int m_BlackHoleFlag
 
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
 
std::string m_HitNodeNameVirt
 

Detailed Description

Definition at line 20 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 20 of file EICG4RPSteppingAction.h

Constructor & Destructor Documentation

EICG4RPSteppingAction::EICG4RPSteppingAction ( EICG4RPSubsystem subsys,
EICG4RPDetector detector,
const PHParameters parameters 
)

constructor

Definition at line 52 of file EICG4RPSteppingAction.cc.

View newest version in sPHENIX GitHub at line 52 of file EICG4RPSteppingAction.cc

EICG4RPSteppingAction::~EICG4RPSteppingAction ( )
overridevirtual

destructor

Definition at line 78 of file EICG4RPSteppingAction.cc.

View newest version in sPHENIX GitHub at line 78 of file EICG4RPSteppingAction.cc

References m_Hit.

Member Function Documentation

bool EICG4RPSteppingAction::hasMotherSubsystem ( ) const
virtual

Definition at line 414 of file EICG4RPSteppingAction.cc.

View newest version in sPHENIX GitHub at line 414 of file EICG4RPSteppingAction.cc

References PHG4Subsystem::GetMotherSubsystem(), and m_Subsystem.

+ Here is the call graph for this function:

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

Definition at line 41 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 41 of file EICG4RPSteppingAction.h

References m_HitNodeName.

virtual void EICG4RPSteppingAction::HitNodeNameVirt ( const std::string &  name)
inlinevirtual

Definition at line 42 of file EICG4RPSteppingAction.h.

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

References m_HitNodeNameVirt.

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

Definition at line 39 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 39 of file EICG4RPSteppingAction.h

References m_SaveAllHitsFlag.

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

Definition at line 35 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 35 of file EICG4RPSteppingAction.h

References m_SaveLightYieldFlag.

void EICG4RPSteppingAction::SetInterfacePointers ( PHCompositeNode topNode)
overridevirtual

reimplemented from base class

Reimplemented from PHG4SteppingAction.

Definition at line 400 of file EICG4RPSteppingAction.cc.

View newest version in sPHENIX GitHub at line 400 of file EICG4RPSteppingAction.cc

References m_HitContainer, m_HitContainerVirt, m_HitNodeName, and m_HitNodeNameVirt.

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

stepping action

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

Implements PHG4SteppingAction.

Definition at line 89 of file EICG4RPSteppingAction.cc.

View newest version in sPHENIX GitHub at line 89 of file EICG4RPSteppingAction.cc

References PHG4Shower::add_g4hit_id(), PHG4HitContainer::AddHit(), cm, edep, fAtRestDoItProc, fGeomBoundary, fPostStepDoItProc, fStopAndKill, fUndefined, fWorldBoundary, PHG4Hit::get_edep(), PHG4Hit::get_eion(), PHG4Hit::get_hit_id(), EICG4RPDetector::get_Layer(), PHG4Hit::get_light_yield(), PHG4Hit::get_x(), 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, isfinite, EICG4RPDetector::IsInDetector(), EICG4RPDetector::IsInVirtualDetector(), m_ActiveFlag, m_BlackHoleFlag, m_Detector, m_EabsSum, m_EdepSum, m_EionSum, m_Hit, m_HitContainer, m_HitContainerVirt, m_SaveAllHitsFlag, m_SaveLightYieldFlag, m_SavePostStepStatus, m_SavePreStepStatus, m_SaveShower, m_SaveTrackId, m_SaveVolPost, m_SaveVolPre, m_Tmax, m_Tmin, m_UseG4StepsFlag, nanosecond, G4InuclParticleNames::pp, PHG4Hit::Reset(), PHG4Hit::set_edep(), PHG4Hit::set_eion(), PHG4Hit::set_hit_type(), 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(), Acts::Test::volume, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

Member Data Documentation

int EICG4RPSteppingAction::m_ActiveFlag
private

Definition at line 63 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4RPSteppingAction::m_BlackHoleFlag
private

Definition at line 64 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4RPDetector* EICG4RPSteppingAction::m_Detector
private

Definition at line 47 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 47 of file EICG4RPSteppingAction.h

Referenced by UserSteppingAction().

double EICG4RPSteppingAction::m_EabsSum
private

Definition at line 71 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4RPSteppingAction::m_EdepSum
private

Definition at line 70 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4RPSteppingAction::m_EionSum
private

Definition at line 72 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

PHG4Hit* EICG4RPSteppingAction::m_Hit
private

Definition at line 53 of file EICG4RPSteppingAction.h.

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

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

PHG4HitContainer* EICG4RPSteppingAction::m_HitContainer
private

pointer to hit container

Definition at line 51 of file EICG4RPSteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

PHG4HitContainer* EICG4RPSteppingAction::m_HitContainerVirt
private

Definition at line 52 of file EICG4RPSteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

std::string EICG4RPSteppingAction::m_HitNodeName
private

Definition at line 73 of file EICG4RPSteppingAction.h.

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

Referenced by HitNodeName(), and SetInterfacePointers().

std::string EICG4RPSteppingAction::m_HitNodeNameVirt
private

Definition at line 74 of file EICG4RPSteppingAction.h.

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

Referenced by HitNodeNameVirt(), and SetInterfacePointers().

const PHParameters* EICG4RPSteppingAction::m_Params
private

Definition at line 49 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 49 of file EICG4RPSteppingAction.h

bool EICG4RPSteppingAction::m_SaveAllHitsFlag = false
private

Definition at line 58 of file EICG4RPSteppingAction.h.

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

Referenced by SaveAllHits(), and UserSteppingAction().

int EICG4RPSteppingAction::m_SaveLightYieldFlag
private

Definition at line 59 of file EICG4RPSteppingAction.h.

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

Referenced by SaveLightYield(), and UserSteppingAction().

int EICG4RPSteppingAction::m_SavePostStepStatus
private

Definition at line 62 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4RPSteppingAction::m_SavePreStepStatus
private

Definition at line 61 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

PHG4Shower* EICG4RPSteppingAction::m_SaveShower
private

Definition at line 54 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4RPSteppingAction::m_SaveTrackId
private

Definition at line 60 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4RPSteppingAction::m_SaveVolPost
private

Definition at line 56 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4RPSteppingAction::m_SaveVolPre
private

Definition at line 55 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4RPSubsystem* EICG4RPSteppingAction::m_Subsystem
private

pointer to the detector

Definition at line 46 of file EICG4RPSteppingAction.h.

View newest version in sPHENIX GitHub at line 46 of file EICG4RPSteppingAction.h

Referenced by hasMotherSubsystem().

double EICG4RPSteppingAction::m_Tmax
private

Definition at line 69 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4RPSteppingAction::m_Tmin
private

Definition at line 68 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4RPSteppingAction::m_UseG4StepsFlag
private

Definition at line 65 of file EICG4RPSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4RPSteppingAction::m_Zmax
private

Definition at line 67 of file EICG4RPSteppingAction.h.

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

double EICG4RPSteppingAction::m_Zmin
private

Definition at line 66 of file EICG4RPSteppingAction.h.

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


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