13 #include "G4UImanager.hh" 14 #include "G4TrackingManager.hh" 15 #include <CLHEP/Units/SystemOfUnits.h> 22 endPrintTrackID_(
p.getParameter<
int>(
"EndPrintTrackID")),
23 checkTrack_(
p.getUntrackedParameter<
bool>(
"CheckTrack",
false)),
24 doFineCalo_(
p.getParameter<
bool>(
"DoFineCalo")),
25 saveCaloBoundaryInformation_(
p.getParameter<
bool>(
"SaveCaloBoundaryInformation")),
26 ekinMin_(
p.getParameter<double>(
"PersistencyEmin") *
CLHEP::GeV),
27 ekinMinRegion_(
p.getParameter<
std::
vector<double>>(
"RegionEmin")) {
28 double eth =
p.getParameter<
double>(
"EminFineTrack") * CLHEP::MeV;
60 double ekin = aTrack->GetKineticEnergy();
63 edm::LogVerbatim(
"DoFineCalo") <<
"PreUserTrackingAction: Start processing track " << aTrack->GetTrackID()
64 <<
" pdgid=" << aTrack->GetDefinition()->GetPDGEncoding()
65 <<
" ekin[GeV]=" << ekin / CLHEP::GeV <<
" vertex[cm]=(" 66 << aTrack->GetVertexPosition().x() / CLHEP::cm <<
"," 67 << aTrack->GetVertexPosition().y() / CLHEP::cm <<
"," 68 << aTrack->GetVertexPosition().z() / CLHEP::cm <<
")" 69 <<
" parentid=" << aTrack->GetParentID();
80 int id = aTrack->GetTrackID();
96 edm::LogVerbatim(
"TrackingAction") <<
"TrackingAction end track=" <<
id <<
" " 97 << aTrack->GetDefinition()->GetParticleName() <<
" proposed to be saved= " <<
ok 98 <<
" end point " << aTrack->GetPosition();
Log< level::Info, true > LogVerbatim
SimTrackManager * trackManager_
CMSSteppingVerbose * steppingVerbose_
TrackWithHistory * currentTrack_
TrackInformation * trkInfo_
TrackingAction(SimTrackManager *, CMSSteppingVerbose *, const edm::ParameterSet &ps)
bool saveCaloBoundaryInformation_
void PreUserTrackingAction(const G4Track *aTrack) override
void cleanTracksWithHistory()
SimActivityRegistry::EndOfTrackSignal m_endOfTrackSignal
std::vector< double > ekinMinRegion_
void addTrack(TrackWithHistory *iTrack, const G4Track *track, bool inHistory, bool withAncestor)
std::vector< G4Region * > ptrRegion_
void PostUserTrackingAction(const G4Track *aTrack) override
void trackStarted(const G4Track *, bool isKilled)
void setCrossedBoundaryPosMom(int id, const math::XYZTLorentzVectorF &position, const math::XYZTLorentzVectorF &momentum)
SimActivityRegistry::BeginOfTrackSignal m_beginOfTrackSignal