QwGeant4
QweakSimUserCerenkov_PMTEvent.hh
Go to the documentation of this file.
1 
2 //=============================================================================
3 //
4 // ---------------------------
5 // | Doxygen File Information |
6 // ---------------------------
7 /**
8 
9  \file QweakSimUserCerenkov_PMTEvent.hh
10  $Revision: 1.2 $
11  $Date: 2005/12/27 19:29:20 $
12  \author Klaus Hans Grimm
13 
14 */
15 //=============================================================================
16 //
17 //=============================================================================
18 //
19 // ---------------------------
20 // | Doxygen Class Information |
21 // ---------------------------
22 /**
23  \class QweakSimUserCerenkov_PMTEvent
24 
25  \ingroup root
26 
27  \brief ROOT Subtree structure for Cerenkov PMTEvent
28 
29  */
30 //=============================================================================
31 
32 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
33 #ifndef QweakSimUserCerenkov_PMTEvent_h
34 #define QweakSimUserCerenkov_PMTEvent_h
35 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
36 
37 // root includes
38 #include "TObject.h"
39 
40 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
41 class QweakSimUserCerenkov_PMTEvent : public TObject
42 {
43 
44  private:
45 
46  Int_t NbOfHits; ///< Number of hits in this detector
47 
48  std::vector<Int_t> PMTHasBeenHit; ///< Has this PMT been hit? 0 = no, 5 = yes
49 
50  std::vector<Float_t> PMTTimeOfHits;
51  std::vector<Float_t> PMTEnergyOfHits;
52  std::vector<Int_t> PMTOctantOfHits;
53 
54  std::vector<Int_t> PMTLeftNbOfHits; ///< Number of hits in left PMTs
55  std::vector<Int_t> PMTRightNbOfHits; ///< Number of hits in right PMTs
56  std::vector<Int_t> PMTTotalNbOfHits; ///< Number of hits in both PMTs
57 
58  std::vector<Float_t> PMTLeftNbOfPEs; ///< Number of photo-electrons in left PMTs
59  std::vector<Float_t> PMTRightNbOfPEs; ///< Number of photo-electrons in right PMTs
60  std::vector<Float_t> PMTTotalNbOfPEs; ///< Number of photo-electrons in both PMTs
61 
62  std::vector<Float_t> PMTLeftRate; ///< Total event rate in left PMTs
63  std::vector<Float_t> PMTRightRate; ///< Total event rate in right PMTs
64  std::vector<Float_t> PMTTotalRate; ///< Total event rate in both PMTs
65  std::vector<Float_t> PMTLeftRateEL; ///< Elastic event rate in left PMTs
66  std::vector<Float_t> PMTRightRateEL; ///< Elastic event rate in right PMTs
67  std::vector<Float_t> PMTTotalRateEL; ///< Elastic event rate in both PMTs
68  std::vector<Float_t> PMTLeftRateDIS; ///< DIS event rate in left PMTs
69  std::vector<Float_t> PMTRightRateDIS; ///< DIS event rate in right PMTs
70  std::vector<Float_t> PMTTotalRateDIS; ///< DIS event rate in both PMTs
71  std::vector<Float_t> PMTLeftRateQE; ///< Quasi-elastic event rate in left PMTs
72  std::vector<Float_t> PMTRightRateQE; ///< Quasi-elastic event rate in right PMTs
73  std::vector<Float_t> PMTTotalRateQE; ///< Quasi-elastic event rate in both PMTs
74  std::vector<Float_t> PMTLeftRateELPeak; ///< Elastic Peak event rate in left PMTs
75  std::vector<Float_t> PMTRightRateELPeak; ///< Elastic Peak event rate in right PMTs
76  std::vector<Float_t> PMTTotalRateELPeak; ///< Elastic Peak event rate in both PMTs
77 
78  std::vector<Float_t> PMTLeftYield; ///< Total PE yield in left PMTs
79  std::vector<Float_t> PMTRightYield; ///< Total PE yield in right PMTs
80  std::vector<Float_t> PMTTotalYield; ///< Total PE yield in both PMTs
81  std::vector<Float_t> PMTLeftYieldEL; ///< Elastic PE yield in left PMTs
82  std::vector<Float_t> PMTRightYieldEL; ///< Elastic PE yield in right PMTs
83  std::vector<Float_t> PMTTotalYieldEL; ///< Elastic PE yield in both PMTs
84  std::vector<Float_t> PMTLeftYieldDIS; ///< Inelastic PE yield in left PMTs
85  std::vector<Float_t> PMTRightYieldDIS; ///< Inelastic PE yield in right PMTs
86  std::vector<Float_t> PMTTotalYieldDIS; ///< Inelastic PE yield in both PMTs
87  std::vector<Float_t> PMTLeftYieldQE; ///< Quasi-elastic PE yield in left PMTs
88  std::vector<Float_t> PMTRightYieldQE; ///< Quasi-elastic PE yield in right PMTs
89  std::vector<Float_t> PMTTotalYieldQE; ///< Quasi-elastic PE yield in both PMTs
90  std::vector<Float_t> PMTLeftYieldELPeak; ///< Elastic Peak PE yield in left PMTs
91  std::vector<Float_t> PMTRightYieldELPeak; ///< Elastic Peak PE yield in right PMTs
92  std::vector<Float_t> PMTTotalYieldELPeak; ///< Elastic Peak PE yield in both PMTs
93 
94  public:
95 
96  // Constructor
98  // Destructor
100 
101  // Initialization
102  void Initialize();
103 
104  public:
105 
106  //-----------------
107  void StoreDetectorNbOfHits(Int_t nd) { NbOfHits = nd; }
108  Int_t GetDetectorNbOfHits() const { return NbOfHits;}
109 
110  //-----------------
111  void StorePMTHasBeenHit(std::vector<Int_t> np) { PMTHasBeenHit = np; }
112  std::vector<Int_t> GetPMTHasBeenHit() const { return PMTHasBeenHit;}
113 
114  //-----------------
115  void StorePMTTimeOfHits(std::vector<Float_t> time) { PMTTimeOfHits = time; }
116  std::vector<Float_t> GetPMTTimeOfHits() const {return PMTTimeOfHits;}
117  //-----------------
118  void StorePMTEnergyOfHits(std::vector<Float_t> time) { PMTEnergyOfHits = time; }
119  std::vector<Float_t> GetPMTEnergyOfHits() const {return PMTEnergyOfHits;}
120  //-----------------
121  void StorePMTOctantOfHits(std::vector<Int_t> octant) { PMTOctantOfHits = octant; }
122  std::vector<Int_t> GetPMTOctantOfHits() const {return PMTOctantOfHits;}
123 
124  //-----------------
125  void StorePMTLeftNbOfHits(std::vector<Int_t> npl) { PMTLeftNbOfHits = npl; }
126  std::vector<Int_t> GetPMTLeftNbOfHits() const {return PMTLeftNbOfHits;}
127 
128  void StorePMTRightNbOfHits(std::vector<Int_t> npr) { PMTRightNbOfHits = npr; }
129  std::vector<Int_t> GetPMTRightNbOfHits() const {return PMTRightNbOfHits;}
130 
131  void StorePMTTotalNbOfHits(std::vector<Int_t> npt) { PMTTotalNbOfHits = npt; }
132  std::vector<Int_t> GetPMTTotalNbOfHits() const {return PMTTotalNbOfHits;}
133  //-----------------
134  void StorePMTLeftNbOfPEs(std::vector<Float_t> npl) { PMTLeftNbOfPEs = npl; }
135  std::vector<Float_t> GetPMTLeftNbOfPEs() const {return PMTLeftNbOfPEs;}
136 
137  void StorePMTRightNbOfPEs(std::vector<Float_t> npr) { PMTRightNbOfPEs = npr; }
138  std::vector<Float_t> GetPMTRightNbOfPEs() const {return PMTRightNbOfPEs;}
139 
140  void StorePMTTotalNbOfPEs(std::vector<Float_t> npt) { PMTTotalNbOfPEs = npt; }
141  std::vector<Float_t> GetPMTTotalNbOfPEs() const {return PMTTotalNbOfPEs;}
142 
143  //-----------------
144  void StorePMTLeftRate(std::vector<Float_t> rl) { PMTLeftRate = rl; }
145  std::vector<Float_t> GetPMTLeftRate() const {return PMTLeftRate;}
146 
147  void StorePMTRightRate(std::vector<Float_t> rr) { PMTRightRate = rr; }
148  std::vector<Float_t> GetPMTRightRate() const {return PMTRightRate;}
149 
150  void StorePMTTotalRate(std::vector<Float_t> rt) { PMTTotalRate = rt; }
151  std::vector<Float_t> GetPMTTotalRate() const {return PMTTotalRate;}
152 
153 
154  void StorePMTLeftRateEL(std::vector<Float_t> rl) { PMTLeftRateEL = rl; }
155  std::vector<Float_t> GetPMTLeftRateEL() const {return PMTLeftRateEL;}
156 
157  void StorePMTRightRateEL(std::vector<Float_t> rr) { PMTRightRateEL = rr; }
158  std::vector<Float_t> GetPMTRightRateEL() const {return PMTRightRateEL;}
159 
160  void StorePMTTotalRateEL(std::vector<Float_t> rt) { PMTTotalRateEL = rt; }
161  std::vector<Float_t> GetPMTTotalRateEL() const {return PMTTotalRateEL;}
162 
163 
164  void StorePMTLeftRateDIS(std::vector<Float_t> rl) { PMTLeftRateDIS = rl; }
165  std::vector<Float_t> GetPMTLeftRateDIS() const {return PMTLeftRateDIS;}
166 
167  void StorePMTRightRateDIS(std::vector<Float_t> rr) { PMTRightRateDIS = rr; }
168  std::vector<Float_t> GetPMTRightRateDIS() const {return PMTRightRateDIS;}
169 
170  void StorePMTTotalRateDIS(std::vector<Float_t> rt) { PMTTotalRateDIS = rt; }
171  std::vector<Float_t> GetPMTTotalRateDIS() const {return PMTTotalRateDIS;}
172 
173 
174  void StorePMTLeftRateQE(std::vector<Float_t> rl) { PMTLeftRateQE = rl; }
175  std::vector<Float_t> GetPMTLeftRateQE() const {return PMTLeftRateQE;}
176 
177  void StorePMTRightRateQE(std::vector<Float_t> rr) { PMTRightRateQE = rr; }
178  std::vector<Float_t> GetPMTRightRateQE() const {return PMTRightRateQE;}
179 
180  void StorePMTTotalRateQE(std::vector<Float_t> rt) { PMTTotalRateQE = rt; }
181  std::vector<Float_t> GetPMTTotalRateQE() const {return PMTTotalRateQE;}
182 
183 
184  void StorePMTLeftRateELPeak(std::vector<Float_t> rl) { PMTLeftRateELPeak = rl; }
185  std::vector<Float_t> GetPMTLeftRateELPeak() const {return PMTLeftRateELPeak;}
186 
187  void StorePMTRightRateELPeak(std::vector<Float_t> rr) { PMTRightRateELPeak = rr; }
188  std::vector<Float_t> GetPMTRightRateELPeak() const {return PMTRightRateELPeak;}
189 
190  void StorePMTTotalRateELPeak(std::vector<Float_t> rt) { PMTTotalRateELPeak = rt; }
191  std::vector<Float_t> GetPMTTotalRateELPeak() const {return PMTTotalRateELPeak;}
192 
193 
194  //-----------------
195  void StorePMTLeftYield(std::vector<Float_t> yl) { PMTLeftYield = yl; }
196  std::vector<Float_t> GetPMTLeftYield() const {return PMTLeftYield;}
197 
198  void StorePMTRightYield(std::vector<Float_t> yr) { PMTRightYield = yr; }
199  std::vector<Float_t> GetPMTRightYield() const {return PMTRightYield;}
200 
201  void StorePMTTotalYield(std::vector<Float_t> yt) { PMTTotalYield = yt; }
202  std::vector<Float_t> GetPMTTotalYield() const {return PMTTotalYield;}
203 
204 
205  void StorePMTLeftYieldEL(std::vector<Float_t> yl) { PMTLeftYieldEL = yl; }
206  std::vector<Float_t> GetPMTLeftYieldEL() const {return PMTLeftYieldEL;}
207 
208  void StorePMTRightYieldEL(std::vector<Float_t> yr) { PMTRightYieldEL = yr; }
209  std::vector<Float_t> GetPMTRightYieldEL() const {return PMTRightYieldEL;}
210 
211  void StorePMTTotalYieldEL(std::vector<Float_t> yt) { PMTTotalYieldEL = yt; }
212  std::vector<Float_t> GetPMTTotalYieldEL() const {return PMTTotalYieldEL;}
213 
214 
215  void StorePMTLeftYieldDIS(std::vector<Float_t> yl) { PMTLeftYieldDIS = yl; }
216  std::vector<Float_t> GetPMTLeftYieldDIS() const {return PMTLeftYieldDIS;}
217 
218  void StorePMTRightYieldDIS(std::vector<Float_t> yr) { PMTRightYieldDIS = yr; }
219  std::vector<Float_t> GetPMTRightYieldDIS() const {return PMTRightYieldDIS;}
220 
221  void StorePMTTotalYieldDIS(std::vector<Float_t> yt) { PMTTotalYieldDIS = yt; }
222  std::vector<Float_t> GetPMTTotalYieldDIS() const {return PMTTotalYieldDIS;}
223 
224 
225  void StorePMTLeftYieldQE(std::vector<Float_t> yl) { PMTLeftYieldQE = yl; }
226  std::vector<Float_t> GetPMTLeftYieldQE() const {return PMTLeftYieldQE;}
227 
228  void StorePMTRightYieldQE(std::vector<Float_t> yr) { PMTRightYieldQE = yr; }
229  std::vector<Float_t> GetPMTRightYieldQE() const {return PMTRightYieldQE;}
230 
231  void StorePMTTotalYieldQE(std::vector<Float_t> yt) { PMTTotalYieldQE = yt; }
232  std::vector<Float_t> GetPMTTotalYieldQE() const {return PMTTotalYieldQE;}
233 
234 
235  void StorePMTLeftYieldELPeak(std::vector<Float_t> yl) { PMTLeftYieldELPeak = yl; }
236  std::vector<Float_t> GetPMTLeftYieldELPeak() const {return PMTLeftYieldELPeak;}
237 
238  void StorePMTRightYieldELPeak(std::vector<Float_t> yr) { PMTRightYieldELPeak = yr; }
239  std::vector<Float_t> GetPMTRightYieldELPeak() const {return PMTRightYieldELPeak;}
240 
241  void StorePMTTotalYieldELPeak(std::vector<Float_t> yt) { PMTTotalYieldELPeak = yt; }
242  std::vector<Float_t> GetPMTTotalYieldELPeak() const {return PMTTotalYieldELPeak;}
243 
244 
245  // define a new Class known to ROOT
247 
248 }; // end class QweakSimUserCerenkov_DetectorEvent
249 
250 //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
251 
252 #endif
std::vector< Float_t > PMTRightRateEL
Elastic event rate in right PMTs.
std::vector< Float_t > GetPMTRightRateELPeak() const
void StorePMTRightRate(std::vector< Float_t > rr)
std::vector< Float_t > PMTLeftRateQE
Quasi-elastic event rate in left PMTs.
void StorePMTRightYieldELPeak(std::vector< Float_t > yr)
std::vector< Float_t > GetPMTLeftYieldQE() const
void StorePMTTotalYieldQE(std::vector< Float_t > yt)
std::vector< Int_t > PMTTotalNbOfHits
Number of hits in both PMTs.
std::vector< Int_t > GetPMTHasBeenHit() const
std::vector< Float_t > PMTRightYieldDIS
Inelastic PE yield in right PMTs.
void StorePMTTotalRateEL(std::vector< Float_t > rt)
std::vector< Int_t > PMTHasBeenHit
Has this PMT been hit? 0 = no, 5 = yes.
ROOT Subtree structure for Cerenkov PMTEvent.
std::vector< Float_t > PMTLeftRate
Total event rate in left PMTs.
void StorePMTTotalYieldELPeak(std::vector< Float_t > yt)
void StorePMTTotalYield(std::vector< Float_t > yt)
std::vector< Float_t > PMTTotalYieldQE
Quasi-elastic PE yield in both PMTs.
std::vector< Int_t > GetPMTRightNbOfHits() const
std::vector< Float_t > PMTTotalYield
Total PE yield in both PMTs.
std::vector< Float_t > PMTLeftYieldDIS
Inelastic PE yield in left PMTs.
std::vector< Float_t > PMTLeftYieldELPeak
Elastic Peak PE yield in left PMTs.
std::vector< Float_t > GetPMTTotalYieldEL() const
std::vector< Float_t > GetPMTLeftNbOfPEs() const
std::vector< Float_t > GetPMTTotalYieldDIS() const
std::vector< Float_t > PMTRightNbOfPEs
Number of photo-electrons in right PMTs.
std::vector< Float_t > PMTTotalYieldEL
Elastic PE yield in both PMTs.
std::vector< Float_t > PMTLeftYield
Total PE yield in left PMTs.
std::vector< Float_t > PMTRightYieldQE
Quasi-elastic PE yield in right PMTs.
std::vector< Float_t > GetPMTLeftRateDIS() const
void StorePMTRightRateQE(std::vector< Float_t > rr)
void StorePMTLeftYieldELPeak(std::vector< Float_t > yl)
std::vector< Int_t > GetPMTOctantOfHits() const
std::vector< Float_t > GetPMTRightNbOfPEs() const
void StorePMTRightYield(std::vector< Float_t > yr)
void StorePMTTotalYieldEL(std::vector< Float_t > yt)
void StorePMTLeftYieldQE(std::vector< Float_t > yl)
std::vector< Float_t > PMTRightYield
Total PE yield in right PMTs.
void StorePMTTotalRate(std::vector< Float_t > rt)
void StorePMTRightYieldQE(std::vector< Float_t > yr)
std::vector< Float_t > PMTTotalYieldDIS
Inelastic PE yield in both PMTs.
std::vector< Float_t > GetPMTLeftRateEL() const
std::vector< Float_t > PMTTotalRateQE
Quasi-elastic event rate in both PMTs.
void StorePMTLeftRateELPeak(std::vector< Float_t > rl)
Int_t NbOfHits
Number of hits in this detector.
std::vector< Float_t > GetPMTTotalRateQE() const
std::vector< Float_t > GetPMTTotalYieldELPeak() const
void StorePMTLeftRateQE(std::vector< Float_t > rl)
void StorePMTRightNbOfPEs(std::vector< Float_t > npr)
void StorePMTLeftYieldDIS(std::vector< Float_t > yl)
std::vector< Float_t > GetPMTTotalRate() const
std::vector< Float_t > GetPMTRightYield() const
std::vector< Float_t > GetPMTRightRateQE() const
std::vector< Float_t > GetPMTLeftRateQE() const
std::vector< Float_t > PMTLeftYieldEL
Elastic PE yield in left PMTs.
std::vector< Float_t > GetPMTLeftYieldEL() const
std::vector< Float_t > PMTLeftRateELPeak
Elastic Peak event rate in left PMTs.
std::vector< Float_t > PMTRightYieldELPeak
Elastic Peak PE yield in right PMTs.
void StorePMTLeftRateEL(std::vector< Float_t > rl)
void StorePMTRightYieldDIS(std::vector< Float_t > yr)
void StorePMTTotalYieldDIS(std::vector< Float_t > yt)
std::vector< Float_t > GetPMTTotalRateELPeak() const
std::vector< Float_t > PMTRightYieldEL
Elastic PE yield in right PMTs.
std::vector< Int_t > PMTLeftNbOfHits
Number of hits in left PMTs.
std::vector< Float_t > PMTRightRateELPeak
Elastic Peak event rate in right PMTs.
std::vector< Float_t > GetPMTTimeOfHits() const
std::vector< Float_t > GetPMTLeftRate() const
void StorePMTTotalRateDIS(std::vector< Float_t > rt)
std::vector< Float_t > GetPMTTotalYieldQE() const
void StorePMTTimeOfHits(std::vector< Float_t > time)
std::vector< Float_t > GetPMTLeftRateELPeak() const
void StorePMTLeftRate(std::vector< Float_t > rl)
std::vector< Float_t > PMTRightRate
Total event rate in right PMTs.
std::vector< Float_t > PMTTotalRate
Total event rate in both PMTs.
std::vector< Float_t > PMTTotalRateELPeak
Elastic Peak event rate in both PMTs.
std::vector< Float_t > PMTTotalRateEL
Elastic event rate in both PMTs.
std::vector< Float_t > PMTLeftNbOfPEs
Number of photo-electrons in left PMTs.
void StorePMTLeftNbOfHits(std::vector< Int_t > npl)
std::vector< Float_t > GetPMTTotalYield() const
std::vector< Float_t > PMTRightRateDIS
DIS event rate in right PMTs.
void StorePMTLeftYield(std::vector< Float_t > yl)
void StorePMTRightYieldEL(std::vector< Float_t > yr)
std::vector< Float_t > PMTRightRateQE
Quasi-elastic event rate in right PMTs.
std::vector< Float_t > GetPMTRightYieldEL() const
void StorePMTOctantOfHits(std::vector< Int_t > octant)
std::vector< Int_t > GetPMTTotalNbOfHits() const
void StorePMTTotalNbOfHits(std::vector< Int_t > npt)
std::vector< Int_t > GetPMTLeftNbOfHits() const
void StorePMTRightRateELPeak(std::vector< Float_t > rr)
ClassDef(QweakSimUserCerenkov_PMTEvent, 2)
std::vector< Float_t > GetPMTRightYieldQE() const
std::vector< Float_t > GetPMTRightRate() const
std::vector< Float_t > GetPMTRightRateEL() const
std::vector< Float_t > PMTTotalNbOfPEs
Number of photo-electrons in both PMTs.
void StorePMTTotalNbOfPEs(std::vector< Float_t > npt)
void StorePMTRightRateDIS(std::vector< Float_t > rr)
std::vector< Float_t > GetPMTLeftYield() const
std::vector< Float_t > GetPMTRightRateDIS() const
std::vector< Float_t > PMTLeftRateDIS
DIS event rate in left PMTs.
void StorePMTTotalRateELPeak(std::vector< Float_t > rt)
void StorePMTRightRateEL(std::vector< Float_t > rr)
void StorePMTEnergyOfHits(std::vector< Float_t > time)
void StorePMTLeftYieldEL(std::vector< Float_t > yl)
std::vector< Float_t > PMTLeftYieldQE
Quasi-elastic PE yield in left PMTs.
std::vector< Float_t > PMTLeftRateEL
Elastic event rate in left PMTs.
std::vector< Float_t > GetPMTRightYieldELPeak() const
void StorePMTRightNbOfHits(std::vector< Int_t > npr)
std::vector< Float_t > GetPMTTotalRateEL() const
std::vector< Float_t > PMTTotalRateDIS
DIS event rate in both PMTs.
std::vector< Float_t > GetPMTTotalNbOfPEs() const
std::vector< Float_t > GetPMTLeftYieldELPeak() const
void StorePMTLeftRateDIS(std::vector< Float_t > rl)
void StorePMTHasBeenHit(std::vector< Int_t > np)
std::vector< Float_t > GetPMTLeftYieldDIS() const
std::vector< Float_t > GetPMTTotalRateDIS() const
std::vector< Float_t > GetPMTEnergyOfHits() const
void StorePMTLeftNbOfPEs(std::vector< Float_t > npl)
void StorePMTTotalRateQE(std::vector< Float_t > rt)
std::vector< Float_t > PMTTotalYieldELPeak
Elastic Peak PE yield in both PMTs.
std::vector< Int_t > PMTRightNbOfHits
Number of hits in right PMTs.
std::vector< Float_t > GetPMTRightYieldDIS() const