CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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(); }
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();
63  void countUnmappedDigi(const HcalElectronicsId& eid);
64  void countUnmappedTPDigi(const HcalElectronicsId& eid);
65  void countBadQualityDigi(const DetId& did);
66  void setUnsuppressed(bool isSup);
67  void setReportInfo(const std::string& name, const std::string& value);
68 private:
69  std::vector<int> FEDsUnpacked_;
70  std::vector<int> FEDsError_;
77 
78  std::vector<std::string> reportInfo_;
79  std::vector<uint16_t> fedInfo_; // first is fed, second is type
80 
82 };
83 
84 #endif
std::vector< std::string > reportInfo_
int spigotFormatErrors() const
ElectronicsIdVector::const_iterator unmapped_begin() const
std::vector< int > FEDsError_
ElectronicsIdVector::const_iterator unmapped_end() const
std::vector< int > FEDsUnpacked_
bool unsuppressedChannels() const
int emptyEventSpigots() const
const std::vector< int > & getFedsUnpacked() const
std::vector< std::string > getReportKeys() const
void setFedCalibInfo(uint16_t fed, HcalCalibrationEventType ctype)
void setUnsuppressed(bool isSup)
bool anyValidHCAL() const
const std::vector< int > & getFedsError() const
std::vector< uint16_t > fedInfo_
HcalCalibrationEventType
ElectronicsIdVector unmappedIds_
int totalTPDigis() const
DetIdVector badqualityIds_
int unmappedTPDigis() const
bool hasReportInfo(const std::string &name) const
DetIdVector::const_iterator bad_quality_begin() const
int totalHOTPDigis() const
bool hasFedWithCalib() const
void countTPDigi(bool ho=false)
Definition: DetId.h:18
std::string getReportInfo(const std::string &name) const
int badQualityDigis() const
std::vector< HcalElectronicsId > ElectronicsIdVector
int unmappedDigis() const
string fed
Definition: rpc-layouts.py:7
void setReportInfo(const std::string &name, const std::string &value)
std::vector< DetId > DetIdVector
void addUnpacked(int fed)
Readout chain identification for Hcal [31:26] Unused (so far) [25] Trigger-chain id flag [24:20] Read...
int busySpigots() const
DetIdVector::const_iterator bad_quality_end() const
HcalCalibrationEventType fedCalibType(uint16_t fed) const