File indexing completed on 2024-04-06 12:04:25
0001 #ifndef L1CALOREGIONDETID_H
0002 #define L1CALOREGIONDETID_H
0003
0004 #include "DataFormats/DetId/interface/DetId.h"
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018 class L1CaloRegionDetId : public DetId {
0019 public:
0020 static const unsigned N_PHI = 18;
0021 static const unsigned N_ETA = 22;
0022
0023
0024 L1CaloRegionDetId();
0025
0026
0027 L1CaloRegionDetId(uint32_t rawid);
0028
0029
0030 L1CaloRegionDetId(unsigned ieta, unsigned iphi);
0031
0032
0033
0034 L1CaloRegionDetId(unsigned icrate, unsigned icard, unsigned irgn);
0035
0036
0037 unsigned ieta() const { return id_ & 0x1f; }
0038
0039
0040 unsigned iphi() const { return (id_ >> 5) & 0x1f; }
0041
0042
0043 bool isHf() const { return (ieta() < 4 || ieta() > 17); }
0044
0045
0046 unsigned rctCrate() const;
0047
0048
0049 unsigned rctCard() const;
0050
0051
0052 unsigned rctRegion() const;
0053
0054
0055 unsigned rctEta() const { return (ieta() < 11 ? 10 - ieta() : ieta() - 11); }
0056
0057
0058 unsigned rctPhi() const { return (iphi() % 2); }
0059 };
0060
0061 #endif