CMS 3D CMS Logo

CalibrationAnalysis.h
Go to the documentation of this file.
1 #ifndef CondFormats_SiStripObjects_CalibrationAnalysis_H
2 #define CondFormats_SiStripObjects_CalibrationAnalysis_H
3 
6 #include <boost/cstdint.hpp>
7 #include <sstream>
8 #include <vector>
9 
17 
18  public:
19 
20  CalibrationAnalysis(const uint32_t & key, const bool & deconv);
21  CalibrationAnalysis(const bool & deconv);
22 
23  ~CalibrationAnalysis() override {;}
24 
25  friend class CalibrationAlgorithm;
26 
27  // values per strip and per APV
28  inline const VVFloat& amplitude() { return amplitude_; }
29  inline const VVFloat& tail() { return tail_; }
30  inline const VVFloat& riseTime() { return riseTime_; }
31  inline const VVFloat& decayTime() { return decayTime_; }
32  inline const VVFloat& turnOn() { return turnOn_; }
33  inline const VVFloat& peakTime() { return peakTime_; }
34  inline const VVFloat& undershoot() { return undershoot_; }
35  inline const VVFloat& baseline() { return baseline_; }
36  inline const VVFloat& smearing() { return smearing_; }
37  inline const VVFloat& chi2() { return chi2_; }
38 
39  inline const VVBool isValidStrip() {return isvalid_;} // analysis validity
40  bool isValid() const override;
41 
42  // mean values per APV
43  inline const VFloat& amplitudeMean() { return mean_amplitude_; }
44  inline const VFloat& tailMean() { return mean_tail_; }
45  inline const VFloat& riseTimeMean() { return mean_riseTime_; }
46  inline const VFloat& decayTimeMean() { return mean_decayTime_; }
47  inline const VFloat& smearingMean() { return mean_smearing_; }
48  inline const VFloat& turnOnMean() { return mean_turnOn_; }
49  inline const VFloat& peakTimeMean() { return mean_peakTime_; }
50  inline const VFloat& undershootMean(){ return mean_undershoot_; }
51  inline const VFloat& baselineMean() { return mean_baseline_; }
52  inline const VFloat& chi2Mean() { return mean_chi2_; }
53 
54  // spread, min and max
55  inline const VFloat& amplitudeSpread() { return spread_amplitude_; }
56  inline const VFloat& amplitudeMin() { return min_amplitude_; }
57  inline const VFloat& amplitudeMax() { return max_amplitude_; }
58 
59  inline const VFloat& tailSpread() { return spread_tail_; }
60  inline const VFloat& tailMin() { return min_tail_; }
61  inline const VFloat& tailMax() { return max_tail_; }
62 
63  inline const VFloat& riseTimeSpread() { return spread_riseTime_; }
64  inline const VFloat& riseTimeMin() { return min_riseTime_; }
65  inline const VFloat& riseTimeMax() { return max_riseTime_; }
66 
67  inline const VFloat& decayTimeSpread() { return spread_decayTime_; }
68  inline const VFloat& decayTimeMin() { return min_decayTime_; }
69  inline const VFloat& decayTimeMax() { return max_decayTime_; }
70 
71  inline const VFloat& smearingSpread() { return spread_smearing_; }
72  inline const VFloat& smearingMin() { return min_smearing_; }
73  inline const VFloat& smearingMax() { return max_smearing_; }
74 
75  inline const VFloat& turnOnSpread() { return spread_turnOn_; }
76  inline const VFloat& turnOnMin() { return min_turnOn_; }
77  inline const VFloat& turnOnMax() { return max_turnOn_; }
78 
79  inline const VFloat& peakTimeSpread() { return spread_peakTime_; }
80  inline const VFloat& peakTimeMin() { return min_peakTime_; }
81  inline const VFloat& peakTimeMax() { return max_peakTime_; }
82 
83  inline const VFloat& undershootSpread() { return spread_undershoot_; }
84  inline const VFloat& undershootMin() { return min_undershoot_; }
85  inline const VFloat& undershootMax() { return max_undershoot_; }
86 
87  inline const VFloat& baselineSpread() { return spread_baseline_; }
88  inline const VFloat& baselineMin() { return min_baseline_; }
89  inline const VFloat& baselineMax() { return max_baseline_; }
90 
91  inline const VFloat& chi2Spread() { return spread_chi2_; }
92  inline const VFloat& chi2Min() { return min_chi2_; }
93  inline const VFloat& chi2Max() { return max_chi2_; }
94 
95  inline int calChan() { return calChan_;}
96  inline bool deconvMode() { return deconv_; }
97 
98  void print( std::stringstream&, uint32_t not_used = 0 ) override;
99  void reset() override;
100 
101  private:
102 
104  static const float minAmplitudeThreshold_;
105  static const float minBaselineThreshold_;
106  static const float maxBaselineThreshold_;
107  static const float maxChi2Threshold_;
108 
109  static const float minDecayTimeThreshold_;
110  static const float maxDecayTimeThreshold_;
111  static const float minPeakTimeThreshold_;
112  static const float maxPeakTimeThreshold_;
113  static const float minRiseTimeThreshold_;
114  static const float maxRiseTimeThreshold_;
115  static const float minTurnOnThreshold_;
116  static const float maxTurnOnThreshold_;
117 
118  static const float minDecayTimeThresholdDeco_;
119  static const float maxDecayTimeThresholdDeco_;
120  static const float minPeakTimeThresholdDeco_;
121  static const float maxPeakTimeThresholdDeco_;
122  static const float minRiseTimeThresholdDeco_;
123  static const float maxRiseTimeThresholdDeco_;
124  static const float minTurnOnThresholdDeco_;
125  static const float maxTurnOnThresholdDeco_;
126 
127  private:
128 
136 
138  bool deconv_;
139 
141  int calChan_;
142 
143 };
144 
145 #endif // CondFormats_SiStripObjects_CalibrationAnalysis_H
146 
const VFloat & riseTimeSpread()
const VFloat & tailMin()
static const float minRiseTimeThresholdDeco_
static const float maxTurnOnThreshold_
static const float maxRiseTimeThresholdDeco_
static const float minPeakTimeThreshold_
const VFloat & amplitudeMax()
CalibrationAnalysis(const uint32_t &key, const bool &deconv)
static const float maxDecayTimeThresholdDeco_
const VFloat & turnOnMean()
const VFloat & smearingMean()
const VFloat & amplitudeMin()
static const float maxRiseTimeThreshold_
const VFloat & amplitudeSpread()
Algorithm for calibration runs.
const VFloat & riseTimeMax()
const VFloat & turnOnMax()
const VFloat & peakTimeMax()
const VFloat & undershootMean()
static const float maxBaselineThreshold_
const VFloat & riseTimeMin()
const VFloat & undershootMax()
void print(std::stringstream &, uint32_t not_used=0) override
const VFloat & tailMax()
const VFloat & baselineMax()
const VFloat & turnOnSpread()
const VFloat & peakTimeMean()
const VFloat & chi2Mean()
static const float minDecayTimeThresholdDeco_
const VFloat & decayTimeMin()
static const float minAmplitudeThreshold_
const VFloat & tailMean()
static const float maxDecayTimeThreshold_
Analysis for calibration runs.
static const float minTurnOnThresholdDeco_
static const float minDecayTimeThreshold_
std::vector< float > VFloat
const VFloat & chi2Spread()
const VFloat & decayTimeSpread()
const VFloat & baselineSpread()
const VVFloat & peakTime()
const VFloat & smearingMin()
const VFloat & turnOnMin()
const VFloat & amplitudeMean()
const VVBool isValidStrip()
const VVFloat & decayTime()
const VFloat & undershootSpread()
static const float minPeakTimeThresholdDeco_
const VFloat & riseTimeMean()
static const float minBaselineThreshold_
const VFloat & smearingSpread()
const VFloat & baselineMean()
const VVFloat & chi2()
static const float maxTurnOnThresholdDeco_
const VVFloat & smearing()
const VFloat & peakTimeMin()
const VFloat & decayTimeMean()
static const float minRiseTimeThreshold_
const VFloat & tailSpread()
const VVFloat & riseTime()
const VVFloat & baseline()
const VFloat & smearingMax()
bool isValid() const override
std::vector< VBool > VVBool
static const float minTurnOnThreshold_
static const float maxChi2Threshold_
const VFloat & chi2Max()
const VFloat & chi2Min()
const VFloat & baselineMin()
static const float maxPeakTimeThresholdDeco_
static const float maxPeakTimeThreshold_
std::vector< VFloat > VVFloat
Abstract base for derived classes that provide analysis of commissioning histograms.
const VVFloat & turnOn()
const VVFloat & tail()
const VFloat & decayTimeMax()
const VFloat & undershootMin()
const VFloat & peakTimeSpread()
const VVFloat & undershoot()
const VVFloat & amplitude()