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

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4lumi/EICG4LumiSteppingAction.h>

+ Inheritance diagram for EICG4LumiSteppingAction:
+ Collaboration diagram for EICG4LumiSteppingAction:

Public Member Functions

 EICG4LumiSteppingAction (EICG4LumiSubsystem *subsys, EICG4LumiDetector *, const PHParameters *parameters)
 constructor
 
virtual ~EICG4LumiSteppingAction () 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 HitNodeNameCAL (const std::string &name)
 
virtual void HitNodeNameTracking (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 Member Functions

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

Private Attributes

EICG4LumiSubsystemm_Subsystem
 pointer to the detector
 
EICG4LumiDetectorm_Detector
 pointer to the detector
 
const PHParametersm_Params
 
PHG4HitContainerm_HitContainerCAL
 pointer to hit container
 
PHG4HitContainerm_HitContainerTracking
 
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_HitNodeNameCAL
 
std::string m_HitNodeNameTracking
 
std::string m_HitNodeNameVirt
 

Detailed Description

Definition at line 24 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 24 of file EICG4LumiSteppingAction.h

Constructor & Destructor Documentation

EICG4LumiSteppingAction::EICG4LumiSteppingAction ( EICG4LumiSubsystem subsys,
EICG4LumiDetector detector,
const PHParameters parameters 
)

constructor

Definition at line 66 of file EICG4LumiSteppingAction.cc.

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

References cm, e6, m_Zmax, and m_Zmin.

EICG4LumiSteppingAction::~EICG4LumiSteppingAction ( )
overridevirtual

destructor

Definition at line 97 of file EICG4LumiSteppingAction.cc.

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

References m_Hit.

Member Function Documentation

int EICG4LumiSteppingAction::FindTowerIndexFromPosition ( G4StepPoint prePoint,
int j,
int k 
)
private
bool EICG4LumiSteppingAction::hasMotherSubsystem ( ) const
virtual

Definition at line 425 of file EICG4LumiSteppingAction.cc.

View newest version in sPHENIX GitHub at line 425 of file EICG4LumiSteppingAction.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 EICG4LumiSteppingAction::HitNodeNameCAL ( const std::string &  name)
inlinevirtual

Definition at line 42 of file EICG4LumiSteppingAction.h.

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

References m_HitNodeNameCAL.

virtual void EICG4LumiSteppingAction::HitNodeNameTracking ( const std::string &  name)
inlinevirtual

Definition at line 43 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 43 of file EICG4LumiSteppingAction.h

References m_HitNodeNameTracking.

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

Definition at line 44 of file EICG4LumiSteppingAction.h.

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

References m_HitNodeNameVirt.

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

Definition at line 41 of file EICG4LumiSteppingAction.h.

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

References m_SaveAllHitsFlag.

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

Definition at line 39 of file EICG4LumiSteppingAction.h.

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

References m_SaveLightYieldFlag.

void EICG4LumiSteppingAction::SetInterfacePointers ( PHCompositeNode topNode)
overridevirtual

reimplemented from base class

Reimplemented from PHG4SteppingAction.

Definition at line 391 of file EICG4LumiSteppingAction.cc.

View newest version in sPHENIX GitHub at line 391 of file EICG4LumiSteppingAction.cc

References m_HitContainerCAL, m_HitContainerTracking, m_HitContainerVirt, m_HitNodeNameCAL, m_HitNodeNameTracking, m_HitNodeNameVirt, and PHWHERE.

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

stepping action

Implements PHG4SteppingAction.

Definition at line 104 of file EICG4LumiSteppingAction.cc.

View newest version in sPHENIX GitHub at line 104 of file EICG4LumiSteppingAction.cc

References PHG4Shower::add_g4hit_id(), PHG4HitContainer::AddHit(), cm, G4String::compareTo(), edep, fAtRestDoItProc, fGeomBoundary, fPostStepDoItProc, fStopAndKill, fUndefined, fWorldBoundary, PHG4Hit::get_edep(), PHG4Hit::get_eion(), PHG4Hit::get_hit_id(), PHG4Hit::get_light_yield(), PHG4Hit::get_x(), PHG4Hit::get_z(), G4VPhysicalVolume::GetCopyNo(), G4StepPoint::GetGlobalTime(), G4Track::GetGlobalTime(), PHG4HitContainer::GetID(), G4Track::GetKineticEnergy(), G4VPhysicalVolume::GetLogicalVolume(), G4LogicalVolume::GetMaterial(), G4StepPoint::GetMomentum(), PHG4SteppingAction::GetName(), G4VPhysicalVolume::GetName(), G4Material::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, EICG4LumiDetector::IsInDetector(), EICG4LumiDetector::IsInVirtualDetector(), m_ActiveFlag, m_BlackHoleFlag, m_Detector, m_EabsSum, m_EdepSum, m_Hit, m_HitContainerCAL, m_HitContainerTracking, m_HitContainerVirt, 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, mat, 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(), EICG4LumiDetector::SuperDetector(), Acts::Test::volume, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

Member Data Documentation

int EICG4LumiSteppingAction::m_ActiveFlag
private

Definition at line 70 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4LumiSteppingAction::m_BlackHoleFlag
private

Definition at line 71 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4LumiDetector* EICG4LumiSteppingAction::m_Detector
private

pointer to the detector

Definition at line 54 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4LumiSteppingAction::m_EabsSum
private

Definition at line 78 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 78 of file EICG4LumiSteppingAction.h

Referenced by UserSteppingAction().

double EICG4LumiSteppingAction::m_EdepSum
private

Definition at line 77 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 77 of file EICG4LumiSteppingAction.h

Referenced by UserSteppingAction().

double EICG4LumiSteppingAction::m_EionSum
private

Definition at line 79 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 79 of file EICG4LumiSteppingAction.h

PHG4Hit* EICG4LumiSteppingAction::m_Hit
private

Definition at line 60 of file EICG4LumiSteppingAction.h.

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

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

PHG4HitContainer* EICG4LumiSteppingAction::m_HitContainerCAL
private

pointer to hit container

Definition at line 57 of file EICG4LumiSteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

PHG4HitContainer* EICG4LumiSteppingAction::m_HitContainerTracking
private

Definition at line 58 of file EICG4LumiSteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

PHG4HitContainer* EICG4LumiSteppingAction::m_HitContainerVirt
private

Definition at line 59 of file EICG4LumiSteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

std::string EICG4LumiSteppingAction::m_HitNodeNameCAL
private

Definition at line 80 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 80 of file EICG4LumiSteppingAction.h

Referenced by HitNodeNameCAL(), and SetInterfacePointers().

std::string EICG4LumiSteppingAction::m_HitNodeNameTracking
private

Definition at line 81 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 81 of file EICG4LumiSteppingAction.h

Referenced by HitNodeNameTracking(), and SetInterfacePointers().

std::string EICG4LumiSteppingAction::m_HitNodeNameVirt
private

Definition at line 82 of file EICG4LumiSteppingAction.h.

View newest version in sPHENIX GitHub at line 82 of file EICG4LumiSteppingAction.h

Referenced by HitNodeNameVirt(), and SetInterfacePointers().

const PHParameters* EICG4LumiSteppingAction::m_Params
private

Definition at line 55 of file EICG4LumiSteppingAction.h.

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

bool EICG4LumiSteppingAction::m_SaveAllHitsFlag = false
private

Definition at line 65 of file EICG4LumiSteppingAction.h.

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

Referenced by SaveAllHits(), and UserSteppingAction().

int EICG4LumiSteppingAction::m_SaveLightYieldFlag
private

Definition at line 66 of file EICG4LumiSteppingAction.h.

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

Referenced by SaveLightYield(), and UserSteppingAction().

int EICG4LumiSteppingAction::m_SavePostStepStatus
private

Definition at line 69 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4LumiSteppingAction::m_SavePreStepStatus
private

Definition at line 68 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

PHG4Shower* EICG4LumiSteppingAction::m_SaveShower
private

Definition at line 61 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4LumiSteppingAction::m_SaveTrackId
private

Definition at line 67 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4LumiSteppingAction::m_SaveVolPost
private

Definition at line 63 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4LumiSteppingAction::m_SaveVolPre
private

Definition at line 62 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4LumiSubsystem* EICG4LumiSteppingAction::m_Subsystem
private

pointer to the detector

Definition at line 51 of file EICG4LumiSteppingAction.h.

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

Referenced by hasMotherSubsystem().

double EICG4LumiSteppingAction::m_Tmax
private

Definition at line 76 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4LumiSteppingAction::m_Tmin
private

Definition at line 75 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4LumiSteppingAction::m_UseG4StepsFlag
private

Definition at line 72 of file EICG4LumiSteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4LumiSteppingAction::m_Zmax
private

Definition at line 74 of file EICG4LumiSteppingAction.h.

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

Referenced by EICG4LumiSteppingAction(), and UserSteppingAction().

double EICG4LumiSteppingAction::m_Zmin
private

Definition at line 73 of file EICG4LumiSteppingAction.h.

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

Referenced by EICG4LumiSteppingAction(), and UserSteppingAction().


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