CMS 3D CMS Logo

TrackingAction.h
Go to the documentation of this file.
1 #ifndef SimG4Core_TrackingAction_H
2 #define SimG4Core_TrackingAction_H
3 
7 
8 #include "G4UserTrackingAction.hh"
9 
10 class EventAction;
11 class TrackWithHistory;
12 class BeginOfTrack;
13 class EndOfTrack;
14 class CMSSteppingVerbose;
15 
16 class TrackingAction : public G4UserTrackingAction
17 {
18 public:
19  explicit TrackingAction(EventAction * ea, const edm::ParameterSet & ps,
21  ~TrackingAction() override;
22 
23  void PreUserTrackingAction(const G4Track * aTrack) override;
24  void PostUserTrackingAction(const G4Track * aTrack) override;
25 
27  inline const G4Track* geant4Track() const { return g4Track_; }
28  inline G4TrackingManager * getTrackManager() { return fpTrackingManager; }
29 
32 
33 private:
34 
39  const G4Track * g4Track_;
41 };
42 
43 #endif
TrackWithHistory * currentTrackWithHistory()
const G4Track * g4Track_
TrackInformationExtractor extractor_
G4TrackingManager * getTrackManager()
CMSSteppingVerbose * steppingVerbose_
TrackWithHistory * currentTrack_
~TrackingAction() override
EventAction * eventAction_
TrackingAction(EventAction *ea, const edm::ParameterSet &ps, CMSSteppingVerbose *)
void PreUserTrackingAction(const G4Track *aTrack) override
SimActivityRegistry::EndOfTrackSignal m_endOfTrackSignal
void PostUserTrackingAction(const G4Track *aTrack) override
const G4Track * geant4Track() const
SimActivityRegistry::BeginOfTrackSignal m_beginOfTrackSignal