CMS 3D CMS Logo

PedsOnlyAnalysis.h
Go to the documentation of this file.
1 #ifndef CondFormats_SiStripObjects_PedsOnlyAnalysis_H
2 #define CondFormats_SiStripObjects_PedsOnlyAnalysis_H
3 
6 #include <sstream>
7 #include <vector>
8 #include <cstdint>
9 
16 public:
17  // ---------- con(de)structors ----------
18 
19  PedsOnlyAnalysis(const uint32_t& key);
20 
22 
23  ~PedsOnlyAnalysis() override { ; }
24 
25  friend class PedsOnlyAlgorithm;
26 
27  // ---------- public interface ----------
28 
30  bool isValid() const override;
31 
32  // Pedestal, noise and raw noise (128-strip vector per APV)
33  inline const VVFloat& peds() const;
34  inline const VVFloat& raw() const;
35 
36  // Mean and rms spread (value per APV)
37  inline const VFloat& pedsMean() const;
38  inline const VFloat& pedsSpread() const;
39  inline const VFloat& rawMean() const;
40  inline const VFloat& rawSpread() const;
41 
42  // Max and min values (value per APV)
43  inline const VFloat& pedsMax() const;
44  inline const VFloat& pedsMin() const;
45  inline const VFloat& rawMax() const;
46  inline const VFloat& rawMin() const;
47 
48  // ---------- misc ----------
49 
51  void print(std::stringstream&, uint32_t apv_number = 0) override;
52 
54  void summary(std::stringstream&) const override;
55 
57  void reset() override;
58 
59  // ---------- private member data ----------
60 
61 private:
62  // VVFloats means: 1 vector per APV, 1 value per strip.
63 
66 
69 
70  // VFloat: 1 value per APV
71 
74 
77 
80 
83 
86 
89 
92 
95 
96  // true if legacy histogram naming is used
97  bool legacy_;
98 };
99 
100 // ---------- Inline methods ----------
101 
104 
109 
114 
115 #endif // CondFormats_SiStripObjects_PedsOnlyAnalysis_H
Histogram-based analysis for pedestal run.
const VFloat & pedsMin() const
void print(std::stringstream &, uint32_t apv_number=0) override
const VFloat & pedsSpread() const
std::vector< float > VFloat
bool isValid() const override
const VFloat & pedsMean() const
const VFloat & rawMean() const
const VFloat & rawMin() const
const VVFloat & peds() const
const VFloat & rawSpread() const
const VFloat & rawMax() const
void summary(std::stringstream &) const override
void reset() override
~PedsOnlyAnalysis() override
std::vector< VFloat > VVFloat
Abstract base for derived classes that provide analysis of commissioning histograms.
const VVFloat & raw() const
const VFloat & pedsMax() const
Histogram-based analysis for pedestal run.