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