43 if (
id.isTriggerChainId())
44 os <<
"UTCA(trigger): ";
47 return os <<
id.crateId() <<
',' <<
id.slot() <<
',' <<
id.fiberIndex() <<
',' <<
id.fiberChanId();
49 if (
id.isTriggerChainId()) {
50 return os <<
id.dccid() <<
',' <<
id.spigot() <<
",SLB" <<
id.slbSiteNumber() <<
',' <<
id.slbChannelIndex()
51 <<
" (HTR " <<
id.readoutVMECrateId() <<
":" <<
id.htrSlot()
52 << ((
id.htrTopBottom() == 1) ? (
't') : (
'b')) <<
')';
55 return os <<
id.dccid() <<
',' <<
id.spigot() <<
',' <<
id.fiberIndex() <<
',' <<
id.fiberChanId() <<
" (HTR " 56 <<
id.readoutVMECrateId() <<
":" <<
id.htrSlot() << ((
id.htrTopBottom() == 1) ? (
't') : (
'b')) <<
')';
constexpr int32_t htrTopBottom() const
get the htr top/bottom (1=top/0=bottom), valid for VME
constexpr bool isVMEid() const
std::ostream & operator<<(std::ostream &os, const HcalElectronicsId &id)
constexpr bool isTriggerChainId() const
constexpr int32_t slbChannelIndex() const
get the SLB channel index (valid only for VME trigger-chain ids)
std::string slbChannelCode() const
get the HTR-wide slb channel code (letter plus number)
Readout chain identification for Hcal.