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";
217 specs.
nbins = isBarrel ? 68 : 88;
220 specs.
title =
"tower";
226 specs.
title =
"tower";
265 specs.
title = isBarrel ? (iSM <
kEBpLow ?
"-ieta" :
"ieta") :
"ix";
270 specs.
title = isBarrel ?
"iphi" :
"iy";
284 if(iSM ==
unsigned(-1) || _btype !=
kCrystal)
return specs;
290 if(_isMap) specs.
title =
"pseudo-strip";
291 else specs.
title =
"iPN";
297 specs.
title =
"channel";
314 specs.
title =
"iTCC";
320 specs.
title =
"iDCC";
362 specs.
title =
"RCT iEta";
368 specs.
title =
"RCT Phi";
384 if(_btype !=
kCrystal)
return specs;
408 int xbin(0), ybin(0);
414 int iphi(ebid.
iphi());
415 int ieta(ebid.
ieta());
419 ybin = ieta < 0 ? ieta + 86 : ieta + 85;
424 xbin = ieta < 0 ? -ieta : ieta;
425 ybin = ieta < 0 ? (iphi - 1) % 20 + 1 : 20 - (iphi - 1) % 20;
438 xbin = eeid.
zside() < 0 ? ix : ix + 100;
451 int iSM(_iSM >= 0 ? _iSM :
dccId(_id) - 1);
452 xbin = ix -
xlow_(iSM);
453 ybin = iy -
ylow_(iSM);
497 return (nbinsX + 2) * ybin + xbin;
514 int ieta(ttid.
ieta());
515 int iphi((ttid.
iphi() + 1) % 72 + 1);
517 xbin = ieta < 0? ieta + 33: ieta + 32;
521 return (nbinsX + 2) * ybin + xbin;
537 int ieta(ttid.
ieta());
538 int iphi((ttid.
iphi() + 1) % 72 + 1);
542 ybin = ieta < 0 ? ieta + 18 : ieta + 17;
547 xbin = ieta < 0 ? -ieta : ieta;
548 ybin = ieta < 0 ? (iphi - 1) % 4 + 1 : 4 - (iphi - 1) % 4;
552 xbin = ieta < 0? ieta + 33: ieta + 32;
553 ybin = iphi > 70? iphi-70: iphi+2;
560 unsigned tccid(
tccId(_id));
561 unsigned iSM(tccid <= 36 ? tccid % 18 / 2 : (tccid - 72) % 18 / 2);
565 return (nbinsX + 2) * ybin + xbin;
580 unsigned tccid(
tccId(_id));
581 unsigned iSM(tccid <= 36 ? tccid % 18 / 2 : (tccid - 72) % 18 / 2);
585 return (nbinsX + 2) * ybin + xbin;
598 int iphi(ebid.
iphi());
599 int ieta(ebid.
ieta());
602 xbin = (iphi - 1) / 5 + 1;
603 ybin = (ieta < 0 ? ieta + 85 : ieta + 84) / 5 + 1;
608 xbin = (ieta < 0 ? -ieta - 1 : ieta - 1) / 5 + 1;
609 ybin = (ieta < 0 ? (iphi - 1) % 20 : 19 - (iphi - 1) % 20) / 5 + 1;
625 xbin =
zside < 0 ? ix : ix + 20;
639 int iSM(_iSM >= 0 ? _iSM :
dccId(_id) - 1);
640 xbin = ix -
xlow_(iSM) / 5;
641 ybin = iy -
ylow_(iSM) / 5;
660 xbin = (eeid.
zside() < 0 ? ix - 1 : ix + 99) / 5 + 1;
661 ybin = (iy - 1) / 5 + 1;
666 xbin = (ix - 1) / 5 + 1;
667 ybin = (iy - 1) / 5 + 1;
673 int iSM(_iSM >= 0 ? _iSM :
dccId(_id) - 1);
674 xbin = (ix -
xlow_(iSM) - 1) / 5 + 1;
675 ybin = (iy -
ylow_(iSM) - 1) / 5 + 1;
691 int ieta(ttid.
ieta());
692 int iphi((ttid.
iphi() + 1) % 72 + 1);
696 ybin = ieta < 0 ? ieta + 18 : ieta + 17;
701 xbin = ieta < 0 ? -ieta : ieta;
702 ybin = ieta < 0 ? (iphi - 1) % 4 + 1 : 4 - (iphi - 1) % 4;
710 return (nbinsX + 2) * ybin + xbin;
719 int iDCC(_id.
dccId() - 1);
722 unsigned towerid(_id.
towerId());
726 xbin = 4 * ((iDCC - 9) % 18) + (isEBm ? towerid - 1 : 68 - towerid) % 4 + 1;
727 ybin = (towerid - 1) / 4 * (isEBm ? -1 : 1) + (isEBm ? 18 : 17);
731 xbin = (towerid - 1) / 4 + 1;
732 ybin = (isEBm ? towerid - 1 : 68 - towerid) % 4 + 1;
742 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 [...
bool isBarrel(GeomDetEnumerators::SubDetector m)
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)