14 <<
"EcalElectronicsId: Cannot create object. Indexes out of bounds. Dcc tower strip xtal " << dccid <<
" " 15 << towerid <<
" " << stripid <<
" " << xtalid <<
".";
16 EcalElectronicsId_ = (xtalid & 0x7) | ((stripid & 0x7) << 3) | ((towerid & 0x7F) << 6) | ((dccid & 0x7F) << 13);
79 channel = 5 * (
strip - 1) + xtal;
81 channel = 5 * (xtal - 1) +
strip;
110 return os <<
id.dccId() <<
',' <<
id.towerId() <<
',' <<
id.stripId() <<
',' <<
id.xtalId();
static const int MAX_DCCID_EBM
static int EEQuadrant(int dcc, int dcc_channel)
uint32_t EcalElectronicsId_
static const int MAX_XTALID
ALPAKA_FN_ACC int dcc(int ieta, int iphi)
int zside() const
zside = +1 or -1
static const int MIN_TOWERID
Ecal readout channel identification [32:20] Unused (so far) [19:13] DCC id [12:6] tower [5:3] strip [...
int quadrant(const DetId &detid, const TrackerTopology *tTopo_, bool phase_)
int dccId() const
get the DCC (Ecal Local DCC value not global one) id
static const int MIN_STRIPID
static const int MIN_DCCID
static const int MIN_XTALID
std::ostream & operator<<(std::ostream &os, const EcalElectronicsId &id)
static const int MAX_DCCID_EBP
int towerId() const
get the tower id
static const int MAX_DCCID
static const int MIN_DCCID_EBM
int channelId() const
so far for EndCap only :
static const int MAX_TOWERID
static const int MAX_DCCID_EEM
EcalSubdetector subdet() const
get the subdet
static const int MAX_STRIPID
int stripId() const
get the tower id
int xtalId() const
get the channel id
static const int MIN_DCCID_EBP
static const int MAX_DCCID_EEP
static const int kDCCChannelBoundary
static const int MIN_DCCID_EEM
static const int MIN_DCCID_EEP