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

#include <fun4all_eicdetectors/blob/master/simulation/g4simulation/g4b0/EICG4B0SteppingAction.h>

+ Inheritance diagram for EICG4B0SteppingAction:
+ Collaboration diagram for EICG4B0SteppingAction:

Public Member Functions

 EICG4B0SteppingAction (EICG4B0Subsystem *subsys, EICG4B0Detector *detector, const PHParameters *parameters)
 constructor
 
virtual ~EICG4B0SteppingAction () override
 destructor
 
virtual bool UserSteppingAction (const G4Step *, bool) override
 stepping action
 
virtual void SetInterfacePointers (PHCompositeNode *) override
 reimplemented from base class
 
virtual bool hasMotherSubsystem () const
 
virtual void SaveAllHits (bool i=true)
 
virtual void HitNodeName (const std::string &name)
 
void SetTowerSize (double twrsze)
 
void SetReadoutSize (double rdosze)
 
void SetDetectorSize (double detsze)
 
- 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

EICG4B0Subsystemm_Subsystem
 pointer to the detector
 
EICG4B0Detectorm_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_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 _towerdivision
 
double _tower_size
 
double _readout_size
 
double _detector_size
 
std::string m_HitNodeName
 

Detailed Description

Definition at line 23 of file EICG4B0SteppingAction.h.

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

Constructor & Destructor Documentation

EICG4B0SteppingAction::EICG4B0SteppingAction ( EICG4B0Subsystem subsys,
EICG4B0Detector detector,
const PHParameters parameters 
)

constructor

Definition at line 65 of file EICG4B0SteppingAction.cc.

View newest version in sPHENIX GitHub at line 65 of file EICG4B0SteppingAction.cc

References cm, e6, m_Zmax, and m_Zmin.

EICG4B0SteppingAction::~EICG4B0SteppingAction ( )
overridevirtual

destructor

Definition at line 99 of file EICG4B0SteppingAction.cc.

View newest version in sPHENIX GitHub at line 99 of file EICG4B0SteppingAction.cc

References m_Hit.

Member Function Documentation

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

Definition at line 461 of file EICG4B0SteppingAction.cc.

View newest version in sPHENIX GitHub at line 461 of file EICG4B0SteppingAction.cc

References _readout_size, _tower_size, _towerdivision, cm, G4StepPoint::GetPosition(), int(), 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 EICG4B0SteppingAction::hasMotherSubsystem ( ) const
virtual

Definition at line 518 of file EICG4B0SteppingAction.cc.

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

Definition at line 44 of file EICG4B0SteppingAction.h.

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

References m_HitNodeName.

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

Definition at line 42 of file EICG4B0SteppingAction.h.

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

References m_SaveAllHitsFlag.

void EICG4B0SteppingAction::SetDetectorSize ( double  detsze)
inline

Definition at line 54 of file EICG4B0SteppingAction.h.

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

References _detector_size.

void EICG4B0SteppingAction::SetInterfacePointers ( PHCompositeNode topNode)
overridevirtual

reimplemented from base class

Reimplemented from PHG4SteppingAction.

Definition at line 483 of file EICG4B0SteppingAction.cc.

View newest version in sPHENIX GitHub at line 483 of file EICG4B0SteppingAction.cc

References m_HitContainer, and m_HitNodeName.

void EICG4B0SteppingAction::SetReadoutSize ( double  rdosze)
inline

Definition at line 50 of file EICG4B0SteppingAction.h.

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

References _readout_size.

void EICG4B0SteppingAction::SetTowerSize ( double  twrsze)
inline

Definition at line 46 of file EICG4B0SteppingAction.h.

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

References _tower_size.

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

stepping action

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

Implements PHG4SteppingAction.

Definition at line 110 of file EICG4B0SteppingAction.cc.

View newest version in sPHENIX GitHub at line 110 of file EICG4B0SteppingAction.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(), EICG4B0Detector::get_Layer(), PHG4Hit::get_light_yield(), PHParameters::get_string_param(), 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(), G4VTouchable::GetVolume(), GeV, hasMotherSubsystem(), isfinite, EICG4B0Detector::IsInDetector(), m_ActiveFlag, m_BlackHoleFlag, m_Detector, m_EabsSum, m_EdepSum, m_Hit, m_HitContainer, m_Params, m_SaveAllHitsFlag, 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(), EICG4B0Detector::SuperDetector(), Acts::Test::volume, CLHEP::Hep3Vector::x(), CLHEP::Hep3Vector::y(), and CLHEP::Hep3Vector::z().

Member Data Documentation

double EICG4B0SteppingAction::_detector_size
private

Definition at line 93 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 93 of file EICG4B0SteppingAction.h

Referenced by SetDetectorSize().

double EICG4B0SteppingAction::_readout_size
private

Definition at line 92 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 92 of file EICG4B0SteppingAction.h

Referenced by FindTowerIndexFromPosition(), and SetReadoutSize().

double EICG4B0SteppingAction::_tower_size
private

Definition at line 91 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 91 of file EICG4B0SteppingAction.h

Referenced by FindTowerIndexFromPosition(), and SetTowerSize().

double EICG4B0SteppingAction::_towerdivision
private

Definition at line 90 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 90 of file EICG4B0SteppingAction.h

Referenced by FindTowerIndexFromPosition().

int EICG4B0SteppingAction::m_ActiveFlag = 0
private

Definition at line 81 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4B0SteppingAction::m_BlackHoleFlag = 0
private

Definition at line 82 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4B0Detector* EICG4B0SteppingAction::m_Detector
private

Definition at line 64 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

double EICG4B0SteppingAction::m_EabsSum
private

Definition at line 89 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 89 of file EICG4B0SteppingAction.h

Referenced by UserSteppingAction().

double EICG4B0SteppingAction::m_EdepSum
private

Definition at line 88 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 88 of file EICG4B0SteppingAction.h

Referenced by UserSteppingAction().

PHG4Hit* EICG4B0SteppingAction::m_Hit
private

Definition at line 70 of file EICG4B0SteppingAction.h.

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

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

PHG4HitContainer* EICG4B0SteppingAction::m_HitContainer = nullptr
private

pointer to hit container

Definition at line 68 of file EICG4B0SteppingAction.h.

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

Referenced by SetInterfacePointers(), and UserSteppingAction().

std::string EICG4B0SteppingAction::m_HitNodeName
private

Definition at line 94 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 94 of file EICG4B0SteppingAction.h

Referenced by HitNodeName(), and SetInterfacePointers().

const PHParameters* EICG4B0SteppingAction::m_Params
private

Definition at line 66 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

bool EICG4B0SteppingAction::m_SaveAllHitsFlag = false
private

Definition at line 76 of file EICG4B0SteppingAction.h.

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

Referenced by SaveAllHits(), and UserSteppingAction().

int EICG4B0SteppingAction::m_SavePostStepStatus
private

Definition at line 80 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4B0SteppingAction::m_SavePreStepStatus
private

Definition at line 79 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

PHG4Shower* EICG4B0SteppingAction::m_SaveShower
private

Definition at line 72 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

int EICG4B0SteppingAction::m_SaveTrackId
private

Definition at line 78 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4B0SteppingAction::m_SaveVolPost
private

Definition at line 74 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

G4VPhysicalVolume* EICG4B0SteppingAction::m_SaveVolPre
private

Definition at line 73 of file EICG4B0SteppingAction.h.

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

Referenced by UserSteppingAction().

EICG4B0Subsystem* EICG4B0SteppingAction::m_Subsystem
private

pointer to the detector

Definition at line 63 of file EICG4B0SteppingAction.h.

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

Referenced by hasMotherSubsystem().

double EICG4B0SteppingAction::m_Tmax
private

Definition at line 87 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 87 of file EICG4B0SteppingAction.h

Referenced by UserSteppingAction().

double EICG4B0SteppingAction::m_Tmin
private

Definition at line 86 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 86 of file EICG4B0SteppingAction.h

Referenced by UserSteppingAction().

int EICG4B0SteppingAction::m_UseG4StepsFlag
private

Definition at line 83 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 83 of file EICG4B0SteppingAction.h

Referenced by UserSteppingAction().

double EICG4B0SteppingAction::m_Zmax
private

Definition at line 85 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 85 of file EICG4B0SteppingAction.h

Referenced by EICG4B0SteppingAction(), and UserSteppingAction().

double EICG4B0SteppingAction::m_Zmin
private

Definition at line 84 of file EICG4B0SteppingAction.h.

View newest version in sPHENIX GitHub at line 84 of file EICG4B0SteppingAction.h

Referenced by EICG4B0SteppingAction(), and UserSteppingAction().


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