32 std::vector<const HcalElectronicsMap::PrecisionItem*>::const_iterator item;
37 if (item ==
mPItemsById.end() || (*item)->mId != fId)
47 if (i!=0 && i->
mElId!=fElId) i=0;
55 if (i!=0 && i->
mElId!=fElId) i=0;
62 std::vector<const HcalElectronicsMap::TriggerItem*>::const_iterator item;
95 if (i!=0 && i->
mId!=0) {
113 std::vector <HcalElectronicsId>
result;
114 for (std::vector<PrecisionItem>::const_iterator item =
mPItems.begin (); item !=
mPItems.end (); item++)
116 for (std::vector<TriggerItem>::const_iterator item =
mTItems.begin (); item !=
mTItems.end (); item++)
123 std::vector <HcalElectronicsId>
result;
124 for (std::vector<PrecisionItem>::const_iterator item =
mPItems.begin (); item !=
mPItems.end (); item++)
130 std::vector <HcalElectronicsId>
result;
131 for (std::vector<TriggerItem>::const_iterator item =
mTItems.begin (); item !=
mTItems.end (); item++)
138 std::vector <HcalGenericDetId>
result;
139 std::set <unsigned long> allIds;
140 for (std::vector<PrecisionItem>::const_iterator item =
mPItems.begin (); item !=
mPItems.end (); item++)
141 if (item->mId) allIds.insert (item->mId);
142 for (std::set <unsigned long>::const_iterator channel = allIds.begin (); channel != allIds.end (); channel++) {
149 std::vector <HcalTrigTowerDetId>
result;
150 std::set <unsigned long> allIds;
151 for (std::vector<TriggerItem>::const_iterator item =
mTItems.begin (); item !=
mTItems.end (); item++)
152 if (item->mTrigId) allIds.insert (item->mTrigId);
153 for (std::set <unsigned long>::const_iterator channel = allIds.begin (); channel != allIds.end (); channel++)
166 edm::LogWarning(
"HCAL") <<
"HcalElectronicsMap::mapEId2tId-> Electronics channel " << fElectronicsId <<
" already mapped to trigger channel "
181 else if (item.
mId != fId.
rawId ()) {
182 edm::LogWarning(
"HCAL") <<
"HcalElectronicsMap::mapEId2tId-> Electronics channel " << fElectronicsId <<
" already mapped to channel "
192 for (std::vector<PrecisionItem>::const_iterator
i=
mPItems.begin();
i!=
mPItems.end(); ++
i) {
204 for (std::vector<TriggerItem>::const_iterator
i=
mTItems.begin();
i!=
mTItems.end(); ++
i) {
const TriggerItem * findByTrigId(unsigned long fTrigId) const
const PrecisionItem * findPByElId(unsigned long fElId) const
std::vector< HcalElectronicsId > allElectronicsIdPrecision() const
std::vector< PrecisionItem > mPItems
bool operator()(const HcalElectronicsMap::TriggerItem *a, const HcalElectronicsMap::TriggerItem *b)
bool mapEId2tId(HcalElectronicsId fElectronicsId, HcalTrigTowerDetId fTriggerId)
uint32_t rawId() const
get the raw id
std::vector< HcalElectronicsId > allElectronicsIdTrigger() const
std::vector< const PrecisionItem * > mPItemsById
const PrecisionItem * findById(unsigned long fId) const
std::vector< TriggerItem > mTItems
std::vector< HcalGenericDetId > allPrecisionId() const
bool mapEId2chId(HcalElectronicsId fElectronicsId, DetId fId)
std::vector< HcalElectronicsId > allElectronicsId() const
std::vector< const TriggerItem * > mTItemsByTrigId
bool operator()(const HcalDcsMap::Item *a, const HcalDcsMap::Item *b)
const TriggerItem * findTByElId(unsigned long fElId) const
int linearIndex() const
get a fast, compact, unique index for linear lookups (maximum value = 16384)
void sortByTriggerId() const
const DetId lookupTrigger(HcalElectronicsId fId) const
brief lookup the trigger logical detid associated with the given electronics id
Readout chain identification for Hcal [31:26] Unused (so far) [25] Trigger-chain id flag [24:20] Read...
std::vector< HcalTrigTowerDetId > allTriggerId() const
const DetId lookup(HcalElectronicsId fId) const
lookup the logical detid associated with the given electronics id