111 specs.
title =
"iphi";
116 specs.
title =
"ieta";
131 specs.
nbins = _zside ? 36 : 72;
133 specs.
high = _zside ? 36. : 72.;
134 specs.
title =
"iTCC";
137 specs.
nbins = _zside ? 9 : 18;
139 specs.
high = _zside ? 9. : 18.;
169 specs.
nbins = _zside ? 100 : 200;
175 specs.
nbins = _zside ? 20 : 40;
185 specs.
high = _zside ? 100. : 200.;
213 specs.
title =
"crystal";
221 specs.
title =
"tower";
227 specs.
title =
"tower";
266 specs.
title = isBarrel ? (iSM <
kEBpLow ?
"-ieta" :
"ieta") :
"ix";
271 specs.
title = isBarrel ?
"iphi" :
"iy";
291 if(_isMap) specs.
title =
"pseudo-strip";
292 else specs.
title =
"iPN";
298 specs.
title =
"channel";
315 specs.
title =
"iTCC";
321 specs.
title =
"iDCC";
363 specs.
title =
"RCT iEta";
369 specs.
title =
"RCT Phi";
409 int xbin(0), ybin(0);
415 int iphi(ebid.
iphi());
416 int ieta(ebid.
ieta());
420 ybin = ieta < 0 ? ieta + 86 : ieta + 85;
425 xbin = ieta < 0 ? -ieta : ieta;
426 ybin = ieta < 0 ? (iphi - 1) % 20 + 1 : 20 - (iphi - 1) % 20;
439 xbin = eeid.
zside() < 0 ? ix : ix + 100;
452 int iSM(_iSM >= 0 ? _iSM :
dccId(_id) - 1);
453 xbin = ix -
xlow_(iSM);
454 ybin = iy -
ylow_(iSM);
498 return (nbinsX + 2) * ybin + xbin;
515 int ieta(ttid.
ieta());
516 int iphi((ttid.
iphi() + 1) % 72 + 1);
518 xbin = ieta < 0? ieta + 33: ieta + 32;
522 return (nbinsX + 2) * ybin + xbin;
538 int ieta(ttid.
ieta());
539 int iphi((ttid.
iphi() + 1) % 72 + 1);
543 ybin = ieta < 0 ? ieta + 18 : ieta + 17;
548 xbin = ieta < 0 ? -ieta : ieta;
549 ybin = ieta < 0 ? (iphi - 1) % 4 + 1 : 4 - (iphi - 1) % 4;
553 xbin = ieta < 0? ieta + 33: ieta + 32;
554 ybin = iphi > 70? iphi-70: iphi+2;
561 unsigned tccid(
tccId(_id));
562 unsigned iSM(tccid <= 36 ? tccid % 18 / 2 : (tccid - 72) % 18 / 2);
566 return (nbinsX + 2) * ybin + xbin;
581 unsigned tccid(
tccId(_id));
582 unsigned iSM(tccid <= 36 ? tccid % 18 / 2 : (tccid - 72) % 18 / 2);
586 return (nbinsX + 2) * ybin + xbin;
599 int iphi(ebid.
iphi());
600 int ieta(ebid.
ieta());
603 xbin = (iphi - 1) / 5 + 1;
604 ybin = (ieta < 0 ? ieta + 85 : ieta + 84) / 5 + 1;
609 xbin = (ieta < 0 ? -ieta - 1 : ieta - 1) / 5 + 1;
610 ybin = (ieta < 0 ? (iphi - 1) % 20 : 19 - (iphi - 1) % 20) / 5 + 1;
626 xbin =
zside < 0 ? ix : ix + 20;
640 int iSM(_iSM >= 0 ? _iSM :
dccId(_id) - 1);
641 xbin = ix -
xlow_(iSM) / 5;
642 ybin = iy -
ylow_(iSM) / 5;
661 xbin = (eeid.
zside() < 0 ? ix - 1 : ix + 99) / 5 + 1;
662 ybin = (iy - 1) / 5 + 1;
667 xbin = (ix - 1) / 5 + 1;
668 ybin = (iy - 1) / 5 + 1;
674 int iSM(_iSM >= 0 ? _iSM :
dccId(_id) - 1);
675 xbin = (ix -
xlow_(iSM) - 1) / 5 + 1;
676 ybin = (iy -
ylow_(iSM) - 1) / 5 + 1;
692 int ieta(ttid.
ieta());
693 int iphi((ttid.
iphi() + 1) % 72 + 1);
697 ybin = ieta < 0 ? ieta + 18 : ieta + 17;
702 xbin = ieta < 0 ? -ieta : ieta;
703 ybin = ieta < 0 ? (iphi - 1) % 4 + 1 : 4 - (iphi - 1) % 4;
711 return (nbinsX + 2) * ybin + xbin;
720 int iDCC(_id.
dccId() - 1);
723 unsigned towerid(_id.
towerId());
727 xbin = 4 * ((iDCC - 9) % 18) + (isEBm ? towerid - 1 : 68 - towerid) % 4 + 1;
728 ybin = (towerid - 1) / 4 * (isEBm ? -1 : 1) + (isEBm ? 18 : 17);
732 xbin = (towerid - 1) / 4 + 1;
733 ybin = (isEBm ? towerid - 1 : 68 - towerid) % 4 + 1;
743 return (nbinsX + 2) * ybin + xbin;
int findBinCrystal_(ObjectType, DetId const &, int=-1)
unsigned memDCCIndex(unsigned)
int findBinRCT_(ObjectType, DetId const &)
int findBinTriggerTower_(ObjectType, DetId const &)
std::vector< DetId > dccConstituents(int dccId) const
Get the constituent detids for this dccId.
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
EcalElectronicsMapping const * getElectronicsMap()
unsigned tccId(DetId const &)
int towerId() const
get the tower id
unsigned nSuperCrystals(unsigned)
int ieta() const
get the tower ieta
int iphi() const
get the crystal iphi
bool isEndcapTTId(DetId const &)
int iPnId() const
get the PnId
int findBinSuperCrystal_(ObjectType, DetId const &, int=-1)
AxisSpecs getBinningSMMEM_(BinningType, bool, unsigned, int)
AxisSpecs getBinningEB_(BinningType, bool, int)
EcalTrigTowerDetId tower() const
get the HCAL/trigger iphi of this crystal
int ieta() const
get the crystal ieta
int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
AxisSpecs getBinningSM_(BinningType, bool, unsigned, int)
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
bool isEcalScDetId(DetId const &)
unsigned memDCCId(unsigned)
int iphi() const
get the tower iphi
AxisSpecs getBinningEE_(BinningType, bool, int, int)
int findBinPseudoStrip_(ObjectType, DetId const &)
AxisSpecs getBinningMEM_(BinningType, bool, int, int)
unsigned dccId(DetId const &)
AxisSpecs getBinningEcal_(BinningType, bool, int)