14 const uint16_t& fec_slot,
15 const uint16_t& fec_ring,
16 const uint16_t& ccu_addr,
17 const uint16_t& ccu_chan,
18 const uint16_t& lld_chan,
19 const uint16_t& i2c_addr)
81 i2cAddr_(input.i2cAddr()) {
509 std::stringstream
dir;
574 if (curr != std::string::npos) {
581 if (curr != std::string::npos) {
585 fecCrate_ = std::atoi(fec_crate.c_str());
589 if (curr != std::string::npos) {
593 fecSlot_ = std::atoi(fec_slot.c_str());
597 if (curr != std::string::npos) {
601 fecRing_ = std::atoi(fec_ring.c_str());
605 if (curr != std::string::npos) {
609 ccuAddr_ = std::atoi(ccu_addr.c_str());
613 if (curr != std::string::npos) {
617 ccuChan_ = std::atoi(ccu_chan.c_str());
621 if (curr != std::string::npos) {
625 lldChan_ = std::atoi(lld_chan.c_str());
629 if (curr != std::string::npos) {
630 next = std::string::npos;
632 i2cAddr_ = std::atoi(i2c_addr.c_str());
641 std::stringstream
ss;
710 ss <<
"FEC:crate/slot/ring/CCU/module/LLD/I2C= " <<
fecCrate() <<
"/" <<
fecSlot() <<
"/" <<
fecRing() <<
"/"
730 ss <<
" [SiStripFecKey::print]" << std::endl
731 << std::hex <<
" FEC key : 0x" << std::setfill(
'0') << std::setw(8) <<
key() << std::endl
732 << std::setfill(
' ') <<
std::dec <<
" FEC VME crate : " <<
fecCrate() << std::endl
733 <<
" FEC VME slot : " <<
fecSlot() << std::endl
734 <<
" FEC control ring : " <<
fecRing() << std::endl
735 <<
" CCU I2C address : " <<
ccuAddr() << std::endl
736 <<
" CCU chan (FE module) : " <<
ccuChan() << std::endl
737 <<
" LaserDriver channel : " <<
lldChan() << std::endl
738 <<
" APV I2C address : " <<
i2cAddr() << std::endl
739 <<
" Directory : " <<
path() << std::endl
741 <<
" Channel : " <<
channel() << std::endl
748 std::stringstream
ss;
757 : mask_(key.fecCrate() ? sistrip::
invalid_ : 0,
758 key.fecSlot() ? sistrip::
invalid_ : 0,
759 key.fecRing() ? sistrip::
invalid_ : 0,
760 key.ccuAddr() ? sistrip::
invalid_ : 0,
761 key.ccuChan() ? sistrip::
invalid_ : 0,
762 key.lldChan() ? sistrip::
invalid_ : 0,
763 key.i2cAddr() ? sistrip::
invalid_ : 0) {
static const uint16_t ccuChanOffset_
static const uint16_t APV_I2C_MIN
static const uint16_t ccuChanMask_
static const uint16_t i2cAddrOffset_
const uint16_t & fecRing() const
static const uint16_t CCU_ADDR_MAX
static const uint16_t CCU_CHAN_MAX
Various generic constants used by DQM.
static const uint16_t CCU_CHAN_MIN
static const uint32_t invalid32_
static const uint16_t LLD_CHAN_MIN
void initGranularity() override
static const uint16_t LLD_CHAN_MAX
static const uint16_t fecSlotMask_
static const uint16_t fecRingOffset_
bool isConsistent(const SiStripKey &) const override
static const uint16_t FEC_CRATE_MIN
static std::string granularity(const sistrip::Granularity &)
const uint16_t & lldChan() const
static const uint16_t CRATE_SLOT_MAX
const uint16_t & fecSlot() const
bool isEqual(const SiStripKey &) const override
std::ostream & operator<<(std::ostream &out, const ALILine &li)
void find(edm::Handle< EcalRecHitCollection > &hits, DetId thisDet, std::vector< EcalRecHitCollection::const_iterator > &hit, bool debug=false)
const uint16_t & i2cAddr() const
static const uint16_t fecCrateMask_
static const uint16_t FEC_RING_MAX
static const char fecSlot_[]
Constants and enumerated types for sistrip::View.
static std::string const input
const uint32_t & key() const
static const char ccuChan_[]
static const char ccuAddr_[]
Utility class that identifies a position within the strip tracker control structure, down to the level of an APV25.
static const uint16_t FEC_CRATE_MAX
const sistrip::Granularity & granularity() const
static bool firstApvOfPair(const uint16_t &i2c_addr)
static const uint16_t lldChanOffset_
static const char lldChan_[]
static const uint16_t CCU_ADDR_MIN
void print(std::stringstream &ss) const override
void initFromPath() override
static uint16_t hybridPos(const uint16_t &i2c_addr)
static const char controlView_[]
void terse(std::stringstream &ss) const override
tuple key
prepare the HTCondor submission files and eventually submit them
static const char fecCrate_[]
Base utility class that identifies a position within a logical structure of the strip tracker...
const std::string & path() const
const uint16_t & fecCrate() const
static const uint16_t FEC_RING_MIN
static const uint16_t lldChanMask_
bool isInvalid() const override
static const uint16_t CRATE_SLOT_MIN
bool isValid() const override
const uint16_t & channel() const
static const uint16_t fecSlotOffset_
Constants and enumerated types for FED/FEC systems.
static const char fecRing_[]
const uint16_t & ccuAddr() const
static const uint16_t invalid_
bool operator()(const uint32_t &, const uint32_t &) const
static const uint16_t APVS_PER_CHAN
static const uint16_t ccuAddrMask_
static const uint16_t APV_I2C_MAX
void initFromValue() override
Concrete implementation of abstract base, signifying null values or an "unknown" position or view...
void initFromKey() override
static const char root_[]
static const uint16_t i2cAddrMask_
const uint16_t & ccuChan() const
static const uint16_t fecRingMask_
static const uint16_t fecCrateOffset_
static const uint16_t ccuAddrOffset_
static const char null_[]