CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
HcalTBTiming.h
Go to the documentation of this file.
1 #ifndef HCALTBTIMING_H
2 #define HCALTBTIMING_H 1
3 
4 #include <string>
5 #include <iostream>
6 #include <vector>
7 
17 class HcalTBTiming {
18 public:
19  HcalTBTiming();
20 
21  // Getter methods
22 
24  double triggerTime() const { return triggerTime_; }
25 
27  double ttcL1Atime() const { return ttcL1Atime_; }
28 
30  double laserFlash() const { return laserFlash_; }
32  double qiePhase() const { return qiePhase_; }
33 
35  double TOF1Stime() const { return TOF1Stime_; }
37  double TOF1Jtime() const { return TOF1Jtime_; }
39  double TOF2Stime() const { return TOF2Stime_; }
41  double TOF2Jtime() const { return TOF2Jtime_; }
42 
44  int BeamCoincidenceCount() const { return beamCoincidenceHits_.size(); }
46  int M1Count() const { return m1hits_.size(); }
48  int M2Count() const { return m2hits_.size(); }
50  int M3Count() const { return m3hits_.size(); }
51 
53  int S1Count() const { return s1hits_.size(); }
55  int S2Count() const { return s2hits_.size(); }
57  int S3Count() const { return s3hits_.size(); }
59  int S4Count() const { return s4hits_.size(); }
60 
62  int BH1Count() const { return bh1hits_.size(); }
64  int BH2Count() const { return bh2hits_.size(); }
66  int BH3Count() const { return bh3hits_.size(); }
68  int BH4Count() const { return bh4hits_.size(); }
69 
71  double BeamCoincidenceHits(int index) const { return beamCoincidenceHits_[index]; }
73  double M1Hits(int index) const { return m1hits_[index]; }
75  double M2Hits(int index) const { return m2hits_[index]; }
77  double M3Hits(int index) const { return m3hits_[index]; }
78 
80  double S1Hits(int index) const { return s1hits_[index]; }
82  double S2Hits(int index) const { return s2hits_[index]; }
84  double S3Hits(int index) const { return s3hits_[index]; }
86  double S4Hits(int index) const { return s4hits_[index]; }
87 
89  double BH1Hits(int index) const { return bh1hits_[index]; }
91  double BH2Hits(int index) const { return bh2hits_[index]; }
93  double BH3Hits(int index) const { return bh3hits_[index]; }
95  double BH4Hits(int index) const { return bh4hits_[index]; }
97  int V775(int index) const { return V775_[index]; }
98 
99  // Setter methods
100  void setTimes(const double trigger_time,
101  const double ttc_l1a_time,
102  const double laser_flash,
103  const double qie_phase,
104  const double TOF1S_time,
105  const double TOF1J_time,
106  const double TOF2S_time,
107  const double TOF2J_time);
108 
109  void setHits(const std::vector<double>& m1hits,
110  const std::vector<double>& m2hits,
111  const std::vector<double>& m3hits,
112  const std::vector<double>& s1hits,
113  const std::vector<double>& s2hits,
114  const std::vector<double>& s3hits,
115  const std::vector<double>& s4hits,
116  const std::vector<double>& bh1hits,
117  const std::vector<double>& bh2hits,
118  const std::vector<double>& bh3hits,
119  const std::vector<double>& bh4hits,
120  const std::vector<double>& beamCoincidenceHits);
121 
122  void setV775(int* V775);
123 
124 private:
125  double triggerTime_;
126  double ttcL1Atime_;
127  double laserFlash_;
128  double qiePhase_;
129  double TOF1Stime_;
130  double TOF1Jtime_;
131  double TOF2Stime_;
132  double TOF2Jtime_;
133 
134  int V775_[32];
135  std::vector<double> beamCoincidenceHits_;
136 
137  std::vector<double> m1hits_;
138  std::vector<double> m2hits_;
139  std::vector<double> m3hits_;
140 
141  std::vector<double> s1hits_;
142  std::vector<double> s2hits_;
143  std::vector<double> s3hits_;
144  std::vector<double> s4hits_;
145 
146  std::vector<double> bh1hits_;
147  std::vector<double> bh2hits_;
148  std::vector<double> bh3hits_;
149  std::vector<double> bh4hits_;
150 };
151 
152 std::ostream& operator<<(std::ostream& s, const HcalTBTiming& htbtmg);
153 
154 #endif
double TOF1Jtime() const
Returns the TOF1J time (zero otherwise)
Definition: HcalTBTiming.h:37
int V775_[32]
Definition: HcalTBTiming.h:134
int S4Count() const
Returns the number of hits from scintillator S4, which is 12cm x 12cm.
Definition: HcalTBTiming.h:59
double TOF2Stime_
Definition: HcalTBTiming.h:131
double M2Hits(int index) const
Returns the indexed hit time from muon veto scintillator M2.
Definition: HcalTBTiming.h:75
double S1Hits(int index) const
Returns the indexed hit time from scintillator S1, which is 12cm x 12cm.
Definition: HcalTBTiming.h:80
double laserFlash_
Definition: HcalTBTiming.h:127
int S2Count() const
Returns the number of hits from scintillator S2, which is 4cm x 4cm.
Definition: HcalTBTiming.h:55
double M3Hits(int index) const
Returns the indexed hit time from muon veto scintillator M3.
Definition: HcalTBTiming.h:77
int S3Count() const
Returns the number of hits from scintillator S3, which is 2cm x 2cm.
Definition: HcalTBTiming.h:57
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:167
double TOF1Jtime_
Definition: HcalTBTiming.h:130
double triggerTime() const
Returns the trigger time in ns.
Definition: HcalTBTiming.h:24
double ttcL1Atime() const
Returns the Level 1 Accept time in ns.
Definition: HcalTBTiming.h:27
int S1Count() const
Returns the number of hits from scintillator S1, which is 12cm x 12cm.
Definition: HcalTBTiming.h:53
double qiePhase_
Definition: HcalTBTiming.h:128
double triggerTime_
Definition: HcalTBTiming.h:125
std::vector< double > s2hits_
Definition: HcalTBTiming.h:142
double BH1Hits(int index) const
Returns the indexed hit time from beam halo counter UP HORIZONTAL.
Definition: HcalTBTiming.h:89
double TOF2Jtime_
Definition: HcalTBTiming.h:132
int BH2Count() const
Returns the number of hits from beam halo counter left from particle view.
Definition: HcalTBTiming.h:64
void setV775(int *V775)
Definition: HcalTBTiming.cc:76
std::vector< double > bh1hits_
Definition: HcalTBTiming.h:146
double TOF2Stime() const
Returns the TOF2S time (zero otherwise)
Definition: HcalTBTiming.h:39
int BH1Count() const
Returns the number of hits from beam halo counter up horizontal.
Definition: HcalTBTiming.h:62
std::vector< double > s1hits_
Definition: HcalTBTiming.h:141
double S4Hits(int index) const
Returns the indexed hit time from scintillator S4, which is 12cm x 12cm.
Definition: HcalTBTiming.h:86
double BH4Hits(int index) const
Returns the indexed hit time from beam halo counter DOWN HORZINTAL.
Definition: HcalTBTiming.h:95
int BH3Count() const
Returns the number of hits from beam halo counter right from particle view.
Definition: HcalTBTiming.h:66
int V775(int index) const
Returns the hit in the specified channel.
Definition: HcalTBTiming.h:97
std::vector< double > m3hits_
Definition: HcalTBTiming.h:139
double TOF2Jtime() const
Returns the TOF2J time (zero otherwise)
Definition: HcalTBTiming.h:41
double S3Hits(int index) const
Returns the indexed hit time from scintillator S3, which is 2cm x 2cm.
Definition: HcalTBTiming.h:84
double BeamCoincidenceHits(int index) const
Returns the indexed hit time from Beam Coincidence.
Definition: HcalTBTiming.h:71
double BH3Hits(int index) const
Returns the indexed hit time from beam halo counter BEAM RIGHT FROM PARTICLE&#39;S VIEW.
Definition: HcalTBTiming.h:93
double M1Hits(int index) const
Returns the indexed hit time from muon veto scintillator M1.
Definition: HcalTBTiming.h:73
std::vector< double > s4hits_
Definition: HcalTBTiming.h:144
double laserFlash() const
Returns the laser activation time in ns.
Definition: HcalTBTiming.h:30
double TOF1Stime() const
Returns the TOF1S time (zero otherwise)
Definition: HcalTBTiming.h:35
std::vector< double > s3hits_
Definition: HcalTBTiming.h:143
double ttcL1Atime_
Definition: HcalTBTiming.h:126
std::vector< double > beamCoincidenceHits_
Definition: HcalTBTiming.h:135
int BeamCoincidenceCount() const
Returns the number of hits from Beam Coincidence.
Definition: HcalTBTiming.h:44
std::vector< double > m1hits_
Definition: HcalTBTiming.h:137
void setTimes(const double trigger_time, const double ttc_l1a_time, const double laser_flash, const double qie_phase, const double TOF1S_time, const double TOF1J_time, const double TOF2S_time, const double TOF2J_time)
Definition: HcalTBTiming.cc:30
int M2Count() const
Returns the number of hits from muon veto scintillator M2.
Definition: HcalTBTiming.h:48
int BH4Count() const
Returns the number of hits from beam halo counter down horizontal.
Definition: HcalTBTiming.h:68
double TOF1Stime_
Definition: HcalTBTiming.h:129
void setHits(const std::vector< double > &m1hits, const std::vector< double > &m2hits, const std::vector< double > &m3hits, const std::vector< double > &s1hits, const std::vector< double > &s2hits, const std::vector< double > &s3hits, const std::vector< double > &s4hits, const std::vector< double > &bh1hits, const std::vector< double > &bh2hits, const std::vector< double > &bh3hits, const std::vector< double > &bh4hits, const std::vector< double > &beamCoincidenceHits)
Definition: HcalTBTiming.cc:48
int M3Count() const
Returns the number of hits from muon veto scintillator M3.
Definition: HcalTBTiming.h:50
std::vector< double > bh4hits_
Definition: HcalTBTiming.h:149
std::vector< double > bh2hits_
Definition: HcalTBTiming.h:147
double BH2Hits(int index) const
Returns the indexed hit time from from beam halo counter BEAM LEFT FROM PARTICLE&#39;S VIEW...
Definition: HcalTBTiming.h:91
std::vector< double > m2hits_
Definition: HcalTBTiming.h:138
std::vector< double > bh3hits_
Definition: HcalTBTiming.h:148
double S2Hits(int index) const
Returns the indexed hit time from scintillator S2, which is 4cm x 4cm.
Definition: HcalTBTiming.h:82
double qiePhase() const
Returns the QIE phase for 2003 testbeam data (zero otherwise)
Definition: HcalTBTiming.h:32
int M1Count() const
Returns the number of hits from muon veto scintillator M1.
Definition: HcalTBTiming.h:46