CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
CMSSteppingVerbose.h
Go to the documentation of this file.
1 #ifndef SimG4Core_CMSSteppingVerbose_h
2 #define SimG4Core_CMSSteppingVerbose_h
3 
4 //---------------------------------------------------------------
5 //
6 // CMSSteppingVerbose is intend to replace Geant4 default stepping
7 // verbosity class in order to keep necessary
8 // verbosity options when G4VERBOSE flag is disabled.
9 // The goal is to provide easy way to print
10 // per event, per track, per step.
11 //
12 // V.Ivanchenko 10.06.2016
13 //
14 //---------------------------------------------------------------
15 
16 #include "globals.hh"
17 #include <vector>
18 
19 class G4Event;
20 class G4Track;
21 class G4Step;
22 class G4SteppingManager;
23 class G4SteppingVerbose;
24 
26 public:
27  explicit CMSSteppingVerbose(
28  G4int verb, G4double ekin, std::vector<G4int>& evtNum, std::vector<G4int>& primV, std::vector<G4int>& trNum);
30 
31  void BeginOfEvent(const G4Event*);
32  void TrackStarted(const G4Track*, bool isKilled);
33  void TrackEnded(const G4Track*) const;
34  void StackFilled(const G4Track*, bool isKilled) const;
35  void NextStep(const G4Step*, const G4SteppingManager* ptr, bool isKilled) const;
36 
37 private:
38  G4bool m_PrintEvent;
39  G4bool m_PrintTrack;
41  G4int m_verbose;
42  G4int m_nEvents;
43  G4int m_nVertex;
44  G4int m_nTracks;
45  std::vector<G4int> m_EventNumbers;
46  std::vector<G4int> m_PrimaryVertex;
47  std::vector<G4int> m_TrackNumbers;
48  G4double m_EkinThreshold;
49  G4SteppingVerbose* m_g4SteppingVerbose;
50 };
51 
52 #endif
void StackFilled(const G4Track *, bool isKilled) const
std::vector< G4int > m_EventNumbers
void NextStep(const G4Step *, const G4SteppingManager *ptr, bool isKilled) const
void TrackEnded(const G4Track *) const
std::vector< G4int > m_TrackNumbers
CMSSteppingVerbose(G4int verb, G4double ekin, std::vector< G4int > &evtNum, std::vector< G4int > &primV, std::vector< G4int > &trNum)
G4SteppingVerbose * m_g4SteppingVerbose
void BeginOfEvent(const G4Event *)
std::vector< G4int > m_PrimaryVertex
void TrackStarted(const G4Track *, bool isKilled)