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 <boost/cstdint.hpp>
7 #include <sstream>
8 #include <vector>
9 
17 
18  public:
19 
20  DaqScopeModeAnalysis( const uint32_t& key );
21 
23 
24  ~DaqScopeModeAnalysis() override {;}
25 
26  friend class DaqScopeModeAlgorithm;
27 
29  bool isValid() const override;
31  bool foundTickMark() const;
33  uint16_t frameFindingThreshold() const;
34 
35  // Pedestal, noise and raw noise (128-strip vector per APV)
36  inline const VVFloat& peds() const;
37  inline const VVFloat& noise() const;
38  inline const VVFloat& raw() const;
39 
40  // Dead and noisy strips (vector per APV)
41  inline const VVInt& dead() const;
42  inline const VVInt& noisy() const;
43 
44  // Mean and rms spread (value per APV)
45  inline const VFloat& pedsMean() const;
46  inline const VFloat& pedsSpread() const;
47  inline const VFloat& noiseMean() const;
48  inline const VFloat& noiseSpread() const;
49  inline const VFloat& rawMean() const;
50  inline const VFloat& rawSpread() const;
51 
52  // Max and min values (value per APV)
53  inline const VFloat& pedsMax() const;
54  inline const VFloat& pedsMin() const;
55  inline const VFloat& noiseMax() const;
56  inline const VFloat& noiseMin() const;
57  inline const VFloat& rawMax() const;
58  inline const VFloat& rawMin() const;
59 
61  inline const float& height() const;
63  inline const float& base() const;
65  inline const float& peak() const;
66 
68  void print( std::stringstream&, uint32_t apv_number = 0 ) override;
69 
71  inline void addErrorCode( const std::string& error ) override;
72 
74  void summary( std::stringstream& ) const override;
75 
77  void reset() override;
78 
80  static const float tickMarkHeightThreshold_;
81 
83  static const float frameFindingThreshold_;
84 
85  private:
86 
88  float height_;
90  float base_;
92  float peak_;
93 
100 
105 
118 
123 
132  // true if legacy histogram naming is used
133  bool legacy_;
134 
135 
136 };
137 
141 
144 
151 
158 
159 const float& DaqScopeModeAnalysis::height() const { return height_; }
160 const float& DaqScopeModeAnalysis::base() const { return base_; }
161 const float& DaqScopeModeAnalysis::peak() const { return peak_; }
163 
164 
165 #endif // CondFormats_SiStripObjects_DaqScopeModeAnalysis_H
166 
167 
168 
const VFloat & noiseMean() const
const VVInt & dead() const
const VVFloat & raw() const
bool isValid() const override
const VFloat & noiseSpread() const
uint16_t frameFindingThreshold() const
const VFloat & noiseMax() const
static const float tickMarkHeightThreshold_
std::vector< float > VFloat
static const float frameFindingThreshold_
const VFloat & pedsSpread() const
const VVFloat & noise() const
const VFloat & rawMean() const
const float & base() const
virtual void addErrorCode(const std::string &error)
const VVFloat & peds() const
const float & height() const
void print(std::stringstream &, uint32_t apv_number=0) override
const VFloat & rawSpread() const
const VFloat & noiseMin() const
const float & peak() const
const VFloat & pedsMean() const
Algorithm for scope mode data.
std::vector< VInt > VVInt
const VVInt & noisy() const
const VFloat & pedsMax() const
std::vector< VFloat > VVFloat
Abstract base for derived classes that provide analysis of commissioning histograms.
const VFloat & pedsMin() const
const VFloat & rawMax() const
const VFloat & rawMin() const
void addErrorCode(const std::string &error) override
void summary(std::stringstream &) const override
Analysis for scope mode data.