CMS 3D CMS Logo

FastFedCablingAnalysis.h
Go to the documentation of this file.
1 #ifndef CondFormats_SiStripObjects_FastFedCablingAnalysis_H
2 #define CondFormats_SiStripObjects_FastFedCablingAnalysis_H
3 
6 #include <boost/cstdint.hpp>
7 #include <sstream>
8 #include <vector>
9 #include <map>
10 
17 
18  public:
19 
20  // ---------- con(de)structors and typedefs ----------
21 
22  FastFedCablingAnalysis( const uint32_t& key );
23 
25 
26  ~FastFedCablingAnalysis() override {;}
27 
28  typedef std::map<uint32_t,uint16_t> Candidates;
29 
31 
32  // ---------- public interface ----------
33 
35  bool isValid() const override;
36 
38  bool isDirty() const;
39 
41  bool badTrimDac() const;
42 
44  inline const uint32_t& dcuHardId() const;
45 
47  inline const uint16_t& lldCh() const;
48 
50  inline const float& highLevel() const;
51 
53  inline const float& highRms() const;
54 
56  inline const float& lowLevel() const;
57 
59  inline const float& lowRms() const;
60 
62  inline const float& max() const;
63 
65  inline const float& min() const;
66 
67  // ---------- misc ----------
68 
70  void print( std::stringstream&, uint32_t not_used = 0 ) override;
71 
73  void header( std::stringstream& ) const override;
74 
76  void summary( std::stringstream& ) const override;
77 
79  void reset() override;
80 
81  // ---------- public static data ----------
82 
83  public:
84 
86  static const float threshold_;
87 
89  static const float dirtyThreshold_;
90 
92  static const float trimDacThreshold_;
93 
95  static const uint16_t nBitsForDcuId_;
96 
98  static const uint16_t nBitsForLldCh_;
99 
100  // ---------- private member data ----------
101 
102  private:
103 
105  uint32_t dcuHardId_;
106 
108  uint16_t lldCh_;
109 
111  float highMedian_;
112 
114  float highMean_;
115 
117  float highRms_;
118 
120  float lowMedian_;
121 
123  float lowMean_;
124 
126  float lowRms_;
127 
129  float range_;
130 
132  float midRange_;
133 
135  float max_;
136 
138  float min_;
139 
140 };
141 
142 // ---------- Inline methods ----------
143 
144 const uint32_t& FastFedCablingAnalysis::dcuHardId() const { return dcuHardId_; }
145 const uint16_t& FastFedCablingAnalysis::lldCh() const { return lldCh_; }
146 const float& FastFedCablingAnalysis::highLevel() const { return highMean_; }
147 const float& FastFedCablingAnalysis::highRms() const { return highRms_; }
148 const float& FastFedCablingAnalysis::lowLevel() const { return lowMean_; }
149 const float& FastFedCablingAnalysis::lowRms() const { return lowRms_; }
150 const float& FastFedCablingAnalysis::max() const { return max_; }
151 const float& FastFedCablingAnalysis::min() const { return min_; }
152 
153 #endif // CondFormats_SiStripObjects_FastFedCablingAnalysis_H
154 
155 
const uint16_t & lldCh() const
void summary(std::stringstream &) const override
const uint32_t & dcuHardId() const
void print(std::stringstream &, uint32_t not_used=0) override
bool isValid() const override
static const float dirtyThreshold_
static const uint16_t nBitsForDcuId_
std::map< uint32_t, uint16_t > Candidates
const float & lowLevel() const
const float & highLevel() const
Histogram-based analysis for connection loop.
const float & min() const
Histogram-based analysis for connection loop.
const float & max() const
void header(std::stringstream &) const override
const float & highRms() const
const float & lowRms() const
Abstract base for derived classes that provide analysis of commissioning histograms.
static const float trimDacThreshold_
static const float threshold_
static const uint16_t nBitsForLldCh_