CMS 3D CMS Logo

LaserAlignmentSimulation.h
Go to the documentation of this file.
1 #ifndef LaserAlignmentSimulation_LaserAlignmentSimulation_H
2 #define LaserAlignmentSimulation_LaserAlignmentSimulation_H
3 
13 
15 
16 // own classes
20 
21 #include <map>
22 #include <iostream>
23 
24 // Geant4 includes
25 
26 
27 class BeginOfRun;
28 class EndOfRun;
29 class BeginOfEvent;
30 class EndOfEvent;
31 class BeginOfTrack;
32 class EndOfTrack;
33 class G4Step;
34 
35 class G4Timer;
36 
37 class EventAction;
38 class RunAction;
39 class SteppingAction;
40 class TrackingAction;
41 
42 class LaserAlignmentSimulation : public Observer<const BeginOfRun *>,
43  public Observer<const BeginOfEvent *>,
44  public Observer<const G4Step *>,
45  public Observer<const EndOfEvent *>,
46  public Observer<const EndOfRun *>,
47  public Observer<const BeginOfTrack *>,
48  public Observer<const EndOfTrack *>,
49  public SimWatcher
50 {
51  public:
53  explicit LaserAlignmentSimulation(edm::ParameterSet const & theConf);
55  ~LaserAlignmentSimulation() override;
56 
57 /* private: */
59  void update(const BeginOfRun * myRun) override;
61  void update(const BeginOfEvent * myEvent) override;
63  void update(const G4Step * myStep) override;
65  void update(const EndOfEvent * myEvent) override;
67  void update(const EndOfRun * myRun) override;
69  void update(const BeginOfTrack * myTrack) override;
71  void update(const EndOfTrack * myTrack) override;
72 
73  private:
78 
79  private:
80  G4Timer * theTimer;
84 
87 
89 /* TrackerG4SimHitNumberingScheme theNumberingScheme; */
90 };
91 
92 #endif
~LaserAlignmentSimulation() override
destructor
LaserAlignmentSimulation(edm::ParameterSet const &theConf)
constructor
LaserPrimaryGeneratorAction * thePrimaryGenerator
MaterialProperties * theMaterialProperties
LaserSteppingAction * theSteppingAction
void update(const BeginOfRun *myRun) override
observer for BeginOfRun