CMS 3D CMS Logo

HcalUnpackerReport.h
Go to the documentation of this file.
1 #ifndef DATAFORMATS_HCALDIGI_HCALUNPACKERREPORT_H
2 #define DATAFORMATS_HCALDIGI_HCALUNPACKERREPORT_H 1
3 
4 #include <vector>
5 #include <map>
9 
15 public:
17  const std::vector<int>& getFedsUnpacked() const { return FEDsUnpacked_; }
18  const std::vector<int>& getFedsError() const { return FEDsError_; }
19  bool errorFree() const;
20  bool anyValidHCAL() const;
21  int unmappedDigis() const { return unmappedDigis_; }
22  int unmappedTPDigis() const { return unmappedTPDigis_; }
23  int spigotFormatErrors() const { return spigotFormatErrors_; }
24  int badQualityDigis() const { return badqualityDigis_; }
25  int totalDigis() const { return totalDigis_; }
26  int totalTPDigis() const { return totalTPDigis_; }
27  int totalHOTPDigis() const { return totalHOTPDigis_; }
28  int emptyEventSpigots() const { return emptyEventSpigots_; }
29  int OFWSpigots() const { return ofwSpigots_; }
30  int busySpigots() const { return busySpigots_; }
31 
32  bool unsuppressedChannels() const { return unsuppressed_; }
33 
34  bool hasFedWithCalib() const { return !fedInfo_.empty(); }
35  HcalCalibrationEventType fedCalibType(uint16_t fed) const;
36 
37  void setFedCalibInfo(uint16_t fed, HcalCalibrationEventType ctype);
38 
39  typedef std::vector<DetId> DetIdVector;
40  typedef std::vector<HcalElectronicsId> ElectronicsIdVector;
41 
42  DetIdVector::const_iterator bad_quality_begin() const { return badqualityIds_.begin(); }
43  DetIdVector::const_iterator bad_quality_end() const { return badqualityIds_.end(); }
44  ElectronicsIdVector::const_iterator unmapped_begin() const { return unmappedIds_.begin(); }
45  ElectronicsIdVector::const_iterator unmapped_end() const { return unmappedIds_.end(); }
46 
47  bool hasReportInfo(const std::string& name) const;
49  std::vector<std::string> getReportKeys() const;
50 
51  // setters
52  void addUnpacked(int fed);
53  void addError(int fed);
54  void countDigi();
55  void countTPDigi(bool ho = false);
56  void countUnmappedDigi();
57  void countUnmappedTPDigi();
59  void countBadQualityDigi();
60  void countEmptyEventSpigot();
61  void countOFWSpigot();
62  void countBusySpigot();
65  void countBadQualityDigi(const DetId& did);
66  void setUnsuppressed(bool isSup);
67  void setReportInfo(const std::string& name, const std::string& value);
68 
69 private:
70  std::vector<int> FEDsUnpacked_;
71  std::vector<int> FEDsError_;
78 
79  std::vector<std::string> reportInfo_;
80  std::vector<uint16_t> fedInfo_; // first is fed, second is type
81 
83 };
84 
85 #endif
std::vector< std::string > reportInfo_
std::string getReportInfo(const std::string &name) const
std::vector< int > FEDsError_
std::vector< int > FEDsUnpacked_
void setFedCalibInfo(uint16_t fed, HcalCalibrationEventType ctype)
void setUnsuppressed(bool isSup)
int totalHOTPDigis() const
HcalCalibrationEventType fedCalibType(uint16_t fed) const
std::vector< uint16_t > fedInfo_
DetIdVector::const_iterator bad_quality_begin() const
HcalCalibrationEventType
ElectronicsIdVector unmappedIds_
int unmappedTPDigis() const
int spigotFormatErrors() const
const std::vector< int > & getFedsError() const
bool hasReportInfo(const std::string &name) const
DetIdVector badqualityIds_
std::vector< std::string > getReportKeys() const
ElectronicsIdVector::const_iterator unmapped_end() const
Definition: value.py:1
int emptyEventSpigots() const
void countTPDigi(bool ho=false)
Definition: DetId.h:17
bool hasFedWithCalib() const
const std::vector< int > & getFedsUnpacked() const
int badQualityDigis() const
std::vector< HcalElectronicsId > ElectronicsIdVector
ElectronicsIdVector::const_iterator unmapped_begin() const
void setReportInfo(const std::string &name, const std::string &value)
std::vector< DetId > DetIdVector
void addUnpacked(int fed)
Readout chain identification for Hcal.
bool unsuppressedChannels() const
DetIdVector::const_iterator bad_quality_end() const