CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros 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 #include "boost/cstdint.hpp"
8 
18  class HcalTBTiming {
19  public:
20  HcalTBTiming();
21 
22  // Getter methods
23 
25  double triggerTime() const { return triggerTime_; }
26 
28  double ttcL1Atime() const { return ttcL1Atime_; }
29 
31  double laserFlash() const { return laserFlash_; }
33  double qiePhase() const { return qiePhase_; }
34 
36  double TOF1Stime() const { return TOF1Stime_; }
38  double TOF1Jtime() const { return TOF1Jtime_; }
40  double TOF2Stime() const { return TOF2Stime_; }
42  double TOF2Jtime() const { return TOF2Jtime_; }
43 
45  int BeamCoincidenceCount() const { return beamCoincidenceHits_.size(); }
47  int M1Count() const { return m1hits_.size(); }
49  int M2Count() const { return m2hits_.size(); }
51  int M3Count() const { return m3hits_.size(); }
52 
54  int S1Count() const { return s1hits_.size(); }
56  int S2Count() const { return s2hits_.size(); }
58  int S3Count() const { return s3hits_.size(); }
60  int S4Count() const { return s4hits_.size(); }
61 
63  int BH1Count() const { return bh1hits_.size(); }
65  int BH2Count() const { return bh2hits_.size(); }
67  int BH3Count() const { return bh3hits_.size(); }
69  int BH4Count() const { return bh4hits_.size(); }
70 
72  double BeamCoincidenceHits(int index) const { return beamCoincidenceHits_[index]; }
74  double M1Hits(int index) const { return m1hits_[index]; }
76  double M2Hits(int index) const { return m2hits_[index]; }
78  double M3Hits(int index) const { return m3hits_[index]; }
79 
81  double S1Hits(int index) const { return s1hits_[index]; }
83  double S2Hits(int index) const { return s2hits_[index]; }
85  double S3Hits(int index) const { return s3hits_[index]; }
87  double S4Hits(int index) const { return s4hits_[index]; }
88 
90  double BH1Hits(int index) const { return bh1hits_[index]; }
92  double BH2Hits(int index) const { return bh2hits_[index]; }
94  double BH3Hits(int index) const { return bh3hits_[index]; }
96  double BH4Hits(int index) const { return bh4hits_[index]; }
98  int V775(int index) const {return V775_[index];}
99 
100  // Setter methods
101  void setTimes (const double trigger_time,
102  const double ttc_l1a_time,
103  const double laser_flash,
104  const double qie_phase,
105  const double TOF1S_time,
106  const double TOF1J_time,
107  const double TOF2S_time,
108  const double TOF2J_time);
109 
110  void setHits (const std::vector<double>& m1hits,
111  const std::vector<double>& m2hits,
112  const std::vector<double>& m3hits,
113  const std::vector<double>& s1hits,
114  const std::vector<double>& s2hits,
115  const std::vector<double>& s3hits,
116  const std::vector<double>& s4hits,
117  const std::vector<double>& bh1hits,
118  const std::vector<double>& bh2hits,
119  const std::vector<double>& bh3hits,
120  const std::vector<double>& bh4hits,
121  const std::vector<double>& beamCoincidenceHits);
122 
123  void setV775 (int *V775);
124 
125 
126  private:
127  double triggerTime_;
128  double ttcL1Atime_;
129  double laserFlash_;
130  double qiePhase_;
131  double TOF1Stime_;
132  double TOF1Jtime_;
133  double TOF2Stime_;
134  double TOF2Jtime_;
135 
136  int V775_[32];
137  std::vector<double> beamCoincidenceHits_;
138 
139  std::vector<double> m1hits_;
140  std::vector<double> m2hits_;
141  std::vector<double> m3hits_;
142 
143  std::vector<double> s1hits_;
144  std::vector<double> s2hits_;
145  std::vector<double> s3hits_;
146  std::vector<double> s4hits_;
147 
148  std::vector<double> bh1hits_;
149  std::vector<double> bh2hits_;
150  std::vector<double> bh3hits_;
151  std::vector<double> bh4hits_;
152  };
153 
154  std::ostream& operator<<(std::ostream& s, const HcalTBTiming& htbtmg);
155 
156 #endif
double TOF1Jtime() const
Returns the TOF1J time (zero otherwise)
Definition: HcalTBTiming.h:38
int V775_[32]
Definition: HcalTBTiming.h:136
int S4Count() const
Returns the number of hits from scintillator S4, which is 12cm x 12cm.
Definition: HcalTBTiming.h:60
double TOF2Stime_
Definition: HcalTBTiming.h:133
double M2Hits(int index) const
Returns the indexed hit time from muon veto scintillator M2.
Definition: HcalTBTiming.h:76
double S1Hits(int index) const
Returns the indexed hit time from scintillator S1, which is 12cm x 12cm.
Definition: HcalTBTiming.h:81
double laserFlash_
Definition: HcalTBTiming.h:129
int S2Count() const
Returns the number of hits from scintillator S2, which is 4cm x 4cm.
Definition: HcalTBTiming.h:56
double M3Hits(int index) const
Returns the indexed hit time from muon veto scintillator M3.
Definition: HcalTBTiming.h:78
int S3Count() const
Returns the number of hits from scintillator S3, which is 2cm x 2cm.
Definition: HcalTBTiming.h:58
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
double TOF1Jtime_
Definition: HcalTBTiming.h:132
double triggerTime() const
Returns the trigger time in ns.
Definition: HcalTBTiming.h:25
double ttcL1Atime() const
Returns the Level 1 Accept time in ns.
Definition: HcalTBTiming.h:28
int S1Count() const
Returns the number of hits from scintillator S1, which is 12cm x 12cm.
Definition: HcalTBTiming.h:54
double qiePhase_
Definition: HcalTBTiming.h:130
double triggerTime_
Definition: HcalTBTiming.h:127
std::vector< double > s2hits_
Definition: HcalTBTiming.h:144
double BH1Hits(int index) const
Returns the indexed hit time from beam halo counter UP HORIZONTAL.
Definition: HcalTBTiming.h:90
double TOF2Jtime_
Definition: HcalTBTiming.h:134
int BH2Count() const
Returns the number of hits from beam halo counter left from particle view.
Definition: HcalTBTiming.h:65
void setV775(int *V775)
Definition: HcalTBTiming.cc:75
std::vector< double > bh1hits_
Definition: HcalTBTiming.h:148
double TOF2Stime() const
Returns the TOF2S time (zero otherwise)
Definition: HcalTBTiming.h:40
int BH1Count() const
Returns the number of hits from beam halo counter up horizontal.
Definition: HcalTBTiming.h:63
std::vector< double > s1hits_
Definition: HcalTBTiming.h:143
double S4Hits(int index) const
Returns the indexed hit time from scintillator S4, which is 12cm x 12cm.
Definition: HcalTBTiming.h:87
double BH4Hits(int index) const
Returns the indexed hit time from beam halo counter DOWN HORZINTAL.
Definition: HcalTBTiming.h:96
int BH3Count() const
Returns the number of hits from beam halo counter right from particle view.
Definition: HcalTBTiming.h:67
int V775(int index) const
Returns the hit in the specified channel.
Definition: HcalTBTiming.h:98
std::vector< double > m3hits_
Definition: HcalTBTiming.h:141
double TOF2Jtime() const
Returns the TOF2J time (zero otherwise)
Definition: HcalTBTiming.h:42
double S3Hits(int index) const
Returns the indexed hit time from scintillator S3, which is 2cm x 2cm.
Definition: HcalTBTiming.h:85
double BeamCoincidenceHits(int index) const
Returns the indexed hit time from Beam Coincidence.
Definition: HcalTBTiming.h:72
double BH3Hits(int index) const
Returns the indexed hit time from beam halo counter BEAM RIGHT FROM PARTICLE&#39;S VIEW.
Definition: HcalTBTiming.h:94
double M1Hits(int index) const
Returns the indexed hit time from muon veto scintillator M1.
Definition: HcalTBTiming.h:74
std::vector< double > s4hits_
Definition: HcalTBTiming.h:146
double laserFlash() const
Returns the laser activation time in ns.
Definition: HcalTBTiming.h:31
double TOF1Stime() const
Returns the TOF1S time (zero otherwise)
Definition: HcalTBTiming.h:36
std::vector< double > s3hits_
Definition: HcalTBTiming.h:145
double ttcL1Atime_
Definition: HcalTBTiming.h:128
std::vector< double > beamCoincidenceHits_
Definition: HcalTBTiming.h:137
int BeamCoincidenceCount() const
Returns the number of hits from Beam Coincidence.
Definition: HcalTBTiming.h:45
std::vector< double > m1hits_
Definition: HcalTBTiming.h:139
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:29
int M2Count() const
Returns the number of hits from muon veto scintillator M2.
Definition: HcalTBTiming.h:49
int BH4Count() const
Returns the number of hits from beam halo counter down horizontal.
Definition: HcalTBTiming.h:69
double TOF1Stime_
Definition: HcalTBTiming.h:131
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:47
int M3Count() const
Returns the number of hits from muon veto scintillator M3.
Definition: HcalTBTiming.h:51
std::vector< double > bh4hits_
Definition: HcalTBTiming.h:151
std::vector< double > bh2hits_
Definition: HcalTBTiming.h:149
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:92
std::vector< double > m2hits_
Definition: HcalTBTiming.h:140
std::vector< double > bh3hits_
Definition: HcalTBTiming.h:150
double S2Hits(int index) const
Returns the indexed hit time from scintillator S2, which is 4cm x 4cm.
Definition: HcalTBTiming.h:83
double qiePhase() const
Returns the QIE phase for 2003 testbeam data (zero otherwise)
Definition: HcalTBTiming.h:33
int M1Count() const
Returns the number of hits from muon veto scintillator M1.
Definition: HcalTBTiming.h:47