CMS 3D CMS Logo

DaqScopeModeAnalysis.h
Go to the documentation of this file.
1 #ifndef CondFormats_SiStripObjects_DaqScopeModeAnalysis_H
2 #define CondFormats_SiStripObjects_DaqScopeModeAnalysis_H
3 
6 #include <sstream>
7 #include <vector>
8 #include <cstdint>
9 
17 public:
18  DaqScopeModeAnalysis(const uint32_t& key);
19 
21 
22  ~DaqScopeModeAnalysis() override { ; }
23 
24  friend class DaqScopeModeAlgorithm;
25 
27  bool isValid() const override;
29  bool foundTickMark() const;
31  uint16_t frameFindingThreshold() const;
32 
33  // Pedestal, noise and raw noise (128-strip vector per APV)
34  inline const VVFloat& peds() const;
35  inline const VVFloat& noise() const;
36  inline const VVFloat& raw() const;
37 
38  // Dead and noisy strips (vector per APV)
39  inline const VVInt& dead() const;
40  inline const VVInt& noisy() const;
41 
42  // Mean and rms spread (value per APV)
43  inline const VFloat& pedsMean() const;
44  inline const VFloat& pedsSpread() const;
45  inline const VFloat& noiseMean() const;
46  inline const VFloat& noiseSpread() const;
47  inline const VFloat& rawMean() const;
48  inline const VFloat& rawSpread() const;
49 
50  // Max and min values (value per APV)
51  inline const VFloat& pedsMax() const;
52  inline const VFloat& pedsMin() const;
53  inline const VFloat& noiseMax() const;
54  inline const VFloat& noiseMin() const;
55  inline const VFloat& rawMax() const;
56  inline const VFloat& rawMin() const;
57 
59  inline const float& height() const;
61  inline const float& base() const;
63  inline const float& peak() const;
64 
66  void print(std::stringstream&, uint32_t apv_number = 0) override;
67 
69  inline void addErrorCode(const std::string& error) override;
70 
72  void summary(std::stringstream&) const override;
73 
75  void reset() override;
76 
78  static const float tickMarkHeightThreshold_;
79 
81  static const float frameFindingThreshold_;
82 
83 private:
85  float height_;
87  float base_;
89  float peak_;
90 
97 
102 
115 
120 
129  // true if legacy histogram naming is used
130  bool legacy_;
131 };
132 
136 
139 
146 
153 
154 const float& DaqScopeModeAnalysis::height() const { return height_; }
155 const float& DaqScopeModeAnalysis::base() const { return base_; }
156 const float& DaqScopeModeAnalysis::peak() const { return peak_; }
158 
159 #endif // CondFormats_SiStripObjects_DaqScopeModeAnalysis_H
uint16_t frameFindingThreshold() const
const VFloat & noiseMean() const
const VFloat & rawMin() const
void summary(std::stringstream &) const override
const VFloat & pedsMean() const
const float & peak() const
const float & height() const
static const float tickMarkHeightThreshold_
const VVFloat & raw() const
std::vector< float > VFloat
static const float frameFindingThreshold_
const VFloat & rawSpread() const
const VFloat & rawMean() const
const VFloat & noiseMin() const
virtual void addErrorCode(const std::string &error)
const VFloat & pedsSpread() const
void print(std::stringstream &, uint32_t apv_number=0) override
const VVFloat & noise() const
const VVFloat & peds() const
bool isValid() const override
Algorithm for scope mode data.
std::vector< VInt > VVInt
const VFloat & rawMax() const
const VFloat & noiseSpread() const
const float & base() const
const VFloat & noiseMax() const
const VFloat & pedsMax() const
std::vector< VFloat > VVFloat
Abstract base for derived classes that provide analysis of commissioning histograms.
const VVInt & dead() const
const VVInt & noisy() const
const VFloat & pedsMin() const
void addErrorCode(const std::string &error) override
Analysis for scope mode data.