CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalCaloFlagLabels.h
Go to the documentation of this file.
1 #ifndef GUARD_HCALCALOFLAGLABELS_H
2 #define GUARD_HCALCALOFLAGLABELS_H
3 
5 #include <string>
6 
7 // Create alias names for all status bits
8 // These aliases are valid for only the _current release_
9 // Use the HcalCaloFlagTool (below) for full interpretation
10 namespace HcalCaloFlagLabels
11 {
12  //subdetector-specific bits defined here (bits 0-15)
19  HBHETimingTrustBits=6, // 2-bit counter; not yet in use
20  HBHETimingShapedCutsBits=8, // 3-bit counter
27  };
28 
30 
32 
35  HFInTimeWindow=2, // requires hit be within certain time window
38  };
39 
40 
42 
44 
45  // Bit definitions that apply to all subdetectors (bits 16-31)
46  enum CommonFlag {TimingSubtractedBit=16, // latency shift correction, recovered
47  TimingAddedBit=17, // latency shift correction, recovered
48  TimingErrorBit=18, // latency shift error, unrecovered
50  Fraction2TS=20, // should deprecate this at some point
51  PresampleADC=20, // uses 7 bits to store ADC from presample
52  // This bit is not yet in use (as of March 2012), but can be used to mark sim hits to which noise has been intentionally added
54  // The following bits are all user-defined; reverse-order them so that UserDefinedBit0 will be the last removed
58 };
59 
60 }
61 
66 public:
67  HcalCaloFlagTool(const std::string& releaseName);
69  int getFieldWidth(HcalSubdetector sd, int bit) const;
70  int getFieldStart(HcalSubdetector sd, const std::string& field) const;
71  int getFieldWidth(HcalSubdetector sd, const std::string& field) const;
72  bool hasField(HcalSubdetector sd, const std::string& field) const;
73  bool hasField(HcalSubdetector sd, int bit) const;
74 private:
78 };
79 
80 #endif
HcalCaloFlagTool(const std::string &releaseName)
Provides interpretation of flag bits with understanding of CMSSW version dependence.
std::string getFieldName(HcalSubdetector sd, int bit) const
int getFieldStart(HcalSubdetector sd, const std::string &field) const
HcalSubdetector
Definition: HcalAssistant.h:31
std::string releaseName_
bool hasField(HcalSubdetector sd, const std::string &field) const
int getFieldWidth(HcalSubdetector sd, int bit) const
double sd