CMS 3D CMS Logo

HcalCalibDetId.h
Go to the documentation of this file.
1 #ifndef DATAFORMATS_HCALDETID_HCALCALIBDETID_H
2 #define DATAFORMATS_HCALDETID_HCALCALIBDETID_H 1
3 
4 #include <ostream>
7 
46 public:
48  enum CalibDetType {
51  uMNqie = 3,
53  LASERMON = 5,
54  HBX = 6,
55  HEX = 7
56  };
57 
61  HcalCalibDetId(uint32_t rawid);
63  HcalCalibDetId(const DetId& id);
64  HcalCalibDetId& operator=(const DetId& id);
66  HcalCalibDetId(HcalSubdetector subdet, int ieta, int iphi, int ctype);
70  HcalCalibDetId(int ieta, int iphi);
74  HcalCalibDetId(CalibDetType dt, int value1, int value2, int value3);
75 
77  CalibDetType calibFlavor() const { return (CalibDetType)((id_ >> 17) & 0x7); }
83  int ieta() const;
85  int iphi() const;
87  int cboxChannel() const;
90 
92  int rm() const;
94  int fiber() const;
96  int channel() const;
97 
99  int zside() const;
100 
102  static const int cbox_MixerHigh = 0; // HB/HE/HO/HF
103  static const int cbox_MixerLow = 1; // HB/HE/HO/HF
104  static const int cbox_LaserMegatile = 2; // in HB only!
105  static const int cbox_RadDam_Layer0_RM4 = 3; // in HE only!
106  static const int cbox_RadDam_Layer7_RM4 = 4; // in HE only!
107  static const int cbox_RadDam_Layer0_RM1 = 5; // in HE only!
108  static const int cbox_RadDam_Layer7_RM1 = 6; // in HE only!
109  static const int cbox_HOCrosstalkPIN = 7; // in (part of) HO only!
110  static const int cbox_HF_ScintillatorPIN = 8; // in HF only!
111 };
112 
113 std::ostream& operator<<(std::ostream& s, const HcalCalibDetId& id);
114 
115 #endif
int cboxChannel() const
get the calibration box channel (if relevant)
float dt
Definition: AMPTWrapper.h:136
static const int cbox_RadDam_Layer7_RM4
static const int cbox_HF_ScintillatorPIN
std::string cboxChannelString() const
get the calibration box channel as a string (if relevant)
int ieta() const
HcalSubdetector hcalSubdet() const
get the HcalSubdetector (if relevant)
static const int cbox_RadDam_Layer7_RM1
static const int cbox_LaserMegatile
int iphi() const
get the low-edge iphi (if relevant)
HcalSubdetector
Definition: HcalAssistant.h:31
std::ostream & operator<<(std::ostream &s, const HcalCalibDetId &id)
Definition: value.py:1
int rm() const
get the rm (where relevant)
int zside() const
get the sign of ieta (+/-1)
HcalCalibDetId & operator=(const DetId &id)
Definition: DetId.h:17
uint32_t id_
Definition: DetId.h:69
CalibDetType calibFlavor() const
get the flavor of this calibration detid
static const int cbox_RadDam_Layer0_RM1
int fiber() const
get the fiber (where relevant)
static const int cbox_HOCrosstalkPIN
int channel() const
get the channel (for uMNio/qie or similar)
static const int cbox_MixerLow
static const int cbox_RadDam_Layer0_RM4
static const int cbox_MixerHigh
constants
HcalOtherSubdetector subdet() const
get the category