1 #ifndef SimG4Core_SteppingAction_H 2 #define SimG4Core_SteppingAction_H 8 #include "G4LogicalVolume.hh" 10 #include "G4UserSteppingAction.hh" 11 #include "G4VPhysicalVolume.hh" 12 #include "G4VTouchable.hh" 34 inline bool isForZDC(
const G4LogicalVolume* lv,
int pdg)
const;
36 bool isLowEnergy(
const G4LogicalVolume*,
const G4Track*)
const;
39 const G4VPhysicalVolume*
tracker{
nullptr};
40 const G4VPhysicalVolume*
calo{
nullptr};
const G4LogicalVolume * m_CMStoZDC
void UserSteppingAction(const G4Step *aStep) final
const G4VPhysicalVolume * tracker
std::vector< int > ekinPDG
std::vector< const G4Region * > deadRegions
double theCriticalDensity
SimActivityRegistry::G4StepSignal m_g4StepSignal
bool isOutOfTimeWindow(const G4Region *reg, const double &time) const
const CMSSteppingVerbose * steppingVerbose
bool isForZDC(const G4LogicalVolume *lv, int pdg) const
void PrintKilledTrack(const G4Track *, const TrackStatus &) const
std::vector< std::string > deadRegionNames
bool isLowEnergy(const G4LogicalVolume *, const G4Track *) const
std::vector< double > maxTrackTimes
bool isInsideDeadRegion(const G4Region *reg) const
std::vector< G4LogicalVolume * > ekinVolumes
double theCriticalEnergyForVacuum
const G4Region * m_ZDCRegion
std::vector< double > ekinMins
std::vector< std::string > maxTimeNames
std::vector< std::string > ekinNames
double maxTrackTimeForward
SteppingAction(const CMSSteppingVerbose *, const edm::ParameterSet &, bool, bool)
unsigned int ndeadRegions
~SteppingAction() override=default
std::vector< std::string > ekinParticles
std::vector< const G4Region * > maxTimeRegions