1 #ifndef DATAFORMATS_HCALDETID_HCALELECTRONICSID_H 2 #define DATAFORMATS_HCALDETID_HCALELECTRONICSID_H 1 41 ((
dccid & 0x1F) << 9))) {}
45 (uint32_t)((
slbChan & 0x3) | (((slbSite) & 0x7) << 2) | ((
spigot & 0xF) << 5) | ((
dccid & 0x1F) << 9))) {
constexpr HcalElectronicsId(int slbChan, int slbSite, int spigot, int dccid, int crate, int slot, int tb)
constexpr void setHTR(int crate, int slot, int tb)
constexpr int operator!=(const HcalElectronicsId &id) const
constexpr int32_t htrSlot() const
get the htr slot
constexpr uint32_t operator()()
constexpr int32_t htrTopBottom() const
get the htr top/bottom (1=top/0=bottom), valid for VME
static int slbChan(const HcalTriggerPrimitiveSample &theSample)
constexpr bool isVMEid() const
constexpr HcalElectronicsId(int crate, int slot, int fiber, int fc, bool isTrigger)
constexpr HcalElectronicsId()
constexpr HcalElectronicsId(uint32_t id)
constexpr int32_t linearIndex() const
get a fast, compact, unique index for linear lookups
constexpr int32_t readoutVMECrateId() const
get the readout VME crate number
constexpr int32_t fiberChanId() const
get the fiber channel id (which of channels on a fiber)
constexpr int32_t spigot() const
get the spigot (input number on DCC, AMC card number for uTCA)
constexpr HcalElectronicsId(int fiberChan, int fiberIndex, int spigot, int dccid)
constexpr int32_t slbSiteNumber() const
get the SLB site number (valid only for VME trigger-chain ids)
constexpr int32_t subtype() const
get subtype for this channel (valid for uTCA only)
constexpr int operator<(const HcalElectronicsId &id) const
Compare the id to another id for use in a map.
constexpr bool isUTCAid() const
constexpr int32_t fiberIndex() const
get the fiber index. For VME 1-8 (which of eight fibers carried by a spigot), for uTCA fibers are zer...
constexpr int32_t htrChanId() const
get the HTR channel id (1-24)
std::ostream & operator<<(std::ostream &, const HcalElectronicsId &)
constexpr uint32_t rawId() const
static const int maxDCCId
constexpr int operator==(const HcalElectronicsId &id) const
constexpr bool isTriggerChainId() const
constexpr int32_t slbChannelIndex() const
get the SLB channel index (valid only for VME trigger-chain ids)
static const int maxLinearIndex
std::string slbChannelCode() const
get the HTR-wide slb channel code (letter plus number)
uint32_t hcalElectronicsId_
constexpr int32_t slot() const
get the htr or uHTR slot
Readout chain identification for Hcal.
constexpr int32_t dccid() const
get the (Hcal local) DCC id for VME, crate number for uTCA
constexpr int32_t crateId() const
get the readout VME crate number