CMS 3D CMS Logo

TrackingVerboseAction.h
Go to the documentation of this file.
1 // File : TrackingVerboseAction.h
3 // Author: P.Arce 12.09.01
4 // Ported to CMSSW by: M. Stavrianakou 22.03.06
5 // Description:
6 // Modifications:
7 // Class with the commands to switch on/off the verbosity of tracking and event
8 // see TrackingVerboseAction for a detailed explanation
9 // for a given range of tracks each 'n' tracks
10 // the GEANT4 command '/tracking/verbose N' will be executed when trackNo is
11 // fTVTrackMin <= trackNo <= fTVTrackMax
12 // each fTVTrackStep tracks (starting at 1, not 0) and if the trackNo is
13 // fTVTrackMin <= trackNo <= fTVTrackMax
14 // each fTVTrackStep tracks (starting at 1, not 0)
15 //
17 
18 #ifndef SimG4Core_TrackingVerbose_h
19 #define SimG4Core_TrackingVerbose_h 1
20 
24 
25 #include "G4Step.hh"
26 
27 #include <vector>
28 
29 class BeginOfTrack;
30 class EndOfTrack;
31 class BeginOfEvent;
32 class BeginOfRun;
33 class G4Track;
34 class G4TrackingManager;
35 class G4VSteppingVerbose;
36 
38  public Observer<const BeginOfRun *>,
39  public Observer<const BeginOfEvent *>,
40  public Observer<const BeginOfTrack *>,
41  public Observer<const EndOfTrack *>,
42  public Observer<const G4Step *> {
43 public:
45  ~TrackingVerboseAction() override;
46  void update(const BeginOfRun *) override;
47  void update(const BeginOfEvent *) override;
48  void update(const BeginOfTrack *) override;
49  void update(const EndOfTrack *) override;
50  void update(const G4Step *) override;
51 
52 private:
53  void setTrackingVerbose(int verblev);
54  bool checkTrackingVerbose(const G4Track *);
55  void printTrackInfo(const G4Track *);
56 
57 private:
58  int fLarge;
59  bool fDEBUG;
60  bool fG4Verbose;
71  std::vector<int> fPdgIds;
72  G4TrackingManager *theTrackingManager;
73  G4VSteppingVerbose *fVerbose;
74 };
75 
76 #endif
TrackingVerboseAction::setTrackingVerbose
void setTrackingVerbose(int verblev)
Definition: TrackingVerboseAction.cc:272
TrackingVerboseAction::update
void update(const BeginOfRun *) override
This routine will be called when the appropriate signal arrives.
Definition: TrackingVerboseAction.cc:67
TrackingVerboseAction::fPdgIds
std::vector< int > fPdgIds
Definition: TrackingVerboseAction.h:71
Observer
Definition: Observer.h:23
TrackingVerboseAction::checkTrackingVerbose
bool checkTrackingVerbose(const G4Track *)
Definition: TrackingVerboseAction.cc:279
TrackingVerboseAction::~TrackingVerboseAction
~TrackingVerboseAction() override
Definition: TrackingVerboseAction.cc:65
TrackingVerboseAction
Definition: TrackingVerboseAction.h:37
TrackingVerboseAction::fHighEtPhotons
bool fHighEtPhotons
Definition: TrackingVerboseAction.h:61
EndOfTrack
Definition: EndOfTrack.h:6
Observer.h
TrackingVerboseAction::theTrackingManager
G4TrackingManager * theTrackingManager
Definition: TrackingVerboseAction.h:72
TrackingVerboseAction::fTVEventMin
int fTVEventMin
Definition: TrackingVerboseAction.h:65
TrackingVerboseAction::printTrackInfo
void printTrackInfo(const G4Track *)
Definition: TrackingVerboseAction.cc:295
SimWatcher.h
TrackingVerboseAction::fTVTrackMax
int fTVTrackMax
Definition: TrackingVerboseAction.h:63
TrackingVerboseAction::fDEBUG
bool fDEBUG
Definition: TrackingVerboseAction.h:59
BeginOfTrack
Definition: BeginOfTrack.h:6
TrackingVerboseAction::TrackingVerboseAction
TrackingVerboseAction(edm::ParameterSet const &p)
Definition: TrackingVerboseAction.cc:29
TrackingVerboseAction::fTkVerbThisEventON
bool fTkVerbThisEventON
Definition: TrackingVerboseAction.h:70
TrackingVerboseAction::fG4Verbose
bool fG4Verbose
Definition: TrackingVerboseAction.h:60
edm::ParameterSet
Definition: ParameterSet.h:47
AlCaHLTBitMon_ParallelJobs.p
def p
Definition: AlCaHLTBitMon_ParallelJobs.py:153
TrackingVerboseAction::fVerbose
G4VSteppingVerbose * fVerbose
Definition: TrackingVerboseAction.h:73
TrackingVerboseAction::fTVTrackStep
int fTVTrackStep
Definition: TrackingVerboseAction.h:64
BeginOfEvent
Definition: BeginOfEvent.h:6
BeginOfRun
Definition: BeginOfRun.h:6
TrackingVerboseAction::fTVEventStep
int fTVEventStep
Definition: TrackingVerboseAction.h:67
SimWatcher
Definition: SimWatcher.h:27
TrackingVerboseAction::fVerboseLevel
int fVerboseLevel
Definition: TrackingVerboseAction.h:68
TrackingVerboseAction::fTVTrackMin
int fTVTrackMin
Definition: TrackingVerboseAction.h:62
TrackingVerboseAction::fTVEventMax
int fTVEventMax
Definition: TrackingVerboseAction.h:66
TrackingVerboseAction::fLarge
int fLarge
Definition: TrackingVerboseAction.h:58
ParameterSet.h
TrackingVerboseAction::fTrackingVerboseON
bool fTrackingVerboseON
Definition: TrackingVerboseAction.h:69