SpotPhotonGenerator.h
Go to the documentation of this file.
1 
9 #ifndef _SpotPhotonGeneratorOG_SpotPhotonGenerator_h_
10 #define _SpotPhotonGeneratorOG_SpotPhotonGenerator_h_
11 
12 
13 #include <fwk/VModule.h>
14 
15 #include <utl/CoordinateSystemPtr.h>
16 #include <utl/ShadowPtr.h>
17 
19 
20 #include <map>
21 #include <vector>
22 #include <fstream>
23 
24 
25 namespace utl {
26  class Photon;
27  class Point;
28  class Vector;
29  class RandomEngine;
30 }
31 
32 namespace fdet {
33  class Telescope;
34 }
35 
36 namespace evt {
37  class Event;
38 }
39 
40 namespace fevt {
41  class Telescope;
42 }
43 
44 namespace SpotPhotonGeneratorOG {
45 
57 
58  public:
62 
63  private:
64  bool DoSpot(evt::Event& event);
65  void FinishSpot();
66  void FinishTelescope();
67 
68  // drum mode
70  unsigned int fMinBin;
71  unsigned int fMaxBin;
72  double fRDiaMin;
73 
74  unsigned int fCurrentEyeId;
75  unsigned int fCurrentTelId;
76  unsigned int fCurrentPixId;
78  std::map<int, double> fEfficiencies;
79  std::map<int, double> fEfficienciesErr;
80 
82 
83  REGISTER_MODULE("SpotPhotonGeneratorOG", SpotPhotonGenerator);
84 
85  };
86 
87 }
88 
89 
90 #endif
91 
92 // Configure (x)emacs for this file ...
93 // Local Variables:
94 // mode: c++
95 // compile-command: "make -C .. -k"
96 // End:
REGISTER_MODULE("SpotPhotonGeneratorOG", SpotPhotonGenerator)
std::list< std::pair< utl::Photon, int > > PhotonList
fwk::VModule::ResultFlag Run(evt::Event &event)
Run: invoked once per event.
fwk::VModule::ResultFlag Init()
Initialize: invoked at beginning of run (NOT beginning of event)
Wraps the random number engine used to generate distributions.
Definition: RandomEngine.h:27
fwk::VModule::ResultFlag Finish()
Finish: invoked at end of the run (NOT end of the event)
TelescopeSimulatorKG::TelescopeSimulator::PhotonList fSpotPhotonList
Module interface.
Definition: VModule.h:53
Simulates drum photons entering the FD telescope.
ResultFlag
Flag returned by module methods to the RunController.
Definition: VModule.h:60

, generated on Tue Sep 26 2023.