CMS 3D CMS Logo

ApvTimingAnalysis.h
Go to the documentation of this file.
1 #ifndef CondFormats_SiStripObjects_ApvTimingAnalysis_H
2 #define CondFormats_SiStripObjects_ApvTimingAnalysis_H
3 
6 #include <sstream>
7 #include <vector>
8 #include <cstdint>
9 
16 public:
17  // ---------- con(de)structors ----------
18 
19  ApvTimingAnalysis(const uint32_t& key);
20 
22 
23  ~ApvTimingAnalysis() override { ; }
24 
25  friend class ApvTimingAlgorithm;
26 
27  // ---------- public interface ----------
28 
30  bool isValid() const override;
31 
33  bool foundTickMark() const;
34 
36  inline const float& time() const;
37 
39  inline const float& error() const;
40 
42  inline const float& optimumSamplingPoint() const;
43 
45  inline const float& refTime() const;
46 
48  void refTime(const float& time, const float& targetDelay = -1);
49 
51  inline const float& delay() const;
52 
54  inline const float& height() const;
55 
57  inline const float& base() const;
58 
60  inline const float& peak() const;
61 
63  uint16_t frameFindingThreshold() const;
64 
65  // ---------- misc ----------
66 
68  void print(std::stringstream&, uint32_t not_used = 0) override;
69 
71  inline void addErrorCode(const std::string& error) override;
72 
74  void reset() override;
75 
76  // ---------- public static data ----------
77 
79  static const float optimumSamplingPoint_;
80 
82  static const float tickMarkHeightThreshold_;
83 
85  static const float frameFindingThreshold_;
86 
87  // ---------- private member data ----------
88 
89 private:
91  float time_;
92 
94  float error_;
95 
97  static float refTime_;
98 
100  float delay_;
101 
103  float height_;
104 
106  float base_;
107 
109  float peak_;
110 
113 };
114 
115 // ---------- Inline methods ----------
116 
117 const float& ApvTimingAnalysis::time() const { return time_; }
118 const float& ApvTimingAnalysis::error() const { return error_; }
120 const float& ApvTimingAnalysis::refTime() const { return refTime_; }
121 const float& ApvTimingAnalysis::delay() const { return delay_; }
122 const float& ApvTimingAnalysis::height() const { return height_; }
123 const float& ApvTimingAnalysis::base() const { return base_; }
124 const float& ApvTimingAnalysis::peak() const { return peak_; }
126 
127 #endif // CondFormats_SiStripObjects_ApvTimingAnalysis_H
const float & error() const
const float & refTime() const
Analysis for timing run using APV tick marks.
static const float tickMarkHeightThreshold_
~ApvTimingAnalysis() override
const float & optimumSamplingPoint() const
const float & base() const
void addErrorCode(const std::string &error) override
bool isValid() const override
void print(std::stringstream &, uint32_t not_used=0) override
virtual void addErrorCode(const std::string &error)
const float & peak() const
const float & time() const
const float & delay() const
uint16_t frameFindingThreshold() const
static const float optimumSamplingPoint_
static float refTime_
Abstract base for derived classes that provide analysis of commissioning histograms.
Analysis for timing run using APV tick marks.
static const float frameFindingThreshold_
const float & height() const
bool foundTickMark() const
void reset() override